]> git.pld-linux.org Git - packages/llvm.git/blame - x32-gcc-toolchain.patch
- fix gcc toolchain paths on x32/x8664/ix86
[packages/llvm.git] / x32-gcc-toolchain.patch
CommitLineData
d215fb08
JR
1--- llvm-3.6.2.src/tools/clang/lib/Driver/ToolChains.cpp~ 2015-07-26 12:48:18.000000000 +0200
2+++ llvm-3.6.2.src/tools/clang/lib/Driver/ToolChains.cpp 2015-07-26 17:44:56.883613971 +0200
3@@ -1312,6 +1312,10 @@
4 "x86_64-linux-android", "x86_64-unknown-linux"
5 };
6 static const char *const X32LibDirs[] = { "/libx32" };
7+ static const char *const X32Triples[] = {
8+ "x86_64-pld-linux-gnux32", "amd64-pld-linux-gnux32",
9+ "x86_64-linux-gnux32", "x86_64-unknown-linux-gnux32", "x86_64-pc-linux-gnux32"
10+ };
11 static const char *const X86LibDirs[] = { "/lib32", "/lib" };
12 static const char *const X86Triples[] = {
13 "i686-pld-linux", "i586-pld-linux", "i486-pld-linux", "i386-pld-linux", "athlon-pld-linux",
14@@ -1407,15 +1407,19 @@
15 }
16 break;
17 case llvm::Triple::x86_64:
18- LibDirs.append(begin(X86_64LibDirs), end(X86_64LibDirs));
19- TripleAliases.append(begin(X86_64Triples), end(X86_64Triples));
20- // x32 is always available when x86_64 is available, so adding it as
21- // secondary arch with x86_64 triples
22 if (TargetTriple.getEnvironment() == llvm::Triple::GNUX32) {
23- BiarchLibDirs.append(begin(X32LibDirs), end(X32LibDirs));
24+ LibDirs.append(begin(X32LibDirs), end(X32LibDirs));
25+ TripleAliases.append(begin(X32Triples), end(X32Triples));
26+ BiarchLibDirs.append(begin(X86_64LibDirs), end(X86_64LibDirs));
27+ BiarchLibDirs.append(begin(X86LibDirs), end(X86LibDirs));
28 BiarchTripleAliases.append(begin(X86_64Triples), end(X86_64Triples));
29+ BiarchTripleAliases.append(begin(X86Triples), end(X86Triples));
30 } else {
31+ LibDirs.append(begin(X86_64LibDirs), end(X86_64LibDirs));
32+ TripleAliases.append(begin(X86_64Triples), end(X86_64Triples));
33+ BiarchLibDirs.append(begin(X32LibDirs), end(X32LibDirs));
34 BiarchLibDirs.append(begin(X86LibDirs), end(X86LibDirs));
35+ BiarchTripleAliases.append(begin(X32Triples), end(X32Triples));
36 BiarchTripleAliases.append(begin(X86Triples), end(X86Triples));
37 }
38 break;
This page took 1.049943 seconds and 4 git commands to generate.