mirror of
https://git.proxmox.com/git/llvm-toolchain
synced 2025-06-13 10:40:59 +00:00
45 lines
2.1 KiB
Diff
45 lines
2.1 KiB
Diff
Index: llvm-3.2.src/clang/lib/Driver/ToolChains.cpp
|
|
===================================================================
|
|
--- llvm-3.2.src.orig/clang/lib/Driver/ToolChains.cpp 2013-01-12 15:33:39.427064577 +0100
|
|
+++ llvm-3.2.src/clang/lib/Driver/ToolChains.cpp 2013-01-12 15:34:27.855063496 +0100
|
|
@@ -2124,7 +2124,7 @@
|
|
const llvm::Triple &GCCTriple = GCCInstallation.getTriple();
|
|
const std::string &LibPath = GCCInstallation.getParentLibPath();
|
|
|
|
- if (IsAndroid && isMipsR2Arch(Triple.getArch(), Args))
|
|
+ if (IsAndroid && isMipsR2Arch(Triple.getArch(), Args))
|
|
addPathIfExists(GCCInstallation.getInstallPath() +
|
|
GCCInstallation.getMultiarchSuffix() +
|
|
"/mips-r2",
|
|
@@ -2376,9 +2376,16 @@
|
|
StringRef InstallDir = GCCInstallation.getInstallPath();
|
|
StringRef Version = GCCInstallation.getVersion().Text;
|
|
StringRef TripleStr = GCCInstallation.getTriple().str();
|
|
+ llvm::Triple MultiarchTriple
|
|
+ = GCCInstallation.getTriple().isArch32Bit() ? GCCInstallation.getTriple().get64BitArchVariant()
|
|
+ : GCCInstallation.getTriple().get32BitArchVariant();
|
|
|
|
const std::string IncludePathCandidates[] = {
|
|
LibDir.str() + "/../include/c++/" + Version.str(),
|
|
+ // Once more, Debian headers locations changed (since gcc version 4.7.2-5)
|
|
+ // See Debian bug tracker #693240
|
|
+ LibDir.str() + "/../include/"+ TripleStr.str() +"/c++/" + Version.str(),
|
|
+ LibDir.str() + "/../include/"+ MultiarchTriple.str() +"/c++/" + Version.str(),
|
|
// Gentoo is weird and places its headers inside the GCC install, so if the
|
|
// first attempt to find the headers fails, try this pattern.
|
|
InstallDir.str() + "/include/g++-v4",
|
|
@@ -2390,10 +2397,10 @@
|
|
};
|
|
|
|
for (unsigned i = 0; i < llvm::array_lengthof(IncludePathCandidates); ++i) {
|
|
- if (addLibStdCXXIncludePaths(IncludePathCandidates[i], (TripleStr +
|
|
+ addLibStdCXXIncludePaths(IncludePathCandidates[i], (TripleStr +
|
|
GCCInstallation.getMultiarchSuffix()),
|
|
- DriverArgs, CC1Args))
|
|
- break;
|
|
+ DriverArgs, CC1Args);
|
|
+
|
|
}
|
|
}
|
|
|