1 |
commit: d77c5d128cd577ccc618b0ba2b3317a519405526 |
2 |
Author: Michał Górny <mgorny <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sat Jun 4 20:33:59 2016 +0000 |
4 |
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org> |
5 |
CommitDate: Tue Jul 5 19:04:35 2016 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d77c5d12 |
7 |
|
8 |
sys-devel/llvm: Drop 3.4.2 |
9 |
|
10 |
sys-devel/llvm/Manifest | 5 - |
11 |
...clang-3.1-gentoo-runtime-gcc-detection-v3.patch | 29 -- |
12 |
.../llvm/files/clang-3.4-darwin_build_fix.patch | 47 -- |
13 |
.../llvm/files/clang-3.4-gentoo-install.patch | 80 --- |
14 |
.../llvm/files/llvm-3.3-cmake-modulepath.patch | 24 - |
15 |
.../llvm/files/llvm-3.4-cmake-configparser.patch | 35 -- |
16 |
sys-devel/llvm/files/llvm-3.4-gentoo-install.patch | 96 ---- |
17 |
sys-devel/llvm/llvm-3.4.2.ebuild | 571 --------------------- |
18 |
sys-devel/llvm/metadata.xml | 2 - |
19 |
9 files changed, 889 deletions(-) |
20 |
|
21 |
diff --git a/sys-devel/llvm/Manifest b/sys-devel/llvm/Manifest |
22 |
index be88838..b21128e 100644 |
23 |
--- a/sys-devel/llvm/Manifest |
24 |
+++ b/sys-devel/llvm/Manifest |
25 |
@@ -1,16 +1,13 @@ |
26 |
-DIST cfe-3.4.2.src.tar.gz 10612313 SHA256 5ba6f5772f8d00f445209356a7daf83c5bca2da5acd10de517ad2359ae95bc10 SHA512 e01fa8e312e9b3b7b3cb572ac21349161aaa50078ecfe7bded273b75db4a0c44acde524f8fdfcbeec54c61eeeb8339e9917d1f205a8fda18e34fe7ccbe89c36d WHIRLPOOL 153208b1a60bb5fbe92a7162cb26bbe70d591e7db9dcf06fcd54efc539bbff0403ec88e64236969c9f256e5586bc333840bd6178fd158577d6fe228d9edd4dcd |
27 |
DIST cfe-3.5.0.src.tar.xz 8233432 SHA256 fc80992e004b06f6c7afb612de1cdaa9ac9d25811c55f94fcf7331d9b81cdb8b SHA512 b26a5e2cd81c150607c23b22fafc0d9c7f12b83b45e476b8e75bf5e99d42be7c98ffeac7349df664f01b00900864a01429860b298e48961861377a4b2daf3e49 WHIRLPOOL 5dd8b6fe97933b74f1668b1d753c16cd3bcd05ccf72aac1283aa449caf93f5ba88ae79e7668f7e79b554e1421549a87af21c86cf92657c1b4d77744165718ce7 |
28 |
DIST cfe-3.5.2.src.tar.xz 8268008 SHA256 4feb575f74fb3a74b6245400460230141bf610f235ef3a25008cfe6137828620 SHA512 2ad9a7daa8e62cdbf47b001aa6b937a06ae7e6396dcd1832797e2d98036522443ccfca9f1253e16d531a99d1edf237fcd2b457c55491ff68ca4534a2396ca52f WHIRLPOOL 51789ba2a3193d404b26d26b999fc47f1bc4b56b45048078cc51e4ff5c31d834d360ee0c2d16096c060f85acab6de9055dc375569348ae3307e4b280406f2d9e |
29 |
DIST cfe-3.6.2.src.tar.xz 8617576 SHA256 ae9180466a23acb426d12444d866b266ff2289b266064d362462e44f8d4699f3 SHA512 ed837c48f38d8998efd675b56477c8681dcedfcf3f71bba65930f145501289bebb6fe6a6d9de336548f94c381d016b99f10c58e046b885449755d44ac782de03 WHIRLPOOL a17419cea329999c8662c0008dbd0391ed5f52045d0175488979e7620f6a9a21b08e451a5e21d3bf944597bb37934a8228fa89c09d773882359822d59bd447a8 |
30 |
DIST cfe-3.7.1.src.tar.xz 9110616 SHA256 56e2164c7c2a1772d5ed2a3e57485ff73ff06c97dff12edbeea1acc4412b0674 SHA512 8e3285a32ad0fd4721fa77c4fb9709f31bb4e4f7cb5245357aaf57b0767b6ef18a30d902b59d1437a6febffb6c2128214f9ce5aa913bb298743221a28c4f9de5 WHIRLPOOL ce300f5023bddda59ee055e4dccdca8bf459fae5d4e91c44262d2830c406b798d697d1bf3c6326ff41b969a8439f94a3c83570f1d0151a7f0223eb0d8f324f7b |
31 |
DIST cfe-3.8.0.src.tar.xz 9627228 SHA256 04149236de03cf05232d68eb7cb9c50f03062e339b68f4f8a03b650a11536cf9 SHA512 fef431d63f95a394d53e3857fb6a6bde7a7b27f40ef5111b4353bcb63ac26febec8a9eb84780187c49699ab099834f13f996f085d02c365676b3fa5bbcc03dcd WHIRLPOOL 10fd94f75f645318ed3436454ccffd570a88cafe35e870563b5f4d89c37b9bdbe282d8793301ca53db6774cc223b2ff7ab0af99293413cac3deefcf5150fcca3 |
32 |
-DIST clang-tools-extra-3.4.src.tar.gz 230729 SHA256 ba85187551ae97fe1c8ab569903beae5ff0900e21233e5eb5389f6ceab1028b4 SHA512 9656678acea490fd5674b2d47ad30ec69e5aedb450924e566a90418c94ce6483faa254e7dde0d5163cb0643153113d27b6b000fea7bba08f0ba55741b35873b1 WHIRLPOOL c41ec11d0b88678c56d77d285c4383a39cabab16aae8a4457666014e0927aa4b04cf77e73af0275e6bfc603a9531598eca98ab61d5d81288e2920682088d9eaf |
33 |
DIST clang-tools-extra-3.5.0.src.tar.xz 216256 SHA256 2981beb378afb5aa5c50ed017720a42a33e77e902c7086ad2d412ef4fa931f69 SHA512 5ff2cc5d143b78fbe6645486f02e50f738a92aaf6b8e85cfc6f91e659684686b12e61fc8f00b814b4372c5ed2c2b1be5eca61ea696fbe074b815877b799534ee WHIRLPOOL 10b5afc550fa6a8c33739fbf9268e934732b2892842d398152676e66ab90aed3c6e1bae02bc1b8aa0a9a917b6b450f60950317a9eda3f9e377971cbe00164b11 |
34 |
DIST clang-tools-extra-3.5.2.src.tar.xz 215804 SHA256 f21a374d74b194d8c984546266491b518859b5f12ed9abd49337b8060d3fc004 SHA512 6a8e662d2704147296c13626fbc5885911c646c67404f12eacc67ee2995221445bf4f6122b271b9cb3a56b716f550a651024822f72358d400b9052bf50423669 WHIRLPOOL 088d2725a88a439a1a2c4048e0eaf540587078078bd1c9823a4804200265cab4d32606abf5e72be76da45ea4aa6e7a7201a2bdbddc78d5f9e0024b0d7b59e222 |
35 |
DIST clang-tools-extra-3.6.2.src.tar.xz 248624 SHA256 6a0ec627d398f501ddf347060f7a2ccea4802b2494f1d4fd7bda3e0442d04feb SHA512 1b7710a7deee30cefb6a3b4edb026a96d8935a0c6f3056ccdb7a45564d10baf01a4f6722ae853ad9a3bad17e8de32a3c0ec99c5cf6144647a5e182809d403f7a WHIRLPOOL 3dc8888c302bac84f53b673784dec092a2c59ea2985d9983e87f057b9aa7b5d3e34cf13d2b0f1f60ea44f342b8167377204a510036872a087037cf02335c19cd |
36 |
DIST clang-tools-extra-3.7.1.src.tar.xz 277476 SHA256 4a91edaccad1ce984c7c49a4a87db186b7f7b21267b2b03bcf4bd7820715bc6b SHA512 06e2db8af75f1e6ee82da6ee723b5256b9e3f6ba196428f18944ec02d07df26d04329ca8824a083c5f25274ce7e3469aa75e3a29ccfbdb6375524841d65e3ad7 WHIRLPOOL 2c1a459d6aff6bc24d5c8d38120ab665adbef61394050781a9707d50e83dae1b4997ed19459086e9bd7f6dd38a09c295d135e33515c947d64a7f1ab714ad8beb |
37 |
DIST clang-tools-extra-3.8.0.src.tar.xz 334072 SHA256 afbda810106a6e64444bc164b921be928af46829117c95b996f2678ce4cb1ec4 SHA512 f0e593a76df5485f403079bd2fbb4e51c3d1c3fc4e63e2c2910894e8f2a7c14b47265435f3c52f035fb3fe2f595812d0f9869235296157a39c071a23e6a8b178 WHIRLPOOL 4928669a3c019eebe0a98ee72e25ef70ddf3c1d29e6a4aa18e408276b2a870069460c39e0e8fbe960d8d56127bb6951433d1fd89015d192951004e527b065ec9 |
38 |
-DIST compiler-rt-3.4.src.tar.gz 1858593 SHA256 f37c89b1383ce462d47537a0245ac798600887a9be9f63073e16b79ed536ab5c SHA512 70efffaf12ff7c15befa87ce808489c6f6b6eb421d0ab5d8ecd525239efc8aab850c7ed34b31a993ff5e499657b72598619945cc4461fe3e5359e9a94aaac0c8 WHIRLPOOL ad558b5877a01e476d30d2757959ab04be0c385b2fe3442bcc578bf36c6f3214cd78b4adda24fcb1f3b2b84353db213b82e8d7d4c40e66c3f57aed3a49322dbc |
39 |
DIST compiler-rt-3.5.0.src.tar.xz 1088352 SHA256 a4b3e655832bf8d9a357ea2c771db347237460e131988cbb96cda40ff39a8136 SHA512 862cce2d6b398bd1a8399496a547e6ab976a31f676528beebfbea5fd7dc54aa72e1c25deefa12f6167096521eba74090565b0168806451da02ddac04e922fc48 WHIRLPOOL 248acf997d70d7904aa79bf83e0c02ba4e5f8c2812c03f44a8e1e31b845a654f250c09ec6a123f9245d0db8713e8cc5a4087b9ce785af4f5eb7e55d9dbd362a2 |
40 |
DIST compiler-rt-3.5.2.src.tar.xz 1093000 SHA256 542d7aadd21e7fe35bea0a7912bc965f08a1a566746cebcca76f96dcfeb74dc3 SHA512 319a8a1dbe07eb4f1fcccfe79a1fa445f348fb854a441500e89fa0a128e45716b65d06347f19a63de32e9294cd2331e914ae0d5fe8224f0b2452c39b79ac96ff WHIRLPOOL 6e9286c56a60a515006c8232ca01622ae844185a5f31fb49bce632868862c5e560619f1c45da66878b5322a764f91a284cd296e9f13105d6f74e055a17321d93 |
41 |
DIST compiler-rt-3.6.2.src.tar.xz 1128080 SHA256 0f2ff37d80a64575fecd8cf0d5c50f7ac1f837ddf700d1855412bb7547431d87 SHA512 7dafcc5bd4822475de649d8a84ae51af3c4ed4d0958f76b1b55ba79219638f3e78eb94a1986c6e9ba0e7f1ccf3ec834d546b5ca60e8b08083fea5880ecdf17a3 WHIRLPOOL dd77e7df43c9028a6873ed903da67560fdb04968013016a7f0ad2d2e9a81b3a3d890b95e4f49a6bdef349806d6507defcd80a0a9fb50c1c9f778e7eff42dbc5d |
42 |
@@ -18,8 +15,6 @@ DIST compiler-rt-3.7.1.src.tar.xz 1181772 SHA256 9d4769e4a927d3824bcb7a9c82b01e3 |
43 |
DIST compiler-rt-3.8.0.src.tar.xz 1270128 SHA256 c8d3387e55f229543dac1941769120f24dc50183150bf19d1b070d53d29d56b0 SHA512 21ba548b6b35a79aa291adba7f83db14c33855fa3cf376f2ad75bd22bb454501b74f0ea4f71bc03a864135862c800b101d3cd790e54e687c2a3459c64218b9c3 WHIRLPOOL 63ceb498fbc4083afda4f4aa12e44b8a6d2b58408edacd7d578d3cd6a63f0c1074e453b950fae4fee51690b3f79700e7752b6ceb3e6980c88541314993ce71a5 |
44 |
DIST lldb-3.7.1.src.tar.xz 10650524 SHA256 9a0bc315ef55f44c98cdf92d064df0847f453ed156dd0ef6a87e04f5fd6a0e01 SHA512 d2d3e1052026edd6ef9113ff5362acb4a32cef598098b4031c35e389301130ef2e1bda594f30de4d65c9fdc0beaecdd35afcf36676eb540baad34015aca294d1 WHIRLPOOL bba9c700788f0cf86ac1de51383a223e1c92f724719cdd327d83189cb77714c1e10fb78569aeed3b3c639062a3410bb114f646a271fd0d9e8c9a8e45d090330a |
45 |
DIST lldb-3.8.0.src.tar.xz 10929768 SHA256 e3f68f44147df0433e7989bf6ed1c58ff28d7c68b9c47553cb9915f744785a35 SHA512 a491209ae12b0c7d938ebd94362396a50922326ed24ed11f71b1f19b61274a34a92d2bd46857b44081e7fa3e6d0a641d148bd4022f8edf71f80ff2aa7a55ebef WHIRLPOOL c498c22acab867419143745ce0212c70bdfc141dbae19ab53221908eba7961aae6a029cbad01b8409e6fbc187550141ed87f32366dd847ac57754891fbbc4049 |
46 |
-DIST llvm-3.4-manpages.tar.bz2 33753 SHA256 dc2616104cf333dd9ef56b2d31f9a36e81303e2c5756ff8bc221e05b46f7e1cb SHA512 8e438a9392c9b896ccb2b1460a8f57ffa01633e3a6bba61e2bf2f718d970ff96c17d63b0bc0d4da1162e1d1dc4cb9b2a9e9a14a722e8a5b5d2f205f037ae665d WHIRLPOOL 1c037a9972442937f84bc3147d77d4bbc6d6c0812c3025f3107c2ee5f6259afab990f6e1bca564237fdca8089e2372df4b7ca45cbdea686fbf891f92d1bfbbe6 |
47 |
-DIST llvm-3.4.2.src.tar.gz 15938155 SHA256 17038d47069ad0700c063caed76f0c7259628b0e79651ce2b540d506f2f1efd7 SHA512 6c1453f7d9d9110257db3574cc4f6227fed8938705cbb09851ac09a868089b48f1556a1b6e758aff6d97520b08b5605d3ed20411ad9dd22cdc573d62176905f0 WHIRLPOOL f8b4d5167469e6f350ec41aede04e7b756e18f3d8e78b3270beb5791310a7b9b13c69e57c8bcfefbd0a78efc0c40e3b75a9a158eac72c025b7c77146e8dfaf7c |
48 |
DIST llvm-3.5.0-manpages.tar.bz2 35314 SHA256 724e752a60016dce8cc536658906d3646c600e977374e0ea692a5d0fe2d4a021 SHA512 d99d6096d7f21a81923297584fe5eeb23e0d83d4538fe376615c92fffc8aff3189999f7ab3c537b5aa5d6bc2c22c53eb05717d48c7ab99c42315b8665bac62c3 WHIRLPOOL 68ced06ee6678c5333c662eb1cc0da744c5a184b12dd059c1b77ec200b1d3cc231f270b9d9b6e177d728776894277b3f9061338aa55620c90474eb97915b7819 |
49 |
DIST llvm-3.5.0.src.tar.xz 11735940 SHA256 28e199f368ef0a4666708f31c7991ad3bcc3a578342b0306526dd35f07595c03 SHA512 b4d0f325dbdb0a8f10e5fd031954ef4b1971d8f99f4e4b53834801a2b74a7acde3f77c655c8355b407424b363edfb10f71d85fc370356dc52af5c636a1bba197 WHIRLPOOL 561520823468b61c63df8e13f876b7ac586eb1e52c256e9a36370e5d46e8cef3937655c36fbb51eebd3680fab67412e7c777479477fc728e7a8f35420e573ef1 |
50 |
DIST llvm-3.5.2.src.tar.xz 11876128 SHA256 44196156d5749eb4b4224fe471a29cc3984df92570a4a89fa859f7394fc0c575 SHA512 0f6a83cc61a385387e7baf8fb8f0d9f18e3fd00d2d389a3c7e2c3792be7d82ed095506cac52c24e65ae3c1f94456a441d39440feef6125e25ef18447ec9dd406 WHIRLPOOL b41de51907d6d2c2d04a4c498b44f0ed560cc710e6e2d8678f5ef93a9009d140bc7c2406f4b25d5b901fd026689d48edce77a2e435687b489b835156a512e256 |
51 |
|
52 |
diff --git a/sys-devel/llvm/files/clang-3.1-gentoo-runtime-gcc-detection-v3.patch b/sys-devel/llvm/files/clang-3.1-gentoo-runtime-gcc-detection-v3.patch |
53 |
deleted file mode 100644 |
54 |
index 49f1085..0000000 |
55 |
--- a/sys-devel/llvm/files/clang-3.1-gentoo-runtime-gcc-detection-v3.patch |
56 |
+++ /dev/null |
57 |
@@ -1,29 +0,0 @@ |
58 |
-diff -upNr a/llvm-3.1.src/tools/clang/lib/Driver/ToolChains.cpp b/llvm-3.1.src/tools/clang/lib/Driver/ToolChains.cpp |
59 |
---- a/llvm-3.1.src/tools/clang/lib/Driver/ToolChains.cpp 2012-05-24 03:32:31.593191000 -0400 |
60 |
-+++ b/llvm-3.1.src/tools/clang/lib/Driver/ToolChains.cpp 2012-05-24 03:38:31.733163513 -0400 |
61 |
-@@ -1145,6 +1145,25 @@ Generic_GCC::GCCInstallationDetector::GC |
62 |
- Prefixes.push_back(D.InstalledDir + "/.."); |
63 |
- } |
64 |
- |
65 |
-+ llvm::OwningPtr<llvm::MemoryBuffer> File; |
66 |
-+ for (unsigned k = 0, ke = CandidateTripleAliases.size(); k < ke; ++k) { |
67 |
-+ if (!llvm::MemoryBuffer::getFile(D.SysRoot + "/etc/env.d/gcc/config-" + CandidateTripleAliases[k].str(), File)) |
68 |
-+ { |
69 |
-+ bool Exists; |
70 |
-+ const std::string VersionText = File.get()->getBuffer().rsplit('-').second.substr(0,5).str(); |
71 |
-+ const std::string GentooPath = D.SysRoot + "/usr/lib/gcc/" + CandidateTripleAliases[k].str() + "/" + VersionText; |
72 |
-+ if (!llvm::sys::fs::exists(GentooPath + "/crtbegin.o", Exists) && Exists) |
73 |
-+ { |
74 |
-+ Version = GCCVersion::Parse(VersionText); |
75 |
-+ GCCInstallPath = GentooPath; |
76 |
-+ GCCParentLibPath = GCCInstallPath + "/../../.."; |
77 |
-+ GCCTriple.setTriple(CandidateTripleAliases[k]); |
78 |
-+ IsValid = true; |
79 |
-+ return; |
80 |
-+ } |
81 |
-+ } |
82 |
-+ } |
83 |
-+ |
84 |
- // Loop over the various components which exist and select the best GCC |
85 |
- // installation available. GCC installs are ranked by version number. |
86 |
- Version = GCCVersion::Parse("0.0.0"); |
87 |
|
88 |
diff --git a/sys-devel/llvm/files/clang-3.4-darwin_build_fix.patch b/sys-devel/llvm/files/clang-3.4-darwin_build_fix.patch |
89 |
deleted file mode 100644 |
90 |
index 113b04b..0000000 |
91 |
--- a/sys-devel/llvm/files/clang-3.4-darwin_build_fix.patch |
92 |
+++ /dev/null |
93 |
@@ -1,47 +0,0 @@ |
94 |
-Our (gcc/binutils) toolchain doesn't do ARM targets, hence we will get |
95 |
-"unable to interface with target machine" errors while building if we |
96 |
-attempt to. Disable those targets. |
97 |
- |
98 |
-Patch by Reza Jelveh from |
99 |
-https://github.com/fishman/timebomb-gentoo-osx-overlay/blob/master/sys-devel/llvm/files/llvm-3.4-fix_darwin_build.patch |
100 |
- |
101 |
---- a/projects/compiler-rt/make/platform/clang_darwin_embedded.mk |
102 |
-+++ b/projects/compiler-rt/make/platform/clang_darwin_embedded.mk |
103 |
-@@ -27,20 +27,20 @@ UniversalArchs := |
104 |
- # Soft-float version of the runtime. No floating-point instructions will be used |
105 |
- # and the ABI (out of necessity) passes floating values in normal registers: |
106 |
- # non-VFP variant of the AAPCS. |
107 |
--Configs += soft_static |
108 |
--UniversalArchs.soft_static := armv6m armv7m armv7em armv7 |
109 |
-+# Configs += soft_static |
110 |
-+# UniversalArchs.soft_static := armv6m armv7m armv7em armv7 |
111 |
- |
112 |
- # Hard-float version of the runtime. On ARM VFP instructions and registers are |
113 |
- # allowed, and floating point values get passed in them. VFP variant of the |
114 |
- # AAPCS. |
115 |
- Configs += hard_static |
116 |
--UniversalArchs.hard_static := armv7em armv7 i386 x86_64 |
117 |
-+UniversalArchs.hard_static := i386 x86_64 |
118 |
- |
119 |
--Configs += soft_pic |
120 |
--UniversalArchs.soft_pic := armv6m armv7m armv7em armv7 |
121 |
-+# Configs += soft_pic |
122 |
-+# UniversalArchs.soft_pic := armv6m armv7m armv7em armv7 |
123 |
- |
124 |
- Configs += hard_pic |
125 |
--UniversalArchs.hard_pic := armv7em armv7 i386 x86_64 |
126 |
-+UniversalArchs.hard_pic := i386 x86_64 |
127 |
- |
128 |
- CFLAGS := -Wall -Werror -Oz -fomit-frame-pointer -ffreestanding |
129 |
- |
130 |
---- a/tools/clang/runtime/compiler-rt/Makefile |
131 |
-+++ b/tools/clang/runtime/compiler-rt/Makefile |
132 |
-@@ -85,7 +85,7 @@ RuntimeLibrary.darwin.Configs := \ |
133 |
- profile_osx.a profile_ios.a \ |
134 |
- ubsan_osx.a |
135 |
- RuntimeLibrary.darwin_embedded.Configs := \ |
136 |
-- soft_static.a hard_static.a soft_pic.a hard_pic.a |
137 |
-+ hard_static.a hard_pic.a |
138 |
- |
139 |
- # Support building compiler-rt with relocatable SDKs. |
140 |
- # |
141 |
|
142 |
diff --git a/sys-devel/llvm/files/clang-3.4-gentoo-install.patch b/sys-devel/llvm/files/clang-3.4-gentoo-install.patch |
143 |
deleted file mode 100644 |
144 |
index 0a1d9eb..0000000 |
145 |
--- a/sys-devel/llvm/files/clang-3.4-gentoo-install.patch |
146 |
+++ /dev/null |
147 |
@@ -1,80 +0,0 @@ |
148 |
-From a12fc090b3b43fe25c7de50c09782611e3834aeb Mon Sep 17 00:00:00 2001 |
149 |
-From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@g.o> |
150 |
-Date: Sat, 14 Jun 2014 19:35:33 +0200 |
151 |
-Subject: [PATCH] clang gentoo fixes |
152 |
- |
153 |
---- |
154 |
- tools/clang/lib/Driver/Tools.cpp | 6 +++--- |
155 |
- tools/clang/tools/scan-build/scan-build | 4 ++-- |
156 |
- tools/clang/tools/scan-view/scan-view | 2 +- |
157 |
- 3 files changed, 6 insertions(+), 6 deletions(-) |
158 |
- |
159 |
-diff --git a/tools/clang/lib/Driver/Tools.cpp b/tools/clang/lib/Driver/Tools.cpp |
160 |
-index b013eb5..dbbcacb 100644 |
161 |
---- a/tools/clang/lib/Driver/Tools.cpp |
162 |
-+++ b/tools/clang/lib/Driver/Tools.cpp |
163 |
-@@ -222,7 +222,7 @@ static void addProfileRT(const ToolChain &TC, const ArgList &Args, |
164 |
- // libprofile_rt.so. We used to use the -l:libprofile_rt.a syntax, but that is |
165 |
- // not supported by old linkers. |
166 |
- std::string ProfileRT = |
167 |
-- std::string(TC.getDriver().Dir) + "/../lib/libprofile_rt.a"; |
168 |
-+ "-l:libprofile_rt.a"; |
169 |
- |
170 |
- CmdArgs.push_back(Args.MakeArgString(ProfileRT)); |
171 |
- } |
172 |
-@@ -5911,7 +5911,7 @@ void freebsd::Link::ConstructJob(Compilation &C, const JobAction &JA, |
173 |
- // forward. |
174 |
- if (D.IsUsingLTO(Args)) { |
175 |
- CmdArgs.push_back("-plugin"); |
176 |
-- std::string Plugin = ToolChain.getDriver().Dir + "/../lib/LLVMgold.so"; |
177 |
-+ std::string Plugin = ToolChain.getDriver().Dir + "/../@libdir@/LLVMgold.so"; |
178 |
- CmdArgs.push_back(Args.MakeArgString(Plugin)); |
179 |
- |
180 |
- // Try to pass driver level flags relevant to LTO code generation down to |
181 |
-@@ -6534,7 +6534,7 @@ void gnutools::Link::ConstructJob(Compilation &C, const JobAction &JA, |
182 |
- // forward. |
183 |
- if (D.IsUsingLTO(Args)) { |
184 |
- CmdArgs.push_back("-plugin"); |
185 |
-- std::string Plugin = ToolChain.getDriver().Dir + "/../lib/LLVMgold.so"; |
186 |
-+ std::string Plugin = ToolChain.getDriver().Dir + "/../@libdir@/LLVMgold.so"; |
187 |
- CmdArgs.push_back(Args.MakeArgString(Plugin)); |
188 |
- |
189 |
- // Try to pass driver level flags relevant to LTO code generation down to |
190 |
-diff --git a/tools/clang/tools/scan-build/scan-build b/tools/clang/tools/scan-build/scan-build |
191 |
-index 0f119f6..58f78d9 100755 |
192 |
---- a/tools/clang/tools/scan-build/scan-build |
193 |
-+++ b/tools/clang/tools/scan-build/scan-build |
194 |
-@@ -419,7 +419,7 @@ sub CopyFiles { |
195 |
- |
196 |
- my $Dir = shift; |
197 |
- |
198 |
-- my $JS = Cwd::realpath("$RealBin/sorttable.js"); |
199 |
-+ my $JS = Cwd::realpath("@EPREFIX@/usr/share/llvm/sorttable.js"); |
200 |
- |
201 |
- DieDiag("Cannot find 'sorttable.js'.\n") |
202 |
- if (! -r $JS); |
203 |
-@@ -429,7 +429,7 @@ sub CopyFiles { |
204 |
- DieDiag("Could not copy 'sorttable.js' to '$Dir'.\n") |
205 |
- if (! -r "$Dir/sorttable.js"); |
206 |
- |
207 |
-- my $CSS = Cwd::realpath("$RealBin/scanview.css"); |
208 |
-+ my $CSS = Cwd::realpath("@EPREFIX@/usr/share/llvm/scanview.css"); |
209 |
- |
210 |
- DieDiag("Cannot find 'scanview.css'.\n") |
211 |
- if (! -r $CSS); |
212 |
-diff --git a/tools/clang/tools/scan-view/scan-view b/tools/clang/tools/scan-view/scan-view |
213 |
-index fb27da6..1f8ddb8 100755 |
214 |
---- a/tools/clang/tools/scan-view/scan-view |
215 |
-+++ b/tools/clang/tools/scan-view/scan-view |
216 |
-@@ -54,7 +54,7 @@ def start_browser(port, options): |
217 |
- webbrowser.open(url) |
218 |
- |
219 |
- def run(port, options, root): |
220 |
-- import ScanView |
221 |
-+ from clang import ScanView |
222 |
- try: |
223 |
- print 'Starting scan-view at: http://%s:%d'%(options.host, |
224 |
- port) |
225 |
--- |
226 |
-2.0.0 |
227 |
- |
228 |
|
229 |
diff --git a/sys-devel/llvm/files/llvm-3.3-cmake-modulepath.patch b/sys-devel/llvm/files/llvm-3.3-cmake-modulepath.patch |
230 |
deleted file mode 100644 |
231 |
index 754ae46..0000000 |
232 |
--- a/sys-devel/llvm/files/llvm-3.3-cmake-modulepath.patch |
233 |
+++ /dev/null |
234 |
@@ -1,24 +0,0 @@ |
235 |
---- cmake/modules/LLVMConfig.cmake.in.old 2013-12-30 14:40:54.888983600 +0100 |
236 |
-+++ cmake/modules/LLVMConfig.cmake.in 2013-12-30 14:44:15.448970509 +0100 |
237 |
-@@ -39,16 +39,10 @@ |
238 |
- set(LLVM_LIBRARY_DIRS ${LLVM_INSTALL_PREFIX}/lib) |
239 |
- set(LLVM_DEFINITIONS "-D__STDC_LIMIT_MACROS" "-D__STDC_CONSTANT_MACROS") |
240 |
- |
241 |
--# We try to include using the current setting of CMAKE_MODULE_PATH, |
242 |
--# which suppossedly was filled by the user with the directory where |
243 |
--# this file was installed: |
244 |
--include( LLVM-Config OPTIONAL RESULT_VARIABLE LLVMCONFIG_INCLUDED ) |
245 |
-- |
246 |
--# If failed, we assume that this is an un-installed build: |
247 |
--if( NOT LLVMCONFIG_INCLUDED ) |
248 |
-- set(CMAKE_MODULE_PATH |
249 |
-+# For some reasons without it it fails on Gentoo, see bug #496480 |
250 |
-+set(CMAKE_MODULE_PATH |
251 |
- ${CMAKE_MODULE_PATH} |
252 |
-- "@LLVM_SOURCE_DIR@/cmake/modules") |
253 |
-- include( LLVM-Config ) |
254 |
--endif() |
255 |
-+ "@LLVM_INSTALL_PREFIX@/share/llvm/cmake") |
256 |
-+ |
257 |
-+include(LLVM-Config) |
258 |
- |
259 |
|
260 |
diff --git a/sys-devel/llvm/files/llvm-3.4-cmake-configparser.patch b/sys-devel/llvm/files/llvm-3.4-cmake-configparser.patch |
261 |
deleted file mode 100644 |
262 |
index cda8bdc..0000000 |
263 |
--- a/sys-devel/llvm/files/llvm-3.4-cmake-configparser.patch |
264 |
+++ /dev/null |
265 |
@@ -1,35 +0,0 @@ |
266 |
-From 773560acfad511769017e971991c0305dbc0323d Mon Sep 17 00:00:00 2001 |
267 |
-From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@g.o> |
268 |
-Date: Wed, 11 Jun 2014 09:40:26 +0200 |
269 |
-Subject: [PATCH] Avoid using external configparser in favor of built-in |
270 |
- ConfigParser. |
271 |
- |
272 |
-We only support Python 2 anyway, and configparser-3.2 is known to break |
273 |
-the build. Since some packages actually force version 3.2, and we do not |
274 |
-to pull in extra dependencies, forcing built-in seems to be the best |
275 |
-option. |
276 |
- |
277 |
-Fixes: https://bugs.gentoo.org/show_bug.cgi?id=500856 |
278 |
---- |
279 |
- utils/llvm-build/llvmbuild/componentinfo.py | 5 +---- |
280 |
- 1 file changed, 1 insertion(+), 4 deletions(-) |
281 |
- |
282 |
-diff --git a/utils/llvm-build/llvmbuild/componentinfo.py b/utils/llvm-build/llvmbuild/componentinfo.py |
283 |
-index eda3a48..c963ef1 100644 |
284 |
---- a/utils/llvm-build/llvmbuild/componentinfo.py |
285 |
-+++ b/utils/llvm-build/llvmbuild/componentinfo.py |
286 |
-@@ -3,10 +3,7 @@ Descriptor objects for entities that are part of the LLVM project. |
287 |
- """ |
288 |
- |
289 |
- from __future__ import absolute_import |
290 |
--try: |
291 |
-- import configparser |
292 |
--except: |
293 |
-- import ConfigParser as configparser |
294 |
-+import ConfigParser as configparser |
295 |
- import sys |
296 |
- |
297 |
- from llvmbuild.util import * |
298 |
--- |
299 |
-2.0.0 |
300 |
- |
301 |
|
302 |
diff --git a/sys-devel/llvm/files/llvm-3.4-gentoo-install.patch b/sys-devel/llvm/files/llvm-3.4-gentoo-install.patch |
303 |
deleted file mode 100644 |
304 |
index a2ba7de..0000000 |
305 |
--- a/sys-devel/llvm/files/llvm-3.4-gentoo-install.patch |
306 |
+++ /dev/null |
307 |
@@ -1,96 +0,0 @@ |
308 |
-From b8846d389ff5e2b768a114f752cf39788accba26 Mon Sep 17 00:00:00 2001 |
309 |
-From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@g.o> |
310 |
-Date: Mon, 19 Aug 2013 13:22:46 +0200 |
311 |
-Subject: [PATCH] gentoo install fixes |
312 |
- |
313 |
---- |
314 |
- Makefile.config.in | 6 +++--- |
315 |
- Makefile.rules | 6 +++--- |
316 |
- tools/llvm-config/BuildVariables.inc.in | 2 ++ |
317 |
- tools/llvm-config/Makefile | 4 ++++ |
318 |
- tools/llvm-config/llvm-config.cpp | 5 +++-- |
319 |
- utils/FileCheck/Makefile | 2 +- |
320 |
- 7 files changed, 17 insertions(+), 10 deletions(-) |
321 |
- |
322 |
-diff --git a/Makefile.config.in b/Makefile.config.in |
323 |
-index dcca45f..e75ae2e 100644 |
324 |
---- a/Makefile.config.in |
325 |
-+++ b/Makefile.config.in |
326 |
-@@ -95,10 +95,10 @@ PROJ_internal_prefix := $(prefix) |
327 |
- endif |
328 |
- |
329 |
- PROJ_bindir := $(PROJ_prefix)/bin |
330 |
--PROJ_libdir := $(PROJ_prefix)/lib |
331 |
-+PROJ_libdir := $(PROJ_prefix)/$(GENTOO_LIBDIR) |
332 |
- PROJ_datadir := $(PROJ_prefix)/share |
333 |
--PROJ_docsdir := $(PROJ_prefix)/docs/llvm |
334 |
--PROJ_etcdir := $(PROJ_prefix)/etc/llvm |
335 |
-+PROJ_docsdir := $(PROJ_prefix)/share/doc/@PF@ |
336 |
-+PROJ_etcdir := @EPREFIX@/etc/llvm |
337 |
- PROJ_includedir := $(PROJ_prefix)/include |
338 |
- PROJ_infodir := $(PROJ_prefix)/info |
339 |
- PROJ_mandir := $(PROJ_prefix)/share/man |
340 |
-diff --git a/Makefile.rules b/Makefile.rules |
341 |
-index e53598b..217f754 100644 |
342 |
---- a/Makefile.rules |
343 |
-+++ b/Makefile.rules |
344 |
-@@ -275,7 +275,7 @@ ifeq ($(ENABLE_OPTIMIZED),1) |
345 |
- BuildMode := Release |
346 |
- # Don't use -fomit-frame-pointer on Darwin or FreeBSD. |
347 |
- ifneq ($(HOST_OS), $(filter $(HOST_OS), Cygwin Darwin DragonFly FreeBSD GNU/kFreeBSD)) |
348 |
-- OmitFramePointer := -fomit-frame-pointer |
349 |
-+ OmitFramePointer := |
350 |
- endif |
351 |
- |
352 |
- CXX.Flags += $(OPTIMIZE_OPTION) $(OmitFramePointer) |
353 |
-diff --git a/tools/llvm-config/BuildVariables.inc.in b/tools/llvm-config/BuildVariables.inc.in |
354 |
-index fe87afb..fd9f2c6 100644 |
355 |
---- a/tools/llvm-config/BuildVariables.inc.in |
356 |
-+++ b/tools/llvm-config/BuildVariables.inc.in |
357 |
-@@ -25,3 +25,4 @@ |
358 |
- #define LLVM_BUILDMODE "@LLVM_BUILDMODE@" |
359 |
- #define LLVM_TARGETS_BUILT "@LLVM_TARGETS_BUILT@" |
360 |
- #define LLVM_SYSTEM_LIBS "@LLVM_SYSTEM_LIBS@" |
361 |
-+#define LLVM_LIBDIR "@LLVM_LIBDIR@" |
362 |
-diff --git a/tools/llvm-config/Makefile b/tools/llvm-config/Makefile |
363 |
-index b20b6bf..fc56781 100644 |
364 |
---- a/tools/llvm-config/Makefile |
365 |
-+++ b/tools/llvm-config/Makefile |
366 |
-@@ -55,6 +55,8 @@ $(ObjDir)/BuildVariables.inc: $(BUILDVARIABLES_SRCPATH) Makefile $(ObjDir)/.dir |
367 |
- >> temp.sed |
368 |
- $(Verb) $(ECHO) 's/@LLVM_TARGETS_BUILT@/$(subst /,\/,$(TARGETS_TO_BUILD))/' \ |
369 |
- >> temp.sed |
370 |
-+ $(Verb) $(ECHO) 's/@LLVM_LIBDIR@/$(subst /,\/,$(GENTOO_LIBDIR))/' \ |
371 |
-+ >> temp.sed |
372 |
- $(Verb) $(SED) -f temp.sed < $< > $@ |
373 |
- $(Verb) $(RM) temp.sed |
374 |
- |
375 |
-diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp |
376 |
-index 3924e2e..f439c60 100644 |
377 |
---- a/tools/llvm-config/llvm-config.cpp |
378 |
-+++ b/tools/llvm-config/llvm-config.cpp |
379 |
-@@ -250,7 +250,7 @@ int main(int argc, char **argv) { |
380 |
- ActivePrefix = CurrentExecPrefix; |
381 |
- ActiveIncludeDir = ActivePrefix + "/include"; |
382 |
- ActiveBinDir = ActivePrefix + "/bin"; |
383 |
-- ActiveLibDir = ActivePrefix + "/lib"; |
384 |
-+ ActiveLibDir = ActivePrefix + "/" LLVM_LIBDIR; |
385 |
- ActiveIncludeOption = "-I" + ActiveIncludeDir; |
386 |
- } |
387 |
- |
388 |
-diff --git a/utils/FileCheck/Makefile b/utils/FileCheck/Makefile |
389 |
-index 268b7bc..e7674f9 100644 |
390 |
---- a/utils/FileCheck/Makefile |
391 |
-+++ b/utils/FileCheck/Makefile |
392 |
-@@ -15,7 +15,7 @@ USEDLIBS = LLVMSupport.a |
393 |
- TOOL_NO_EXPORTS = 1 |
394 |
- |
395 |
- # Don't install this utility |
396 |
--NO_INSTALL = 1 |
397 |
-+#NO_INSTALL = 1 |
398 |
- |
399 |
- include $(LEVEL)/Makefile.common |
400 |
- |
401 |
--- |
402 |
-1.8.4.2 |
403 |
- |
404 |
|
405 |
diff --git a/sys-devel/llvm/llvm-3.4.2.ebuild b/sys-devel/llvm/llvm-3.4.2.ebuild |
406 |
deleted file mode 100644 |
407 |
index c2ef13a..0000000 |
408 |
--- a/sys-devel/llvm/llvm-3.4.2.ebuild |
409 |
+++ /dev/null |
410 |
@@ -1,571 +0,0 @@ |
411 |
-# Copyright 1999-2015 Gentoo Foundation |
412 |
-# Distributed under the terms of the GNU General Public License v2 |
413 |
-# $Id$ |
414 |
- |
415 |
-EAPI=5 |
416 |
- |
417 |
-PYTHON_COMPAT=( python2_7 pypy ) |
418 |
-# this causes some issues so make it optional for now. |
419 |
-# 3.5 will have CMakeFiles support in autotools. |
420 |
-WANT_CMAKE=cmake |
421 |
- |
422 |
-inherit cmake-utils eutils flag-o-matic multibuild multilib \ |
423 |
- multilib-minimal python-r1 toolchain-funcs pax-utils check-reqs prefix |
424 |
- |
425 |
-DESCRIPTION="Low Level Virtual Machine" |
426 |
-HOMEPAGE="http://llvm.org/" |
427 |
-SRC_URI="http://llvm.org/releases/${PV}/${P}.src.tar.gz |
428 |
- clang? ( http://llvm.org/releases/${PV}/compiler-rt-3.4.src.tar.gz |
429 |
- http://llvm.org/releases/${PV}/cfe-${PV}.src.tar.gz |
430 |
- http://llvm.org/releases/${PV}/clang-tools-extra-3.4.src.tar.gz ) |
431 |
- !doc? ( https://dev.gentoo.org/~mgorny/dist/${PN}-3.4-manpages.tar.bz2 )" |
432 |
- |
433 |
-LICENSE="UoI-NCSA" |
434 |
-SLOT="0/3.4" |
435 |
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" |
436 |
-IUSE="clang debug doc gold +libffi multitarget ncurses ocaml python |
437 |
- +static-analyzer test udis86 xml video_cards_radeon |
438 |
- kernel_Darwin kernel_FreeBSD" |
439 |
- |
440 |
-COMMON_DEPEND=" |
441 |
- sys-libs/zlib:0= |
442 |
- clang? ( |
443 |
- python? ( ${PYTHON_DEPS} ) |
444 |
- static-analyzer? ( |
445 |
- dev-lang/perl:* |
446 |
- ${PYTHON_DEPS} |
447 |
- ) |
448 |
- xml? ( dev-libs/libxml2:2= ) |
449 |
- ) |
450 |
- gold? ( >=sys-devel/binutils-2.22:*[cxx] ) |
451 |
- libffi? ( >=virtual/libffi-3.0.13-r1:0=[${MULTILIB_USEDEP}] ) |
452 |
- ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[${MULTILIB_USEDEP}] ) |
453 |
- ocaml? ( dev-lang/ocaml:0= ) |
454 |
- udis86? ( >=dev-libs/udis86-1.7-r2:0=[pic(+),${MULTILIB_USEDEP}] )" |
455 |
-DEPEND="${COMMON_DEPEND} |
456 |
- dev-lang/perl |
457 |
- >=sys-devel/make-3.81 |
458 |
- >=sys-devel/flex-2.5.4 |
459 |
- >=sys-devel/bison-1.875d |
460 |
- || ( >=sys-devel/gcc-3.0 >=sys-devel/gcc-apple-4.2.1 >=sys-devel/llvm-3.3 |
461 |
- ( >=sys-freebsd/freebsd-lib-9.1-r10 sys-libs/libcxx ) |
462 |
- ) |
463 |
- || ( >=sys-devel/binutils-2.18 >=sys-devel/binutils-apple-5.1 ) |
464 |
- clang? ( xml? ( virtual/pkgconfig ) ) |
465 |
- doc? ( dev-python/sphinx ) |
466 |
- libffi? ( virtual/pkgconfig ) |
467 |
- ${PYTHON_DEPS}" |
468 |
-RDEPEND="${COMMON_DEPEND} |
469 |
- clang? ( !<=sys-devel/clang-${PV}-r99 |
470 |
- !>=sys-devel/clang-9999 ) |
471 |
- abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r2 |
472 |
- !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] )" |
473 |
-PDEPEND="clang? ( =sys-devel/clang-${PV}-r100 )" |
474 |
- |
475 |
-# pypy gives me around 1700 unresolved tests due to open file limit |
476 |
-# being exceeded. probably GC does not close them fast enough. |
477 |
-REQUIRED_USE="${PYTHON_REQUIRED_USE} |
478 |
- test? ( || ( $(python_gen_useflags 'python*') ) )" |
479 |
- |
480 |
-S=${WORKDIR}/${P}.src |
481 |
- |
482 |
-# Some people actually override that in make.conf. That sucks since |
483 |
-# we need to run install per-directory, and ninja can't do that... |
484 |
-# so why did it call itself ninja in the first place? |
485 |
-CMAKE_MAKEFILE_GENERATOR=emake |
486 |
- |
487 |
-MULTILIB_CHOST_TOOLS=( |
488 |
- /usr/bin/llvm-config |
489 |
-) |
490 |
- |
491 |
-pkg_pretend() { |
492 |
- # in megs |
493 |
- # !clang !debug !multitarget -O2 400 |
494 |
- # !clang !debug multitarget -O2 550 |
495 |
- # clang !debug !multitarget -O2 950 |
496 |
- # clang !debug multitarget -O2 1200 |
497 |
- # !clang debug multitarget -O2 5G |
498 |
- # clang !debug multitarget -O0 -g 12G |
499 |
- # clang debug multitarget -O2 16G |
500 |
- # clang debug multitarget -O0 -g 14G |
501 |
- |
502 |
- local build_size=550 |
503 |
- use clang && build_size=1200 |
504 |
- |
505 |
- if use debug; then |
506 |
- ewarn "USE=debug is known to increase the size of package considerably" |
507 |
- ewarn "and cause the tests to fail." |
508 |
- ewarn |
509 |
- |
510 |
- (( build_size *= 14 )) |
511 |
- elif is-flagq '-g?(gdb)?([1-9])'; then |
512 |
- ewarn "The C++ compiler -g option is known to increase the size of the package" |
513 |
- ewarn "considerably. If you run out of space, please consider removing it." |
514 |
- ewarn |
515 |
- |
516 |
- (( build_size *= 10 )) |
517 |
- fi |
518 |
- |
519 |
- # Multiply by number of ABIs :). |
520 |
- local abis=( $(multilib_get_enabled_abis) ) |
521 |
- (( build_size *= ${#abis[@]} )) |
522 |
- |
523 |
- local CHECKREQS_DISK_BUILD=${build_size}M |
524 |
- check-reqs_pkg_pretend |
525 |
-} |
526 |
- |
527 |
-pkg_setup() { |
528 |
- pkg_pretend |
529 |
- |
530 |
- # need to check if the active compiler is ok |
531 |
- |
532 |
- broken_gcc=( 3.2.2 3.2.3 3.3.2 4.1.1 ) |
533 |
- broken_gcc_x86=( 3.4.0 3.4.2 ) |
534 |
- broken_gcc_amd64=( 3.4.6 ) |
535 |
- |
536 |
- gcc_vers=$(gcc-fullversion) |
537 |
- |
538 |
- if has "${gcc_vers}" "${broken_gcc[@]}"; then |
539 |
- elog "Your version of gcc is known to miscompile llvm." |
540 |
- elog "Check http://www.llvm.org/docs/GettingStarted.html for" |
541 |
- elog "possible solutions." |
542 |
- die "Your currently active version of gcc is known to miscompile llvm" |
543 |
- fi |
544 |
- |
545 |
- if use abi_x86_32 && has "${gcc_vers}" "${broken_gcc_x86[@]}"; then |
546 |
- elog "Your version of gcc is known to miscompile llvm on x86" |
547 |
- elog "architectures. Check" |
548 |
- elog "http://www.llvm.org/docs/GettingStarted.html for possible" |
549 |
- elog "solutions." |
550 |
- die "Your currently active version of gcc is known to miscompile llvm" |
551 |
- fi |
552 |
- |
553 |
- if use abi_x86_64 && has "${gcc_vers}" "${broken_gcc_amd64[@]}"; then |
554 |
- elog "Your version of gcc is known to miscompile llvm in amd64" |
555 |
- elog "architectures. Check" |
556 |
- elog "http://www.llvm.org/docs/GettingStarted.html for possible" |
557 |
- elog "solutions." |
558 |
- die "Your currently active version of gcc is known to miscompile llvm" |
559 |
- fi |
560 |
-} |
561 |
- |
562 |
-src_unpack() { |
563 |
- default |
564 |
- |
565 |
- rm -f "${S}"/tools/clang "${S}"/projects/compiler-rt \ |
566 |
- || die "symlinks removal failed" |
567 |
- |
568 |
- if use clang; then |
569 |
- mv "${WORKDIR}"/cfe-${PV}.src "${S}"/tools/clang \ |
570 |
- || die "clang source directory move failed" |
571 |
- mv "${WORKDIR}"/compiler-rt-3.4 "${S}"/projects/compiler-rt \ |
572 |
- || die "compiler-rt source directory move failed" |
573 |
- mv "${WORKDIR}"/clang-tools-extra-3.4 "${S}"/tools/clang/tools/extra \ |
574 |
- || die "clang-tools-extra source directory move failed" |
575 |
- fi |
576 |
-} |
577 |
- |
578 |
-src_prepare() { |
579 |
- epatch "${FILESDIR}"/${PN}-3.2-nodoctargz.patch |
580 |
- epatch "${FILESDIR}"/${PN}-3.4-gentoo-install.patch |
581 |
- # Hack cmake search path for Gentoo, bug #496480 |
582 |
- epatch "${FILESDIR}"/${PN}-3.3-cmake-modulepath.patch |
583 |
- # Use built-in ConfigParser to avoid failures with configparser-3.2 |
584 |
- # https://bugs.gentoo.org/show_bug.cgi?id=500856 |
585 |
- epatch "${FILESDIR}"/${PN}-3.4-cmake-configparser.patch |
586 |
- |
587 |
- if use clang; then |
588 |
- # Automatically select active system GCC's libraries, bugs #406163 and #417913 |
589 |
- epatch "${FILESDIR}"/clang-3.1-gentoo-runtime-gcc-detection-v3.patch |
590 |
- |
591 |
- epatch "${FILESDIR}"/clang-3.4-gentoo-install.patch |
592 |
- epatch "${FILESDIR}"/clang-3.4-darwin_build_fix.patch |
593 |
- epatch "${FILESDIR}"/clang-3.4-darwin_prefix-include-paths.patch |
594 |
- eprefixify tools/clang/lib/Frontend/InitHeaderSearch.cpp |
595 |
- fi |
596 |
- |
597 |
- if use prefix && use clang; then |
598 |
- sed -i -e "/^CFLAGS /s@-Werror@-I${EPREFIX}/usr/include@" \ |
599 |
- projects/compiler-rt/make/platform/clang_*.mk || die |
600 |
- fi |
601 |
- |
602 |
- local sub_files=( |
603 |
- Makefile.config.in |
604 |
- Makefile.rules |
605 |
- tools/llvm-config/llvm-config.cpp |
606 |
- ) |
607 |
- use clang && sub_files+=( |
608 |
- tools/clang/lib/Driver/Tools.cpp |
609 |
- tools/clang/tools/scan-build/scan-build |
610 |
- ) |
611 |
- |
612 |
- # unfortunately ./configure won't listen to --mandir and the-like, so take |
613 |
- # care of this. |
614 |
- # note: we're setting the main libdir intentionally. |
615 |
- # where per-ABI is appropriate, we use $(GENTOO_LIBDIR) make. |
616 |
- einfo "Fixing install dirs" |
617 |
- sed -e "s,@libdir@,$(get_libdir),g" \ |
618 |
- -e "s,@PF@,${PF},g" \ |
619 |
- -e "s,@EPREFIX@,${EPREFIX},g" \ |
620 |
- -i "${sub_files[@]}" \ |
621 |
- || die "install paths sed failed" |
622 |
- |
623 |
- if use clang; then |
624 |
- # constantly fails for a long time, likely due to our patches |
625 |
- rm tools/clang/test/Driver/cross-linux.c || die |
626 |
- fi |
627 |
- |
628 |
- # User patches |
629 |
- epatch_user |
630 |
- |
631 |
- python_setup |
632 |
-} |
633 |
- |
634 |
-multilib_src_configure() { |
635 |
- # disable timestamps since they confuse ccache |
636 |
- local conf_flags=( |
637 |
- --disable-timestamps |
638 |
- --enable-keep-symbols |
639 |
- --enable-shared |
640 |
- --with-optimize-option= |
641 |
- $(use_enable !debug optimized) |
642 |
- $(use_enable debug assertions) |
643 |
- $(use_enable debug expensive-checks) |
644 |
- $(use_enable ncurses terminfo) |
645 |
- $(use_enable libffi) |
646 |
- ) |
647 |
- |
648 |
- if use clang; then |
649 |
- conf_flags+=( --with-clang-resource-dir=../lib/clang/${PV} ) |
650 |
- fi |
651 |
- # well, it's used only by clang executable c-index-test |
652 |
- if multilib_is_native_abi && use clang && use xml; then |
653 |
- conf_flags+=( XML2CONFIG="$(tc-getPKG_CONFIG) libxml-2.0" ) |
654 |
- else |
655 |
- conf_flags+=( ac_cv_prog_XML2CONFIG="" ) |
656 |
- fi |
657 |
- |
658 |
- local targets bindings |
659 |
- if use multitarget; then |
660 |
- targets='all' |
661 |
- else |
662 |
- targets='host,cpp' |
663 |
- use video_cards_radeon && targets+=',r600' |
664 |
- fi |
665 |
- conf_flags+=( --enable-targets=${targets} ) |
666 |
- |
667 |
- if multilib_is_native_abi; then |
668 |
- use gold && conf_flags+=( --with-binutils-include="${EPREFIX}"/usr/include/ ) |
669 |
- # extra commas don't hurt |
670 |
- use ocaml && bindings+=',ocaml' |
671 |
- fi |
672 |
- |
673 |
- [[ ${bindings} ]] || bindings='none' |
674 |
- conf_flags+=( --enable-bindings=${bindings} ) |
675 |
- |
676 |
- if use udis86; then |
677 |
- conf_flags+=( --with-udis86 ) |
678 |
- fi |
679 |
- |
680 |
- if use libffi; then |
681 |
- local CPPFLAGS=${CPPFLAGS} |
682 |
- append-cppflags "$(pkg-config --cflags libffi)" |
683 |
- fi |
684 |
- |
685 |
- # llvm prefers clang over gcc, so we may need to force that |
686 |
- tc-export CC CXX |
687 |
- |
688 |
- ECONF_SOURCE=${S} \ |
689 |
- econf "${conf_flags[@]}" |
690 |
- |
691 |
- multilib_is_native_abi && cmake_configure |
692 |
-} |
693 |
- |
694 |
-cmake_configure() { |
695 |
- # sadly, cmake doesn't seem to have host autodetection |
696 |
- # but it's fairly easy to steal this from configured autotools |
697 |
- local targets=$(sed -n -e 's/^TARGETS_TO_BUILD=//p' Makefile.config || die) |
698 |
- local libdir=$(get_libdir) |
699 |
- local mycmakeargs=( |
700 |
- # just the stuff needed to get correct cmake modules |
701 |
- $(cmake-utils_use ncurses LLVM_ENABLE_TERMINFO) |
702 |
- |
703 |
- -DLLVM_TARGETS_TO_BUILD="${targets// /;}" |
704 |
- -DLLVM_LIBDIR_SUFFIX=${libdir#lib} |
705 |
- ) |
706 |
- |
707 |
- BUILD_DIR=${S%/}_cmake \ |
708 |
- cmake-utils_src_configure |
709 |
-} |
710 |
- |
711 |
-set_makeargs() { |
712 |
- MAKEARGS=( |
713 |
- VERBOSE=1 |
714 |
- REQUIRES_RTTI=1 |
715 |
- GENTOO_LIBDIR=$(get_libdir) |
716 |
- ) |
717 |
- |
718 |
- # for tests, we want it all! otherwise, we may use a little filtering... |
719 |
- # adding ONLY_TOOLS also disables unittest building... |
720 |
- if [[ ${EBUILD_PHASE_FUNC} != src_test ]]; then |
721 |
- local tools=( llvm-config ) |
722 |
- use clang && tools+=( clang ) |
723 |
- |
724 |
- if multilib_is_native_abi; then |
725 |
- tools+=( |
726 |
- opt llvm-as llvm-dis llc llvm-ar llvm-nm llvm-link lli |
727 |
- llvm-extract llvm-mc llvm-bcanalyzer llvm-diff macho-dump |
728 |
- llvm-objdump llvm-readobj llvm-rtdyld llvm-dwarfdump llvm-cov |
729 |
- llvm-size llvm-stress llvm-mcmarkup llvm-symbolizer obj2yaml |
730 |
- yaml2obj lto bugpoint |
731 |
- ) |
732 |
- |
733 |
- # the build system runs explicitly specified tools in parallel, |
734 |
- # so we need to split it into two runs |
735 |
- if [[ ${1} != -1 ]]; then |
736 |
- # those require lto |
737 |
- tools+=( llvm-lto ) |
738 |
- use gold && tools+=( gold ) |
739 |
- |
740 |
- # those require clang :) |
741 |
- # we need to explicitly specify all its tools |
742 |
- # since we're passing BUILD_CLANG_ONLY |
743 |
- use clang && tools+=( |
744 |
- clang/tools/{clang-check,clang-format,extra} |
745 |
- ) |
746 |
- fi |
747 |
- fi |
748 |
- |
749 |
- MAKEARGS+=( |
750 |
- # filter tools + disable unittests implicitly |
751 |
- ONLY_TOOLS="${tools[*]}" |
752 |
- |
753 |
- # this disables unittests & docs from clang |
754 |
- BUILD_CLANG_ONLY=YES |
755 |
- ) |
756 |
- fi |
757 |
-} |
758 |
- |
759 |
-multilib_src_compile() { |
760 |
- local MAKEARGS |
761 |
- set_makeargs -1 |
762 |
- emake "${MAKEARGS[@]}" |
763 |
- |
764 |
- if multilib_is_native_abi; then |
765 |
- set_makeargs |
766 |
- emake -C tools "${MAKEARGS[@]}" |
767 |
- |
768 |
- if use doc; then |
769 |
- emake -C "${S}"/docs -f Makefile.sphinx man |
770 |
- use clang && emake -C "${S}"/tools/clang/docs/tools \ |
771 |
- BUILD_FOR_WEBSITE=1 DST_MAN_DIR="${T}"/ man |
772 |
- emake -C "${S}"/docs -f Makefile.sphinx html |
773 |
- fi |
774 |
- fi |
775 |
- |
776 |
- if use debug; then |
777 |
- pax-mark m Debug+Asserts+Checks/bin/llvm-rtdyld |
778 |
- pax-mark m Debug+Asserts+Checks/bin/lli |
779 |
- pax-mark m Debug+Asserts+Checks/bin/lli-child-target |
780 |
- else |
781 |
- pax-mark m Release/bin/llvm-rtdyld |
782 |
- pax-mark m Release/bin/lli |
783 |
- pax-mark m Release/bin/lli-child-target |
784 |
- fi |
785 |
-} |
786 |
- |
787 |
-multilib_src_test() { |
788 |
- local MAKEARGS |
789 |
- set_makeargs |
790 |
- |
791 |
- # build the remaining tools & unittests |
792 |
- emake "${MAKEARGS[@]}" |
793 |
- |
794 |
- pax-mark m unittests/ExecutionEngine/JIT/Release/JITTests |
795 |
- pax-mark m unittests/ExecutionEngine/MCJIT/Release/MCJITTests |
796 |
- pax-mark m unittests/Support/Release/SupportTests |
797 |
- |
798 |
- # respect TMPDIR! |
799 |
- local -x LIT_PRESERVES_TMP=1 |
800 |
- emake "${MAKEARGS[@]}" check |
801 |
- use clang && emake "${MAKEARGS[@]}" -C tools/clang test |
802 |
-} |
803 |
- |
804 |
-src_install() { |
805 |
- local MULTILIB_WRAPPED_HEADERS=( |
806 |
- /usr/include/llvm/Config/config.h |
807 |
- /usr/include/llvm/Config/llvm-config.h |
808 |
- ) |
809 |
- |
810 |
- use clang && MULTILIB_WRAPPED_HEADERS+=( |
811 |
- /usr/include/clang/Config/config.h |
812 |
- ) |
813 |
- |
814 |
- multilib-minimal_src_install |
815 |
- |
816 |
- # Remove unnecessary headers on FreeBSD, bug #417171 |
817 |
- use kernel_FreeBSD && use clang && rm "${ED}"usr/lib/clang/${PV}/include/{std,float,iso,limits,tgmath,varargs}*.h |
818 |
-} |
819 |
- |
820 |
-multilib_src_install() { |
821 |
- local MAKEARGS |
822 |
- set_makeargs |
823 |
- |
824 |
- local root=${D}/_${ABI} |
825 |
- |
826 |
- emake "${MAKEARGS[@]}" DESTDIR="${root}" install |
827 |
- multibuild_merge_root "${root}" "${D}" |
828 |
- |
829 |
- if ! multilib_is_native_abi; then |
830 |
- # Backwards compat, will be happily removed someday. |
831 |
- dosym "${CHOST}"-llvm-config /usr/bin/llvm-config.${ABI} |
832 |
- else |
833 |
- # Install docs. |
834 |
- if use doc; then |
835 |
- doman "${S}"/docs/_build/man/*.1 |
836 |
- use clang && doman "${T}"/clang.1 |
837 |
- dohtml -r "${S}"/docs/_build/html/ |
838 |
- else |
839 |
- if ! use clang; then |
840 |
- rm "${WORKDIR}"/${PN}-3.4-manpages/clang.1 || die |
841 |
- fi |
842 |
- doman "${WORKDIR}"/${PN}-3.4-manpages/*.1 |
843 |
- fi |
844 |
- |
845 |
- # Symlink the gold plugin. |
846 |
- if use gold; then |
847 |
- dodir /usr/${CHOST}/binutils-bin/lib/bfd-plugins |
848 |
- dosym ../../../../$(get_libdir)/LLVMgold.so \ |
849 |
- /usr/${CHOST}/binutils-bin/lib/bfd-plugins/LLVMgold.so |
850 |
- fi |
851 |
- |
852 |
- # install cmake modules |
853 |
- if use cmake; then |
854 |
- emake -C "${S%/}"_cmake/cmake/modules DESTDIR="${D}" install |
855 |
- fi |
856 |
- fi |
857 |
- |
858 |
- # apply CHOST and PV to clang executables |
859 |
- # they're statically linked so we don't have to worry about the lib |
860 |
- if use clang; then |
861 |
- local clang_tools=( clang clang++ ) |
862 |
- local i |
863 |
- |
864 |
- # append ${PV} and symlink back |
865 |
- # TODO: use alternatives.eclass? does that make any sense? |
866 |
- # maybe with USE=-clang on :0 and USE=clang on older |
867 |
- for i in "${clang_tools[@]}"; do |
868 |
- mv "${ED%/}/usr/bin/${i}"{,-${PV}} || die |
869 |
- dosym "${i}"-${PV} /usr/bin/${i} |
870 |
- done |
871 |
- |
872 |
- # now prepend ${CHOST} and let the multilib-build.eclass symlink it |
873 |
- if ! multilib_is_native_abi; then |
874 |
- # non-native? let's replace it with a simple wrapper |
875 |
- for i in "${clang_tools[@]}"; do |
876 |
- rm "${ED%/}/usr/bin/${i}-${PV}" || die |
877 |
- cat > "${T}"/wrapper.tmp <<-_EOF_ |
878 |
- #!${EPREFIX}/bin/sh |
879 |
- exec "${i}-${PV}" $(get_abi_CFLAGS) "\${@}" |
880 |
- _EOF_ |
881 |
- newbin "${T}"/wrapper.tmp "${i}-${PV}" |
882 |
- done |
883 |
- fi |
884 |
- fi |
885 |
- |
886 |
- # Fix install_names on Darwin. The build system is too complicated |
887 |
- # to just fix this, so we correct it post-install |
888 |
- local lib= f= odylib= ndylib= libpv=${PV} |
889 |
- if [[ ${CHOST} == *-darwin* ]] ; then |
890 |
- eval $(grep PACKAGE_VERSION= configure) |
891 |
- [[ -n ${PACKAGE_VERSION} ]] && libpv=${PACKAGE_VERSION} |
892 |
- libpvminor=${libpv%.[0-9]*} |
893 |
- for lib in lib{EnhancedDisassembly,LLVM-${libpv},LTO,profile_rt,clang}.dylib LLVMHello.dylib clang/${libpv}/lib/darwin/libclang_rt.asan_{osx,iossim}_dynamic.dylib; do |
894 |
- # libEnhancedDisassembly is Darwin10 only, so non-fatal |
895 |
- # + omit clang libs if not enabled |
896 |
- [[ -f ${ED}/usr/lib/${lib} ]] || continue |
897 |
- |
898 |
- ebegin "fixing install_name of $lib" |
899 |
- install_name_tool \ |
900 |
- -id "${EPREFIX}"/usr/lib/${lib} \ |
901 |
- "${ED}"/usr/lib/${lib} |
902 |
- eend $? |
903 |
- done |
904 |
- for f in "${ED}"/usr/bin/* "${ED}"/usr/lib/lib*.dylib "${ED}"/usr/lib/clang/${libpv}/lib/darwin/*.dylib ; do |
905 |
- # omit clang libs if not enabled |
906 |
- [[ -f "${f}" ]] || continue |
907 |
- |
908 |
- scanmacho -BF'%n#f' "${f}" | tr ',' '\n' | \ |
909 |
- while read odylib ; do |
910 |
- ndylib= |
911 |
- case ${odylib} in |
912 |
- */libclang.dylib) |
913 |
- ndylib="${EPREFIX}"/usr/lib/libclang.dylib |
914 |
- ;; |
915 |
- */libLLVM-${libpv}.dylib) |
916 |
- ndylib="${EPREFIX}"/usr/lib/libLLVM-${libpv}.dylib |
917 |
- ;; |
918 |
- */libLLVM-${libpvminor}.dylib) |
919 |
- ndylib="${EPREFIX}"/usr/lib/libLLVM-${libpvminor}.dylib |
920 |
- ;; |
921 |
- */libLTO.dylib) |
922 |
- ndylib="${EPREFIX}"/usr/lib/libLTO.dylib |
923 |
- ;; |
924 |
- esac |
925 |
- if [[ -n ${ndylib} ]] ; then |
926 |
- ebegin "fixing install_name reference to ${odylib} of ${f##*/}" |
927 |
- install_name_tool \ |
928 |
- -change "${odylib}" "${ndylib}" \ |
929 |
- "${f}" |
930 |
- eend $? |
931 |
- fi |
932 |
- done |
933 |
- done |
934 |
- fi |
935 |
-} |
936 |
- |
937 |
-multilib_src_install_all() { |
938 |
- insinto /usr/share/vim/vimfiles/syntax |
939 |
- doins utils/vim/*.vim |
940 |
- |
941 |
- if use clang; then |
942 |
- cd tools/clang || die |
943 |
- |
944 |
- if use static-analyzer ; then |
945 |
- dobin tools/scan-build/ccc-analyzer |
946 |
- dosym ccc-analyzer /usr/bin/c++-analyzer |
947 |
- dobin tools/scan-build/scan-build |
948 |
- |
949 |
- insinto /usr/share/${PN} |
950 |
- doins tools/scan-build/scanview.css |
951 |
- doins tools/scan-build/sorttable.js |
952 |
- fi |
953 |
- |
954 |
- python_inst() { |
955 |
- if use static-analyzer ; then |
956 |
- pushd tools/scan-view >/dev/null || die |
957 |
- |
958 |
- python_doscript scan-view |
959 |
- |
960 |
- touch __init__.py || die |
961 |
- python_moduleinto clang |
962 |
- python_domodule __init__.py Reporter.py Resources ScanView.py startfile.py |
963 |
- |
964 |
- popd >/dev/null || die |
965 |
- fi |
966 |
- |
967 |
- if use python ; then |
968 |
- pushd bindings/python/clang >/dev/null || die |
969 |
- |
970 |
- python_moduleinto clang |
971 |
- python_domodule __init__.py cindex.py enumerations.py |
972 |
- |
973 |
- popd >/dev/null || die |
974 |
- fi |
975 |
- |
976 |
- # AddressSanitizer symbolizer (currently separate) |
977 |
- python_doscript "${S}"/projects/compiler-rt/lib/asan/scripts/asan_symbolize.py |
978 |
- } |
979 |
- python_foreach_impl python_inst |
980 |
- fi |
981 |
-} |
982 |
|
983 |
diff --git a/sys-devel/llvm/metadata.xml b/sys-devel/llvm/metadata.xml |
984 |
index 3a671d6..7371a1f 100644 |
985 |
--- a/sys-devel/llvm/metadata.xml |
986 |
+++ b/sys-devel/llvm/metadata.xml |
987 |
@@ -20,13 +20,11 @@ |
988 |
4. LLVM does not imply things that you would expect from a high-level virtual machine. It does not require garbage collection or run-time code generation (In fact, LLVM makes a great static compiler!). Note that optional LLVM components can be used to build high-level virtual machines and other systems that need these services.</longdescription> |
989 |
<use> |
990 |
<flag name="clang">Build the clang C/C++ compiler</flag> |
991 |
- <flag name="cmake">Enable cmake support (experimental)</flag> |
992 |
<flag name="doc">Build and install the HTML documentation and regenerate the man pages</flag> |
993 |
<flag name="gold">Build the gold linker plugin</flag> |
994 |
<flag name="lldb">Build the lldb debugger</flag> |
995 |
<flag name="multitarget">Build all host targets (default: host only)</flag> |
996 |
<flag name="ncurses">Support querying terminal properties using ncurses' terminfo</flag> |
997 |
<flag name="static-analyzer">Install the Clang static analyzer (requires USE=clang)</flag> |
998 |
- <flag name="udis86">Enable support for <pkg>dev-libs/udis86</pkg> disassembler library</flag> |
999 |
</use> |
1000 |
</pkgmetadata> |