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