summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFabian Groffen <grobian@gentoo.org>2010-09-08 17:34:54 +0000
committerFabian Groffen <grobian@gentoo.org>2010-09-08 17:34:54 +0000
commit97f6314e75a63bf96931038d9383a47d4b9c5ffc (patch)
tree2756a2993f22d43ca51ecb80a2b8a886f0d1301c /sys-devel
parentBumping and cleaning up (diff)
downloadhistorical-97f6314e75a63bf96931038d9383a47d4b9c5ffc.tar.gz
historical-97f6314e75a63bf96931038d9383a47d4b9c5ffc.tar.bz2
historical-97f6314e75a63bf96931038d9383a47d4b9c5ffc.zip
Fix configurations for (newer) Darwin configurations, thanks Heiko Przybyl
Package-Manager: portage-2.2.01.15553-prefix/cvs/Darwin powerpc
Diffstat (limited to 'sys-devel')
-rw-r--r--sys-devel/clang/ChangeLog6
-rw-r--r--sys-devel/clang/Manifest5
-rw-r--r--sys-devel/clang/clang-2.7-r2.ebuild9
-rw-r--r--sys-devel/clang/files/clang-2.7-darwin-prefix.patch61
4 files changed, 77 insertions, 4 deletions
diff --git a/sys-devel/clang/ChangeLog b/sys-devel/clang/ChangeLog
index 58d04beb18d4..e1031b2342b7 100644
--- a/sys-devel/clang/ChangeLog
+++ b/sys-devel/clang/ChangeLog
@@ -1,6 +1,10 @@
# ChangeLog for sys-devel/clang
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/clang/ChangeLog,v 1.21 2010/09/03 17:52:05 grobian Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/clang/ChangeLog,v 1.22 2010/09/08 17:34:54 grobian Exp $
+
+ 08 Sep 2010; Fabian Groffen <grobian@gentoo.org> clang-2.7-r2.ebuild,
+ +files/clang-2.7-darwin-prefix.patch:
+ Fix configurations for (newer) Darwin configurations, thanks Heiko Przybyl
03 Sep 2010; Fabian Groffen <grobian@gentoo.org> clang-2.7-r2.ebuild:
Marked ~amd64-linux
diff --git a/sys-devel/clang/Manifest b/sys-devel/clang/Manifest
index e168242b6fc3..af019c67b37a 100644
--- a/sys-devel/clang/Manifest
+++ b/sys-devel/clang/Manifest
@@ -1,8 +1,9 @@
+AUX clang-2.7-darwin-prefix.patch 3294 RMD160 4968d4703833035b17ec87ddc5a03fcc242be9e1 SHA1 cfaa15d0bca9798492b68e3f36ba8a146f0c6b33 SHA256 6e14d6363ae32febb96a8ffe599b32a96691baef27c48d5186f368036d4e2378
AUX clang-2.7-fixdoc.patch 1977 RMD160 62f52e5580baa396d93c56735c0039c8691b43b6 SHA1 351c1d2cf86b6da75a6ed19083d7a857333f007c SHA256 36c2214e575ed3fd78938279739e82c4f750f8726f8387e1414c18532501314a
DIST clang-2.7.tgz 4953739 RMD160 177fdcf59be4a60c37cf0dfb058535c9cdbbad4e SHA1 4d8326bfe2308a7355a5e4ca2eb172bffd761e1e SHA256 fb349471947f155c1cda1c8a4a3bbc7fa437b86f6875d9978f86c915dfed623a
DIST llvm-2.7.tgz 8374297 RMD160 0fa2f362dd6a45efec35ce8fa0f8d36d98f32c8f SHA1 059fc21b0ec1b649c4a3dec81756e5f92aa131a2 SHA256 99664bdc8503a306038166af33f28eb426d99e297575a59d74a1a0dcbddbbca5
-EBUILD clang-2.7-r2.ebuild 5293 RMD160 4b1bfbbb51b79b82d2c758a7208eb3155edbcc28 SHA1 053027bb949f9aee69835b0377d227e5e5461047 SHA256 1b4369b48287ed1642c130f5346d15dd743cb8393c9c86bc24e574f136596075
+EBUILD clang-2.7-r2.ebuild 5583 RMD160 2cfcd080c54db32aff6490e4319e5f98a3554eff SHA1 cb7b437e296dddb12580d7acb05fea88e819accb SHA256 f315ed11c7a0b3a3e3f5b8f057bbc68c67dc539fa1651fc01631247ecee2810e
EBUILD clang-2.7.ebuild 3957 RMD160 58ee1b5fee888f1140fe531b69e1384daff924b2 SHA1 8c93df183c694fa262f6d471065c7cb52eae9e24 SHA256 c80168384d384bd7ce1a790b67bdb17b6268e862b12b7e78f4d6883ce0a67dff
EBUILD clang-9999.ebuild 5308 RMD160 22e25a6cd6147bda2ffbbf13e050b92871815d6b SHA1 33c2342c8419bff669dd66304df7ea8b04ecea9a SHA256 f8154c744a31f2d839ea6d0f3e1d3b9233eca7d628504e36c8384e78591a474b
-MISC ChangeLog 3679 RMD160 ed4c172dffd5959a838725eb3aed22b471d823f7 SHA1 a9582ec54120008b821e5dfd76e916fd7f4285dd SHA256 66dab09e0d8123061445c3f2285131ac06ad1e61b8036b5129327ffc764fe122
+MISC ChangeLog 3869 RMD160 4ea47c4160b8f780b1f42ca890af14bf1e5ed955 SHA1 36a4627e40c305970291d7408196afece4e1dfe7 SHA256 0b4c018411b70ade90fd7c242a0d7f3f87f18e360fb6fc7ae72d791ac6cb0d71
MISC metadata.xml 1283 RMD160 f9c1bc71ac9c387f558cb4c08c7e16c73cd9e63e SHA1 0bff06a0d4a5e3435cd95864a70e931adc2b50b7 SHA256 c5e5ad2fb8f07fdb458e423f8546cf4002fbd11241c50f7efa8b4975836c50a4
diff --git a/sys-devel/clang/clang-2.7-r2.ebuild b/sys-devel/clang/clang-2.7-r2.ebuild
index fcf9f0c8c2fb..93fd702dd73e 100644
--- a/sys-devel/clang/clang-2.7-r2.ebuild
+++ b/sys-devel/clang/clang-2.7-r2.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/clang/clang-2.7-r2.ebuild,v 1.4 2010/09/03 17:52:05 grobian Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/clang/clang-2.7-r2.ebuild,v 1.5 2010/09/08 17:34:54 grobian Exp $
EAPI=3
@@ -33,6 +33,13 @@ src_prepare() {
# Same as llvm doc patches
epatch "${FILESDIR}"/${PN}-2.7-fixdoc.patch
+ # Fix toolchain lookup for Darwin/Prefix.
+ epatch "${FILESDIR}"/${PN}-2.7-darwin-prefix.patch
+ sed -e "s|@GENTOO_PORTAGE_CHOST@|${CHOST%%-darwin*}-darwin|g" \
+ -e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}|g" \
+ -i tools/clang/lib/Driver/ToolChains.cpp \
+ || die "fixing toolchain lookup"
+
# multilib-strict
sed -e "/PROJ_headers/s#lib/clang#$(get_libdir)/clang#" \
-i tools/clang/lib/Headers/Makefile \
diff --git a/sys-devel/clang/files/clang-2.7-darwin-prefix.patch b/sys-devel/clang/files/clang-2.7-darwin-prefix.patch
new file mode 100644
index 000000000000..d44147173544
--- /dev/null
+++ b/sys-devel/clang/files/clang-2.7-darwin-prefix.patch
@@ -0,0 +1,61 @@
+This code looks as if it is written by Apple, lots of assumptions that
+only hold for them and their scenario.
+
+--- llvm-2.7/tools/clang/lib/Driver/ToolChains.cpp
++++ llvm-2.7/tools/clang/lib/Driver/ToolChains.cpp
+@@ -112,7 +112,7 @@ DarwinGCC::DarwinGCC(const HostInfo &Hos
+ GCCVersion[2] = _GCCVersion[2];
+
+ // Set up the tool chain paths to match gcc.
+- ToolChainDir = "i686-apple-darwin";
++ ToolChainDir = "@GENTOO_PORTAGE_CHOST@";
+ ToolChainDir += llvm::utostr(DarwinVersion[0]);
+ ToolChainDir += "/";
+ ToolChainDir += llvm::utostr(GCCVersion[0]);
+@@ -122,9 +122,9 @@ DarwinGCC::DarwinGCC(const HostInfo &Hos
+ ToolChainDir += llvm::utostr(GCCVersion[2]);
+
+ // Try the next major version if that tool chain dir is invalid.
+- std::string Tmp = "/usr/lib/gcc/" + ToolChainDir;
++ std::string Tmp = "@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir;
+ if (!llvm::sys::Path(Tmp).exists()) {
+- std::string Next = "i686-apple-darwin";
++ std::string Next = "@GENTOO_PORTAGE_CHOST@";
+ Next += llvm::utostr(DarwinVersion[0] + 1);
+ Next += "/";
+ Next += llvm::utostr(GCCVersion[0]);
+@@ -136,7 +136,7 @@ DarwinGCC::DarwinGCC(const HostInfo &Hos
+ // Use that if it exists, otherwise hope the user isn't linking.
+ //
+ // FIXME: Drop dependency on gcc's tool chain.
+- Tmp = "/usr/lib/gcc/" + Next;
++ Tmp = "@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + Next;
+ if (llvm::sys::Path(Tmp).exists())
+ ToolChainDir = Next;
+ }
+@@ -219,19 +219,19 @@ void DarwinGCC::AddLinkSearchPathArgs(co
+ ArgStringList &CmdArgs) const {
+ // FIXME: Derive these correctly.
+ if (getArchName() == "x86_64") {
+- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir +
++ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir +
+ "/x86_64"));
+ // Intentionally duplicated for (temporary) gcc bug compatibility.
+- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir +
++ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir +
+ "/x86_64"));
+ }
+- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/" + ToolChainDir));
+- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir));
++ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/" + ToolChainDir));
++ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir));
+ // Intentionally duplicated for (temporary) gcc bug compatibility.
+- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir));
+- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir +
++ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir));
++ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir +
+ "/../../../" + ToolChainDir));
+- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir +
++ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir +
+ "/../../.."));
+ }