Version bump
authorBernard Cafarelli <voyageur@gentoo.org>
Wed, 21 Jan 2015 09:26:50 +0000 (09:26 +0000)
committerBernard Cafarelli <voyageur@gentoo.org>
Wed, 21 Jan 2015 09:26:50 +0000 (09:26 +0000)
Package-Manager: portage-2.2.15/cvs/Linux x86_64
Manifest-Sign-Key: 0xC74525F2

sys-devel/clang/ChangeLog
sys-devel/clang/Manifest
sys-devel/clang/clang-3.5.1-r100.ebuild [new file with mode: 0644]
sys-devel/dragonegg/ChangeLog
sys-devel/dragonegg/Manifest
sys-devel/dragonegg/dragonegg-3.5.1.ebuild [new file with mode: 0644]
sys-devel/llvm/ChangeLog
sys-devel/llvm/Manifest
sys-devel/llvm/llvm-3.5.1.ebuild [new file with mode: 0644]

index 67abfce324c5f882fe86e9dc46bb4693099f4d56..8793ec4534761a9f2dc6d9c7d719b810939c34e6 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for sys-devel/clang
 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/clang/ChangeLog,v 1.116 2015/01/01 20:52:48 maekke Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/clang/ChangeLog,v 1.117 2015/01/21 09:26:47 voyageur Exp $
+
+*clang-3.5.1-r100 (21 Jan 2015)
+
+  21 Jan 2015; Bernard Cafarelli <voyageur@gentoo.org>
+  +clang-3.5.1-r100.ebuild:
+  Version bump
 
   01 Jan 2015; Markus Meier <maekke@gentoo.org> clang-3.5.0-r100.ebuild:
   arm stable, bug #530882
index 577b1c06bc2b74c7f4a235e0bfef2bc7a6429c7d..ee2f0dc5c824548850c66cdfeb93323b2a25b782 100644 (file)
@@ -41,14 +41,15 @@ EBUILD clang-3.2.ebuild 6522 SHA256 795a7e1e2fbdb0f09cd02584cbe5e7a45c5da5351494
 EBUILD clang-3.3-r100.ebuild 1245 SHA256 131ec94b63ca98b5bc7946ed7bbc653d1448f0be8094c5f04b25d56dad591589 SHA512 f963c85f35138cb95e0fab0c3c575d970855521e9d4855a774107a03762f2ce9723cbd0f54bd9f12f99505bc6b6e71599544c8afa14ee1118d76637b1ddb12de WHIRLPOOL c01519b962c25117cfebc59292738246f14eccac064da93a0772c809e32f11520b84d714bc4a56a37d136cf52ed2c2f2f62b444c36e0e780998c8423edbb8c85
 EBUILD clang-3.4.2-r100.ebuild 1253 SHA256 ab26bd84f4af9df8ecf2c1d33f7dc7b06ff87da24f8a961e09657bc308f43be1 SHA512 1be2f14b79ad90fc4f957fff7f9733416944750a79ad5989481c31d2f9e22465f4b6ec7ce22e7c30b9332dedd72780cf214c193c61f2770b3cf032ca01fa56b5 WHIRLPOOL ff1f69cd17ad1cf313a59f70890bc43881afe2cdd5e4c3a32a15c493e7da4240b09700665475d400f7eaa793562f4972eef2392cbb6b962bf58bf9d778bcae5d
 EBUILD clang-3.5.0-r100.ebuild 1247 SHA256 ba003508c0bf840b74f19dc3a82237efdab47be1e8883c109330ae2badcc0f35 SHA512 700ccbc21dc18045912f662a57f3fa585d6d3d1f18da6b6db1d5b19cfe9f980aaf650d22169906020c3d424d9c0ec5a0eb12eb690e380095a0bcb1269db06eda WHIRLPOOL 9345a2a047c4825d90a46643639ac343d5991449fcec971249ee092b35233c4bcc2c5319265664bf826514b9f0934532fa0baa6897e460bb20f8393e452ec7d1
+EBUILD clang-3.5.1-r100.ebuild 1253 SHA256 4a2bbc2a0f7177fe9ec11d16efed49c16c4dea3891bf192d197c4798b36753df SHA512 4dd0b0db3781d8877c79b1e67c245b796b438721225245459e254df9fb566c183e7a3bb93e141d4b876b3842369f5baca288fafee9f83667ff056a055ac1af51 WHIRLPOOL 2686d4948fadaa65e388dd4ea7a87c7ccaf0365a910096ff1a044513a22c31fba4b121b643ca715ef00b5f3ef41948bea55ddf918a512ec4a27fe5db588319fb
 EBUILD clang-9999-r100.ebuild 1139 SHA256 d7d4078b16c78d7e0ab6bd91a3ad6e1c54f815439e14d4e41a2724b108e68d51 SHA512 6c4985c89701ff3550a84d1e9cce4fb14d494ef2f5a11c891f1802f42bc958df1e344965851a2b0ba40d60096bbaa2a848a8131a7ea39c0b660eb2d986bfaeb7 WHIRLPOOL a708b44763db1b505b9b390acb40463b1fdaba9d837567a7b125124bee9ef701f6d219a27825bb35ffd937ff7751aa9d2c518c7ec0f155c126ea62281a0e1d25
 EBUILD clang-9999.ebuild 5992 SHA256 ccd346a9e3a61aabefb861eb81cbceafbda9fc96ee50e1a1d685b62c79c269c7 SHA512 42666495c287cec9b86b0cc213efa4f7d945df38ac2159b33684a73543f0138455903f6fa861822fdea1099616dfb83975d0cea220e93f38fb4f7329232ccc25 WHIRLPOOL 964fbdce41fb19711d1435356da996022f0d69f62799c29a77b202d63f0ef5eaa4eb2270052c0525aae7e8b4a3e57e4bfaec57ee67642bdfc55796aa941fa5d4
-MISC ChangeLog 21313 SHA256 79856f61ba9981d89941dc75aa3083452f87d6a5ff2878a2eb717def5fee47d2 SHA512 3de8958b1665fa346d20dcfa63d628c3f238abaab7e1934fc4a5eec651a1f4076f5fef2228ae45055ccdefdcf29136c26135bf329109a5db4c55db7a6b1517c0 WHIRLPOOL 94456c2685fdf9a3f09508072ead264af356e0b170b1242fe182c59485f7b9945780ec41ff2d3e914d9d41c57cb3397d11f7109aa2ef1ab49303d4a1251c5cb2
+MISC ChangeLog 21447 SHA256 d27b7e89ee4589f532ecd35eb5f2861c6ebbe56b356b366309db135c02c83935 SHA512 6f0ca25ae8ae56ab17aae737522b7f1096bca666b0c45033b84906cc40bcaa35a3d4d24fe16aef7b14e2e02fae5e67325addca062f39ca6edb27c14b52fbaad9 WHIRLPOOL 6fcfb1db73e2771c5584876023232366a821b9f07be4058b63f390979360451cfe3f0201aa43432274b4a37a032b8214fdae166df2a44b33fcb402227aaff72a
 MISC metadata.xml 1347 SHA256 ac44c316696ae0c3b3b10dd9b1529e4bad85b0a3d5f6ac2b0ec6b657f559451c SHA512 faf5c07813f2556cdca2967741dc68ad53d56584bf1570fd2d25289b889f9ce3c4fe503b7b0a7f0f2145f6244c7ae33ad0e7b24762c5de2794b1c7d565f36968 WHIRLPOOL 3fcc87924c756e6ffe507caacc112b7a1507bdd5dca1cc2e4f5b3251d9f34fd6bdfb28c76ada06ecf58abea8be5b41e19cf2d412e4b84c68b508e2d0758e008b
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
-iEYEAREIAAYFAlSls6cACgkQkKaRLQcq0GIr/QCeLgqqMv4/A+1f6WFFFRX9EPjX
-tdQAnjXXwSQUdKSXgLAtnFvFWNb0lMlL
-=l/0n
+iF4EAREIAAYFAlS/cNgACgkQFYEBGcdFJfK6wwD/ZOdl2ytJz06OsycGLa51rN88
+Fd1rloEprFSMzuIGVfgA/1sGGIgcaVtSOd0eODpGfO9IR9wSpeR9AdoclZRdlSP/
+=wbZX
 -----END PGP SIGNATURE-----
diff --git a/sys-devel/clang/clang-3.5.1-r100.ebuild b/sys-devel/clang/clang-3.5.1-r100.ebuild
new file mode 100644 (file)
index 0000000..41f0a84
--- /dev/null
@@ -0,0 +1,36 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/clang/clang-3.5.1-r100.ebuild,v 1.1 2015/01/21 09:26:47 voyageur Exp $
+
+EAPI=5
+
+inherit multilib-build
+
+DESCRIPTION="C language family frontend for LLVM (meta-ebuild)"
+HOMEPAGE="http://clang.llvm.org/"
+SRC_URI=""
+
+LICENSE="UoI-NCSA"
+SLOT="0/3.5"
+KEYWORDS="~amd64 ~arm ~ppc ~x86 ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos"
+IUSE="debug multitarget python +static-analyzer"
+
+RDEPEND="~sys-devel/llvm-${PV}[clang(-),debug=,multitarget?,python?,static-analyzer,${MULTILIB_USEDEP}]"
+
+# Please keep this package around since it's quite likely that we'll
+# return to separate LLVM & clang ebuilds when the cmake build system
+# is complete.
+
+pkg_postinst() {
+       if has_version ">=dev-util/ccache-3.1.9-r2" ; then
+               #add ccache links as clang might get installed after ccache
+               "${EROOT}"/usr/bin/ccache-config --install-links
+       fi
+}
+
+pkg_postrm() {
+       if has_version ">=dev-util/ccache-3.1.9-r2" && [[ -z ${REPLACED_BY_VERSION} ]]; then
+               # --remove-links would remove all links, --install-links updates them
+               "${EROOT}"/usr/bin/ccache-config --install-links
+       fi
+}
index 3d13fe90e98ce89a993c3e26347a3c4d4e717654..2e8888e552e1c76f8a32d78be2da41b495b7bbc9 100644 (file)
@@ -1,6 +1,11 @@
 # ChangeLog for sys-devel/dragonegg
-# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/dragonegg/ChangeLog,v 1.20 2014/09/17 23:13:12 voyageur Exp $
+# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/dragonegg/ChangeLog,v 1.21 2015/01/21 09:26:42 voyageur Exp $
+
+*dragonegg-3.5.1 (21 Jan 2015)
+
+  21 Jan 2015; Bernard Cafarelli <voyageur@gentoo.org> +dragonegg-3.5.1.ebuild:
+  Version bump
 
 *dragonegg-3.5.0 (17 Sep 2014)
 
index 4c280f1eaf79a96ed2022e2d0817fc7f7b902317..0d3d760ae9c873223b7a3216cf67e9021cdb1e12 100644 (file)
@@ -2,15 +2,18 @@
 Hash: SHA256
 
 DIST dragonegg-3.5.0.src.tar.xz 373932 SHA256 591133384cbdf329fa12975689e108e8b7c6272333749da6a6633a2b606234ec SHA512 10d8a59442c4469c34e3314de3a7dfba0afe6c7fbedb2a5d8550f2e0b91d3e040585b1467c18944a7cb08bbdd4250681f080f3d932c6ea9ae0e29e593f6527f6 WHIRLPOOL eabbc8fdd6f9aa8f027f95f71eaa3d55c676f3ae61ba38537ddb5e24319ae090f80db62e9e85957ee9225c39ffa5cb228e4184b6676dcd72857455d002158996
+DIST dragonegg-3.5.1.src.tar.xz 374928 SHA256 65e7974a34406463cdfb8c0badd4dfe293ebe771a3d00c4d674d73c8007706e6 SHA512 546bef95aeea39e677b7e20a6d3085e3acac199dbebac12aa38b0991dc6420a07dd4e80466fd5a91285411095b33b0a23a4973dc911667fb4cc3461ef3af5a22 WHIRLPOOL f389644ad8829fb4be37ec1472ef6f5e2ee0f5a52e61395180ba97b70d624c5480463a77d1b4899a9472ec9771bb9789f1d5521e65edc2a9e3ff4eba4fb41b99
 DIST llvm-3.5.0.src.tar.xz 11735940 SHA256 28e199f368ef0a4666708f31c7991ad3bcc3a578342b0306526dd35f07595c03 SHA512 b4d0f325dbdb0a8f10e5fd031954ef4b1971d8f99f4e4b53834801a2b74a7acde3f77c655c8355b407424b363edfb10f71d85fc370356dc52af5c636a1bba197 WHIRLPOOL 561520823468b61c63df8e13f876b7ac586eb1e52c256e9a36370e5d46e8cef3937655c36fbb51eebd3680fab67412e7c777479477fc728e7a8f35420e573ef1
+DIST llvm-3.5.1.src.tar.xz 11869356 SHA256 bf3275d2d7890015c8d8f5e6f4f882f8cf3bf51967297ebe74111d6d8b53be15 SHA512 a643ff173627e813b26077829b1af801b75daa5dcea540c4f05366ed57ef6aeafaf8b3fe4208d4c1b303a048a90ddac48a23488480c165637ae9218de140ae55 WHIRLPOOL 798ad46bc21570d8e5b0caadf2c0b434382fd78bfea5a08097fa001019b749b828e56ffe330435e5f3556700e8b0bee29e4139a7ff6b2824bb83dcc8caba2606
 EBUILD dragonegg-3.5.0.ebuild 1346 SHA256 0de93fedb9af7a55379601f0d6473beddfcdc331d5b30ca567e223571b2ecd51 SHA512 05b81644969223c69f195c4d36a42dc10c0e612ad0ae1ea63212782fbcdb35d07ec97601a56fd3e2baf540be44b07bd0267694ec4385866ed2b54429a47c9cfe WHIRLPOOL c37b8bea123c98f7629ef73c1ea7b0c79811a9bb7a9479e369efcdc5b80a2f51dc944cd6e6c45fb86d9c17923758bb586bcb721aeeefafd45b878551a749ad0b
+EBUILD dragonegg-3.5.1.ebuild 1346 SHA256 6c0e7c51ac9b22cf7b3da4a157c96d1a66fd1c64d6cefab2827ccb1140104596 SHA512 01c8ef1ccb7a4d12c40c67244b7cfc816568a26f6eb2e9e1cbc7b1f252f735f5a952ae7d87458d8153db710f20cf1e06a8aa3908874ce7f70f15f1c444743c99 WHIRLPOOL 1639933ed0102bca759c4b58c003f6d23bcd91b1d931f41a25bcac8a1cd7e662ca16c0040bd80d3529996fe2debaadbd3b6e52500df4faad1c0c69ad4326ad0b
 EBUILD dragonegg-9999.ebuild 1444 SHA256 1292f7a40858cf03807c2b48506554e2e55272c350f265798afd08221297af06 SHA512 a226d9a76f3294856e8535380fa74fbb518b12bea79e4d7f3bfb4af48a196e0ed47bd7002046e2eb8cf1b56c62c826a419fbab2ecbb4d7050ee0ef3f6ed779c7 WHIRLPOOL 7647d408f455ef43f7b038b9fc8a1e201ec22d0dc043de3c4f08a6d8dcd5e36411e9bd326a3f41344ddad2d7c3004130d170bd3b42d4247b260d8e3c71332ab0
-MISC ChangeLog 3736 SHA256 438e15613374b186d860c6e48d6abe654dfe8af5d82e88b41aeea8954c891e81 SHA512 90c17e52fa8f926e37fa8d337ba20a5919a838b466eb04a475d1cfeced64c506141add71fd23e8dc07b2b9778b2c2e8c047ebcf9c036ea419574d18ffaa792e1 WHIRLPOOL fb1a719ca8b98b0d3c64e4481cd99069eea75b6fe7d54603fd6e9257168145fc6c6ddd03659d1af817afad9a61f0d16854a640545b60e043186065fac04b4c14
+MISC ChangeLog 3864 SHA256 e07276870cd2bdc0637817a138c6fc20779ea29da0a99884b209607a947f60c3 SHA512 8151b3583abe57982d354450ce2b90eee1d27213e69ad39fda0c378c77df8b8c6521182c5a57c12814f391f92aa8371cb2be07738c135d6a167721d40bf4b99a WHIRLPOOL a185edd7b142166cee809174c01108e2002f337104880f55b3225d0614289e6800a3bd60f3903e91542baefa63f1f7c5b53b5af53ee5c4c69011f2134fa90434
 MISC metadata.xml 492 SHA256 30b11ba6c1fb003706253651ad24ef789018d994e3e1d452e6639133a5a0b6f2 SHA512 6bf3c7b000bb563c104894cea43dad7f603155af8ffdfa2f90deac59c300429f28f34675f4c30e927626dd7cf037951cca497d48ddcf5da1e3f7bd07acbe14de WHIRLPOOL 8ead3c6d688f4037bce4901e464d19c425f9357658de2527113172dcc771806b0c52c2a0485e62f05c341b5c15c345b30122ca5decee233b3cf9807ff0158fda
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
-iF4EAREIAAYFAlQaFY4ACgkQFYEBGcdFJfJJEQEAqMWg9vakhPAz0IxYLCq0BCqt
-1ln1MNkZhUrR3a4kE48BAJcwm9hDNsE9YZP7yW3PCtDdZ9CqxyfbjQkzJBV9LDdM
-=xbQT
+iF4EAREIAAYFAlS/cNMACgkQFYEBGcdFJfIJEQD+OW92rmIC0QPYp+huYtv1v2hV
+xIIaZCJjn9UjJ+NenlkA/1ki0QgVjPny8QSKcl3N89ty/ovbLADA5RW9MrU4zglW
+=VNtz
 -----END PGP SIGNATURE-----
diff --git a/sys-devel/dragonegg/dragonegg-3.5.1.ebuild b/sys-devel/dragonegg/dragonegg-3.5.1.ebuild
new file mode 100644 (file)
index 0000000..98ae5a6
--- /dev/null
@@ -0,0 +1,48 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/dragonegg/dragonegg-3.5.1.ebuild,v 1.1 2015/01/21 09:26:42 voyageur Exp $
+
+EAPI=5
+inherit eutils multilib toolchain-funcs
+
+DESCRIPTION="GCC plugin that uses LLVM for optimization and code generation"
+HOMEPAGE="http://dragonegg.llvm.org/"
+SRC_URI="http://llvm.org/releases/${PV}/${P}.src.tar.xz
+       test? ( http://llvm.org/releases/${PV}/llvm-${PV}.src.tar.xz )"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux"
+IUSE="test"
+
+DEPEND=">=sys-devel/gcc-4.5
+       =sys-devel/llvm-${PV}*"
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/${P}.src
+
+src_compile() {
+       # GCC: compiler to use plugin with
+       emake CC="$(tc-getCC)" GCC="$(tc-getCC)" CXX="$(tc-getCXX)" VERBOSE=1
+}
+
+src_test() {
+       # GCC languages are determined via locale-dependant gcc -v output
+       export LC_ALL=C
+
+       emake LIT_DIR="${WORKDIR}"/llvm-${PV}.src/utils/lit check
+}
+
+src_install() {
+       exeinto /usr/$(get_libdir)
+       doexe dragonegg.so
+
+       dodoc README
+}
+
+pkg_postinst() {
+       elog "To use dragonegg, run gcc as usual, with an extra command line argument:"
+       elog "  -fplugin=/usr/$(get_libdir)/dragonegg.so"
+       elog "If you change the active gcc profile, or update gcc to a new version,"
+       elog "you will have to remerge this package to update the plugin"
+}
index 90a2cca9c4e2b1a0dfe4551d62bfe52b6883b89e..78ae5e40b6628212f07110d5779f4093435c62ff 100644 (file)
@@ -1,6 +1,11 @@
 # ChangeLog for sys-devel/llvm
 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/llvm/ChangeLog,v 1.218 2015/01/11 20:05:43 grobian Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/llvm/ChangeLog,v 1.219 2015/01/21 09:26:20 voyageur Exp $
+
+*llvm-3.5.1 (21 Jan 2015)
+
+  21 Jan 2015; Bernard Cafarelli <voyageur@gentoo.org> +llvm-3.5.1.ebuild:
+  Version bump
 
   11 Jan 2015; Fabian Groffen <grobian@gentoo.org>
   +files/clang-3.4-darwin_old_linker.patch, llvm-3.4.2.ebuild:
index 3b7402cbe43d08da8f612af58e4d4fa4ca934e6a..133388aa3b324d042598a7da648bf9a2c71017e3 100644 (file)
@@ -43,11 +43,14 @@ AUX llvm-3.6-gentoo-install.patch 3169 SHA256 318288e667623e22c441f7a1da8c3e27b3
 DIST cfe-3.3.src.tar.gz 9425539 SHA256 b1b55de4ab3a57d3e0331a83e0284610191c77d924e3446498d9113d08dfb996 SHA512 06773f43f7d3529f06edb029f7de398f06a700a0f2476e00c4727e70c291028221bfac23625dfd2c220d6ac91a21670848187a934b99a21801c695127371afcc WHIRLPOOL 8b97b527f19015dd3283b9e174615170e639793f64c635ccc4ee4d8216f8de759fd0121a8ef3513fa1c6ad19b31aa3529091ffb44a01ee858edfef400881596a
 DIST cfe-3.4.2.src.tar.gz 10612313 SHA256 5ba6f5772f8d00f445209356a7daf83c5bca2da5acd10de517ad2359ae95bc10 SHA512 e01fa8e312e9b3b7b3cb572ac21349161aaa50078ecfe7bded273b75db4a0c44acde524f8fdfcbeec54c61eeeb8339e9917d1f205a8fda18e34fe7ccbe89c36d WHIRLPOOL 153208b1a60bb5fbe92a7162cb26bbe70d591e7db9dcf06fcd54efc539bbff0403ec88e64236969c9f256e5586bc333840bd6178fd158577d6fe228d9edd4dcd
 DIST cfe-3.5.0.src.tar.xz 8233432 SHA256 fc80992e004b06f6c7afb612de1cdaa9ac9d25811c55f94fcf7331d9b81cdb8b SHA512 b26a5e2cd81c150607c23b22fafc0d9c7f12b83b45e476b8e75bf5e99d42be7c98ffeac7349df664f01b00900864a01429860b298e48961861377a4b2daf3e49 WHIRLPOOL 5dd8b6fe97933b74f1668b1d753c16cd3bcd05ccf72aac1283aa449caf93f5ba88ae79e7668f7e79b554e1421549a87af21c86cf92657c1b4d77744165718ce7
+DIST cfe-3.5.1.src.tar.xz 8268140 SHA256 6773f3f9cf815631cc7e779ec134ddd228dc8e9a250e1ea3a910610c59eb8f5c SHA512 bd904586f6155c05d2f7ddd05b86c28feae883cdc60e2cb3b48d4ae0ce55916064bcea414a46518d0fb73618f18a3f3fca6cc4cad81083428a2221299f5c5c7f WHIRLPOOL eca619b84ae6dfbca4b3d46601419d2c5a0cd77d643336c560d4bc358f4a2b0f7123d3e87248119c3e447143859da20b9b2e94721ebb14053627f0a158d843f5
 DIST clang-tools-extra-3.4.src.tar.gz 230729 SHA256 ba85187551ae97fe1c8ab569903beae5ff0900e21233e5eb5389f6ceab1028b4 SHA512 9656678acea490fd5674b2d47ad30ec69e5aedb450924e566a90418c94ce6483faa254e7dde0d5163cb0643153113d27b6b000fea7bba08f0ba55741b35873b1 WHIRLPOOL c41ec11d0b88678c56d77d285c4383a39cabab16aae8a4457666014e0927aa4b04cf77e73af0275e6bfc603a9531598eca98ab61d5d81288e2920682088d9eaf
 DIST clang-tools-extra-3.5.0.src.tar.xz 216256 SHA256 2981beb378afb5aa5c50ed017720a42a33e77e902c7086ad2d412ef4fa931f69 SHA512 5ff2cc5d143b78fbe6645486f02e50f738a92aaf6b8e85cfc6f91e659684686b12e61fc8f00b814b4372c5ed2c2b1be5eca61ea696fbe074b815877b799534ee WHIRLPOOL 10b5afc550fa6a8c33739fbf9268e934732b2892842d398152676e66ab90aed3c6e1bae02bc1b8aa0a9a917b6b450f60950317a9eda3f9e377971cbe00164b11
+DIST clang-tools-extra-3.5.1.src.tar.xz 215776 SHA256 e8d011250389cfc36eb51557ca25ae66ab08173e8d53536a0747356105d72906 SHA512 eefacd6857584c9a3186815a7d015a595f32cd926f6c221245d388b8cb9266c52e0980a8e94f01f49c452510fdd42e659b02f116619d3d0e35170566f0704712 WHIRLPOOL a3d14e21f201cc02649833edd67ba04f17c88486fbf399327dbb76d21e151b956a4f58cd7446b8563f72fa1cee06a8bd4abbc53234761a3a69fc1afc99ced87d
 DIST compiler-rt-3.3.src.tar.gz 1568034 SHA256 0e2f3180d6316e6c43f064fdd406c5c6515e682c5f31c57c28335b68c7525423 SHA512 3e86aa8ab9810b4fbac54a40fc93a717a55c642520858c0db215a5324c1e495b4d8fcec9620251cca8e4e5f9afa34bc14364d7f785880a0700469d0201827929 WHIRLPOOL fcfd06bc860dfd901a7576cd4309f863e9d4363e36ab4c67e9e08fe3c8a37d627ee95eb96b9ed53eb6047dec06e73181b3c3e1555b1b49f1e893e6382f21ddc1
 DIST compiler-rt-3.4.src.tar.gz 1858593 SHA256 f37c89b1383ce462d47537a0245ac798600887a9be9f63073e16b79ed536ab5c SHA512 70efffaf12ff7c15befa87ce808489c6f6b6eb421d0ab5d8ecd525239efc8aab850c7ed34b31a993ff5e499657b72598619945cc4461fe3e5359e9a94aaac0c8 WHIRLPOOL ad558b5877a01e476d30d2757959ab04be0c385b2fe3442bcc578bf36c6f3214cd78b4adda24fcb1f3b2b84353db213b82e8d7d4c40e66c3f57aed3a49322dbc
 DIST compiler-rt-3.5.0.src.tar.xz 1088352 SHA256 a4b3e655832bf8d9a357ea2c771db347237460e131988cbb96cda40ff39a8136 SHA512 862cce2d6b398bd1a8399496a547e6ab976a31f676528beebfbea5fd7dc54aa72e1c25deefa12f6167096521eba74090565b0168806451da02ddac04e922fc48 WHIRLPOOL 248acf997d70d7904aa79bf83e0c02ba4e5f8c2812c03f44a8e1e31b845a654f250c09ec6a123f9245d0db8713e8cc5a4087b9ce785af4f5eb7e55d9dbd362a2
+DIST compiler-rt-3.5.1.src.tar.xz 1092452 SHA256 adf4b526f33e681aff5961f0821f5b514d3fc375410008842640b56a2e6a837a SHA512 3a4f093972b080f439c81c8b08793c311cea71afeda7ba7b4e32f19378b1cb420da7b594fa9f6a6f7826570438f67d42d3243c4b3503e1cf8a7dcedf52e8e590 WHIRLPOOL edbf11837139b48207fc6f82ecad39fbc6983cf5bd1441cbe6d50e5e484566b63c5afa2fc64cd29fb8560f07015a98c00b58c926ca7e9af47b7eea92133d0db4
 DIST llvm-2.8-r1.tgz 9112527 SHA256 25addb742f1c6cc12877ed0ee924dda962d848368ee095be8e48342ae613d43b SHA512 8688d5cf415e8aef74cca6a14587af36234a6347e2238ac2c0d66805c42926b9399f36390e1a58a4081e902b0904adb818c1a360d5df572dfa893d6f79f5e35a WHIRLPOOL 0da9250e31242b55586c9138089e742aab5d414d5f3412ebf917ae8b9506f984c6134a932be93ec7e4c01c79f6c21d508cb0b2e0ec283419bd4ae4db745430ae
 DIST llvm-2.9.tgz 9574781 SHA256 661236cfa17428b48cfa9cbb9909f7569c64b8ecd219fd91dbc00e3b557b3779 SHA512 9cb0fa0bb8ac02661fd6f926001a15e0ad4a9660683421dc86b03f1cf5184142c5815f9f9283ee7cdf8d474e01177f83406122253342e0e95ddc878821660070 WHIRLPOOL f7b445b6b5d455f29ca68c342511b8b5e6eedec525af1cc60440c4de544df2332aa241bffca29eda5d2428a3f518e093a626bd45c7f8a9e0656d0f68aef5d9d1
 DIST llvm-3.0.tar.gz 10350539 SHA256 519eb11d3499ce99c6ffdb8718651fc91425ed7690eac91c8d6853474f7c0477 SHA512 602bb5590b70cb9138bc19d8c630c62bbabdcb2132215c921fe4bce4e3f74dfc66440b9dcd458ff55a86047cc9cc0417c6563715c133e0db222e4b88f07c13bb WHIRLPOOL 6f4ece3ec747352cd78b08d25c5b1cda91140eb6957d509161e45395e47c074f8d2102bfcaeabcdef8c1f6672f2cf06d88e290667666122da029391b3528d440
@@ -60,6 +63,7 @@ DIST llvm-3.4-manpages.tar.bz2 33753 SHA256 dc2616104cf333dd9ef56b2d31f9a36e8130
 DIST llvm-3.4.2.src.tar.gz 15938155 SHA256 17038d47069ad0700c063caed76f0c7259628b0e79651ce2b540d506f2f1efd7 SHA512 6c1453f7d9d9110257db3574cc4f6227fed8938705cbb09851ac09a868089b48f1556a1b6e758aff6d97520b08b5605d3ed20411ad9dd22cdc573d62176905f0 WHIRLPOOL f8b4d5167469e6f350ec41aede04e7b756e18f3d8e78b3270beb5791310a7b9b13c69e57c8bcfefbd0a78efc0c40e3b75a9a158eac72c025b7c77146e8dfaf7c
 DIST llvm-3.5.0-manpages.tar.bz2 35314 SHA256 724e752a60016dce8cc536658906d3646c600e977374e0ea692a5d0fe2d4a021 SHA512 d99d6096d7f21a81923297584fe5eeb23e0d83d4538fe376615c92fffc8aff3189999f7ab3c537b5aa5d6bc2c22c53eb05717d48c7ab99c42315b8665bac62c3 WHIRLPOOL 68ced06ee6678c5333c662eb1cc0da744c5a184b12dd059c1b77ec200b1d3cc231f270b9d9b6e177d728776894277b3f9061338aa55620c90474eb97915b7819
 DIST llvm-3.5.0.src.tar.xz 11735940 SHA256 28e199f368ef0a4666708f31c7991ad3bcc3a578342b0306526dd35f07595c03 SHA512 b4d0f325dbdb0a8f10e5fd031954ef4b1971d8f99f4e4b53834801a2b74a7acde3f77c655c8355b407424b363edfb10f71d85fc370356dc52af5c636a1bba197 WHIRLPOOL 561520823468b61c63df8e13f876b7ac586eb1e52c256e9a36370e5d46e8cef3937655c36fbb51eebd3680fab67412e7c777479477fc728e7a8f35420e573ef1
+DIST llvm-3.5.1.src.tar.xz 11869356 SHA256 bf3275d2d7890015c8d8f5e6f4f882f8cf3bf51967297ebe74111d6d8b53be15 SHA512 a643ff173627e813b26077829b1af801b75daa5dcea540c4f05366ed57ef6aeafaf8b3fe4208d4c1b303a048a90ddac48a23488480c165637ae9218de140ae55 WHIRLPOOL 798ad46bc21570d8e5b0caadf2c0b434382fd78bfea5a08097fa001019b749b828e56ffe330435e5f3556700e8b0bee29e4139a7ff6b2824bb83dcc8caba2606
 EBUILD llvm-2.8-r2.ebuild 6305 SHA256 0d3960a19619eaa4c532ec703afda259851e40649ddec4133148459bc7e667a2 SHA512 d397e3a098bcbf9ec91bcb0520d73fc188a00c68ef2392f66bdfa5ee7902f0e3d76bf2263c499f336489eb91391fd5f52ca1918e9e6e27a009c8d87c4058db70 WHIRLPOOL d8049c39b65046a93e10016c7b12cd49246228e032258e78726f74a4471873fba7dabf57db02d7d4a99539465cad653d02efeae54dd3aaeac4bf3a03a6a5a99b
 EBUILD llvm-2.9-r2.ebuild 6380 SHA256 e95d4d6c0fefb602a04197b10d31fff3c4ef997ff7351deeb2b170033d4048a9 SHA512 afffc1450d8c6b45f88180187e13894aceb1cb8d62ba5ee3467d7d891e34259a29173db6596c43ad9f082430d75e5ce89612ef9de6c48716a410b69d05d62ea3 WHIRLPOOL 4659745840411d9787087d38368181054acab9ef5bd7359c56e96269ab8d169783ccb65b1a5948a9a2d35c401c91f46d61d3717730ce71d67bba6832286bc990
 EBUILD llvm-3.0-r2.ebuild 5767 SHA256 62fca1169c63516f29102a3a1bb4ea74408dfd151d97a9edbfb165a2def317c3 SHA512 f7ee2bbf8b31d86c11ab07f530278e3240ec21f3c58144a9e627aef3c1fb7690935786f33368a6f56062b5daf501adebfc164fd6712985a91076897b89cdd85f WHIRLPOOL be1a6edd697e2504df033705c2cb8e37f6c17a13d77558d231172c00f91ec247785469b6e1265e25c42eb3f6f394614cf516e0e422cb54094d9ba25669c8406c
@@ -68,13 +72,14 @@ EBUILD llvm-3.2.ebuild 6534 SHA256 eb16cc91887fdb035722d268caaa3e4843825403786fc
 EBUILD llvm-3.3-r3.ebuild 14190 SHA256 d16d933d6791ef7dbe08aa43340bb9924e063af11fa9e13ca8230509240d2c15 SHA512 c986e970f489f7ff79188043db397383e3c567735c8f4a1e8a13b89ef6a3a9f4b8550218444eadd04ef3a14143ab05dc839b3dbe935128f5437157d3aaec02cf WHIRLPOOL 910f7d65902548270835371a5076c746534c0b57487fb8fb149a893454e86e942beed284d6b7491cfb2f043a6e19554f97aec829067938192e75f64bd0fd7a7c
 EBUILD llvm-3.4.2.ebuild 15684 SHA256 bf48165569f4e1d74e59315ad96183c2275a4ebd909460e9478ea5ece021da23 SHA512 0885736fb3e33aa6aa76c8f83e9280e66482e4748722f9ebb767e1ca47fa94e00ab2007702c7aa35a36c06103fa41ce00fa3a8123e9adc14bcc0778edc211cad WHIRLPOOL a659c1f8dc8452299ce98e7b9d7e66515b1c8fcf8922d97888bc761acbe4e6d40412c635e5bbee9207c68cdf9c46d13b3c8e4012f38abb54c930a1b2eab5348d
 EBUILD llvm-3.5.0.ebuild 15104 SHA256 f3f8698353f9c5d2c9e28ade63b4573e6efb5cbace7da0ee400cfcd7e3e486b6 SHA512 a3434a4ef8050300f9e7309e35693c0b928bb5b438d95c54cf76298f29669b16466711f341ef0d37a3b6817342667f18130d106a2e839fcac0855a0db519758a WHIRLPOOL 4f662cdf9fb8b53d17c6c958b9734e91a7d085bcba0d7ad32c8a21e079adc57f62ef925ae1d1016e1642452e62d2cba1e8a9e39241d783cca8baad43bf9045e5
+EBUILD llvm-3.5.1.ebuild 15060 SHA256 bda12820f3ca90a7e4fcccca111f8e52182b8e3c8c5d711beeb910edeaac44c9 SHA512 f66ec4463a87960e6a4ffef03c1d2fbc86c2e4871c23be260d2c4a11a6d54e4f81332735e1506575dbc77a9644a07107fedbd664a41cd4d96ef06bba099445e0 WHIRLPOOL 76855732a46f1096bbb374788ba2b8435f8a1ca30f974de3679517cfd7a87cdfaf2d79d4b5a14d6fba8267fdee9315a88c262d94f992629afa728670a557c400
 EBUILD llvm-9999.ebuild 13914 SHA256 96c731cfe077bec0da28a5dc82179e6e70bda7fc77c8c25ed4d64eca845738f8 SHA512 ed6a18ae0a1c59c3327d118d478a03e4a73953d9a5a3b2c0953ce80076f2d07db9e83e078a7af00e094191d2dc1c3372640340a63ccb7bac77a9756f679c5f98 WHIRLPOOL e70e3977d37f1dcbda3541f028c1d45065453f23ec280bba2aaab69386f390a2a2fea5cbfc7050ae16ef5beb0ff3336839e988b6cf8d95235097713d627fba8b
-MISC ChangeLog 36623 SHA256 a1108a138848d014a912f723b56f8d0eeadd83e69d1cf2a1184ea34a78fcda8e SHA512 f84c418730416b6d98205569b19bc785da6db4a3b2a133baf1f161a729eb322d236be6d3b3051587364675c987bc1a9eaa63e6f04b845776acf239f25c71ac73 WHIRLPOOL f1c950813fdabbcb0f787286ba3b6a859e317850ccab2bf7f70f55dfe02083a09294f5b1ddb983f63935a981006e52144d00d1a00606f4d644ce631172300b49
+MISC ChangeLog 36742 SHA256 f9616bfd26333f3cdda2f3667ea16cde962110537eaeab9b99471f2a7b7f4a54 SHA512 7ea0a63e9f9e46e42d448328c1e4dcc1a72f84a82a85014a6a259669f225e50ce82c5ca7beac63430795d638afbae27b581871055773c0bbc5620a61579c50ea WHIRLPOOL 9757ebf428044f6087f64ca9b627e252a7d6433257c5a9e4d04e23928a2ff1f340d85dc9da6941d2aa4718182cd4b2b6e01f8f61c46a617318abf61116b95f29
 MISC metadata.xml 2787 SHA256 22dc7b91c98fb4258271cc9cd4bd99f214b30f258bbdfea83dc37ac74df8d498 SHA512 4fca0d2551a889e7800c688077adf405697d05730bf66621ac53fdefeeeaddb7a8d868973edc9a6fe48e9a07734f1d43fd88229bae693fe181a7dbb95eeb9481 WHIRLPOOL 6284033d40bef02510f924ec1e6a9d3e1072bf26945fdedde0ddaf1d6d35c3d30971cdefa583a8e4d9db3da67bee04145ace15ded4cee63f534588b66633c76b
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
-iEYEAREIAAYFAlSy15gACgkQX3X2B8XHTomntwCfVZV45AJNM38X/2JAWimDDZ8I
-oN8AoKF+OlmWFey20yKClAzAexi7Vea4
-=pVzl
+iF4EAREIAAYFAlS/cMIACgkQFYEBGcdFJfIHogD+JOmzHmDpNc31flU7P9ma3LTw
+EdWo/QtK0q/1mYxY8CsBAJXKtxPR+TJ3AHTQ+iik5MiXSOkoglS2KLoLEF+emeie
+=UpIE
 -----END PGP SIGNATURE-----
diff --git a/sys-devel/llvm/llvm-3.5.1.ebuild b/sys-devel/llvm/llvm-3.5.1.ebuild
new file mode 100644 (file)
index 0000000..be5e9b3
--- /dev/null
@@ -0,0 +1,524 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/llvm/llvm-3.5.1.ebuild,v 1.1 2015/01/21 09:26:20 voyageur Exp $
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 pypy )
+
+inherit eutils flag-o-matic multibuild multilib \
+       multilib-minimal python-r1 toolchain-funcs pax-utils check-reqs prefix
+
+DESCRIPTION="Low Level Virtual Machine"
+HOMEPAGE="http://llvm.org/"
+SRC_URI="http://llvm.org/releases/${PV}/${P}.src.tar.xz
+       clang? ( http://llvm.org/releases/${PV}/compiler-rt-${PV}.src.tar.xz
+               http://llvm.org/releases/${PV}/cfe-${PV}.src.tar.xz
+               http://llvm.org/releases/${PV}/clang-tools-extra-${PV}.src.tar.xz )
+       !doc? ( http://dev.gentoo.org/~voyageur/distfiles/${PN}-3.5.0-manpages.tar.bz2 )"
+
+LICENSE="UoI-NCSA"
+SLOT="0/3.5"
+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"
+IUSE="clang debug doc gold libedit +libffi multitarget ncurses ocaml python
+       +static-analyzer test xml video_cards_radeon
+       kernel_Darwin kernel_FreeBSD"
+
+COMMON_DEPEND="
+       sys-libs/zlib:0=
+       clang? (
+               python? ( ${PYTHON_DEPS} )
+               static-analyzer? (
+                       dev-lang/perl:*
+                       ${PYTHON_DEPS}
+               )
+               xml? ( dev-libs/libxml2:2= )
+       )
+       gold? ( >=sys-devel/binutils-2.22:*[cxx] )
+       libedit? ( dev-libs/libedit:0=[${MULTILIB_USEDEP}] )
+       libffi? ( >=virtual/libffi-3.0.13-r1:0=[${MULTILIB_USEDEP}] )
+       ncurses? ( >=sys-libs/ncurses-5.9-r3:5=[${MULTILIB_USEDEP}] )
+       ocaml? ( dev-lang/ocaml:0= )"
+# configparser-3.2 breaks the build (3.3 or none at all are fine)
+DEPEND="${COMMON_DEPEND}
+       app-arch/xz-utils
+       dev-lang/perl
+       >=sys-devel/make-3.81
+       >=sys-devel/flex-2.5.4
+       >=sys-devel/bison-1.875d
+       || ( >=sys-devel/gcc-3.0 >=sys-devel/gcc-apple-4.2.1
+               ( >=sys-freebsd/freebsd-lib-9.1-r10 sys-libs/libcxx )
+       )
+       || ( >=sys-devel/binutils-2.18 >=sys-devel/binutils-apple-3.2.3 )
+       clang? ( xml? ( virtual/pkgconfig ) )
+       doc? ( dev-python/sphinx )
+       libffi? ( virtual/pkgconfig )
+       !!<dev-python/configparser-3.3.0.2
+       ${PYTHON_DEPS}"
+RDEPEND="${COMMON_DEPEND}
+       clang? ( !<=sys-devel/clang-${PV}-r99
+               !>=sys-devel/clang-9999 )
+       abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r2
+               !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] )"
+PDEPEND="clang? ( =sys-devel/clang-${PV}-r100 )"
+
+# pypy gives me around 1700 unresolved tests due to open file limit
+# being exceeded. probably GC does not close them fast enough.
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+       test? ( || ( $(python_gen_useflags 'python*') ) )"
+
+S=${WORKDIR}/${P}.src
+
+# Some people actually override that in make.conf. That sucks since
+# we need to run install per-directory, and ninja can't do that...
+# so why did it call itself ninja in the first place?
+CMAKE_MAKEFILE_GENERATOR=emake
+
+pkg_pretend() {
+       # in megs
+       # !clang !debug !multitarget -O2       400
+       # !clang !debug  multitarget -O2       550
+       #  clang !debug !multitarget -O2       950
+       #  clang !debug  multitarget -O2      1200
+       # !clang  debug  multitarget -O2      5G
+       #  clang !debug  multitarget -O0 -g  12G
+       #  clang  debug  multitarget -O2     16G
+       #  clang  debug  multitarget -O0 -g  14G
+
+       local build_size=550
+       use clang && build_size=1200
+
+       if use debug; then
+               ewarn "USE=debug is known to increase the size of package considerably"
+               ewarn "and cause the tests to fail."
+               ewarn
+
+               (( build_size *= 14 ))
+       elif is-flagq -g || is-flagq -ggdb; then
+               ewarn "The C++ compiler -g option is known to increase the size of the package"
+               ewarn "considerably. If you run out of space, please consider removing it."
+               ewarn
+
+               (( build_size *= 10 ))
+       fi
+
+       # Multiply by number of ABIs :).
+       local abis=( $(multilib_get_enabled_abis) )
+       (( build_size *= ${#abis[@]} ))
+
+       local CHECKREQS_DISK_BUILD=${build_size}M
+       check-reqs_pkg_pretend
+
+       if [[ ${MERGE_TYPE} != binary ]]; then
+               echo 'int main() {return 0;}' > "${T}"/test.cxx || die
+               ebegin "Trying to build a C++11 test program"
+               if ! $(tc-getCXX) -std=c++11 -o /dev/null "${T}"/test.cxx; then
+                       eerror "LLVM-${PV} requires C++11-capable C++ compiler. Your current compiler"
+                       eerror "does not seem to support -std=c++11 option. Please upgrade your compiler"
+                       eerror "to gcc-4.7 or an equivalent version supporting C++11."
+                       die "Currently active compiler does not support -std=c++11"
+               fi
+               eend ${?}
+       fi
+}
+
+pkg_setup() {
+       pkg_pretend
+}
+
+src_unpack() {
+       default
+
+       rm -f "${S}"/tools/clang "${S}"/projects/compiler-rt \
+               || die "symlinks removal failed"
+
+       if use clang; then
+               mv "${WORKDIR}"/cfe-${PV}.src "${S}"/tools/clang \
+                       || die "clang source directory move failed"
+               mv "${WORKDIR}"/compiler-rt-${PV}.src "${S}"/projects/compiler-rt \
+                       || die "compiler-rt source directory move failed"
+               mv "${WORKDIR}"/clang-tools-extra-${PV}.src "${S}"/tools/clang/tools/extra \
+                       || die "clang-tools-extra source directory move failed"
+       fi
+}
+
+src_prepare() {
+       epatch "${FILESDIR}"/${PN}-3.2-nodoctargz.patch
+       epatch "${FILESDIR}"/${PN}-3.5-gcc-4.9.patch
+       epatch "${FILESDIR}"/${PN}-3.5-gentoo-install.patch
+
+       if use clang; then
+               # Automatically select active system GCC's libraries, bugs #406163 and #417913
+               epatch "${FILESDIR}"/clang-3.5-gentoo-runtime-gcc-detection-v3.patch
+
+               epatch "${FILESDIR}"/clang-3.5-gentoo-install.patch
+               epatch "${FILESDIR}"/clang-3.4-darwin_prefix-include-paths.patch
+               eprefixify tools/clang/lib/Frontend/InitHeaderSearch.cpp
+       fi
+
+       if use prefix && use clang; then
+               sed -i -e "/^CFLAGS /s@-Werror@-I${EPREFIX}/usr/include@" \
+                       projects/compiler-rt/make/platform/clang_*.mk || die
+       fi
+
+       local sub_files=(
+               Makefile.config.in
+               Makefile.rules
+               tools/llvm-config/llvm-config.cpp
+       )
+       use clang && sub_files+=(
+               tools/clang/lib/Driver/Tools.cpp
+               tools/clang/tools/scan-build/scan-build
+       )
+
+       # unfortunately ./configure won't listen to --mandir and the-like, so take
+       # care of this.
+       # note: we're setting the main libdir intentionally.
+       # where per-ABI is appropriate, we use $(GENTOO_LIBDIR) make.
+       einfo "Fixing install dirs"
+       sed -e "s,@libdir@,$(get_libdir),g" \
+               -e "s,@PF@,${PF},g" \
+               -e "s,@EPREFIX@,${EPREFIX},g" \
+               -i "${sub_files[@]}" \
+               || die "install paths sed failed"
+
+       if use clang; then
+               # constantly fails for a long time, likely due to our patches
+               rm tools/clang/test/Driver/cross-linux.c || die
+       fi
+
+       # User patches
+       epatch_user
+
+       python_setup
+}
+
+multilib_src_configure() {
+       # disable timestamps since they confuse ccache
+       local conf_flags=(
+               --disable-timestamps
+               --enable-keep-symbols
+               --enable-shared
+               --with-optimize-option=
+               $(tc-is-static-only && echo --disable-shared)
+               $(use_enable !debug optimized)
+               $(use_enable debug assertions)
+               $(use_enable debug expensive-checks)
+               $(use_enable libedit)
+               $(use_enable ncurses terminfo)
+               $(use_enable libffi)
+       )
+
+       # well, it's used only by clang executable c-index-test
+       if multilib_is_native_abi && use clang && use xml; then
+               conf_flags+=( XML2CONFIG="$(tc-getPKG_CONFIG) libxml-2.0" )
+       else
+               conf_flags+=( ac_cv_prog_XML2CONFIG="" )
+       fi
+
+       local targets bindings
+       if use multitarget; then
+               targets='all'
+       else
+               targets='host,cpp'
+               use video_cards_radeon && targets+=',r600'
+       fi
+       conf_flags+=( --enable-targets=${targets} )
+
+       if multilib_is_native_abi; then
+               use gold && conf_flags+=( --with-binutils-include="${EPREFIX}"/usr/include/ )
+               # extra commas don't hurt
+               use ocaml && bindings+=',ocaml'
+       fi
+
+       [[ ${bindings} ]] || bindings='none'
+       conf_flags+=( --enable-bindings=${bindings} )
+
+       if use libffi; then
+               local CPPFLAGS=${CPPFLAGS}
+               append-cppflags "$(pkg-config --cflags libffi)"
+       fi
+
+       # llvm prefers clang over gcc, so we may need to force that
+       tc-export CC CXX
+
+       ECONF_SOURCE=${S} \
+       econf "${conf_flags[@]}"
+}
+
+set_makeargs() {
+       MAKEARGS=(
+               VERBOSE=1
+               REQUIRES_RTTI=1
+               GENTOO_LIBDIR=$(get_libdir)
+       )
+
+       # for tests, we want it all! otherwise, we may use a little filtering...
+       # adding ONLY_TOOLS also disables unittest building...
+       if [[ ${EBUILD_PHASE_FUNC} != src_test ]]; then
+               local tools=( llvm-config )
+               use clang && tools+=( clang )
+
+               if multilib_is_native_abi; then
+                       tools+=(
+                               opt llvm-as llvm-dis llc llvm-ar llvm-nm llvm-link lli
+                               llvm-extract llvm-mc llvm-bcanalyzer llvm-diff macho-dump
+                               llvm-objdump llvm-readobj llvm-rtdyld llvm-dwarfdump llvm-cov
+                               llvm-size llvm-stress llvm-mcmarkup llvm-profdata
+                               llvm-symbolizer obj2yaml yaml2obj lto bugpoint
+                       )
+
+                       # the build system runs explicitly specified tools in parallel,
+                       # so we need to split it into two runs
+                       if [[ ${1} != -1 ]]; then
+                               # those require lto
+                               tools+=( llvm-lto )
+                               use gold && tools+=( gold )
+
+                               # those require clang :)
+                               # we need to explicitly specify all its tools
+                               # since we're passing BUILD_CLANG_ONLY
+                               use clang && tools+=(
+                                       clang/tools/{clang-check,clang-format,extra}
+                               )
+                       fi
+               fi
+
+               MAKEARGS+=(
+                       # filter tools + disable unittests implicitly
+                       ONLY_TOOLS="${tools[*]}"
+
+                       # this disables unittests & docs from clang
+                       BUILD_CLANG_ONLY=YES
+               )
+       fi
+}
+
+multilib_src_compile() {
+       local MAKEARGS
+       set_makeargs -1
+       emake "${MAKEARGS[@]}"
+
+       if multilib_is_native_abi; then
+               set_makeargs
+               emake -C tools "${MAKEARGS[@]}"
+
+               if use doc; then
+                       emake -C "${S}"/docs -f Makefile.sphinx man
+                       use clang && emake -C "${S}"/tools/clang/docs/tools \
+                               BUILD_FOR_WEBSITE=1 DST_MAN_DIR="${T}"/ man
+                       emake -C "${S}"/docs -f Makefile.sphinx html
+               fi
+       fi
+
+       if use debug; then
+               pax-mark m Debug+Asserts+Checks/bin/llvm-rtdyld
+               pax-mark m Debug+Asserts+Checks/bin/lli
+               pax-mark m Debug+Asserts+Checks/bin/lli-child-target
+       else
+               pax-mark m Release/bin/llvm-rtdyld
+               pax-mark m Release/bin/lli
+               pax-mark m Release/bin/lli-child-target
+       fi
+}
+
+multilib_src_test() {
+       local MAKEARGS
+       set_makeargs
+
+       # build the remaining tools & unittests
+       emake "${MAKEARGS[@]}"
+
+       pax-mark m unittests/ExecutionEngine/JIT/Release/JITTests
+       pax-mark m unittests/ExecutionEngine/MCJIT/Release/MCJITTests
+       pax-mark m unittests/Support/Release/SupportTests
+
+       # respect TMPDIR!
+       local -x LIT_PRESERVES_TMP=1
+       emake "${MAKEARGS[@]}" check
+       use clang && emake "${MAKEARGS[@]}" -C tools/clang test
+}
+
+src_install() {
+       local MULTILIB_CHOST_TOOLS=(
+               /usr/bin/llvm-config
+       )
+
+       local MULTILIB_WRAPPED_HEADERS=(
+               /usr/include/llvm/Config/config.h
+               /usr/include/llvm/Config/llvm-config.h
+       )
+
+       if use clang; then
+               # note: magic applied below
+               MULTILIB_CHOST_TOOLS+=(
+                       /usr/bin/clang
+                       /usr/bin/clang++
+                       /usr/bin/clang-${PV}
+                       /usr/bin/clang++-${PV}
+               )
+
+               MULTILIB_WRAPPED_HEADERS+=(
+                       /usr/include/clang/Config/config.h
+               )
+       fi
+
+       multilib-minimal_src_install
+
+       # Remove unnecessary headers on FreeBSD, bug #417171
+       use kernel_FreeBSD && use clang && rm "${ED}"usr/lib/clang/${PV}/include/{std,float,iso,limits,tgmath,varargs}*.h
+}
+
+multilib_src_install() {
+       local MAKEARGS
+       set_makeargs
+
+       local root=${D}/_${ABI}
+
+       emake "${MAKEARGS[@]}" DESTDIR="${root}" install
+       multibuild_merge_root "${root}" "${D}"
+
+       if ! multilib_is_native_abi; then
+               # Backwards compat, will be happily removed someday.
+               dosym "${CHOST}"-llvm-config /usr/bin/llvm-config.${ABI}
+       else
+               # Install docs.
+               if use doc; then
+                       doman "${S}"/docs/_build/man/*.1
+                       use clang && doman "${T}"/clang.1
+                       dohtml -r "${S}"/docs/_build/html/
+               else
+                       if ! use clang; then
+                               rm "${WORKDIR}"/${P}-manpages/clang.1 || die
+                       fi
+                       doman "${WORKDIR}"/${P}-manpages/*.1
+               fi
+
+               # Symlink the gold plugin.
+               if use gold; then
+                       dodir /usr/${CHOST}/binutils-bin/lib/bfd-plugins
+                       dosym ../../../../$(get_libdir)/LLVMgold.so \
+                               /usr/${CHOST}/binutils-bin/lib/bfd-plugins/LLVMgold.so
+               fi
+       fi
+
+       # apply CHOST and PV to clang executables
+       # they're statically linked so we don't have to worry about the lib
+       if use clang; then
+               local clang_tools=( clang clang++ )
+               local i
+
+               # append ${PV} and symlink back
+               # TODO: use alternatives.eclass? does that make any sense?
+               # maybe with USE=-clang on :0 and USE=clang on older
+               for i in "${clang_tools[@]}"; do
+                       mv "${ED%/}/usr/bin/${i}"{,-${PV}} || die
+                       dosym "${i}"-${PV} /usr/bin/${i}
+               done
+
+               # now prepend ${CHOST} and let the multilib-build.eclass symlink it
+               if ! multilib_is_native_abi; then
+                       # non-native? let's replace it with a simple wrapper
+                       for i in "${clang_tools[@]}"; do
+                               rm "${ED%/}/usr/bin/${i}-${PV}" || die
+                               cat > "${T}"/wrapper.tmp <<-_EOF_
+                                       #!${EPREFIX}/bin/sh
+                                       exec "${i}-${PV}" $(get_abi_CFLAGS) "\${@}"
+                               _EOF_
+                               newbin "${T}"/wrapper.tmp "${i}-${PV}"
+                       done
+               fi
+       fi
+
+       # Fix install_names on Darwin.  The build system is too complicated
+       # to just fix this, so we correct it post-install
+       local lib= f= odylib= ndylib= libpv=${PV}
+       if [[ ${CHOST} == *-darwin* ]] ; then
+               eval $(grep PACKAGE_VERSION= configure)
+               [[ -n ${PACKAGE_VERSION} ]] && libpv=${PACKAGE_VERSION}
+               for lib in lib{EnhancedDisassembly,LLVM-${libpv},LTO,profile_rt,clang}.dylib LLVMHello.dylib clang/${libpv}/lib/darwin/libclang_rt.asan_osx_dynamic.dylib; do
+                       # libEnhancedDisassembly is Darwin10 only, so non-fatal
+                       # + omit clang libs if not enabled
+                       [[ -f ${ED}/usr/lib/${lib} ]] || continue
+
+                       ebegin "fixing install_name of $lib"
+                       install_name_tool \
+                               -id "${EPREFIX}"/usr/lib/${lib} \
+                               "${ED}"/usr/lib/${lib}
+                       eend $?
+               done
+               for f in "${ED}"/usr/bin/* "${ED}"/usr/lib/lib*.dylib "${ED}"/usr/lib/clang/${libpv}/lib/darwin/*.dylib ; do
+                       # omit clang libs if not enabled
+                       [[ -f ${ED}/usr/lib/${lib} ]] || continue
+
+                       scanmacho -BF'%n#f' "${f}" | tr ',' '\n' | \
+                       while read odylib ; do
+                               ndylib=
+                               case ${odylib} in
+                                       */libclang.dylib)
+                                               ndylib="${EPREFIX}"/usr/lib/libclang.dylib
+                                               ;;
+                                       */libLLVM-${libpv}.dylib)
+                                               ndylib="${EPREFIX}"/usr/lib/libLLVM-${libpv}.dylib
+                                               ;;
+                                       */libLTO.dylib)
+                                               ndylib="${EPREFIX}"/usr/lib/libLTO.dylib
+                                               ;;
+                               esac
+                               if [[ -n ${ndylib} ]] ; then
+                                       ebegin "fixing install_name reference to ${odylib} of ${f##*/}"
+                                       install_name_tool \
+                                               -change "${odylib}" "${ndylib}" \
+                                               "${f}"
+                                       eend $?
+                               fi
+                       done
+               done
+       fi
+}
+
+multilib_src_install_all() {
+       insinto /usr/share/vim/vimfiles/syntax
+       doins utils/vim/*.vim
+
+       if use clang; then
+               cd tools/clang || die
+
+               if use static-analyzer ; then
+                       dobin tools/scan-build/ccc-analyzer
+                       dosym ccc-analyzer /usr/bin/c++-analyzer
+                       dobin tools/scan-build/scan-build
+
+                       insinto /usr/share/${PN}
+                       doins tools/scan-build/scanview.css
+                       doins tools/scan-build/sorttable.js
+               fi
+
+               python_inst() {
+                       if use static-analyzer ; then
+                               pushd tools/scan-view >/dev/null || die
+
+                               python_doscript scan-view
+
+                               touch __init__.py || die
+                               python_moduleinto clang
+                               python_domodule __init__.py Reporter.py Resources ScanView.py startfile.py
+
+                               popd >/dev/null || die
+                       fi
+
+                       if use python ; then
+                               pushd bindings/python/clang >/dev/null || die
+
+                               python_moduleinto clang
+                               python_domodule __init__.py cindex.py enumerations.py
+
+                               popd >/dev/null || die
+                       fi
+
+                       # AddressSanitizer symbolizer (currently separate)
+                       python_doscript "${S}"/projects/compiler-rt/lib/asan/scripts/asan_symbolize.py
+               }
+               python_foreach_impl python_inst
+       fi
+}