1 |
grobian 10/09/08 17:34:54 |
2 |
|
3 |
Added: clang-2.7-darwin-prefix.patch |
4 |
Log: |
5 |
Fix configurations for (newer) Darwin configurations, thanks Heiko Przybyl |
6 |
|
7 |
(Portage version: 2.2.01.15553-prefix/cvs/Darwin powerpc) |
8 |
|
9 |
Revision Changes Path |
10 |
1.1 sys-devel/clang/files/clang-2.7-darwin-prefix.patch |
11 |
|
12 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/clang/files/clang-2.7-darwin-prefix.patch?rev=1.1&view=markup |
13 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/clang/files/clang-2.7-darwin-prefix.patch?rev=1.1&content-type=text/plain |
14 |
|
15 |
Index: clang-2.7-darwin-prefix.patch |
16 |
=================================================================== |
17 |
This code looks as if it is written by Apple, lots of assumptions that |
18 |
only hold for them and their scenario. |
19 |
|
20 |
--- llvm-2.7/tools/clang/lib/Driver/ToolChains.cpp |
21 |
+++ llvm-2.7/tools/clang/lib/Driver/ToolChains.cpp |
22 |
@@ -112,7 +112,7 @@ DarwinGCC::DarwinGCC(const HostInfo &Hos |
23 |
GCCVersion[2] = _GCCVersion[2]; |
24 |
|
25 |
// Set up the tool chain paths to match gcc. |
26 |
- ToolChainDir = "i686-apple-darwin"; |
27 |
+ ToolChainDir = "@GENTOO_PORTAGE_CHOST@"; |
28 |
ToolChainDir += llvm::utostr(DarwinVersion[0]); |
29 |
ToolChainDir += "/"; |
30 |
ToolChainDir += llvm::utostr(GCCVersion[0]); |
31 |
@@ -122,9 +122,9 @@ DarwinGCC::DarwinGCC(const HostInfo &Hos |
32 |
ToolChainDir += llvm::utostr(GCCVersion[2]); |
33 |
|
34 |
// Try the next major version if that tool chain dir is invalid. |
35 |
- std::string Tmp = "/usr/lib/gcc/" + ToolChainDir; |
36 |
+ std::string Tmp = "@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir; |
37 |
if (!llvm::sys::Path(Tmp).exists()) { |
38 |
- std::string Next = "i686-apple-darwin"; |
39 |
+ std::string Next = "@GENTOO_PORTAGE_CHOST@"; |
40 |
Next += llvm::utostr(DarwinVersion[0] + 1); |
41 |
Next += "/"; |
42 |
Next += llvm::utostr(GCCVersion[0]); |
43 |
@@ -136,7 +136,7 @@ DarwinGCC::DarwinGCC(const HostInfo &Hos |
44 |
// Use that if it exists, otherwise hope the user isn't linking. |
45 |
// |
46 |
// FIXME: Drop dependency on gcc's tool chain. |
47 |
- Tmp = "/usr/lib/gcc/" + Next; |
48 |
+ Tmp = "@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + Next; |
49 |
if (llvm::sys::Path(Tmp).exists()) |
50 |
ToolChainDir = Next; |
51 |
} |
52 |
@@ -219,19 +219,19 @@ void DarwinGCC::AddLinkSearchPathArgs(co |
53 |
ArgStringList &CmdArgs) const { |
54 |
// FIXME: Derive these correctly. |
55 |
if (getArchName() == "x86_64") { |
56 |
- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir + |
57 |
+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir + |
58 |
"/x86_64")); |
59 |
// Intentionally duplicated for (temporary) gcc bug compatibility. |
60 |
- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir + |
61 |
+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir + |
62 |
"/x86_64")); |
63 |
} |
64 |
- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/" + ToolChainDir)); |
65 |
- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir)); |
66 |
+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/" + ToolChainDir)); |
67 |
+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir)); |
68 |
// Intentionally duplicated for (temporary) gcc bug compatibility. |
69 |
- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir)); |
70 |
- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir + |
71 |
+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir)); |
72 |
+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir + |
73 |
"/../../../" + ToolChainDir)); |
74 |
- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir + |
75 |
+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir + |
76 |
"/../../..")); |
77 |
} |