summaryrefslogtreecommitdiff
path: root/sys-devel
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-11-18 09:38:27 +0000
committerV3n3RiX <venerix@redcorelinux.org>2018-11-18 09:38:27 +0000
commit536c3711867ec947c1738f2c4b96f22e4863322d (patch)
tree697733f5cb713908dcf378e13fd15a798a906a91 /sys-devel
parentf65628136faa35d0c4d3b5e7332275c7b35fcd96 (diff)
gentoo resync : 18.11.2018
Diffstat (limited to 'sys-devel')
-rw-r--r--sys-devel/Manifest.gzbin9484 -> 9485 bytes
-rw-r--r--sys-devel/binutils/Manifest2
-rw-r--r--sys-devel/binutils/binutils-2.30-r4.ebuild2
-rw-r--r--sys-devel/bison/Manifest5
-rw-r--r--sys-devel/bison/bison-3.1.ebuild4
-rw-r--r--sys-devel/bison/bison-3.2.1.ebuild92
-rw-r--r--sys-devel/clang-common/Manifest2
-rw-r--r--sys-devel/clang-common/clang-common-7.0.1_rc2.ebuild33
-rw-r--r--sys-devel/clang-runtime/Manifest3
-rw-r--r--sys-devel/clang-runtime/clang-runtime-7.0.1_rc2.ebuild31
-rw-r--r--sys-devel/clang-runtime/clang-runtime-7.0.9999.ebuild2
-rw-r--r--sys-devel/clang/Manifest4
-rw-r--r--sys-devel/clang/clang-7.0.1_rc2.ebuild319
-rw-r--r--sys-devel/lld/Manifest3
-rw-r--r--sys-devel/lld/lld-7.0.1_rc2.ebuild75
-rw-r--r--sys-devel/llvm-common/Manifest2
-rw-r--r--sys-devel/llvm-common/llvm-common-7.0.1_rc2.ebuild35
-rw-r--r--sys-devel/llvm/Manifest2
-rw-r--r--sys-devel/llvm/llvm-7.0.1_rc2.ebuild260
19 files changed, 869 insertions, 7 deletions
diff --git a/sys-devel/Manifest.gz b/sys-devel/Manifest.gz
index 4dd47fd543c1..eeb4c34c689a 100644
--- a/sys-devel/Manifest.gz
+++ b/sys-devel/Manifest.gz
Binary files differ
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index b75c91f87e96..96956aea2c18 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -26,7 +26,7 @@ EBUILD binutils-2.28.1.ebuild 280 BLAKE2B 6c8363e933c3a7e40fc21a737b59d08d2b9bdd
EBUILD binutils-2.29.1-r1.ebuild 328 BLAKE2B 1f38a6896f710e1c18ea80569f02a93814daaf0fa84b08f9762bbe002607189a8c75ddcbee978af878d5976ede247f31d84fda6c00142f5020e7d18b4b03b17c SHA512 7a08fc2878be20f311cd5cf10f59035f17869da5f59822a73c55da3c134a9dffdc57de855f7392b396dfe3a526c1dc4ff60d3202466b6e9c2d26e1cd18a48289
EBUILD binutils-2.30-r2.ebuild 11851 BLAKE2B 877f1e096972b66f9cde62f23f5dd1d2bd1098d27a01eecadf667f5b1792271e50a4697908492bd9c2d3c0d688de1245cda86cd566c142d1fba4fb0265819d1d SHA512 2f257fc05336b0e2cb45bc48185df2f0d226683b81d2fe835f856fdda9843f2b32f3267d6d5b9d29fe3dcf61d827aa846acea59d705ada30ac2d9b69772cf92a
EBUILD binutils-2.30-r3.ebuild 11864 BLAKE2B 18001b8d905368b565e15ab852cb0e18a3354cfc31db5f3799b0d84ab837dabc50a7e0bb2656622c972fb46525b8007fe641f4ef76e837006791ecca9aa46131 SHA512 ddeedc8aa8c1a72ea16855c15e4660e5db335b8d50e45444233c755928eb9138168819e7ea9998759e71dd6582b296445679333363e0f5abe62788d17417999f
-EBUILD binutils-2.30-r4.ebuild 12025 BLAKE2B 8709907900b0af3372d076eb5ccb6f6447d7c126948248593c15c7f98b8c5b8c5dd1d0630e4d515a19b4d354b8a6c52ecbbc458ed9e5708e409d62271974092d SHA512 8bfa5ab5888fef964bab40ae9d53e3dd5ee76a21c7303ce0ed8d44499ad8c631b269896d6b1177c790126502ace8d8affe81abbabdab5e5335ecc508dc45a091
+EBUILD binutils-2.30-r4.ebuild 12024 BLAKE2B de1550bc02f728d7d2cfaf29cb027e1310a1a4ef7631e7873db0f1eea882e1eac90f8f64c6f9bf634e9530b26a89b2b853f1b08cc9766f7598dd12e2ee42fb86 SHA512 c3f1fbf0a59cd2bb652a0d419bce4bfbeaedb8946feb329b3fd1cd6d53ad85203713346016b6d54eb372b1abb2d4399e54021621757f34c8efc3c2208bf6a4f9
EBUILD binutils-2.31.1-r1.ebuild 11982 BLAKE2B 87ec050dd2a1d568d40743cb2ee121246307af8f681ca7a21e0799b1b8c136427c0d1aa5040b7d67fcf4fe085d08887ea4cadc3d256c56e75cebca90cf183f74 SHA512 105f266b196eca929c5511ae8fbf7a80e74f641c8ffd790ecd36bd2e828eab5580941073f6de2cfaf834d3c7678e8023a847c001cc170d07ceb3ff590dd7b7c1
EBUILD binutils-2.31.1.ebuild 12062 BLAKE2B d733159c07280791ed54a721f3ea517b490899c0faaa7ac34ca1f7dcf7f2ac658a547dd41b0414f141c8d8dec74925d9bca7500859dc51bda4c0d3c8d6670d8a SHA512 b39036aaa8a9d53f0b7d12f6884ed3f2a414f0a6d8c9198d4fe4387a755d409441ddfb7d64368ffd39bb76ae69442365bef4c1929c648feb355b92d3bfddee2a
EBUILD binutils-9999.ebuild 11887 BLAKE2B 22f26d379bf519b20672f745913d559ed8a0d5098bf7b721b5fd52718de791e46edb7a2b1f3748676dbeffda68d4c2ab36a993d05b8282d136be13e746175b53 SHA512 de5c353d38df1f386d95383f0a782e6220a279ebd4c44894042a2a92e418271371ea4e7e4d070996e6507599209ad0f89f458822b38c8c45b989894ec715b6c8
diff --git a/sys-devel/binutils/binutils-2.30-r4.ebuild b/sys-devel/binutils/binutils-2.30-r4.ebuild
index bee5ec6cf227..766b797c085e 100644
--- a/sys-devel/binutils/binutils-2.30-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r4.ebuild
@@ -35,7 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-KEYWORDS="alpha amd64 ~arm ~arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
diff --git a/sys-devel/bison/Manifest b/sys-devel/bison/Manifest
index 6abf85e754bc..0323e2ca1b86 100644
--- a/sys-devel/bison/Manifest
+++ b/sys-devel/bison/Manifest
@@ -3,8 +3,11 @@ DIST bison-3.0.5.tar.xz 1954868 BLAKE2B b6a8b426304f414c1b7601e75dcae8a63847b713
DIST bison-3.1-patches-1.0.tar.xz 7268 BLAKE2B 9195c00be1706664762598926913cd8fc18a32a6ae6ae4ec58748d5e8fc4877f63258db51cbe3bf84f3345ea0fc7c27d2e1190632c529615d9e6922baef74915 SHA512 5569b7901b40ea01eb7bccdc1b090207bc1ea6c50d144b561b2725ae79f3bcd51e7ea4e8ea37b60ea50ff4882e82110a07986cba1d2397a0333e7e01ae466e79
DIST bison-3.1.tar.xz 1990536 BLAKE2B 6223642f2934927ca118410e2655f7c677bb1d3d981875ca2224f5aa344a43efbbbea34e79dff94ea489853e505b1d7f5920f4d159d1464ce61d8956ca0401ad SHA512 2a8e217ffb55ed5b1fcc989377ac348a066e62b8a4b0b0da40c3c7202f3ea487b2aab6a704a10b48d2d17673be0e22f6ff1be91fc05c4e0a57969b42a59d0152
DIST bison-3.2-patches-01.tar.xz 7696 BLAKE2B 5a83c118204173a8c264a1e9ca929612c8c1cceea40c2f45057ed053c34087b0dbef0bd25d299e9c928c192a68d55b83687c54cf3cab7c28ed557b2eac12ad5a SHA512 5fe6d40ac1f388764989653a8f1289d1368b75952ffae271e015853dc5c70a85430573a3ab261cca8d498d87f590b1257c6e72a7adb72a51a5f3e3bc56d87ec2
+DIST bison-3.2.1-patches-01.tar.xz 8232 BLAKE2B 84be6854bc26cdf1308c466257ba03b0a8cfffd668332454a59311239347f6bd83fb53a742ad85d06b607c45c9f0d1498a53fca9cb82595406f760ce362d3761 SHA512 b0a5b37bd0e9bf09ef742f2b3b4b06d0954a66f411f87975e023468b8705dc31e58bd365cb501a1c53777cf98c05b5473bf12f034a55b8b99066202a382d196d
+DIST bison-3.2.1.tar.xz 2091684 BLAKE2B f2cfb1ec96dc0c5daf71a78348c8b4cb212262c00fa7f4474fd5634dd88bfe76b2ff63c9bb047d7b7eb42490bb188c5cb1db8cb1b9caa8972f9771bcbd74acce SHA512 2f6382d276d37f513a4cbb5badd8ac45a7f936e075ccd0d55e5a27802538fd2fdda24b7dc780d006eca0da499b264817a7aa6901bf423666bb34e86d3a180a52
DIST bison-3.2.tar.xz 2088320 BLAKE2B dacdf492ca49e51d30cd134db763bd174612d3e49531325f524fc1af602ba11068abdc2fac18a3698cf0f24508b6297a437f9d7ab81639869840ca1348f0b012 SHA512 2ca555df9b25f0764698cb152269dc1c24816ffeb6f912c12d1c8d1cf067f73e63c953ab2040b4dd894e6cc46a0d5b2f7cdae0ad8303e40fcd687b42d7d91410
EBUILD bison-3.0.5-r1.ebuild 2515 BLAKE2B 02762a402b75a4658408326ca667aad61e9a96b763aeaad5bd9e266a6323f853c25ad38c56677e9002b9c5157bd6e3a02054100741ee577f158e64b7ba1a6b00 SHA512 cc831c96c9287da5ec1d2dd0c80ccf3c02f95a00436879623318224bc28840193cccdc5b102613aaf6c242c8bfaf768fb9bb603a41b239565f96b94118eb1bc8
-EBUILD bison-3.1.ebuild 2531 BLAKE2B 9be554bb8efb508541c3159699ff7e724b10d554d19d233800ed01b6ecbb17b61178fc1ddb26d9283e67acf77668bf23fcdc5eaa0fb43f1aa94bd8bc518d885a SHA512 1e3eee454e2df1ed4d0ff1e6a2aa739d84569e3df9d44614a6a3e1a80c45b49d03d6fa6c22b77a0d8aa3ed72a8543edef6fd2057e50ada9f16b0fb8837a7b1e8
+EBUILD bison-3.1.ebuild 2525 BLAKE2B 4658970e832ab017b594fb64686f914df57830b62ba16de3d409b359c005712ad2560091e56cdd141febf2d44d27be62b449d37d02e5e0d8d9988bbfbeec489a SHA512 00d2d2c9442690c4c717cdc5de947645f144fdfaa9d5d69e3e0f1c585bfa217ef237285a57691972518fe0a4ac3ad75d57fa43eb8c6167a8dd32e4f56ecbeb58
+EBUILD bison-3.2.1.ebuild 2621 BLAKE2B ade529ede01beabfde4227ba3a3927c71f77b328db0a4e46420af87a904658a8c1559d3b98085686b3918452d408efe55f175c375ea7a0ddf194e28e80dc7ea5 SHA512 16a7403f1206f4f426326e0940e7ea5d2abf412ba1831c9ac20634ad769310462cdbda6a7a40fd96111482de7ecc9f4d1b8863d0634e5808bcc1d882acc7dfa0
EBUILD bison-3.2.ebuild 2619 BLAKE2B 113374affeeaa3ae76ae14444e240a3d7f6ce15c13d4e44642bf41acc309537b62b759aa8f6a034fa41decce98721648110db70ef0122a84c4590bab56e195cf SHA512 c4dc6ef8e674435edc58f45c709643831c57c34300533e7159d040b3a4e9f8ce62646569f4794dccacf464c9a9886965142147f6aeacd353c06ccd7f4dcf8381
MISC metadata.xml 253 BLAKE2B 295e9d6d93aaa12af413972e1590c67087801cc09c9aa6b59d4606c0f4106d1dacf2baa9858559083b4c6d91beeef218d0729e8593a33788958da6d2897e8ce2 SHA512 54a9069aeb4165d2dff3d473c8001bc51613aac9dff3f7f5e9971a9891a737a31511ffa11cbd523febe581ac1d9de2bdf2f40410f0c4239138f2ccca3ef15555
diff --git a/sys-devel/bison/bison-3.1.ebuild b/sys-devel/bison/bison-3.1.ebuild
index 20f7dbbb209c..d4f518752561 100644
--- a/sys-devel/bison/bison-3.1.ebuild
+++ b/sys-devel/bison/bison-3.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
@@ -12,7 +12,7 @@ SRC_URI="mirror://gnu/${PN}/${P}.tar.xz
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="examples nls static test"
RDEPEND=">=sys-devel/m4-1.4.16"
diff --git a/sys-devel/bison/bison-3.2.1.ebuild b/sys-devel/bison/bison-3.2.1.ebuild
new file mode 100644
index 000000000000..5717aa8d6140
--- /dev/null
+++ b/sys-devel/bison/bison-3.2.1.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+inherit flag-o-matic
+
+PATCHES="${P}-patches-01.tar.xz"
+
+DESCRIPTION="A general-purpose (yacc-compatible) parser generator"
+HOMEPAGE="https://www.gnu.org/software/bison/"
+SRC_URI="mirror://gnu/${PN}/${P}.tar.xz
+ https://dev.gentoo.org/~whissi/dist/bison/${PATCHES}
+ https://dev.gentoo.org/~polynomial-c/dist/bison/${PATCHES}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="examples nls static test"
+
+RDEPEND=">=sys-devel/m4-1.4.16"
+DEPEND="${RDEPEND}
+ sys-devel/flex
+ examples? ( dev-lang/perl )
+ nls? ( sys-devel/gettext )
+ test? ( dev-lang/perl )"
+
+DOCS=( AUTHORS ChangeLog-2012 NEWS README THANKS TODO ) # ChangeLog-1998 PACKAGING README-alpha README-release
+
+PATCHES=(
+ "${WORKDIR}"/patches/${PN}-3.1-optional-perl.patch #538300
+ "${WORKDIR}"/patches/${PN}-3.2.1-avoid_autoreconf.patch
+)
+
+src_prepare() {
+ # Record date to avoid 'config.status --recheck' & regen of 'tests/package.m4'
+ touch -r configure.ac old.configure.ac || die
+ touch -r configure old.configure || die
+
+ default
+
+ # Restore date after patching
+ touch -r old.configure.ac configure.ac || die
+ touch -r old.configure configure || die
+
+ # The makefiles make the man page depend on the configure script
+ # which we patched above. Touch it to prevent regeneration.
+ touch doc/bison.1 || die #548778 #538300#9
+
+ # Avoid regenerating the info page when the timezone is diff. #574492
+ sed -i '2iexport TZ=UTC' build-aux/mdate-sh || die
+}
+
+src_configure() {
+ use static && append-ldflags -static
+
+ local myeconfargs=(
+ --docdir='$(datarootdir)'/doc/${PF}
+ $(use_enable examples)
+ $(use_enable nls)
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ # This one is installed by dev-util/yacc
+ mv "${ED%/}"/usr/bin/yacc{,.bison} || die
+ mv "${ED%/}"/usr/share/man/man1/yacc{,.bison}.1 || die
+
+ # We do not need liby.a
+ rm -r "${ED%/}"/usr/lib* || die
+
+ # Move to documentation directory and leave compressing for EAPI>=4
+ mv "${ED%/}"/usr/share/${PN}/README "${ED%/}"/usr/share/doc/${PF}/README.data
+}
+
+pkg_postinst() {
+ local f="${EROOT%/}/usr/bin/yacc"
+ if [[ ! -e ${f} ]] ; then
+ ln -s yacc.bison "${f}"
+ fi
+}
+
+pkg_postrm() {
+ # clean up the dead symlink when we get unmerged #377469
+ local f="${EROOT%/}/usr/bin/yacc"
+ if [[ -L ${f} && ! -e ${f} ]] ; then
+ rm -f "${f}"
+ fi
+}
diff --git a/sys-devel/clang-common/Manifest b/sys-devel/clang-common/Manifest
index 5dc6f2820346..264776e68ade 100644
--- a/sys-devel/clang-common/Manifest
+++ b/sys-devel/clang-common/Manifest
@@ -1,7 +1,9 @@
DIST cfe-6.0.1.src.tar.xz 11905772 BLAKE2B abb60e9f9827d1d8a24f0aaf8a1d1e32979293cc401258d230f93290e633645747fd0344af189ac7081b06be2cada503364e1e432b37110ade4b3578e40c7605 SHA512 f64ba9290059f6e36fee41c8f32bf483609d31c291fcd2f77d41fecfdf3c8233a5e23b93a1c73fed03683823bd6e72757ed993dd32527de3d5f2b7a64bb031b9
DIST cfe-7.0.0.src.tar.xz 12541904 BLAKE2B 92ecfcb37e7efb4f3dde275e7a087a52f1ddc607bee78fd222f87e6391ab7deb9a4e761c05e405126f46170fdff04aeaf9bd1e886a326c92a064ca81be4e6f21 SHA512 17a658032a0160c57d4dc23cb45a1516a897e0e2ba4ebff29472e471feca04c5b68cff351cdf231b42aab0cff587b84fe11b921d1ca7194a90e6485913d62cb7
+DIST cfe-7.0.1rc2.src.tar.xz 12487728 BLAKE2B bba0f7751106ac0438b5db9cbd0e0c5d2f3fe35255eb49cf4ed6a8efbc7e8be3f8263f0d663a739409232e591ab74e7b0abaf4cc1df0d7605db913eac0a085ba SHA512 2e178f1829edd6a7a0f0919358adfe0a88fc8a83b629bf64411cb33181df43b48bf47057b6c3bba95ab939998f7a8db05717bc1e58f175c8dae5df881c88d48f
EBUILD clang-common-6.0.1.ebuild 777 BLAKE2B 3f19ef0457ce59dffd312ee898a72b4b5e6d21a2f9403d159c2f92c76dd16f212beec6a906fc8652487a7bd7f0b773b86620ceb03ceeaa1974e9fd8bd021a830 SHA512 e469a91c0619ae0aca5f0c25bb14cb22fb5b773c452dbb212a32a499ff5101878455b28b2948fe118713ee5d9d15b24d470fde9a57ce38bbe46f26c0ed2c33da
EBUILD clang-common-7.0.0.ebuild 780 BLAKE2B c507c9741ffa0703d385a0a31cdb45b4ce107bdffea3ca93e7cae460e3c39625d0da8e9886596f5e5d30b3a318fffd0a9758a1a9a0f1fc13413057895663d36b SHA512 60f4915c48ee0a995d50680f618f5f8e76bfe36a476163e2e131279deb75dd6f66bf105431f554d07b6849b91e4c2bacfc8767ff7c87126ea280e508716e0580
+EBUILD clang-common-7.0.1_rc2.ebuild 783 BLAKE2B 26fffe30f67052ea6bb69ecb794af33b3efef25e31e03be41c33b852360041f6b07e41c9f3b02b10d075a62941ffc93ef18688049088685f9d8852263eee76b6 SHA512 0a62cb866b9e1cf20238e5822758aef1690ab4e548ad1b460a7288653a78208e8a7eee6769ae6ed825204b96a094dc290f2f3aff7e65f6ab0ab90c810ec3527a
EBUILD clang-common-7.0.9999.ebuild 666 BLAKE2B f6c1fe58d00db323baffd3c426bb31d1835cf44b5554fbb8d7cbfd3a0ddfcfe968e0007465fdd13297c7aad3bf94b219c6d156e12fcfc95ea72e44a6f273dd40 SHA512 3ad6ab3333f0cbb4aea199b9409668f1ae5d3a1ba8e31f0a68e1dc1d2b4489cef0a54cf144c56ccb256feabe4bada8e764331ddf91c682eb4752527ce8bd54ad
EBUILD clang-common-9999.ebuild 641 BLAKE2B 81f3432382ffcf77a61d9142a0ae83df84499da1ba31cbd542d2080bde11d92676efd0a9a19f1392f55a300fd9aaf7b0268a8dec7f017cd229eec4dde1b7091a SHA512 0e8661594be1482cda90f240792ae7a9e77c0ba167d874735f89994a24ebf232a5cb10858fc9099c9f639174f2fbf79b7eb16e05ca54d17c636002c72f68d7d5
MISC metadata.xml 216 BLAKE2B fe5e49887842aa513fbf1f2e09bed09a884d531fd21bdaeb2d389e8bf590b6c0e7063f0af98f66e2db129308ab0f0804ba327c3c752bbb4c900c59ac109d99aa SHA512 3485598147c953e72e1785693a489a7e7d73d59620b76054db9c0ce95d8bfa0e8ffec29da7f7a9d73a32e5b77eac07ca3306c56a972dc57fd89d477edaebf3d5
diff --git a/sys-devel/clang-common/clang-common-7.0.1_rc2.ebuild b/sys-devel/clang-common/clang-common-7.0.1_rc2.ebuild
new file mode 100644
index 000000000000..50254a205a50
--- /dev/null
+++ b/sys-devel/clang-common/clang-common-7.0.1_rc2.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit bash-completion-r1
+
+MY_P=cfe-${PV/_/}.src
+DESCRIPTION="Common files shared between multiple slots of clang"
+HOMEPAGE="https://llvm.org/"
+SRC_URI="https://prereleases.llvm.org/${PV/_//}/${MY_P}.tar.xz"
+
+LICENSE="UoI-NCSA"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-fbsd ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE=""
+
+PDEPEND="sys-devel/clang:*"
+
+S=${WORKDIR}/${MY_P}
+
+src_unpack() {
+ einfo "Unpacking parts of ${MY_P}.tar.xz ..."
+ tar -xJf "${DISTDIR}/${MY_P}.tar.xz" "${MY_P}/utils/bash-autocomplete.sh" || die
+}
+
+src_configure() { :; }
+src_compile() { :; }
+src_test() { :; }
+
+src_install() {
+ newbashcomp utils/bash-autocomplete.sh clang
+}
diff --git a/sys-devel/clang-runtime/Manifest b/sys-devel/clang-runtime/Manifest
index ef2ea5fc087c..5a2aeb502bc8 100644
--- a/sys-devel/clang-runtime/Manifest
+++ b/sys-devel/clang-runtime/Manifest
@@ -4,6 +4,7 @@ EBUILD clang-runtime-4.0.1.ebuild 639 BLAKE2B 62665ccfdb77a3635995b6ec9a59589e3d
EBUILD clang-runtime-5.0.2.ebuild 820 BLAKE2B 52c56a71db4514803c8ecc070e21a479bad960fdaa40e3fbd6de2229f6f71c0f5fbbfc2dfc5fee8bcb8570c5e71c73be921cd3fcaabe442551d10ccf9a4736e7 SHA512 bcde7bededdae2f422da56eb68ed862fcafb618b8ce6cd1932a5472e325f0c0231429c7914806915b2f4b579655d0f46d82e19f5f83420d204f53a81a9596e47
EBUILD clang-runtime-6.0.1.ebuild 819 BLAKE2B ce5fe6e1f47830366c00f80149adfb9f0ac25742fe57dd1cb1f35c30186a919b89cdb679b342ff1db3ed676bc48c58f28c85b5c74e1adaaab18875293b8be1c1 SHA512 25d88ca2c1d51c0140fbb7572fc45786a61902ff27534ad8e2bd8d12155a69229cadeee3c4827533207a265aa290e829de2141f96bc7d2181c59731ce0fbacfc
EBUILD clang-runtime-7.0.0.ebuild 822 BLAKE2B 1026c7a2622fbeb879699c0a111b76aa4dd50ea375040c90b4dc95d0b8b589a4665e70aa00b8857133eeabd4efcc373e6aae09f043ba12e357c3a07f584710fd SHA512 7b044862d3789d705de7c441043ec3caf820826771916d02ff9120e78185cca51d635051db24be81ac1adbc3f1ed0c632024a0c06216b71ba82335744a3841ef
-EBUILD clang-runtime-7.0.9999.ebuild 780 BLAKE2B e62543ab7d24e09ee7c933283e3445103d943196b02fb4891db1af30aef4ee53c709f8f640b4478fc622fdbb243e981fcafbc42fca7cd1e2d2c56576540dab0a SHA512 ab53bd4228bca6cf4eeb52159433dcb0db57fcc920b6c2e2da4f1b43fa65c0de26d8ad6d7a1655eed44031c1deeeff0acd88f80d107f5bdbc7d776cc66f9af06
+EBUILD clang-runtime-7.0.1_rc2.ebuild 822 BLAKE2B 1026c7a2622fbeb879699c0a111b76aa4dd50ea375040c90b4dc95d0b8b589a4665e70aa00b8857133eeabd4efcc373e6aae09f043ba12e357c3a07f584710fd SHA512 7b044862d3789d705de7c441043ec3caf820826771916d02ff9120e78185cca51d635051db24be81ac1adbc3f1ed0c632024a0c06216b71ba82335744a3841ef
+EBUILD clang-runtime-7.0.9999.ebuild 780 BLAKE2B c911019fb106da9d2c2010921b3e410a83249dc8b1d776a0b98b8cf8024a259d0fb0daaa12558ac994155be97ac831987b18672975cae40b9544828e0369fad2 SHA512 87183412251e82acd10c3a33921ee0e87f24ec9d37feadeb128094684523fb6512efe6216993b0cef4ed19a00138fee372359eedde58752b48cf85c0f10b9888
EBUILD clang-runtime-9999.ebuild 780 BLAKE2B 97af098ee32a2d42a79dcad29edd1ff7471cb82575ce140cf664d95f2ac805dffdb82d1ee7a6a2b1186e72f594a45a651008494dceea77f496f10b6de5c3acb9 SHA512 d13c63d506cfcda5f1ff4b192b4748d7e4236e89faefd99fc5e30a961bc85931ecdbedd333d83111204cf849e1a0e7f066d845aa38d5b52b911865986173949c
MISC metadata.xml 708 BLAKE2B 56cc586deba4a72cc9ebf5d0ac6b9dbb3767b736a96f1c0e4f8d9a715076645be25e42f1c610f55ba69e500bc828d629e7f2253e7c9ed6fd4b01032722bec3c8 SHA512 764eefdff5358c66cad9e8fe18fc7b938c7656268208639cbb92a4b5ae76f7de0dee86a729cc1e6745ddbf7308180885ef99047502e0e040020e738e3d0d1425
diff --git a/sys-devel/clang-runtime/clang-runtime-7.0.1_rc2.ebuild b/sys-devel/clang-runtime/clang-runtime-7.0.1_rc2.ebuild
new file mode 100644
index 000000000000..9ab9f95ec042
--- /dev/null
+++ b/sys-devel/clang-runtime/clang-runtime-7.0.1_rc2.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit multilib-build
+
+DESCRIPTION="Meta-ebuild for clang runtime libraries"
+HOMEPAGE="https://clang.llvm.org/"
+SRC_URI=""
+
+LICENSE="metapackage"
+SLOT="${PV%_*}"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-fbsd ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE="+compiler-rt crt libcxx openmp +sanitize"
+
+RDEPEND="
+ compiler-rt? (
+ ~sys-libs/compiler-rt-${PV}:${SLOT}
+ sanitize? ( ~sys-libs/compiler-rt-sanitizers-${PV}:${SLOT} )
+ )
+ crt? (
+ || (
+ sys-libs/netbsd-csu[${MULTILIB_USEDEP}]
+ sys-freebsd/freebsd-lib[${MULTILIB_USEDEP}]
+ )
+ )
+ libcxx? ( >=sys-libs/libcxx-${PV}[${MULTILIB_USEDEP}] )
+ openmp? ( >=sys-libs/libomp-${PV}[${MULTILIB_USEDEP}] )"
+
+REQUIRED_USE="sanitize? ( compiler-rt )"
diff --git a/sys-devel/clang-runtime/clang-runtime-7.0.9999.ebuild b/sys-devel/clang-runtime/clang-runtime-7.0.9999.ebuild
index dcd22734f007..aa2891ea6b4a 100644
--- a/sys-devel/clang-runtime/clang-runtime-7.0.9999.ebuild
+++ b/sys-devel/clang-runtime/clang-runtime-7.0.9999.ebuild
@@ -11,7 +11,7 @@ SRC_URI=""
LICENSE="metapackage"
# Note: keep it matching clang-9999 version
-SLOT="7.0.0"
+SLOT="7.0.1"
KEYWORDS=""
IUSE="+compiler-rt crt libcxx openmp +sanitize"
diff --git a/sys-devel/clang/Manifest b/sys-devel/clang/Manifest
index 5365f95016da..4fb30514ad12 100644
--- a/sys-devel/clang/Manifest
+++ b/sys-devel/clang/Manifest
@@ -11,10 +11,12 @@ DIST cfe-4.0.1.src.tar.xz 10933628 BLAKE2B bc1bb8875e83ccecd446a48cfa41f5c98a09d
DIST cfe-5.0.2.src.tar.xz 11459216 BLAKE2B 80d9b2ab70b00c0dfd5c5386a44e0c15d8252e6175c9da55a0519c4f9b8192e32e215110d7d3808225786e2c7f906f2dfbe11dd09bdf21574e99709ae237ed0b SHA512 9931afceb5569ad6caec85d506180c810f7fea94af8c997143b0a37cbf413fcea0d92520478610627eeee1efb65fde684066ace0dfcbbf7b61ecd709d22dd0b1
DIST cfe-6.0.1.src.tar.xz 11905772 BLAKE2B abb60e9f9827d1d8a24f0aaf8a1d1e32979293cc401258d230f93290e633645747fd0344af189ac7081b06be2cada503364e1e432b37110ade4b3578e40c7605 SHA512 f64ba9290059f6e36fee41c8f32bf483609d31c291fcd2f77d41fecfdf3c8233a5e23b93a1c73fed03683823bd6e72757ed993dd32527de3d5f2b7a64bb031b9
DIST cfe-7.0.0.src.tar.xz 12541904 BLAKE2B 92ecfcb37e7efb4f3dde275e7a087a52f1ddc607bee78fd222f87e6391ab7deb9a4e761c05e405126f46170fdff04aeaf9bd1e886a326c92a064ca81be4e6f21 SHA512 17a658032a0160c57d4dc23cb45a1516a897e0e2ba4ebff29472e471feca04c5b68cff351cdf231b42aab0cff587b84fe11b921d1ca7194a90e6485913d62cb7
+DIST cfe-7.0.1rc2.src.tar.xz 12487728 BLAKE2B bba0f7751106ac0438b5db9cbd0e0c5d2f3fe35255eb49cf4ed6a8efbc7e8be3f8263f0d663a739409232e591ab74e7b0abaf4cc1df0d7605db913eac0a085ba SHA512 2e178f1829edd6a7a0f0919358adfe0a88fc8a83b629bf64411cb33181df43b48bf47057b6c3bba95ab939998f7a8db05717bc1e58f175c8dae5df881c88d48f
DIST clang-tools-extra-4.0.1.src.tar.xz 581788 BLAKE2B 52ca89eda6fe1e0fbbdc46e17f4067f03a9a9440dcdcc98811651087d0c9ab24dfe3eefb0b80a32ec41abe0766cb3e47031de61c4cff02b7d0e08c8fd03e3faa SHA512 ea26d926f428e62e76cf8a073e63ffe05645f6592e05d7717d5c257908870ae9217727d3e1578227b14eda5937085872463f1a8e99970256179c68b8a92e69e0
DIST clang-tools-extra-5.0.2.src.tar.xz 646272 BLAKE2B 8a15a0c3ed9e8c31706d744017aa8be52616037790075c2314c3a613c9e1aa86b0b980c4e3bd9a775b234440f17436392196b41f1691ab25a33b432a25affb68 SHA512 241d85652e7c3ad5d77754ad9a694bddab3c14098067da4119223007c5a4a765d1cd7e7c7dba91666ccd5506f8703c82c9ee487f28249a00c2c4edbd0d1f2640
DIST clang-tools-extra-6.0.1.src.tar.xz 757256 BLAKE2B 1d91d7459a34e7251007af91db1803ee6d04f1ef3e0fcf134a7e0d1d3456b094a80339ee60db3f0bdd12961f3a05caee7edfc5c6b9c48d49cd55a5dc3c102c3a SHA512 cf29d117b6dabcb7a8e5f6dab5016ce5a5c8f475679001a43fd5c935f2c368f37cdef50aae2080a1e4524f647f6d83458d4a5dec5b45d03fb374f463caf7c3f5
DIST clang-tools-extra-7.0.0.src.tar.xz 902780 BLAKE2B cb36edccc6c975b8bfceca81bb622e9d2ba216f4f8a67ddc481bd0d5a7e145cb36b07724443875a3d422ed05ab17a87a486471b2be66307073bc33b832c7c8f7 SHA512 415c21823763b791bae6bbd31e71f1dc1231af60c248cf162764bbab6acac2ec75e223bd4766f5005dba27c96e3145fdd75475c630327dd9c75a0d604610084a
+DIST clang-tools-extra-7.0.1rc2.src.tar.xz 901512 BLAKE2B c5c643470a225bbe3b1a24d6f71e61a1840ac1a9b55382afdf2c79853cfb3e40ddc4b9b2384445d6eeb7e0e9181e4f8a6a8d94edac1eea481808636a66a1ddce SHA512 39725151fd0bdb6f30c73b76e784b1cb679fded99f03182ec18f10ba17e9edc9469bf6e3981f5b7ec14d43f4bf22a60c828a1fde46985bfde4dd7dd31a0e484c
DIST llvm-4.0.1.src.tar.xz 21065652 BLAKE2B 6327eed2d1feb108440f22d2581d1ff86c10a10c29793538d8d899c7e2dc83d3f7b147d3fd4bcce2bd2bf57c071b08c624aeafe40a3e7a3914506e7751727e6c SHA512 16adc39b34ddb628f81b171119a8e2a0e9138b25011e803ef0b688e2fbea116fc4953d3a1b61b90a98a75e33619f81566b7cb06a9a2ea4d04ac5e0eb303a2d1d
DIST llvm-5.0.2-manpages.tar.bz2 93977 BLAKE2B 8c5e8899e0df9d6037fb7d5c373de6492ccdc9fd2c26cc7dfbd8fb2b9e68418ca8fdf42cdc303c361e649cc6939bf5229cbad017bdccbd5d791e92752328252f SHA512 568615bce5a75d42e4b6d592557472d366d49a99f8e81be10ae679804f1fe674c7fd0bbdac09af44fc67ee5aa34c4ed2153c2767c536ac8e45dd15c811c92dcb
DIST llvm-5.0.2.src.tar.xz 23451868 BLAKE2B b7082be2e4ad557b29b9f6869811f262adcf5c73d552faf91b339bede75cf5eab58afefa12fa779a38be71fe2b8f4ea297c3213ee4e8370cc01972c59249d91c SHA512 3588be5ed969c3f7f6f16f56a12a6af2814d3d3c960d4a36ffebb0446cc75f19220bccee7fc605f9b01f5d5c188a905a046193cc12dec42dd5922048b5c27fe1
@@ -22,6 +24,7 @@ DIST llvm-6.0.1-manpages.tar.bz2 102656 BLAKE2B 9088ca0bdda69f63354e61b7495df545
DIST llvm-6.0.1.src.tar.xz 25306628 BLAKE2B 60232d4d22f8096b565cc8d81fea0639f24f14e8fc4f66ade69fa15479181f07f655f26dff3fa24bf105762b495da316c5c9352db234bd0af6b9c3fff6d4d881 SHA512 cbbb00eb99cfeb4aff623ee1a5ba075e7b5a76fc00c5f9f539ff28c108598f5708a0369d5bd92683def5a20c2fe60cab7827b42d628dbfcc79b57e0e91b84dd9
DIST llvm-7.0.0-manpages.tar.bz2 121089 BLAKE2B b60f18ce65e8b5bc9122378f82f0edb85d3ddef06e03e39bab8f52afe3c1c74ae8adb39335fa437fb243df8b15c7a8563eb23bc28fd9f3070a33e4c93081b095 SHA512 42731538157edc92e281baf0f4f56ce2943f1ed47b5fcd0269f98d19a8fa1602d093a02d22847ea1b00b49bf60a5e273e91aec216d084c68c772672d1a702c43
DIST llvm-7.0.0.src.tar.xz 28324368 BLAKE2B 10168ff9be8f68536db3b2263c85c1c98213ef03dc542b83628ff176542452582bc496bab236fdf40d4a6463a33f04b27f1458c072ad8b66b641f8df8d494046 SHA512 bdc9b851c158b17e1bbeb7ac5ae49821bfb1251a3826fe8a3932cd1a43f9fb0d620c3de67150c1d9297bf0b86fa917e75978da29c3f751b277866dc90395abec
+DIST llvm-7.0.1rc2.src.tar.xz 28304444 BLAKE2B 245e45f77a2ec2d94b237d1015ccc1e409f0dc149dba3192c15293bc2d45ec40989081a930a5e55a4b0ebf906397c62afd910bc25c5c1eef7ea5e310d4172acb SHA512 cfc4d1926bae75f6f22350273ab76811f0b78ddad81717c9201d7814ebe7b902c5a9c6caa0232e2bdc14e819b008f914d055b23723e0ec4a5309809dc06c6bf4
DIST llvm-manpages-4.0.1.tar.bz2 87981 BLAKE2B 79ffd254ee5c6e09159c954913ef820f74107d4fcea5e3ed82592dc36af8fdfbf1e850547ba8bfc20aa9a5ecdd26c50329e6a6d558ae3aa5475a930789ce3e01 SHA512 d5b3213567c25db58ef364d272314a79c311a80fc21d98c09a5540af45a8190a38f489228663fe9a9b63bf0f2b952c460c4196a8fc8d6f221619f6e7ed2fc415
EBUILD clang-3.4.2-r100.ebuild 972 BLAKE2B b11888e71750e7de7363d0e74a43999b31baf54dd43438c98d037b5b49d4043a74fdda70dd2b0eb405451c2579ee0285404b28792cc525c1c26e81a07bfd2dc9 SHA512 b42ec4379b4a70eb638ae6a6d45a287cd83f5ac339ac25ade2c6c77bd8d05c208d389d6f09e4cfe567e67d3e616adfbaffa1b1a9a7f35f5ecb7a0e7ccdc720fc
EBUILD clang-3.5.2-r100.ebuild 972 BLAKE2B 0f17918969ee1034e1febc34afe95a29dddcf6056caa53920ade66a887b57939933f31b022fb68fb29bf8a5e387f659f6e3b618594cda4cd50f913ec14d0f0de SHA512 1e9a9f67ecd1cea111599376e676c665c6c1e731514a06065751502d221f8c6d7033dc23376f21850a63d036a33fbf241845a9127beca6ee8549348866cdce3e
@@ -32,6 +35,7 @@ EBUILD clang-4.0.1.ebuild 9614 BLAKE2B ef0c63cfe38db99be4b9236d04eba4107092869e6
EBUILD clang-5.0.2.ebuild 10447 BLAKE2B 884093b2cfd7b64844627b8ca8ed3a7e2626c8a9da94c4035def0e1843b7b731f9920be651a7735d46e874eb5b4ee07d4b1e7446a6c2a17d80e7dd0ee69d6926 SHA512 f758de9f1b4828bb0b71ac23b1c1a596ac4f27aa345183b05c09652bac375c0dcf31cff738fc64e61002ac2a17d3a6a1a90f73c1056e527ab628813b5d859e05
EBUILD clang-6.0.1.ebuild 10267 BLAKE2B 0cf2f2b6b079a6670139efa2097eb1fbd2684e2d8baaae751819086ff213cb03065f0345e36b76d826c9bbf45109d24105dccd2882bd4317ccbc98988fe118c5 SHA512 4418a336d2dbeb5e62d16c39df797a473492befe9feaa7550218e560ad92ce98d669f956634391d7fe86770fafc6ee62d53d95fcab1c8e4bdf47c5e10e080668
EBUILD clang-7.0.0.ebuild 10124 BLAKE2B be490c9432ad46870ce6c2be5feaf2a0a11c213cf2f8bac63a99450451baee89c6f570053e1b0ba7582c75032cb82a7bdd142c9bf489932b644040e6ec14257c SHA512 fabb6f4f0fabd11d784a3808176abcee840b280564be7a185969dda419b71f8521e5e48218784c9cbd9ab4850ae5ce50dc2bd23f9baa328032306d1571c0a051
+EBUILD clang-7.0.1_rc2.ebuild 10153 BLAKE2B 487f7f986b89671092f74dd467361dbbf26606de54952256a42e7ed29ce4549ce29f4cfc8e9cf8665f911fd588efccd9d642e481eed5744603cb1887457f77a5 SHA512 21aff5b90a886fa384761a82ee1deb2091453b80068e8c5bc864db9c2f5112f52e6996e82957002991fa1810f662c19052c0f5a822c3ffb9aea2495ce51401c5
EBUILD clang-7.0.9999.ebuild 9422 BLAKE2B 7e607b9c3fb5ef8c9b30bd4bdfa02f7ff1f7dd948ad0971d336088fb153886ef4ab9bb3ea5c3209deb5803f1d5ae73d14370532a5c6bd8dde0e87e81a21aadf7 SHA512 dd78ec6962da4423fd03d2fd1865e019c6c17dcd894f77f9b8eb4be5fc79c7822bbc5597ef32cc717bca91b5c68de035b14fe7432e9a9e2c001877c4c37aca6d
EBUILD clang-9999.ebuild 9487 BLAKE2B 54baeb90b6ae969e538af934760bd2ce0631f7ac731031cd4e1f36901449a45f0efc96bd31d5b99b4fd407b4fb49fbc6110a44067a94318c0123c369e65a128d SHA512 660dba0cd16af5b84db4f73957ccadb6b8106e39e1aa0549865410f445a1e8c5ab7377f6e877c461d2accefdadf52982fd35a0e3c5c0243687e06efbc7df8111
MISC metadata.xml 1455 BLAKE2B 9dd88bba7158dfdc83bfc48fa4134e1f5a3357ab778cad400a51e348bbb4b44d2740ec417fdc888df0b4fd820441649e92b7adffdd4db558a2f4c3f4830a83a1 SHA512 369a87bd551e483e81ff56f5167177b1bcfedf9bc97f501ef2b07bfdfea3a25532f5e86af062568b3b22a53fe07318fd93dc55bd83b453dd10a0f4d3e88cb932
diff --git a/sys-devel/clang/clang-7.0.1_rc2.ebuild b/sys-devel/clang/clang-7.0.1_rc2.ebuild
new file mode 100644
index 000000000000..f746fd88b139
--- /dev/null
+++ b/sys-devel/clang/clang-7.0.1_rc2.ebuild
@@ -0,0 +1,319 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+: ${CMAKE_MAKEFILE_GENERATOR:=ninja}
+# (needed due to CMAKE_BUILD_TYPE != Gentoo)
+CMAKE_MIN_VERSION=3.7.0-r1
+PYTHON_COMPAT=( python2_7 )
+
+inherit cmake-utils eapi7-ver flag-o-matic llvm \
+ multilib-minimal multiprocessing pax-utils prefix python-single-r1 \
+ toolchain-funcs
+
+MY_P=cfe-${PV/_/}.src
+EXTRA_P=clang-tools-extra-${PV/_/}.src
+LLVM_P=llvm-${PV/_/}.src
+
+DESCRIPTION="C language family frontend for LLVM"
+HOMEPAGE="https://llvm.org/"
+SRC_URI="https://prereleases.llvm.org/${PV/_//}/${MY_P}.tar.xz
+ https://prereleases.llvm.org/${PV/_//}/${EXTRA_P}.tar.xz
+ test? ( https://prereleases.llvm.org/${PV/_//}/${LLVM_P}.tar.xz )"
+# !doc? ( https://dev.gentoo.org/~mgorny/dist/llvm/llvm-${PV}-manpages.tar.bz2 )"
+
+# Keep in sync with sys-devel/llvm
+ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM BPF Hexagon Lanai Mips MSP430
+ NVPTX PowerPC Sparc SystemZ X86 XCore )
+ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" )
+LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/?}
+
+LICENSE="UoI-NCSA"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-fbsd ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE="debug default-compiler-rt default-libcxx doc +static-analyzer
+ test xml z3 kernel_FreeBSD ${ALL_LLVM_TARGETS[*]}"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ ~sys-devel/llvm-${PV}:${SLOT}=[debug=,${LLVM_TARGET_USEDEPS// /,},${MULTILIB_USEDEP}]
+ static-analyzer? (
+ dev-lang/perl:*
+ z3? ( sci-mathematics/z3:0= )
+ )
+ xml? ( dev-libs/libxml2:2=[${MULTILIB_USEDEP}] )
+ ${PYTHON_DEPS}"
+# configparser-3.2 breaks the build (3.3 or none at all are fine)
+DEPEND="${RDEPEND}
+ doc? ( dev-python/sphinx )
+ xml? ( virtual/pkgconfig )
+ !!<dev-python/configparser-3.3.0.2
+ ${PYTHON_DEPS}"
+RDEPEND="${RDEPEND}
+ !<sys-devel/llvm-4.0.0_rc:0
+ !sys-devel/clang:0"
+PDEPEND="
+ sys-devel/clang-common
+ ~sys-devel/clang-runtime-${PV}
+ default-compiler-rt? ( =sys-libs/compiler-rt-${PV%_*}* )
+ default-libcxx? ( >=sys-libs/libcxx-${PV} )"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ || ( ${ALL_LLVM_TARGETS[*]} )"
+
+# We need extra level of indirection for CLANG_RESOURCE_DIR
+S=${WORKDIR}/x/y/${MY_P}
+
+# least intrusive of all
+CMAKE_BUILD_TYPE=RelWithDebInfo
+
+PATCHES=(
+ # add Prefix include paths for Darwin
+ "${FILESDIR}"/6.0.1/darwin_prefix-include-paths.patch
+)
+
+# Multilib notes:
+# 1. ABI_* flags control ABIs libclang* is built for only.
+# 2. clang is always capable of compiling code for all ABIs for enabled
+# target. However, you will need appropriate crt* files (installed
+# e.g. by sys-devel/gcc and sys-libs/glibc).
+# 3. ${CHOST}-clang wrappers are always installed for all ABIs included
+# in the current profile (i.e. alike supported by sys-devel/gcc).
+#
+# Therefore: use sys-devel/clang[${MULTILIB_USEDEP}] only if you need
+# multilib clang* libraries (not runtime, not wrappers).
+
+pkg_setup() {
+ LLVM_MAX_SLOT=${SLOT} llvm_pkg_setup
+ python-single-r1_pkg_setup
+}
+
+src_unpack() {
+ # create extra parent dir for CLANG_RESOURCE_DIR
+ mkdir -p x/y || die
+ cd x/y || die
+
+ einfo "Unpacking ${MY_P}.tar.xz ..."
+ tar -xf "${DISTDIR}/${MY_P}.tar.xz" || die
+ einfo "Unpacking ${EXTRA_P}.tar.xz ..."
+ tar -xf "${DISTDIR}/${EXTRA_P}.tar.xz" || die
+
+ mv "${EXTRA_P}" "${S}"/tools/extra || die
+ if use test; then
+ einfo "Unpacking parts of ${LLVM_P}.tar.xz ..."
+ tar -xf "${DISTDIR}/${LLVM_P}.tar.xz" \
+ "${LLVM_P}"/lib/Testing/Support \
+ "${LLVM_P}"/utils/{lit,llvm-lit,unittest} || die
+ mv "${LLVM_P}" "${WORKDIR}"/llvm || die
+ fi
+
+ if false && ! use doc; then
+ einfo "Unpacking llvm-${PV}-manpages.tar.bz2 ..."
+ tar -xf "${DISTDIR}/llvm-${PV}-manpages.tar.bz2" || die
+ fi
+}
+
+src_prepare() {
+ cmake-utils_src_prepare
+ eprefixify lib/Frontend/InitHeaderSearch.cpp
+}
+
+multilib_src_configure() {
+ local llvm_version=$(llvm-config --version) || die
+ local clang_version=$(ver_cut 1-3 "${llvm_version}")
+
+ local mycmakeargs=(
+ # ensure that the correct llvm-config is used
+ -DLLVM_CONFIG="$(type -P "${CHOST}-llvm-config")"
+ -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${SLOT}"
+ -DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/${SLOT}/share/man"
+ # relative to bindir
+ -DCLANG_RESOURCE_DIR="../../../../lib/clang/${clang_version}"
+
+ -DBUILD_SHARED_LIBS=ON
+ -DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
+ -DLLVM_BUILD_TESTS=$(usex test)
+
+ # these are not propagated reliably, so redefine them
+ -DLLVM_ENABLE_EH=ON
+ -DLLVM_ENABLE_RTTI=ON
+
+ -DCMAKE_DISABLE_FIND_PACKAGE_LibXml2=$(usex !xml)
+ # libgomp support fails to find headers without explicit -I
+ # furthermore, it provides only syntax checking
+ -DCLANG_DEFAULT_OPENMP_RUNTIME=libomp
+
+ # override default stdlib and rtlib
+ -DCLANG_DEFAULT_CXX_STDLIB=$(usex default-libcxx libc++ "")
+ -DCLANG_DEFAULT_RTLIB=$(usex default-compiler-rt compiler-rt "")
+
+ -DCLANG_ENABLE_ARCMT=$(usex static-analyzer)
+ -DCLANG_ENABLE_STATIC_ANALYZER=$(usex static-analyzer)
+ # z3 is not multilib-friendly
+ -DCLANG_ANALYZER_BUILD_Z3=$(multilib_native_usex z3)
+ )
+ use test && mycmakeargs+=(
+ -DLLVM_MAIN_SRC_DIR="${WORKDIR}/llvm"
+ -DLLVM_LIT_ARGS="-vv;-j;${LIT_JOBS:-$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")}"
+ )
+
+ if multilib_is_native_abi; then
+ mycmakeargs+=(
+ # normally copied from LLVM_INCLUDE_DOCS but the latter
+ # is lacking value in stand-alone builds
+ -DCLANG_INCLUDE_DOCS=$(usex doc)
+ -DCLANG_TOOLS_EXTRA_INCLUDE_DOCS=$(usex doc)
+ )
+ use doc && mycmakeargs+=(
+ -DLLVM_BUILD_DOCS=ON
+ -DLLVM_ENABLE_SPHINX=ON
+ -DCLANG_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/html"
+ -DCLANG-TOOLS_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/tools-extra"
+ -DSPHINX_WARNINGS_AS_ERRORS=OFF
+ )
+ use z3 && mycmakeargs+=(
+ -DZ3_INCLUDE_DIR="${EPREFIX}/usr/include/z3"
+ )
+ else
+ mycmakeargs+=(
+ -DLLVM_TOOL_CLANG_TOOLS_EXTRA_BUILD=OFF
+ )
+ fi
+
+ if [[ -n ${EPREFIX} ]]; then
+ mycmakeargs+=(
+ -DGCC_INSTALL_PREFIX="${EPREFIX}/usr"
+ )
+ fi
+
+ if tc-is-cross-compiler; then
+ [[ -x "/usr/bin/clang-tblgen" ]] \
+ || die "/usr/bin/clang-tblgen not found or usable"
+ mycmakeargs+=(
+ -DCMAKE_CROSSCOMPILING=ON
+ -DCLANG_TABLEGEN=/usr/bin/clang-tblgen
+ )
+ fi
+
+ # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
+ use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
+ cmake-utils_src_configure
+}
+
+multilib_src_compile() {
+ cmake-utils_src_compile
+
+ # provide a symlink for tests
+ if [[ ! -L ${WORKDIR}/lib/clang ]]; then
+ mkdir -p "${WORKDIR}"/lib || die
+ ln -s "${BUILD_DIR}/$(get_libdir)/clang" "${WORKDIR}"/lib/clang || die
+ fi
+}
+
+multilib_src_test() {
+ # respect TMPDIR!
+ local -x LIT_PRESERVES_TMP=1
+ cmake-utils_src_make check-clang
+ multilib_is_native_abi && cmake-utils_src_make check-clang-tools
+}
+
+src_install() {
+ MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/clang/Config/config.h
+ )
+
+ multilib-minimal_src_install
+
+ # Move runtime headers to /usr/lib/clang, where they belong
+ mv "${ED%/}"/usr/include/clangrt "${ED%/}"/usr/lib/clang || die
+ # move (remaining) wrapped headers back
+ mv "${ED%/}"/usr/include "${ED%/}"/usr/lib/llvm/${SLOT}/include || die
+
+ # Apply CHOST and version suffix to clang tools
+ # note: we use two version components here (vs 3 in runtime path)
+ local llvm_version=$(llvm-config --version) || die
+ local clang_version=$(ver_cut 1 "${llvm_version}")
+ local clang_full_version=$(ver_cut 1-3 "${llvm_version}")
+ local clang_tools=( clang clang++ clang-cl clang-cpp )
+ local abi i
+
+ # cmake gives us:
+ # - clang-X
+ # - clang -> clang-X
+ # - clang++, clang-cl, clang-cpp -> clang
+ # we want to have:
+ # - clang-X
+ # - clang++-X, clang-cl-X, clang-cpp-X -> clang-X
+ # - clang, clang++, clang-cl, clang-cpp -> clang*-X
+ # also in CHOST variant
+ for i in "${clang_tools[@]:1}"; do
+ rm "${ED%/}/usr/lib/llvm/${SLOT}/bin/${i}" || die
+ dosym "clang-${clang_version}" "/usr/lib/llvm/${SLOT}/bin/${i}-${clang_version}"
+ dosym "${i}-${clang_version}" "/usr/lib/llvm/${SLOT}/bin/${i}"
+ done
+
+ # now create target symlinks for all supported ABIs
+ for abi in $(get_all_abis); do
+ local abi_chost=$(get_abi_CHOST "${abi}")
+ for i in "${clang_tools[@]}"; do
+ dosym "${i}-${clang_version}" \
+ "/usr/lib/llvm/${SLOT}/bin/${abi_chost}-${i}-${clang_version}"
+ dosym "${abi_chost}-${i}-${clang_version}" \
+ "/usr/lib/llvm/${SLOT}/bin/${abi_chost}-${i}"
+ done
+ done
+
+ # Remove unnecessary headers on FreeBSD, bug #417171
+ if use kernel_FreeBSD; then
+ rm "${ED}"usr/lib/clang/${clang_full_version}/include/{std,float,iso,limits,tgmath,varargs}*.h || die
+ fi
+}
+
+multilib_src_install() {
+ cmake-utils_src_install
+
+ # move headers to /usr/include for wrapping & ABI mismatch checks
+ # (also drop the version suffix from runtime headers)
+ rm -rf "${ED%/}"/usr/include || die
+ mv "${ED%/}"/usr/lib/llvm/${SLOT}/include "${ED%/}"/usr/include || die
+ mv "${ED%/}"/usr/lib/llvm/${SLOT}/$(get_libdir)/clang "${ED%/}"/usr/include/clangrt || die
+}
+
+multilib_src_install_all() {
+ python_fix_shebang "${ED}"
+ if use static-analyzer; then
+ python_optimize "${ED}"usr/lib/llvm/${SLOT}/share/scan-view
+ fi
+
+ # install pre-generated manpages
+ if false && ! use doc; then
+ insinto "/usr/lib/llvm/${SLOT}/share/man/man1"
+ doins "${WORKDIR}/x/y/llvm-${PV}-manpages/clang"/*.1
+ fi
+
+ docompress "/usr/lib/llvm/${SLOT}/share/man"
+ # match 'html' non-compression
+ use doc && docompress -x "/usr/share/doc/${PF}/tools-extra"
+ # +x for some reason; TODO: investigate
+ use static-analyzer && fperms a-x "/usr/lib/llvm/${SLOT}/share/man/man1/scan-build.1"
+}
+
+pkg_postinst() {
+ if [[ ${ROOT} == / && -f ${EPREFIX}/usr/share/eselect/modules/compiler-shadow.eselect ]] ; then
+ eselect compiler-shadow update all
+ fi
+
+ elog "You can find additional utility scripts in:"
+ elog " ${EROOT}/usr/lib/llvm/${SLOT}/share/clang"
+ elog "To use these scripts, you will need Python 2.7. Some of them are vim"
+ elog "integration scripts (with instructions inside). The run-clang-tidy.py"
+ elog "scripts requires the following additional package:"
+ elog " dev-python/pyyaml"
+}
+
+pkg_postrm() {
+ if [[ ${ROOT} == / && -f ${EPREFIX}/usr/share/eselect/modules/compiler-shadow.eselect ]] ; then
+ eselect compiler-shadow clean all
+ fi
+}
diff --git a/sys-devel/lld/Manifest b/sys-devel/lld/Manifest
index 99e3febc258d..17cb294cea0f 100644
--- a/sys-devel/lld/Manifest
+++ b/sys-devel/lld/Manifest
@@ -4,14 +4,17 @@ DIST lld-4.0.1.src.tar.xz 593796 BLAKE2B 58eb8f013a4562ef60dd7e17ddd741f434b8f02
DIST lld-5.0.2.src.tar.xz 671776 BLAKE2B 11c470fb7eb4e8ddad043cff7daa714b55b862fe0a540e135db7252314caa101e3bb9063d5a7b32e0a86721cc01f602cafe087566d49ef5c6865f19ba3daf6b3 SHA512 6edafc277a5475a4b44fdf2d77bb8d0a80e8717f74c6db6c0208e0f1492a552f50640503ba8687bcd87a3d677b571dc4f9579b1e5c0bf53059c259ecbcc78c0e
DIST lld-6.0.1.src.tar.xz 787804 BLAKE2B 6b1d42bf24ca4c4dbfd060f1e40efa106e4adb73ee44a219f1568168b90b2a1430c3bd9c9e7996fda1f90423f8154678d6ee795ba4e179a0a72d86e980cbba52 SHA512 856ccc125255ab6184919f1424372f0f8a5de8477777047e2ab1a131a2ecec0caa9b5163d01409c7c510df9c794f0bc8d65cc904df2baf6462ef53bc163e002a
DIST lld-7.0.0.src.tar.xz 915692 BLAKE2B 59f9edcfa2750fa03b01aa09c0e9dd8badf09712cef345b1f25f381ce440012d92fad307cdbf2a403a9f3fc7576c14b380e948c7e3cb93ce9c4b17f9e20367da SHA512 14f34557d8b72b252632e7aae2e0c0551b829026a152659cc290ead68d5944a7ffb1906af95b9265228fee2b45cc561c6261cc56bb1bd61dca01149e80ca9d56
+DIST lld-7.0.1rc2.src.tar.xz 912460 BLAKE2B 49f8b9f9a9826d482cd606fff46eb3d945f8413e4ac3fd4ff16f3b7846702ea4725562f061c9546917527d1fd427f4e917189c60ed9c8b111e6ab4c86f7e4462 SHA512 70dccce42111764c6c848a77d10f7b51735fd8807b424377c39d79dcb3fd08c12684cd4c03e6a25be853d7ee53fcc51c7e33a590ca0330b7bc15d63ab5692d85
DIST llvm-4.0.1.src.tar.xz 21065652 BLAKE2B 6327eed2d1feb108440f22d2581d1ff86c10a10c29793538d8d899c7e2dc83d3f7b147d3fd4bcce2bd2bf57c071b08c624aeafe40a3e7a3914506e7751727e6c SHA512 16adc39b34ddb628f81b171119a8e2a0e9138b25011e803ef0b688e2fbea116fc4953d3a1b61b90a98a75e33619f81566b7cb06a9a2ea4d04ac5e0eb303a2d1d
DIST llvm-5.0.2.src.tar.xz 23451868 BLAKE2B b7082be2e4ad557b29b9f6869811f262adcf5c73d552faf91b339bede75cf5eab58afefa12fa779a38be71fe2b8f4ea297c3213ee4e8370cc01972c59249d91c SHA512 3588be5ed969c3f7f6f16f56a12a6af2814d3d3c960d4a36ffebb0446cc75f19220bccee7fc605f9b01f5d5c188a905a046193cc12dec42dd5922048b5c27fe1
DIST llvm-6.0.1.src.tar.xz 25306628 BLAKE2B 60232d4d22f8096b565cc8d81fea0639f24f14e8fc4f66ade69fa15479181f07f655f26dff3fa24bf105762b495da316c5c9352db234bd0af6b9c3fff6d4d881 SHA512 cbbb00eb99cfeb4aff623ee1a5ba075e7b5a76fc00c5f9f539ff28c108598f5708a0369d5bd92683def5a20c2fe60cab7827b42d628dbfcc79b57e0e91b84dd9
DIST llvm-7.0.0.src.tar.xz 28324368 BLAKE2B 10168ff9be8f68536db3b2263c85c1c98213ef03dc542b83628ff176542452582bc496bab236fdf40d4a6463a33f04b27f1458c072ad8b66b641f8df8d494046 SHA512 bdc9b851c158b17e1bbeb7ac5ae49821bfb1251a3826fe8a3932cd1a43f9fb0d620c3de67150c1d9297bf0b86fa917e75978da29c3f751b277866dc90395abec
+DIST llvm-7.0.1rc2.src.tar.xz 28304444 BLAKE2B 245e45f77a2ec2d94b237d1015ccc1e409f0dc149dba3192c15293bc2d45ec40989081a930a5e55a4b0ebf906397c62afd910bc25c5c1eef7ea5e310d4172acb SHA512 cfc4d1926bae75f6f22350273ab76811f0b78ddad81717c9201d7814ebe7b902c5a9c6caa0232e2bdc14e819b008f914d055b23723e0ec4a5309809dc06c6bf4
EBUILD lld-4.0.1.ebuild 1721 BLAKE2B f3e848199052fbec33376e9630afd80c031cd729457d1e3c302d78c42a128cc7d8baa626ed294bdde19dc2ec00683a01e4e9d5d0f6d893e24a575024b9e92556 SHA512 e971195cbf8976a0bd5140c62c3c4d9a375beaf3813119342f3f8f28db9843e53dc9804cb13b6f1a49a1b7dc60cd631cd69f742faf1de56001f59230625dbef1
EBUILD lld-5.0.2.ebuild 1589 BLAKE2B ce6f2b7d0b095223600a236432966cbc44d89d781f6fe20b699aeb77b859bbcdf65bab0b1ad37df63918ce95f75c018a5eb9d56605e5d56d057e062399427271 SHA512 16b397e9d580a52fa430b07788a1c73aabfdc3dec87ed8ee12807e231c9590f637966f412a0657a574476b3b27b0a952718c61de955246cc1f585ab4526d49cc
EBUILD lld-6.0.1.ebuild 1731 BLAKE2B 94a45353bb5db9ff18974afbbf2f77f00814302af1f146298da97cc53941811b91367aee89c82365e1a712ad7d86b2e8ad0b6b59653e56296c7e45e8ab65a266 SHA512 3985af3b2b300c6ddfade3c848a51f8dd1254f15bc3c51cf4d6a5bf8d655de756c8e5315c5594f65f07530b8d21526367f4397fd9b39f895a5f1e525a3aef409
EBUILD lld-7.0.0.ebuild 1736 BLAKE2B fc3a21c3abd1e6777644dcbef0e7ce1fd6b4b895934fd39a8c265926e24f33bd84382d4d1e9c357b06885364e75d495f79100bd039465ac3f69a410a6a5c6ce6 SHA512 7d1833c83406eae3af97546bbf4a34d7f9744bed0b541a06114f6406f73a4dfff15f6b2f3a6643b9840208999485cc4109c79052cb4d8f3fa65afff8554c81ce
+EBUILD lld-7.0.1_rc2.ebuild 1742 BLAKE2B 819279b2d9790a7b89bcd6b0dd2e91f28f43970f4e1f3b31ce5bb8f65031bc4aadb930202bdda45f23c744a1e768b9b2933c9967520dad6cb19eb0c457edceb4 SHA512 82136a9f64b500002d5e71143bcde1eb1a8f067947eec492802a5ede2a8159a1d35391d9e5d12d35288b0c5b65e8a57f9f1f615636faa1c736642636bc770cc8
EBUILD lld-7.0.9999.ebuild 1674 BLAKE2B 14f026b7d86c935329e9909ac9ed73519350e8a845dffd669a1c0c1f1f82c8ef9ccfa06140f25efe78ff765eed2e05a667f495007a2a40259b1e75fb798a48a3 SHA512 6d1786893ec8348de2b8efb675c13672be1d366b108f633adf1772c0b96e3f2574aaf624cd37bca76af86032431589cd3788cca76e5fc64b4aa49a86904498e1
EBUILD lld-9999.ebuild 1625 BLAKE2B 2308235d2368d9eb25a1d8ae41eaa6b182475e5d49aeb37ff5fc025cb500d268a2f935b4dbe26ed1c2ab950d082e40030a5d5d39a5e3357ca8610f927ccc0fb6 SHA512 6abdc37eef950c50164a29752ab370e08aefe9db909a4ac2ec1f9eb1e6a8b3fdca8ed776945f0e9b745bed11633b2ff33f1f00853e7fdfd22664756eba839f14
MISC metadata.xml 216 BLAKE2B fe5e49887842aa513fbf1f2e09bed09a884d531fd21bdaeb2d389e8bf590b6c0e7063f0af98f66e2db129308ab0f0804ba327c3c752bbb4c900c59ac109d99aa SHA512 3485598147c953e72e1785693a489a7e7d73d59620b76054db9c0ce95d8bfa0e8ffec29da7f7a9d73a32e5b77eac07ca3306c56a972dc57fd89d477edaebf3d5
diff --git a/sys-devel/lld/lld-7.0.1_rc2.ebuild b/sys-devel/lld/lld-7.0.1_rc2.ebuild
new file mode 100644
index 000000000000..fa55fbbdf431
--- /dev/null
+++ b/sys-devel/lld/lld-7.0.1_rc2.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+: ${CMAKE_MAKEFILE_GENERATOR:=ninja}
+# (needed due to CMAKE_BUILD_TYPE != Gentoo)
+CMAKE_MIN_VERSION=3.7.0-r1
+PYTHON_COMPAT=( python2_7 )
+
+inherit cmake-utils llvm multiprocessing python-any-r1
+
+MY_P=${P/_/}.src
+LLVM_P=llvm-${PV/_/}.src
+
+DESCRIPTION="The LLVM linker (link editor)"
+HOMEPAGE="https://llvm.org/"
+SRC_URI="https://prereleases.llvm.org/${PV/_//}/${MY_P}.tar.xz
+ test? ( https://prereleases.llvm.org/${PV/_//}/${LLVM_P}.tar.xz )"
+
+LICENSE="UoI-NCSA"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-fbsd"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="~sys-devel/llvm-${PV}"
+DEPEND="${RDEPEND}
+ test? ( $(python_gen_any_dep "~dev-python/lit-${PV}[\${PYTHON_USEDEP}]") )"
+
+S=${WORKDIR}/${MY_P}
+
+# least intrusive of all
+CMAKE_BUILD_TYPE=RelWithDebInfo
+
+python_check_deps() {
+ has_version "dev-python/lit[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ LLVM_MAX_SLOT=${PV%%.*} llvm_pkg_setup
+ use test && python-any-r1_pkg_setup
+}
+
+src_unpack() {
+ einfo "Unpacking ${MY_P}.tar.xz ..."
+ tar -xf "${DISTDIR}/${MY_P}.tar.xz" || die
+
+ if use test; then
+ einfo "Unpacking parts of ${LLVM_P}.tar.xz ..."
+ tar -xf "${DISTDIR}/${LLVM_P}.tar.xz" \
+ "${LLVM_P}"/utils/{lit,unittest} || die
+ mv "${LLVM_P}" llvm || die
+ fi
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_SHARED_LIBS=ON
+
+ -DLLVM_INCLUDE_TESTS=$(usex test)
+ )
+ use test && mycmakeargs+=(
+ -DLLVM_BUILD_TESTS=ON
+ -DLLVM_MAIN_SRC_DIR="${WORKDIR}/llvm"
+ -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit"
+ -DLLVM_LIT_ARGS="-vv;-j;${LIT_JOBS:-$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")}"
+ )
+
+ cmake-utils_src_configure
+}
+
+src_test() {
+ cmake-utils_src_make check-lld
+}
diff --git a/sys-devel/llvm-common/Manifest b/sys-devel/llvm-common/Manifest
index 7a9d7456833e..a164d2a7e06f 100644
--- a/sys-devel/llvm-common/Manifest
+++ b/sys-devel/llvm-common/Manifest
@@ -2,10 +2,12 @@ DIST llvm-4.0.1.src.tar.xz 21065652 BLAKE2B 6327eed2d1feb108440f22d2581d1ff86c10
DIST llvm-5.0.2.src.tar.xz 23451868 BLAKE2B b7082be2e4ad557b29b9f6869811f262adcf5c73d552faf91b339bede75cf5eab58afefa12fa779a38be71fe2b8f4ea297c3213ee4e8370cc01972c59249d91c SHA512 3588be5ed969c3f7f6f16f56a12a6af2814d3d3c960d4a36ffebb0446cc75f19220bccee7fc605f9b01f5d5c188a905a046193cc12dec42dd5922048b5c27fe1
DIST llvm-6.0.1.src.tar.xz 25306628 BLAKE2B 60232d4d22f8096b565cc8d81fea0639f24f14e8fc4f66ade69fa15479181f07f655f26dff3fa24bf105762b495da316c5c9352db234bd0af6b9c3fff6d4d881 SHA512 cbbb00eb99cfeb4aff623ee1a5ba075e7b5a76fc00c5f9f539ff28c108598f5708a0369d5bd92683def5a20c2fe60cab7827b42d628dbfcc79b57e0e91b84dd9
DIST llvm-7.0.0.src.tar.xz 28324368 BLAKE2B 10168ff9be8f68536db3b2263c85c1c98213ef03dc542b83628ff176542452582bc496bab236fdf40d4a6463a33f04b27f1458c072ad8b66b641f8df8d494046 SHA512 bdc9b851c158b17e1bbeb7ac5ae49821bfb1251a3826fe8a3932cd1a43f9fb0d620c3de67150c1d9297bf0b86fa917e75978da29c3f751b277866dc90395abec
+DIST llvm-7.0.1rc2.src.tar.xz 28304444 BLAKE2B 245e45f77a2ec2d94b237d1015ccc1e409f0dc149dba3192c15293bc2d45ec40989081a930a5e55a4b0ebf906397c62afd910bc25c5c1eef7ea5e310d4172acb SHA512 cfc4d1926bae75f6f22350273ab76811f0b78ddad81717c9201d7814ebe7b902c5a9c6caa0232e2bdc14e819b008f914d055b23723e0ec4a5309809dc06c6bf4
EBUILD llvm-common-4.0.1.ebuild 641 BLAKE2B a8543b8d909c48caecbcc423f15742aa56412971320650a87742cf907b0d0d3d143e7caa54b947b592380b40d340bd1957c8df05053f6cc6f932332ce5e71eb7 SHA512 b497a3c7edd56bb634e307a8ad9acecb6f21f2f262ab5f50ee6c9b2bd4c40f0defd8df61ad6f0b0c74222468388cb18d3634e0a0d1662ed4c74d5c2e3db30188
EBUILD llvm-common-5.0.2.ebuild 839 BLAKE2B d7e6aaba7df7b7da6da5f7cc9cc165b8921758d8969f498f289c5797facfb383c7299617655d8228641e53d02a782a48b22b9c08ea9c3e8e6bc33a842fa24567 SHA512 6647d800604efe1eae94a55a632075d491c11c128bbb7a0903a6b3a93a49f071d74049b98fc4f765d5c7dae9e52de772f127d158e397e9160ef80b3b7dd09595
EBUILD llvm-common-6.0.1.ebuild 838 BLAKE2B 7c30c7e7e52916af34728e11cc6e00e6add5363974affd53e7940bcbacfb3b7a73bd17d86b29b10684535ced07c0237909473c4500e2439d5824b4cbcf924d7e SHA512 d642ce674d3a0a742e5afaeb97a5e67e5a616ddd18642777dc640c44fc65c9f5d34c5e1398483c062152e87c9ab076b5518ad3ab5d39df9d1ce1331eb2784464
EBUILD llvm-common-7.0.0.ebuild 842 BLAKE2B 5e3b7595a8c27da5fbbbb8bfa369371f29da50618c06bcd4bcbe4ddc027f24e917fad23d0a432d4e9dc1e600683bb9e5d5f20b90d106754b7e6ee40f05c8dddf SHA512 e1cb1065b6c3f66602d431edac11406bc50781ae472e5a0020215540af78fc6d4050a30af25c5aac1396e017e73c3d0066cb35562014c655ff957369ae0b7631
+EBUILD llvm-common-7.0.1_rc2.ebuild 845 BLAKE2B 3080acdaa4eb8b81aed91f47c8d53c0c4df33995cc90328f0034872b9a6bb10b3fa71f82cec982525df47d245bdda7251b3006eef6c2ada22023a53534428ef5 SHA512 8d4268b3779a49b2147869a01e9c6adbeae574e13e5da4b9e46e3459d3c0fa42a97b411d081494253de515120c9f0b8800bd1437d712c010eb667f82f75b3ac9
EBUILD llvm-common-7.0.9999.ebuild 729 BLAKE2B da80aa6feb2e836dc2549dac86659c920be0b8430a70c322d7337a5771963d2cff95d497486904a5e96706002123c098ba446a50925269122c14abdb8cdae76e SHA512 b45c99bc3f1c5ec05df418b2206245159b5604c6780e497f16ce52f50def0d0e867151ee7f6811b5ac72150336f0821dc1c4e56ed1e9302d840dd23b6a651a26
EBUILD llvm-common-9999.ebuild 704 BLAKE2B bfcd46a0c3754d0c5542eb1b03c8696ef355ebe34e94c98ab6a23442a88bc6b9a8aa8d2c89b18ed0ceea47bd2adcd7df67c8d201876a04ba7816257f83c53706 SHA512 4a7fd7260e93fa3b44a565c915a8be2e207085a506018b97263740851fd78dacf88e582b73d74a06aa36de2975b751c258ceb7997a5e6ee7db4d404fbed865bf
MISC metadata.xml 216 BLAKE2B fe5e49887842aa513fbf1f2e09bed09a884d531fd21bdaeb2d389e8bf590b6c0e7063f0af98f66e2db129308ab0f0804ba327c3c752bbb4c900c59ac109d99aa SHA512 3485598147c953e72e1785693a489a7e7d73d59620b76054db9c0ce95d8bfa0e8ffec29da7f7a9d73a32e5b77eac07ca3306c56a972dc57fd89d477edaebf3d5
diff --git a/sys-devel/llvm-common/llvm-common-7.0.1_rc2.ebuild b/sys-devel/llvm-common/llvm-common-7.0.1_rc2.ebuild
new file mode 100644
index 000000000000..4fc444b67dea
--- /dev/null
+++ b/sys-devel/llvm-common/llvm-common-7.0.1_rc2.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+MY_P=llvm-${PV/_/}.src
+DESCRIPTION="Common files shared between multiple slots of LLVM"
+HOMEPAGE="https://llvm.org/"
+SRC_URI="https://prereleases.llvm.org/${PV/_//}/${MY_P}.tar.xz"
+
+LICENSE="UoI-NCSA"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-fbsd ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE=""
+
+RDEPEND="!sys-devel/llvm:0"
+
+S=${WORKDIR}/${MY_P}
+
+src_unpack() {
+ einfo "Unpacking parts of ${MY_P}.tar.xz ..."
+ tar -xJf "${DISTDIR}/${MY_P}.tar.xz" "${MY_P}/utils/vim" || die
+}
+
+src_configure() { :; }
+src_compile() { :; }
+src_test() { :; }
+
+src_install() {
+ insinto /usr/share/vim/vimfiles
+ doins -r utils/vim/*/
+ # some users may find it useful
+ newdoc utils/vim/README README.vim
+ dodoc utils/vim/vimrc
+}
diff --git a/sys-devel/llvm/Manifest b/sys-devel/llvm/Manifest
index 8b9c879401b2..30def93d8563 100644
--- a/sys-devel/llvm/Manifest
+++ b/sys-devel/llvm/Manifest
@@ -43,6 +43,7 @@ DIST llvm-6.0.1-manpages.tar.bz2 102656 BLAKE2B 9088ca0bdda69f63354e61b7495df545
DIST llvm-6.0.1.src.tar.xz 25306628 BLAKE2B 60232d4d22f8096b565cc8d81fea0639f24f14e8fc4f66ade69fa15479181f07f655f26dff3fa24bf105762b495da316c5c9352db234bd0af6b9c3fff6d4d881 SHA512 cbbb00eb99cfeb4aff623ee1a5ba075e7b5a76fc00c5f9f539ff28c108598f5708a0369d5bd92683def5a20c2fe60cab7827b42d628dbfcc79b57e0e91b84dd9
DIST llvm-7.0.0-manpages.tar.bz2 121089 BLAKE2B b60f18ce65e8b5bc9122378f82f0edb85d3ddef06e03e39bab8f52afe3c1c74ae8adb39335fa437fb243df8b15c7a8563eb23bc28fd9f3070a33e4c93081b095 SHA512 42731538157edc92e281baf0f4f56ce2943f1ed47b5fcd0269f98d19a8fa1602d093a02d22847ea1b00b49bf60a5e273e91aec216d084c68c772672d1a702c43
DIST llvm-7.0.0.src.tar.xz 28324368 BLAKE2B 10168ff9be8f68536db3b2263c85c1c98213ef03dc542b83628ff176542452582bc496bab236fdf40d4a6463a33f04b27f1458c072ad8b66b641f8df8d494046 SHA512 bdc9b851c158b17e1bbeb7ac5ae49821bfb1251a3826fe8a3932cd1a43f9fb0d620c3de67150c1d9297bf0b86fa917e75978da29c3f751b277866dc90395abec
+DIST llvm-7.0.1rc2.src.tar.xz 28304444 BLAKE2B 245e45f77a2ec2d94b237d1015ccc1e409f0dc149dba3192c15293bc2d45ec40989081a930a5e55a4b0ebf906397c62afd910bc25c5c1eef7ea5e310d4172acb SHA512 cfc4d1926bae75f6f22350273ab76811f0b78ddad81717c9201d7814ebe7b902c5a9c6caa0232e2bdc14e819b008f914d055b23723e0ec4a5309809dc06c6bf4
DIST llvm-manpages-4.0.1.tar.bz2 87981 BLAKE2B 79ffd254ee5c6e09159c954913ef820f74107d4fcea5e3ed82592dc36af8fdfbf1e850547ba8bfc20aa9a5ecdd26c50329e6a6d558ae3aa5475a930789ce3e01 SHA512 d5b3213567c25db58ef364d272314a79c311a80fc21d98c09a5540af45a8190a38f489228663fe9a9b63bf0f2b952c460c4196a8fc8d6f221619f6e7ed2fc415
EBUILD llvm-3.4.2-r100.ebuild 7682 BLAKE2B 5915477569456fae852c4e6f29ffc405ced369e0cbaf9c2da54b3fa2b09237fdaa3afcda77df87534cf8c4343cf2f886e77a95e27e9861696395dbcad42fb815 SHA512 152d9d8167a153b3273a4e8c670eb50cd267354cc925584a416738de104f72bf66bc42d55a672c09e8d80c475ddcb254aff71878384df2266c112259d0822d69
EBUILD llvm-3.5.2-r100.ebuild 7837 BLAKE2B 224f7bf982e0f65a512a873e6eca951d05d4e81e7ae636e95d03308c19faea77016357207c2e4d2534d9c4de561a7ff5215f37e9d02e6c6c68aa02191f63610f SHA512 3753dab4281fa0fd5061a9b4231e6fceb567bf40ac89f3bc9b2f52164e21e1b6283d3e6bb48b72dc8dfb0c21a7567ef0661d1a820943c032bb3a6ebdff59c5c9
@@ -56,6 +57,7 @@ EBUILD llvm-6.0.1-r2.ebuild 8169 BLAKE2B 214212c5960b9a2e6b8c2d1506ac4f59227ba31
EBUILD llvm-6.0.1.ebuild 7820 BLAKE2B 0077de543904f588bf856b4f279d1ced9a06bfe77da0e7149469ff960b4d0c7c1e557d92074c4c0570a7054a0b14d8663d2a502678884581fb35060f8bb0397f SHA512 b1fc081efff6cc0c77230058b261c5880fe57641544b21e03ff55ab993d64c00b4df1b12a5af5fa4b5f5528a1bb0c04a3f056be2aa8b528fbac29ec484e7f35b
EBUILD llvm-7.0.0-r1.ebuild 7891 BLAKE2B e7739e453a169c9f15d11adc298e8c3bc3140bd2d1b2506a2be1338a8e7018c732e5ed2d320c15e55c7e1ae8c58d1ff7b0e6c7c9d54e941bae41e5d633bcb930 SHA512 1975529ea2dff95e5353367091153d04226525df77b50b4a065ed03dc12b257ab295fc543a975842a3cbb2891ad3bad537679b3b3a496174985cd09bb925522c
EBUILD llvm-7.0.0.ebuild 7719 BLAKE2B 31abb64164994fbddbf699efc8eaf27a6ae56d3bfe62c41d92df150f2522d2cfb45e0846d16577bc595bce6c6643b5db8b1ec7792a04b191fbb3f1481597af4f SHA512 76b0087874525dc4402a9c79aa35051af61d9cd59d01ed1d2f3488eff36aec972ad822c657aaa599012ec79be7952b2ad51722ad16ab8cc770c8b6b3db096aa9
+EBUILD llvm-7.0.1_rc2.ebuild 7733 BLAKE2B 5d171f1d520a163cfffea9266e2c935db8d905f2ffe9482d4201146d3014bae2286d172a9ca65d61b385644453f0dcd86b58ae0611eabfc9798d3951291c1296 SHA512 8a9572f33c140edc8ee7616d4387d5a61d7ffd377c2741c49629c334dbeb1475dbc9532f5821ea08887c7a954c371ebae99bf603d631fc630dfb19e89b378e9e
EBUILD llvm-7.0.9999.ebuild 7406 BLAKE2B 19b08c7a3f6c7c6939764baa622bea7dea09362d281874ebcaa235563b60154c56b6e7e80bc87767442277192ed6a5d725a9694f872d6e2e449cb11c728157a5 SHA512 5e613af19834c142a45a688468587efb4f9198c1aefc9772048ed1775d27dbb9336c0f2f362433d7b1e6fc57151025083037dbbaed8ad407710b534df55f1e58
EBUILD llvm-9999.ebuild 8533 BLAKE2B b77410643fbcfc2bbc9884ee13c40fb7bb262c4935301d9e09e02743117c654c246783121c06aa7e241ba5964012b917dbfb90f527f98291f176ec0388db5fd2 SHA512 44006ca5a022656b53fcc006f3e8adbc5828e183a69b2952bb556c580ea92d755b01ffedc8a4736b22ded70df8d51df0dcb5b906211503aaef7a97e715295232
MISC metadata.xml 3022 BLAKE2B bce3df757f9f5639bfb0171321774084523f1f86b22d73fdc577b73ef8765c13f0b32118905616e8ae8505dd7e8820039d9223c33e209c53c354db82c35b4ec0 SHA512 27b6955992b03981b5bb91d358686ddbeac8d97d1b55b5178209acb22d7efff04c34b463ee2fdd5882b66569c97973f2dc39a8f12d5b4342040b61d59a449226
diff --git a/sys-devel/llvm/llvm-7.0.1_rc2.ebuild b/sys-devel/llvm/llvm-7.0.1_rc2.ebuild
new file mode 100644
index 000000000000..ac571ed36228
--- /dev/null
+++ b/sys-devel/llvm/llvm-7.0.1_rc2.ebuild
@@ -0,0 +1,260 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+: ${CMAKE_MAKEFILE_GENERATOR:=ninja}
+# (needed due to CMAKE_BUILD_TYPE != Gentoo)
+CMAKE_MIN_VERSION=3.7.0-r1
+PYTHON_COMPAT=( python2_7 )
+
+inherit cmake-utils eapi7-ver flag-o-matic multilib-minimal \
+ multiprocessing pax-utils python-any-r1 toolchain-funcs
+
+DESCRIPTION="Low Level Virtual Machine"
+HOMEPAGE="https://llvm.org/"
+SRC_URI="https://prereleases.llvm.org/${PV/_//}/${P/_/}.src.tar.xz"
+# !doc? ( https://dev.gentoo.org/~mgorny/dist/llvm/${P}-manpages.tar.bz2 )"
+
+# Keep in sync with CMakeLists.txt
+ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM BPF Hexagon Lanai Mips MSP430
+ NVPTX PowerPC Sparc SystemZ X86 XCore )
+ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" )
+
+# Additional licenses:
+# 1. OpenBSD regex: Henry Spencer's license ('rc' in Gentoo) + BSD.
+# 2. ARM backend: LLVM Software Grant by ARM.
+# 3. MD5 code: public-domain.
+# 4. Tests (not installed):
+# a. gtest: BSD.
+# b. YAML tests: MIT.
+
+LICENSE="UoI-NCSA rc BSD public-domain
+ llvm_targets_ARM? ( LLVM-Grant )"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-fbsd ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE="debug doc exegesis gold libedit +libffi ncurses test xar xml
+ kernel_Darwin ${ALL_LLVM_TARGETS[*]}"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ sys-libs/zlib:0=
+ exegesis? ( dev-libs/libpfm:= )
+ 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:0=[${MULTILIB_USEDEP}] )
+ xar? ( app-arch/xar )
+ xml? ( dev-libs/libxml2:2=[${MULTILIB_USEDEP}] )"
+# configparser-3.2 breaks the build (3.3 or none at all are fine)
+DEPEND="${RDEPEND}
+ dev-lang/perl
+ || ( >=sys-devel/gcc-3.0 >=sys-devel/llvm-3.5
+ ( >=sys-freebsd/freebsd-lib-9.1-r10 sys-libs/libcxx )
+ )
+ kernel_Darwin? (
+ <sys-libs/libcxx-$(ver_cut 1-3).9999
+ >=sys-devel/binutils-apple-5.1
+ )
+ doc? ( dev-python/sphinx )
+ gold? ( sys-libs/binutils-libs )
+ libffi? ( virtual/pkgconfig )
+ !!<dev-python/configparser-3.3.0.2
+ ${PYTHON_DEPS}"
+# There are no file collisions between these versions but having :0
+# installed means llvm-config there will take precedence.
+RDEPEND="${RDEPEND}
+ !sys-devel/llvm:0"
+PDEPEND="sys-devel/llvm-common
+ gold? ( >=sys-devel/llvmgold-${SLOT} )"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ || ( ${ALL_LLVM_TARGETS[*]} )"
+
+S=${WORKDIR}/${P/_/}.src
+
+# least intrusive of all
+CMAKE_BUILD_TYPE=RelWithDebInfo
+
+src_prepare() {
+ # Fix llvm-config for shared linking and sane flags
+ # https://bugs.gentoo.org/show_bug.cgi?id=565358
+ eapply "${FILESDIR}"/9999/0007-llvm-config-Clean-up-exported-values-update-for-shar.patch
+
+ # disable use of SDK on OSX, bug #568758
+ sed -i -e 's/xcrun/false/' utils/lit/lit/util.py || die
+
+ # User patches + QA
+ cmake-utils_src_prepare
+}
+
+multilib_src_configure() {
+ local ffi_cflags ffi_ldflags
+ if use libffi; then
+ ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi)
+ ffi_ldflags=$($(tc-getPKG_CONFIG) --libs-only-L libffi)
+ fi
+
+ local libdir=$(get_libdir)
+ local mycmakeargs=(
+ # disable appending VCS revision to the version to improve
+ # direct cache hit ratio
+ -DLLVM_APPEND_VC_REV=OFF
+ -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${SLOT}"
+ -DLLVM_LIBDIR_SUFFIX=${libdir#lib}
+
+ -DBUILD_SHARED_LIBS=ON
+ -DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
+ -DLLVM_BUILD_TESTS=$(usex test)
+
+ -DLLVM_ENABLE_FFI=$(usex libffi)
+ -DLLVM_ENABLE_LIBEDIT=$(usex libedit)
+ -DLLVM_ENABLE_TERMINFO=$(usex ncurses)
+ -DLLVM_ENABLE_LIBXML2=$(usex xml)
+ -DLLVM_ENABLE_ASSERTIONS=$(usex debug)
+ -DLLVM_ENABLE_LIBPFM=$(usex exegesis)
+ -DLLVM_ENABLE_EH=ON
+ -DLLVM_ENABLE_RTTI=ON
+
+ -DWITH_POLLY=OFF # TODO
+
+ -DLLVM_HOST_TRIPLE="${CHOST}"
+
+ -DFFI_INCLUDE_DIR="${ffi_cflags#-I}"
+ -DFFI_LIBRARY_DIR="${ffi_ldflags#-L}"
+ # used only for llvm-objdump tool
+ -DHAVE_LIBXAR=$(multilib_native_usex xar 1 0)
+
+ # disable OCaml bindings (now in dev-ml/llvm-ocaml)
+ -DOCAMLFIND=NO
+ )
+
+# Note: go bindings have no CMake rules at the moment
+# but let's kill the check in case they are introduced
+# if ! multilib_is_native_abi || ! use go; then
+ mycmakeargs+=(
+ -DGO_EXECUTABLE=GO_EXECUTABLE-NOTFOUND
+ )
+# fi
+
+ use test && mycmakeargs+=(
+ -DLLVM_LIT_ARGS="-vv;-j;${LIT_JOBS:-$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")}"
+ )
+
+ if multilib_is_native_abi; then
+ mycmakeargs+=(
+ -DLLVM_BUILD_DOCS=$(usex doc)
+ -DLLVM_ENABLE_OCAMLDOC=OFF
+ -DLLVM_ENABLE_SPHINX=$(usex doc)
+ -DLLVM_ENABLE_DOXYGEN=OFF
+ -DLLVM_INSTALL_UTILS=ON
+ )
+ use doc && mycmakeargs+=(
+ -DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/${SLOT}/share/man"
+ -DLLVM_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/html"
+ -DSPHINX_WARNINGS_AS_ERRORS=OFF
+ )
+ use gold && mycmakeargs+=(
+ -DLLVM_BINUTILS_INCDIR="${EPREFIX}"/usr/include
+ )
+ fi
+
+ if tc-is-cross-compiler; then
+ local tblgen="${EPREFIX}/usr/lib/llvm/${SLOT}/bin/llvm-tblgen"
+ [[ -x "${tblgen}" ]] \
+ || die "${tblgen} not found or usable"
+ mycmakeargs+=(
+ -DCMAKE_CROSSCOMPILING=ON
+ -DLLVM_TABLEGEN="${tblgen}"
+ )
+ fi
+
+ # workaround BMI bug in gcc-7 (fixed in 7.4)
+ # https://bugs.gentoo.org/649880
+ # apply only to x86, https://bugs.gentoo.org/650506
+ if tc-is-gcc && [[ ${MULTILIB_ABI_FLAG} == abi_x86* ]] &&
+ [[ $(gcc-major-version) -eq 7 && $(gcc-minor-version) -lt 4 ]]
+ then
+ local CFLAGS="${CFLAGS} -mno-bmi"
+ local CXXFLAGS="${CXXFLAGS} -mno-bmi"
+ fi
+
+ # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
+ use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
+ cmake-utils_src_configure
+}
+
+multilib_src_compile() {
+ cmake-utils_src_compile
+
+ pax-mark m "${BUILD_DIR}"/bin/llvm-rtdyld
+ pax-mark m "${BUILD_DIR}"/bin/lli
+ pax-mark m "${BUILD_DIR}"/bin/lli-child-target
+
+ if use test; then
+ pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/Orc/OrcJITTests
+ pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/MCJIT/MCJITTests
+ pax-mark m "${BUILD_DIR}"/unittests/Support/SupportTests
+ fi
+}
+
+multilib_src_test() {
+ # respect TMPDIR!
+ local -x LIT_PRESERVES_TMP=1
+ cmake-utils_src_make check
+}
+
+src_install() {
+ local MULTILIB_CHOST_TOOLS=(
+ /usr/lib/llvm/${SLOT}/bin/llvm-config
+ )
+
+ local MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/llvm/Config/llvm-config.h
+ )
+
+ local LLVM_LDPATHS=()
+ multilib-minimal_src_install
+
+ # move wrapped headers back
+ mv "${ED%/}"/usr/include "${ED%/}"/usr/lib/llvm/${SLOT}/include || die
+}
+
+multilib_src_install() {
+ cmake-utils_src_install
+
+ # move headers to /usr/include for wrapping
+ rm -rf "${ED%/}"/usr/include || die
+ mv "${ED%/}"/usr/lib/llvm/${SLOT}/include "${ED%/}"/usr/include || die
+
+ LLVM_LDPATHS+=( "${EPREFIX}/usr/lib/llvm/${SLOT}/$(get_libdir)" )
+}
+
+multilib_src_install_all() {
+ local revord=$(( 9999 - ${SLOT} ))
+ newenvd - "10llvm-${revord}" <<-_EOF_
+ PATH="${EPREFIX}/usr/lib/llvm/${SLOT}/bin"
+ # we need to duplicate it in ROOTPATH for Portage to respect...
+ ROOTPATH="${EPREFIX}/usr/lib/llvm/${SLOT}/bin"
+ MANPATH="${EPREFIX}/usr/lib/llvm/${SLOT}/share/man"
+ LDPATH="$( IFS=:; echo "${LLVM_LDPATHS[*]}" )"
+ _EOF_
+
+ # install pre-generated manpages
+ if false && ! use doc; then
+ # (doman does not support custom paths)
+ insinto "/usr/lib/llvm/${SLOT}/share/man/man1"
+ doins "${WORKDIR}/${P}-manpages/llvm"/*.1
+ fi
+
+ docompress "/usr/lib/llvm/${SLOT}/share/man"
+}
+
+pkg_postinst() {
+ elog "You can find additional opt-viewer utility scripts in:"
+ elog " ${EROOT%/}/usr/lib/llvm/${SLOT}/share/opt-viewer"
+ elog "To use these scripts, you will need Python 2.7 along with the following"
+ elog "packages:"
+ elog " dev-python/pygments (for opt-viewer)"
+ elog " dev-python/pyyaml (for all of them)"
+}