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