xref: /llvm-project/clang/test/InstallAPI/basic.test (revision feed66f3eae5006bb05e6cb34801930fd940daa8)
1// RUN: rm -rf %t
2// RUN: split-file %s %t
3/// Check basic arguments are captured.
4// RUN: clang-installapi -x objective-c -target arm64-apple-ios13.0.0 \
5// RUN: -fapplication-extension -current_version 1 -compatibility_version 1 \
6// RUN: -install_name /usr/lib/basic.dylib -dynamiclib \
7// RUN: %t/basic_inputs.json -o %t/basic.tbd 2>&1 | FileCheck %s --allow-empty
8// RUN: llvm-readtapi -compare %t/basic.tbd %t/expected.tbd 2>&1 | FileCheck %s --allow-empty
9
10/// Check multiple targets are captured.
11// RUN: clang-installapi -x objective-c -target arm64-apple-ios14.1 -target arm64e-apple-ios14.1 \
12// RUN: -fapplication-extension -install_name /usr/lib/basic.dylib -dynamiclib \
13// RUN: %t/basic_inputs.json -o %t/multi-targets.tbd 2>&1 | FileCheck %s --allow-empty
14// RUN: llvm-readtapi -compare %t/multi-targets.tbd %t/expected-multi.tbd 2>&1 | FileCheck %s --allow-empty
15
16// CHECK-NOT: error:
17// CHECK-NOT: warning:
18
19//--- basic_inputs.json
20{
21  "headers": [
22  ],
23  "version": "3"
24}
25
26//--- expected.tbd
27{
28  "main_library": {
29    "install_names": [
30      {
31        "name": "/usr/lib/basic.dylib"
32      }
33    ],
34    "target_info": [
35      {
36        "min_deployment": "13.0.0",
37        "target": "arm64-ios"
38      }
39    ]
40  },
41  "tapi_tbd_version": 5
42}
43
44//--- expected-multi.tbd
45{
46  "main_library": {
47    "compatibility_versions": [
48      {
49        "version": "0"
50      }],
51    "current_versions": [
52      {
53        "version": "0"
54      }],
55    "install_names": [
56      {
57        "name": "/usr/lib/basic.dylib"
58      }
59    ],
60    "target_info": [
61      {
62        "min_deployment": "14.1",
63        "target": "arm64-ios"
64      },
65      {
66        "min_deployment": "14.1",
67        "target": "arm64e-ios"
68      }
69    ]
70  },
71  "tapi_tbd_version": 5
72}
73