1// General tests that the header search paths detected by the driver and passed 2// to CC1 are sane. 3// 4// Test a simulated installation of libc++ on Linux, both through sysroot and 5// the installation path of Clang. 6// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \ 7// RUN: -target x86_64-unknown-linux-gnu \ 8// RUN: -stdlib=libc++ \ 9// RUN: -ccc-install-dir %S/Inputs/basic_linux_tree/usr/bin \ 10// RUN: --sysroot=%S/Inputs/basic_linux_libcxx_tree \ 11// RUN: | FileCheck --check-prefix=CHECK-BASIC-LIBCXX-SYSROOT %s 12// CHECK-BASIC-LIBCXX-SYSROOT: "{{[^"]*}}clang{{[^"]*}}" "-cc1" 13// CHECK-BASIC-LIBCXX-SYSROOT: "-isysroot" "[[SYSROOT:[^"]+]]" 14// CHECK-BASIC-LIBCXX-SYSROOT: "-internal-isystem" "[[SYSROOT]]/usr/include/c++/v1" 15// CHECK-BASIC-LIBCXX-SYSROOT: "-internal-isystem" "[[SYSROOT]]/usr/local/include" 16// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \ 17// RUN: -target x86_64-unknown-linux-gnu \ 18// RUN: -stdlib=libc++ \ 19// RUN: -ccc-install-dir %S/Inputs/basic_linux_libcxx_tree/usr/bin \ 20// RUN: --sysroot=%S/Inputs/basic_linux_libcxx_tree \ 21// RUN: | FileCheck --check-prefix=CHECK-BASIC-LIBCXX-INSTALL %s 22// CHECK-BASIC-LIBCXX-INSTALL: "{{[^"]*}}clang{{[^"]*}}" "-cc1" 23// CHECK-BASIC-LIBCXX-INSTALL: "-isysroot" "[[SYSROOT:[^"]+]]" 24// CHECK-BASIC-LIBCXX-INSTALL: "-internal-isystem" "[[SYSROOT]]/usr/bin/../include/c++/v1" 25// CHECK-BASIC-LIBCXX-INSTALL: "-internal-isystem" "[[SYSROOT]]/usr/local/include" 26// 27// Test a very broken version of multiarch that shipped in Ubuntu 11.04. 28// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \ 29// RUN: -target i386-unknown-linux \ 30// RUN: --sysroot=%S/Inputs/ubuntu_11.04_multiarch_tree \ 31// RUN: | FileCheck --check-prefix=CHECK-UBUNTU-11-04 %s 32// CHECK-UBUNTU-11-04: "{{.*}}clang{{.*}}" "-cc1" 33// CHECK-UBUNTU-11-04: "-isysroot" "[[SYSROOT:[^"]+]]" 34// CHECK-UBUNTU-11-04: "-internal-isystem" "[[SYSROOT]]/usr/lib/i386-linux-gnu/gcc/i686-linux-gnu/4.5/../../../../../include/c++/4.5" 35// CHECK-UBUNTU-11-04: "-internal-isystem" "[[SYSROOT]]/usr/lib/i386-linux-gnu/gcc/i686-linux-gnu/4.5/../../../../../include/c++/4.5/i686-linux-gnu" 36// CHECK-UBUNTU-11-04: "-internal-isystem" "[[SYSROOT]]/usr/lib/i386-linux-gnu/gcc/i686-linux-gnu/4.5/../../../../../include/c++/4.5/backward" 37// CHECK-UBUNTU-11-04: "-internal-isystem" "[[SYSROOT]]/usr/local/include" 38// CHECK-UBUNTU-11-04: "-internal-isystem" "{{.*}}{{/|\\\\}}lib{{(64|32)?}}{{/|\\\\}}clang{{/|\\\\}}{{[0-9]\.[0-9]\.[0-9]}}{{/|\\\\}}include" 39// CHECK-UBUNTU-11-04: "-internal-externc-isystem" "[[SYSROOT]]/include" 40// CHECK-UBUNTU-11-04: "-internal-externc-isystem" "[[SYSROOT]]/usr/include" 41// 42// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \ 43// RUN: -target x86_64-unknown-linux-gnu \ 44// RUN: --sysroot=%S/Inputs/ubuntu_13.04_multiarch_tree \ 45// RUN: | FileCheck --check-prefix=CHECK-UBUNTU-13-04 %s 46// CHECK-UBUNTU-13-04: "{{[^"]*}}clang{{[^"]*}}" "-cc1" 47// CHECK-UBUNTU-13-04: "-isysroot" "[[SYSROOT:[^"]+]]" 48// CHECK-UBUNTU-13-04: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/x86_64-linux-gnu/4.7/../../../../include/c++/4.7" 49// CHECK-UBUNTU-13-04: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/x86_64-linux-gnu/4.7/../../../../include/c++/4.7/backward" 50// CHECK-UBUNTU-13-04: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/x86_64-linux-gnu/4.7/../../../../include/x86_64-linux-gnu/c++/4.7" 51// CHECK-UBUNTU-13-04: "-internal-isystem" "[[SYSROOT]]/usr/local/include" 52// CHECK-UBUNTU-13-04: "-internal-isystem" "{{.*}}{{/|\\\\}}lib{{(64|32)?}}{{/|\\\\}}clang{{/|\\\\}}{{[0-9]\.[0-9]\.[0-9]}}{{/|\\\\}}include" 53// CHECK-UBUNTU-13-04: "-internal-externc-isystem" "[[SYSROOT]]/usr/include/x86_64-linux-gnu" 54// CHECK-UBUNTU-13-04: "-internal-externc-isystem" "[[SYSROOT]]/include" 55// CHECK-UBUNTU-13-04: "-internal-externc-isystem" "[[SYSROOT]]/usr/include" 56// 57// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \ 58// RUN: -target x86_64-unknown-linux-gnux32 \ 59// RUN: --sysroot=%S/Inputs/ubuntu_14.04_multiarch_tree \ 60// RUN: | FileCheck --check-prefix=CHECK-UBUNTU-14-04 %s 61// CHECK-UBUNTU-14-04: "{{[^"]*}}clang{{[^"]*}}" "-cc1" 62// CHECK-UBUNTU-14-04: "-isysroot" "[[SYSROOT:[^"]+]]" 63// CHECK-UBUNTU-14-04: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/c++/4.8" 64// CHECK-UBUNTU-14-04: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/c++/4.8/x86_64-linux-gnu/x32" 65// CHECK-UBUNTU-14-04: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/c++/4.8/backward" 66// CHECK-UBUNTU-14-04: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/x86_64-linux-gnu/c++/4.8/x32" 67// CHECK-UBUNTU-14-04: "-internal-isystem" "[[SYSROOT]]/usr/local/include" 68// CHECK-UBUNTU-14-04: "-internal-isystem" "{{.*}}{{/|\\\\}}lib{{(64|x32)?}}{{/|\\\\}}clang{{/|\\\\}}{{[0-9]\.[0-9]\.[0-9]}}{{/|\\\\}}include" 69// CHECK-UBUNTU-14-04: "-internal-externc-isystem" "[[SYSROOT]]/usr/include/x86_64-linux-gnu" 70// CHECK-UBUNTU-14-04: "-internal-externc-isystem" "[[SYSROOT]]/include" 71// CHECK-UBUNTU-14-04: "-internal-externc-isystem" "[[SYSROOT]]/usr/include" 72/// 73// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \ 74// RUN: -target arm-linux-gnueabihf \ 75// RUN: --sysroot=%S/Inputs/ubuntu_13.04_multiarch_tree \ 76// RUN: | FileCheck --check-prefix=CHECK-UBUNTU-13-04-CROSS %s 77// CHECK-UBUNTU-13-04-CROSS: "{{[^"]*}}clang{{[^"]*}}" "-cc1" 78// CHECK-UBUNTU-13-04-CROSS: "-isysroot" "[[SYSROOT:[^"]+]]" 79// CHECK-UBUNTU-13-04-CROSS: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc-cross/arm-linux-gnueabihf/4.7/../../../../include/c++/4.7" 80// CHECK-UBUNTU-13-04-CROSS: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc-cross/arm-linux-gnueabihf/4.7/../../../../include/c++/4.7/backward" 81// CHECK-UBUNTU-13-04-CROSS: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc-cross/arm-linux-gnueabihf/4.7/../../../../include/arm-linux-gnueabihf/c++/4.7" 82// CHECK-UBUNTU-13-04-CROSS: "-internal-isystem" "[[SYSROOT]]/usr/local/include" 83// CHECK-UBUNTU-13-04-CROSS: "-internal-isystem" "{{.*}}{{/|\\\\}}lib{{(64|32)?}}{{/|\\\\}}clang{{/|\\\\}}{{[0-9]\.[0-9]\.[0-9]}}{{/|\\\\}}include" 84// CHECK-UBUNTU-13-04-CROSS: "-internal-externc-isystem" "[[SYSROOT]]/include" 85// CHECK-UBUNTU-13-04-CROSS: "-internal-externc-isystem" "[[SYSROOT]]/usr/include" 86// 87// Test Ubuntu/Debian's new version of multiarch, with -m32. 88// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \ 89// RUN: -target x86_64-unknown-linux-gnu -m32 \ 90// RUN: --sysroot=%S/Inputs/ubuntu_13.04_multiarch_tree \ 91// RUN: | FileCheck --check-prefix=CHECK-UBUNTU-13-04-M32 %s 92// CHECK-UBUNTU-13-04-M32: "{{[^"]*}}clang{{[^"]*}}" "-cc1" 93// CHECK-UBUNTU-13-04-M32: "-triple" "i386-unknown-linux-gnu" 94// CHECK-UBUNTU-13-04-M32: "-isysroot" "[[SYSROOT:[^"]+]]" 95// CHECK-UBUNTU-13-04-M32: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/x86_64-linux-gnu/4.7/../../../../include/c++/4.7" 96// CHECK-UBUNTU-13-04-M32: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/x86_64-linux-gnu/4.7/../../../../include/c++/4.7/x86_64-linux-gnu/32" 97// CHECK-UBUNTU-13-04-M32: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/x86_64-linux-gnu/4.7/../../../../include/c++/4.7/backward" 98// CHECK-UBUNTU-13-04-M32: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/x86_64-linux-gnu/4.7/../../../../include/x86_64-linux-gnu/c++/4.7/32" 99// 100// Test Ubuntu/Debian's Ubuntu 14.04 config variant, with -m32 101// and an empty 4.9 directory. 102// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \ 103// RUN: -target x86_64-unknown-linux-gnu -m32 \ 104// RUN: --sysroot=%S/Inputs/ubuntu_14.04_multiarch_tree \ 105// RUN: | FileCheck --check-prefix=CHECK-UBUNTU-14-04-M32 %s 106// CHECK-UBUNTU-14-04-M32: "{{[^"]*}}clang{{[^"]*}}" "-cc1" 107// CHECK-UBUNTU-14-04-M32: "-triple" "i386-unknown-linux-gnu" 108// CHECK-UBUNTU-14-04-M32: "-isysroot" "[[SYSROOT:[^"]+]]" 109// CHECK-UBUNTU-14-04-M32: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/c++/4.8" 110// CHECK-UBUNTU-14-04-M32: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/c++/4.8/x86_64-linux-gnu/32" 111// CHECK-UBUNTU-14-04-M32: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/c++/4.8/backward" 112// CHECK-UBUNTU-14-04-M32: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/x86_64-linux-gnu/c++/4.8/32" 113// 114// Test Ubuntu/Debian's Ubuntu 14.04 for powerpc64le 115// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \ 116// RUN: -target powerpc64le-unknown-linux-gnu -m32 \ 117// RUN: --sysroot=%S/Inputs/ubuntu_14.04_multiarch_tree \ 118// RUN: | FileCheck --check-prefix=CHECK-UBUNTU-14-04-PPC64LE %s 119// CHECK-UBUNTU-14-04-PPC64LE: "{{[^"]*}}clang{{[^"]*}}" "-cc1" 120// CHECK-UBUNTU-14-04-PPC64LE: "-triple" "powerpc64le-unknown-linux-gnu" 121// CHECK-UBUNTU-14-04-PPC64LE: "-isysroot" "[[SYSROOT:[^"]+]]" 122// CHECK-UBUNTU-14-04-PPC64LE: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/powerpc64le-linux-gnu/4.8/../../../../include/c++/4.8" 123// CHECK-UBUNTU-14-04-PPC64LE: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/powerpc64le-linux-gnu/4.8/../../../../include/c++/4.8/powerpc64le-linux-gnu" 124// CHECK-UBUNTU-14-04-PPC64LE: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/powerpc64le-linux-gnu/4.8/../../../../include/c++/4.8/backward" 125// CHECK-UBUNTU-14-04-PPC64LE: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/powerpc64le-linux-gnu/4.8/../../../../include/powerpc64le-linux-gnu/c++/4.8" 126// CHECK-UBUNTU-14-04-PPC64LE: "-internal-externc-isystem" "[[SYSROOT]]/usr/include/powerpc64le-linux-gnu" 127// CHECK-UBUNTU-14-04-PPC64LE: "-internal-externc-isystem" "[[SYSROOT]]/include" 128// CHECK-UBUNTU-14-04-PPC64LE: "-internal-externc-isystem" "[[SYSROOT]]/usr/include" 129// 130// Thoroughly exercise the Debian multiarch environment. 131// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \ 132// RUN: -target i686-linux-gnu \ 133// RUN: --sysroot=%S/Inputs/debian_multiarch_tree \ 134// RUN: | FileCheck --check-prefix=CHECK-DEBIAN-X86 %s 135// CHECK-DEBIAN-X86: "{{[^"]*}}clang{{[^"]*}}" "-cc1" 136// CHECK-DEBIAN-X86: "-isysroot" "[[SYSROOT:[^"]+]]" 137// CHECK-DEBIAN-X86: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/i686-linux-gnu/4.5/../../../../include/c++/4.5" 138// CHECK-DEBIAN-X86: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/i686-linux-gnu/4.5/../../../../include/c++/4.5/i686-linux-gnu" 139// CHECK-DEBIAN-X86: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/i686-linux-gnu/4.5/../../../../include/c++/4.5/backward" 140// CHECK-DEBIAN-X86: "-internal-isystem" "[[SYSROOT]]/usr/local/include" 141// CHECK-DEBIAN-X86: "-internal-isystem" "{{.*}}{{/|\\\\}}lib{{(64|32)?}}{{/|\\\\}}clang{{/|\\\\}}{{[0-9]\.[0-9]\.[0-9]}}{{/|\\\\}}include" 142// CHECK-DEBIAN-X86: "-internal-externc-isystem" "[[SYSROOT]]/usr/include/i386-linux-gnu" 143// CHECK-DEBIAN-X86: "-internal-externc-isystem" "[[SYSROOT]]/include" 144// CHECK-DEBIAN-X86: "-internal-externc-isystem" "[[SYSROOT]]/usr/include" 145// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \ 146// RUN: -target x86_64-linux-gnu \ 147// RUN: --sysroot=%S/Inputs/debian_multiarch_tree \ 148// RUN: | FileCheck --check-prefix=CHECK-DEBIAN-X86-64 %s 149// CHECK-DEBIAN-X86-64: "{{[^"]*}}clang{{[^"]*}}" "-cc1" 150// CHECK-DEBIAN-X86-64: "-isysroot" "[[SYSROOT:[^"]+]]" 151// CHECK-DEBIAN-X86-64: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/x86_64-linux-gnu/4.5/../../../../include/c++/4.5" 152// CHECK-DEBIAN-X86-64: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/x86_64-linux-gnu/4.5/../../../../include/c++/4.5/x86_64-linux-gnu" 153// CHECK-DEBIAN-X86-64: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/x86_64-linux-gnu/4.5/../../../../include/c++/4.5/backward" 154// CHECK-DEBIAN-X86-64: "-internal-isystem" "[[SYSROOT]]/usr/local/include" 155// CHECK-DEBIAN-X86-64: "-internal-isystem" "{{.*}}{{/|\\\\}}lib{{(64|32)?}}{{/|\\\\}}clang{{/|\\\\}}{{[0-9]\.[0-9]\.[0-9]}}{{/|\\\\}}include" 156// CHECK-DEBIAN-X86-64: "-internal-externc-isystem" "[[SYSROOT]]/usr/include/x86_64-linux-gnu" 157// CHECK-DEBIAN-X86-64: "-internal-externc-isystem" "[[SYSROOT]]/include" 158// CHECK-DEBIAN-X86-64: "-internal-externc-isystem" "[[SYSROOT]]/usr/include" 159// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \ 160// RUN: -target powerpc-linux-gnu \ 161// RUN: --sysroot=%S/Inputs/debian_multiarch_tree \ 162// RUN: | FileCheck --check-prefix=CHECK-DEBIAN-PPC %s 163// CHECK-DEBIAN-PPC: "{{[^"]*}}clang{{[^"]*}}" "-cc1" 164// CHECK-DEBIAN-PPC: "-isysroot" "[[SYSROOT:[^"]+]]" 165// CHECK-DEBIAN-PPC: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/powerpc-linux-gnu/4.5/../../../../include/c++/4.5" 166// CHECK-DEBIAN-PPC: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/powerpc-linux-gnu/4.5/../../../../include/c++/4.5/powerpc-linux-gnu" 167// CHECK-DEBIAN-PPC: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/powerpc-linux-gnu/4.5/../../../../include/c++/4.5/backward" 168// CHECK-DEBIAN-PPC: "-internal-isystem" "[[SYSROOT]]/usr/local/include" 169// CHECK-DEBIAN-PPC: "-internal-isystem" "{{.*}}{{/|\\\\}}lib{{(64|32)?}}{{/|\\\\}}clang{{/|\\\\}}{{[0-9]\.[0-9]\.[0-9]}}{{/|\\\\}}include" 170// CHECK-DEBIAN-PPC: "-internal-externc-isystem" "[[SYSROOT]]/usr/include/powerpc-linux-gnu" 171// CHECK-DEBIAN-PPC: "-internal-externc-isystem" "[[SYSROOT]]/include" 172// CHECK-DEBIAN-PPC: "-internal-externc-isystem" "[[SYSROOT]]/usr/include" 173// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \ 174// RUN: -target powerpc64-linux-gnu \ 175// RUN: --sysroot=%S/Inputs/debian_multiarch_tree \ 176// RUN: | FileCheck --check-prefix=CHECK-DEBIAN-PPC64 %s 177// CHECK-DEBIAN-PPC64: "{{[^"]*}}clang{{[^"]*}}" "-cc1" 178// CHECK-DEBIAN-PPC64: "-isysroot" "[[SYSROOT:[^"]+]]" 179// CHECK-DEBIAN-PPC64: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/powerpc64-linux-gnu/4.5/../../../../include/c++/4.5" 180// CHECK-DEBIAN-PPC64: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/powerpc64-linux-gnu/4.5/../../../../include/c++/4.5/powerpc64-linux-gnu" 181// CHECK-DEBIAN-PPC64: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/powerpc64-linux-gnu/4.5/../../../../include/c++/4.5/backward" 182// CHECK-DEBIAN-PPC64: "-internal-isystem" "[[SYSROOT]]/usr/local/include" 183// CHECK-DEBIAN-PPC64: "-internal-isystem" "{{.*}}{{/|\\\\}}lib{{(64|32)?}}{{/|\\\\}}clang{{/|\\\\}}{{[0-9]\.[0-9]\.[0-9]}}{{/|\\\\}}include" 184// CHECK-DEBIAN-PPC64: "-internal-externc-isystem" "[[SYSROOT]]/usr/include/powerpc64-linux-gnu" 185// CHECK-DEBIAN-PPC64: "-internal-externc-isystem" "[[SYSROOT]]/include" 186// CHECK-DEBIAN-PPC64: "-internal-externc-isystem" "[[SYSROOT]]/usr/include" 187// 188// Test Gentoo's weirdness both before and after they changed it in their GCC 189// 4.6.4 release. 190// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \ 191// RUN: -target x86_64-unknown-linux-gnu \ 192// RUN: --sysroot=%S/Inputs/gentoo_linux_gcc_4.6.2_tree \ 193// RUN: | FileCheck --check-prefix=CHECK-GENTOO-4-6-2 %s 194// CHECK-GENTOO-4-6-2: "{{.*}}clang{{.*}}" "-cc1" 195// CHECK-GENTOO-4-6-2: "-isysroot" "[[SYSROOT:[^"]+]]" 196// CHECK-GENTOO-4-6-2: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/x86_64-pc-linux-gnu/4.6.2/include/g++-v4" 197// CHECK-GENTOO-4-6-2: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/x86_64-pc-linux-gnu/4.6.2/include/g++-v4/x86_64-pc-linux-gnu" 198// CHECK-GENTOO-4-6-2: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/x86_64-pc-linux-gnu/4.6.2/include/g++-v4/backward" 199// CHECK-GENTOO-4-6-2: "-internal-isystem" "[[SYSROOT]]/usr/local/include" 200// CHECK-GENTOO-4-6-2: "-internal-isystem" "{{.*}}{{/|\\\\}}lib{{(64|32)?}}{{/|\\\\}}clang{{/|\\\\}}{{[0-9]\.[0-9]\.[0-9]}}{{/|\\\\}}include" 201// CHECK-GENTOO-4-6-2: "-internal-externc-isystem" "[[SYSROOT]]/include" 202// CHECK-GENTOO-4-6-2: "-internal-externc-isystem" "[[SYSROOT]]/usr/include" 203// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \ 204// RUN: -target x86_64-unknown-linux-gnu \ 205// RUN: --sysroot=%S/Inputs/gentoo_linux_gcc_4.6.4_tree \ 206// RUN: | FileCheck --check-prefix=CHECK-GENTOO-4-6-4 %s 207// CHECK-GENTOO-4-6-4: "{{.*}}clang{{.*}}" "-cc1" 208// CHECK-GENTOO-4-6-4: "-isysroot" "[[SYSROOT:[^"]+]]" 209// CHECK-GENTOO-4-6-4: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/x86_64-pc-linux-gnu/4.6.4/include/g++-v4.6" 210// CHECK-GENTOO-4-6-4: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/x86_64-pc-linux-gnu/4.6.4/include/g++-v4.6/x86_64-pc-linux-gnu" 211// CHECK-GENTOO-4-6-4: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/x86_64-pc-linux-gnu/4.6.4/include/g++-v4.6/backward" 212// CHECK-GENTOO-4-6-4: "-internal-isystem" "[[SYSROOT]]/usr/local/include" 213// CHECK-GENTOO-4-6-4: "-internal-isystem" "{{.*}}{{/|\\\\}}lib{{(64|32)?}}{{/|\\\\}}clang{{/|\\\\}}{{[0-9]\.[0-9]\.[0-9]}}{{/|\\\\}}include" 214// CHECK-GENTOO-4-6-4: "-internal-externc-isystem" "[[SYSROOT]]/include" 215// CHECK-GENTOO-4-6-4: "-internal-externc-isystem" "[[SYSROOT]]/usr/include" 216// 217// Check header search on Debian 6 / MIPS64 218// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \ 219// RUN: -target mips64-unknown-linux-gnuabi64 \ 220// RUN: --sysroot=%S/Inputs/debian_6_mips64_tree \ 221// RUN: | FileCheck --check-prefix=CHECK-MIPS64-GNUABI %s 222// CHECK-MIPS64-GNUABI: "{{[^"]*}}clang{{[^"]*}}" "-cc1" 223// CHECK-MIPS64-GNUABI: "-isysroot" "[[SYSROOT:[^"]+]]" 224// CHECK-MIPS64-GNUABI: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/mips64-linux-gnuabi64/4.9/../../../../include/c++/4.9" 225// CHECK-MIPS64-GNUABI: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/mips64-linux-gnuabi64/4.9/../../../../include/c++/4.9/mips64-linux-gnuabi64" 226// CHECK-MIPS64-GNUABI: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/mips64-linux-gnuabi64/4.9/../../../../include/c++/4.9/backward" 227// CHECK-MIPS64-GNUABI: "-internal-isystem" "[[SYSROOT]]/usr/local/include" 228// CHECK-MIPS64-GNUABI: "-internal-isystem" "{{.*}}{{/|\\\\}}lib{{(64|32)?}}{{/|\\\\}}clang{{/|\\\\}}{{[0-9]\.[0-9]\.[0-9]}}{{/|\\\\}}include" 229// CHECK-MIPS64-GNUABI: "-internal-externc-isystem" "[[SYSROOT]]/usr/include/mips64-linux-gnuabi64" 230// CHECK-MIPS64-GNUABI: "-internal-externc-isystem" "[[SYSROOT]]/include" 231// CHECK-MIPS64-GNUABI: "-internal-externc-isystem" "[[SYSROOT]]/usr/include" 232// 233// Check header search on Debian 6 / MIPS64 234// RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \ 235// RUN: -target mips64el-unknown-linux-gnuabi64 \ 236// RUN: --sysroot=%S/Inputs/debian_6_mips64_tree \ 237// RUN: | FileCheck --check-prefix=CHECK-MIPS64EL-GNUABI %s 238// CHECK-MIPS64EL-GNUABI: "{{[^"]*}}clang{{[^"]*}}" "-cc1" 239// CHECK-MIPS64EL-GNUABI: "-isysroot" "[[SYSROOT:[^"]+]]" 240// CHECK-MIPS64EL-GNUABI: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/mips64el-linux-gnuabi64/4.9/../../../../include/c++/4.9" 241// CHECK-MIPS64EL-GNUABI: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/mips64el-linux-gnuabi64/4.9/../../../../include/c++/4.9/mips64el-linux-gnuabi64" 242// CHECK-MIPS64EL-GNUABI: "-internal-isystem" "[[SYSROOT]]/usr/lib/gcc/mips64el-linux-gnuabi64/4.9/../../../../include/c++/4.9/backward" 243// CHECK-MIPS64EL-GNUABI: "-internal-isystem" "[[SYSROOT]]/usr/local/include" 244// CHECK-MIPS64EL-GNUABI: "-internal-isystem" "{{.*}}{{/|\\\\}}lib{{(64|32)?}}{{/|\\\\}}clang{{/|\\\\}}{{[0-9]\.[0-9]\.[0-9]}}{{/|\\\\}}include" 245// CHECK-MIPS64EL-GNUABI: "-internal-externc-isystem" "[[SYSROOT]]/usr/include/mips64el-linux-gnuabi64" 246// CHECK-MIPS64EL-GNUABI: "-internal-externc-isystem" "[[SYSROOT]]/include" 247// CHECK-MIPS64EL-GNUABI: "-internal-externc-isystem" "[[SYSROOT]]/usr/include" 248