1 | // Check that SDKROOT is used to define the default for -isysroot on Darwin. |
2 | // |
3 | // RUN: rm -rf %t.tmpdir |
4 | // RUN: mkdir -p %t.tmpdir |
5 | // RUN: env SDKROOT=%t.tmpdir %clang -target x86_64-apple-darwin10 \ |
6 | // RUN: -c %s -### 2> %t.log |
7 | // RUN: FileCheck --check-prefix=CHECK-BASIC < %t.log %s |
8 | // |
9 | // CHECK-BASIC: clang |
10 | // CHECK-BASIC: "-cc1" |
11 | // CHECK-BASIC: "-isysroot" "{{.*tmpdir}}" |
12 | |
13 | // Check that we don't use SDKROOT as the default if it is not a valid path. |
14 | // |
15 | // RUN: rm -rf %t.nonpath |
16 | // RUN: env SDKROOT=%t.nonpath %clang -target x86_64-apple-darwin10 \ |
17 | // RUN: -c %s -### 2> %t.log |
18 | // RUN: FileCheck --check-prefix=CHECK-NONPATH < %t.log %s |
19 | // |
20 | // CHECK-NONPATH: clang |
21 | // CHECK-NONPATH: "-cc1" |
22 | // CHECK-NONPATH-NOT: "-isysroot" |
23 | |
24 | // Check that we don't use SDKROOT as the default if it is just "/" |
25 | // |
26 | // RUN: env SDKROOT=/ %clang -target x86_64-apple-darwin10 \ |
27 | // RUN: -c %s -### 2> %t.log |
28 | // RUN: FileCheck --check-prefix=CHECK-NONROOT < %t.log %s |
29 | // |
30 | // CHECK-NONROOT: clang |
31 | // CHECK-NONROOT: "-cc1" |
32 | // CHECK-NONROOT-NOT: "-isysroot" |
33 | // |
34 | // This test fails with MSYS or MSYS2 env.exe, since it does not preserve |
35 | // root, expanding / into C:/MINGW/MSYS/1.0 or c:/msys64. To reproduce the |
36 | // problem, run: |
37 | // |
38 | // env SDKROOT=/ cmd //c echo %SDKROOT% |
39 | // |
40 | // This test do pass using GnuWin32 env.exe. |
41 | |
42 | // Check if clang set the correct deployment target from -sysroot |
43 | // |
44 | // RUN: rm -rf %t/SDKs/iPhoneOS8.0.0.sdk |
45 | // RUN: mkdir -p %t/SDKs/iPhoneOS8.0.0.sdk |
46 | // RUN: env SDKROOT=%t/SDKs/iPhoneOS8.0.0.sdk %clang -target arm64-apple-darwin %s -### 2>&1 \ |
47 | // RUN: | FileCheck --check-prefix=CHECK-IPHONE %s |
48 | // |
49 | // CHECK-IPHONE: clang |
50 | // CHECK-IPHONE: "-cc1" |
51 | // CHECK-IPHONE: "-triple" "arm64-apple-ios8.0.0" |
52 | // CHECK-IPHONE: ld |
53 | // CHECK-IPHONE: "-iphoneos_version_min" "8.0.0" |
54 | // |
55 | // |
56 | // RUN: rm -rf %t/SDKs/iPhoneSimulator8.0.sdk |
57 | // RUN: mkdir -p %t/SDKs/iPhoneSimulator8.0.sdk |
58 | // RUN: env SDKROOT=%t/SDKs/iPhoneSimulator8.0.sdk %clang -target x86_64-apple-darwin %s -### 2>&1 \ |
59 | // RUN: | FileCheck --check-prefix=CHECK-SIMULATOR %s |
60 | // |
61 | // CHECK-SIMULATOR: clang |
62 | // CHECK-SIMULATOR: "-cc1" |
63 | // CHECK-SIMULATOR: "-triple" "x86_64-apple-ios8.0.0-simulator" |
64 | // CHECK-SIMULATOR: ld |
65 | // CHECK-SIMULATOR: "-ios_simulator_version_min" "8.0.0" |
66 | // |
67 | // RUN: rm -rf %t/SDKs/MacOSX10.10.0.sdk |
68 | // RUN: mkdir -p %t/SDKs/MacOSX10.10.0.sdk |
69 | // RUN: env SDKROOT=%t/SDKs/MacOSX10.10.0.sdk %clang -target x86_64-apple-darwin %s -### 2>&1 \ |
70 | // RUN: | FileCheck --check-prefix=CHECK-MACOSX %s |
71 | // |
72 | // CHECK-MACOSX: clang |
73 | // CHECK-MACOSX: "-cc1" |
74 | // CHECK-MACOSX: "-triple" "x86_64-apple-macosx10.10.0" |
75 | // CHECK-MACOSX: ld |
76 | // CHECK-MACOSX: "-macosx_version_min" "10.10.0" |
77 | |