summaryrefslogtreecommitdiff
path: root/sys-devel
diff options
context:
space:
mode:
Diffstat (limited to 'sys-devel')
-rw-r--r--sys-devel/Manifest.gzbin9320 -> 9331 bytes
-rw-r--r--sys-devel/clang-runtime/Manifest1
-rw-r--r--sys-devel/clang-runtime/clang-runtime-5.0.1_rc2.ebuild25
-rw-r--r--sys-devel/clang/Manifest4
-rw-r--r--sys-devel/clang/clang-5.0.1_rc2.ebuild288
-rw-r--r--sys-devel/gcc-apple/Manifest1
-rw-r--r--sys-devel/gcc-apple/files/gcc-apple-4.2.1-prefix-search-dirs.patch27
-rw-r--r--sys-devel/gcc-config/Manifest2
-rw-r--r--sys-devel/gcc-config/gcc-config-1.9.0-r1.ebuild (renamed from sys-devel/gcc-config/gcc-config-1.9.0.ebuild)4
-rw-r--r--sys-devel/gdb-apple/Manifest4
-rw-r--r--sys-devel/gdb-apple/files/gdb-apple-1344-darwin8.patch131
-rw-r--r--sys-devel/gdb-apple/files/gdb-apple-1518-task_dyld_info.patch22
-rw-r--r--sys-devel/gdb-apple/files/gdb-apple-563-darwin7.patch110
-rw-r--r--sys-devel/gdb-apple/files/gdb-apple-563-no-64bit.patch19
-rw-r--r--sys-devel/gettext/Manifest5
-rw-r--r--sys-devel/gettext/files/gettext-0.19.8.1-format-security.patch87
-rw-r--r--sys-devel/gettext/gettext-0.19.8.1.ebuild1
-rw-r--r--sys-devel/lld/Manifest9
-rw-r--r--sys-devel/lld/lld-5.0.1_rc2.ebuild73
-rw-r--r--sys-devel/llvm-common/Manifest6
-rw-r--r--sys-devel/llvm-common/llvm-common-5.0.1_rc2.ebuild35
-rw-r--r--sys-devel/llvm/Manifest8
-rw-r--r--sys-devel/llvm/files/4.0.1/0001-cmake-Pass-Wl-z-nodelete-on-Linux-to-prevent-unloadi.patch56
-rw-r--r--sys-devel/llvm/files/5.0.1/0001-cmake-Pass-Wl-z-nodelete-on-Linux-to-prevent-unloadi.patch71
-rw-r--r--sys-devel/llvm/llvm-4.0.1-r1.ebuild (renamed from sys-devel/llvm/llvm-4.0.1.ebuild)4
-rw-r--r--sys-devel/llvm/llvm-5.0.1_rc2.ebuild236
-rw-r--r--sys-devel/llvm/llvm-5.0.9999.ebuild4
-rw-r--r--sys-devel/native-cctools/Manifest2
-rw-r--r--sys-devel/native-cctools/files/ld-aix-1140
-rw-r--r--sys-devel/native-cctools/files/ld-aix-2138
30 files changed, 908 insertions, 605 deletions
diff --git a/sys-devel/Manifest.gz b/sys-devel/Manifest.gz
index d63ec68a7372..e6118a3ed177 100644
--- a/sys-devel/Manifest.gz
+++ b/sys-devel/Manifest.gz
Binary files differ
diff --git a/sys-devel/clang-runtime/Manifest b/sys-devel/clang-runtime/Manifest
index ddd5a27fff10..4abc10b7a544 100644
--- a/sys-devel/clang-runtime/Manifest
+++ b/sys-devel/clang-runtime/Manifest
@@ -2,6 +2,7 @@ EBUILD clang-runtime-3.9.0.ebuild 540 BLAKE2B 194ab885cecfa8d265b5f7fa3ed937910f
EBUILD clang-runtime-3.9.1.ebuild 569 BLAKE2B 58fa2d4ee5d80c7540e8030015fe085ad6969f57103face3c2f38088495e017813946ff451d39b0fcbb2dea13a95afd742efc96ce97cf09bb0d5240280c84db4 SHA512 b78a53021a94b191c3c48a0db9b8e0a395714dfb204569180eedc4cb390d948ad78d9f87d6974cc6ff036fc05ed10aa30cadfc521d18205cdf6d556814d92a29
EBUILD clang-runtime-4.0.1.ebuild 640 BLAKE2B e3e24925b7e26914c70e6aff2f2968d4d47a30afdce3151f9776e24a948bc9fc9aa088853c777aa73282e2c5ad3db60b2bf4a1a561f0c0139d9f367fdc24e832 SHA512 cf8152f07a62a225edc5b0bf3dcf0a40d1c1414d4ac63c558f261f2c0cf992a01064b1b6ad5f2f3105a3637a4aa0f0611ddb7df6d9af5ee4767a034d167d4647
EBUILD clang-runtime-5.0.0.ebuild 641 BLAKE2B 24567f5faca4a1f0304c418661e4abaab161a86ebbd3467f6159e33b44976ef4bb17d9fffb50bb717662fcf572ea9bcc243cd82ed638532e670f438ea1ddc5d8 SHA512 4d0c4791a6ef8925dd1d7a834f8a3d020fcb50f63bd78195707aac174d29a619808ae80ab2bd2f18a38057dd906d36664f79b00a038a04811d339304a65b817f
+EBUILD clang-runtime-5.0.1_rc2.ebuild 623 BLAKE2B 7993ac9e448c401e9afdb2a62c7bdb654a573faffb27bba9c838c7ea330342d0ad09f3688aa759ff2801162cb3dd345a96030af1c1b369a1f4dc32e10bba9307 SHA512 948bf0eaaf45d253000bfe38e90143f9f9621f82252724cc0f28fc4c887226d273e3513ab8502a928daefe38206331f85cc4e0b252a4219d73ca59549109ccc3
EBUILD clang-runtime-5.0.9999.ebuild 664 BLAKE2B 26eab8c84d4414e67c67c1d679c6424fd52eef66ba49c838ae1e2605a37850de24308191bd044985ed268dbac21e0996ce4149c8c74896594e0fa76ed46d1a8c SHA512 9130a2868b8e37b1e20d57ec151ad8560d8fdc487b1d0e086f95d4c9edeee802efaec1a9e7c2e5cb06093b3127c9199eebfcf93a287fef535a79ca59b69dc9d0
EBUILD clang-runtime-9999.ebuild 664 BLAKE2B 8d142b940d9204b7c64ddd8d97ebe981df6cc7a3080276ebdea5b7e7c0abfa376ef838fc21532eb696d92c990f2fe6195f4a2fa466ace0644414bb48de25ddd3 SHA512 e1e29618485e3153042f366c2ee178d1befb4fa2ecf52fe70e50d97e50bb3d7bb3fc51430f762106ddba77f050cf47d721fe9bbde14c5f8c0fc596e000c067d8
MISC metadata.xml 578 BLAKE2B d58a4d1a7bf88a0d5640a02f3acb7e491f275b3bb66a8583aa057b8daae93bb1dbb80f6150bc326228c6ab8c8f8498b46bf72a3fb5e97d0eeea2fb39f87660e3 SHA512 822f56b33d991088ad5e51c3dd96e2e36f544b68c57e45ed8365835d1ef6d0eb797f9de1f8f33b59fbbaf085e245079ca767d5e8b773261cf9ad2c5629b7b16a
diff --git a/sys-devel/clang-runtime/clang-runtime-5.0.1_rc2.ebuild b/sys-devel/clang-runtime/clang-runtime-5.0.1_rc2.ebuild
new file mode 100644
index 000000000000..013e661624c8
--- /dev/null
+++ b/sys-devel/clang-runtime/clang-runtime-5.0.1_rc2.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2017 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=""
+IUSE="+compiler-rt libcxx openmp +sanitize"
+
+RDEPEND="
+ compiler-rt? (
+ ~sys-libs/compiler-rt-${PV}:${SLOT}
+ sanitize? ( ~sys-libs/compiler-rt-sanitizers-${PV}:${SLOT} )
+ )
+ 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/Manifest b/sys-devel/clang/Manifest
index 12127be17e76..ee41f851606b 100644
--- a/sys-devel/clang/Manifest
+++ b/sys-devel/clang/Manifest
@@ -5,10 +5,13 @@ AUX 5.0.0/0001-Driver-Use-arch-type-to-find-compiler-rt-libraries-o.patch 6888 B
AUX 5.0.0/extra/0002-test-Fix-clang-library-dir-in-LD_LIBRARY_PATH-For-st.patch 3411 BLAKE2B a47f686dffa3e710435291670b8be7b99ea89d86092230f9acce328d24efa7ee43a5023b8deb482a497c1b54eec02c89291e4f10ad2c60382cc4ebe7c913981e SHA512 1ebfe7a6d06dd2991923cd1142c5c5b09ba2d06a3c7e0cbcb5b0f1d34aee57bf585941c0dd44ab331e9427828e5c63ea7475d673ccd3ec8617b99c59c56229a0
DIST cfe-4.0.1.src.tar.xz 10933628 SHA256 61738a735852c23c3bdbe52d035488cdb2083013f384d67c1ba36fabebd8769b SHA512 936c9e1626b27e63a4fb11f3c0cb998eeaf9a520ad6e2bcd67cb4352e59e7781ecc700df79794f3fd70473d90b7e2ba418a39038eb0146b68e843f0705c1f964 WHIRLPOOL 1cb56b36e21eab8004eec43d9c0f7377588cdbcd1d654cd0e6d836d43bc68dc0759993215439c1607e09ed3fa1f68b80504a222f73c1b76d3841cdf638dcbef2
DIST cfe-5.0.0.src.tar.xz 11437024 SHA256 019f23c2192df793ac746595e94a403908749f8e0c484b403476d2611dd20970 SHA512 14acdd622310122b544c952ee5b932b7006d9d8424319f0e3974f2503d40a0cec4200fdd3d813a32ce0d877bcfbb9a5bd5c36f6142b4330e6c814f113ca2efe8 WHIRLPOOL 9d2fff35324621be191cc69b45db472681c9ebdf05aead09510f3178853ac8a179f2c454c2e6513e57f84a99980052671cd9a23d38d6d14b42dfda1853a7844a
+DIST cfe-5.0.1rc2.src.tar.xz 11512960 BLAKE2B f6f53a985abfc07869984a8b6461549df80d8511645ff0ba46c035b04f247d9f56a63a178da7496b60064aed059518175d2d34aa661b72877f3e62b27c9eed13 SHA512 069fa3dc549ed046a004ca31a1e571fe83fca986635b5515e9eab3f91e3a962af99022e927d15fa2482969c64fa9b33c9c7e79a8cd9dd8fa77b554ba3f08d1ea
DIST clang-tools-extra-4.0.1.src.tar.xz 581788 SHA256 35d1e64efc108076acbe7392566a52c35df9ec19778eb9eb12245fc7d8b915b6 SHA512 ea26d926f428e62e76cf8a073e63ffe05645f6592e05d7717d5c257908870ae9217727d3e1578227b14eda5937085872463f1a8e99970256179c68b8a92e69e0 WHIRLPOOL 7db97e7164657af786ec49975e730e8731bece87cfeb1e45894be6d5e3455530c17461ce894b263a0cdfee917d97566db49225374112a543f6355419f15c1d8f
DIST clang-tools-extra-5.0.0.src.tar.xz 646416 SHA256 87d078b959c4a6e5ff9fd137c2f477cadb1245f93812512996f73986a6d973c6 SHA512 bf51c4d851bdc25bd2162e186b3080a30ad523f68859fd3dbce6c1094465382f794917b66406088c3bb1b15bee49821bcef5ef4b1a1e18704596354f7d0639bc WHIRLPOOL ffa57d51ad1b1c3d485f21aaf4cd82336ab6d9291b1e49af07ad05c0c9cc5b529b5571e49a6139c43afb4bcc1e920c1129f3dce73e73792bc965ec9cb8ed1db4
+DIST clang-tools-extra-5.0.1rc2.src.tar.xz 647236 BLAKE2B d916baf928e46f8222b95ca1be715ac16548730035d3a96172ec5f1cd0761c3b5d37b676038a02e78d5e13e95a64784664b60e1a1656798294b2da2d02b6dbe5 SHA512 0186de93b95c19b5d45089479fc7354f5294d78cbd1dee8e03145e7d6cb0f0974dc342636c1e464717af5acd41566ba6971e278ad4e2aca0937fb617970c52aa
DIST llvm-4.0.1.src.tar.xz 21065652 BLAKE2B 6327eed2d1feb108440f22d2581d1ff86c10a10c29793538d8d899c7e2dc83d3f7b147d3fd4bcce2bd2bf57c071b08c624aeafe40a3e7a3914506e7751727e6c SHA512 16adc39b34ddb628f81b171119a8e2a0e9138b25011e803ef0b688e2fbea116fc4953d3a1b61b90a98a75e33619f81566b7cb06a9a2ea4d04ac5e0eb303a2d1d
DIST llvm-5.0.0.src.tar.xz 23411980 BLAKE2B bc3d8b75b766c83912252b51d6b57c8151c9d83415eff7bc771923d35138ed253a788d6c8e0a384c5e78ce1a1065f10d66ef5004df163b4c3b0c6274bb3aa6b7 SHA512 e6d8fdcb5bf27bded814d02f39f69c6171bc3a512d5957c03e5ac2e231f903b7de87634b059bd5c5da670f7c3a8f7a538f6299225799f15f921857f1452f6b3a
+DIST llvm-5.0.1rc2.src.tar.xz 23508164 BLAKE2B 3594d1658310a99787b4ff6f85aa8dd12a0405464bcb095ba4f205ce5b4ed3240a8ae1bef726ff98aba61ae5c8f8c10eeb8e415320d210af60f9e74bff7a8d5c SHA512 0a156e3949d22304b5e173dc9a3628161dff2798ad67924341c11494544350ef3a35a3ebb6ec8e7223b2407ce47cf12dafa6de8c006c5799a620e35a86c30b1b
DIST llvm-manpages-4.0.1.tar.bz2 87981 SHA256 28fa1dcd4774156247ba253d2d79c81796ef0f0763b4f37c9c5ae27af93f4320 SHA512 d5b3213567c25db58ef364d272314a79c311a80fc21d98c09a5540af45a8190a38f489228663fe9a9b63bf0f2b952c460c4196a8fc8d6f221619f6e7ed2fc415 WHIRLPOOL da897ea8d3713a5c4c10a6320f0e7dd13e0125e942e3444b0e8a2a062b83a8e86e3754be025b89ae00f63f557ec0518ab62d8cd21237962e93c708ca72c8e3f5
DIST llvm-manpages-5.0.0.tar.bz2 94240 SHA256 5082c316cf09e6c15d76f0b184745bf3392d3fd42a56cf0a5119b45918a67cb9 SHA512 0bccfb00caa0796bed8ea4e591616e025e43d304f05589180820c17f8567fa3a1f1f76c323098ed0d0e4590765415b1c1c272a94c6e2e7544788f4088ef0ffea WHIRLPOOL 410fe9eda01519c7ded00b2ca61dd323bafb3418a0a81fdc5c3b60d64ee80b75a6372ea29eb66a1b1ce6bb020c011cff7d9e896469dd6f9534fc19fb5b5a4696
EBUILD clang-3.4.2-r100.ebuild 972 BLAKE2B b11888e71750e7de7363d0e74a43999b31baf54dd43438c98d037b5b49d4043a74fdda70dd2b0eb405451c2579ee0285404b28792cc525c1c26e81a07bfd2dc9 SHA512 b42ec4379b4a70eb638ae6a6d45a287cd83f5ac339ac25ade2c6c77bd8d05c208d389d6f09e4cfe567e67d3e616adfbaffa1b1a9a7f35f5ecb7a0e7ccdc720fc
@@ -18,6 +21,7 @@ EBUILD clang-3.7.1-r100.ebuild 1136 BLAKE2B 0eb8dcaf4b936a60333e020762502efbc0cb
EBUILD clang-3.9.1-r100.ebuild 1534 BLAKE2B b269b09553ec5559ad90ffdfcaa20604c10fbe394651b7a9e037a9aaac878a6ef6cc2702a1cc6123cffa0ece705b851e908ac275f7fa854d099ec2ab8bafc9ed SHA512 84a3c016f9db31c6cbcee7620330b76af97702be3e92bd0db6e58883ccc054a792003a374cb5bf9d69b8f7c89165a2853ba495d58cd02d98524cf8025e99bcf0
EBUILD clang-4.0.1.ebuild 9442 BLAKE2B 1605171433ec972bcd77ddb89362dcac7b707d8d5c184a73630c2130cf15e3e7992fc374d406e01451fb2d5e211eae67a94978d72ec945cc814c52979502c62d SHA512 4f0966839480e3969a675d9b7d1a784b58cbb82715c5bb12c9e410d4394be316cb456fc94cc544ca88e50da31c24d038edf90f6722e3bc8b53d036275b7cc833
EBUILD clang-5.0.0.ebuild 9395 BLAKE2B 82394527eee1a6d82d96237cf37e5be338c39383da8e8d727b0850fae000c355b063733ac274c4994b1468aa4c34e52d9113aaf691cb191d181c85d64d4684f1 SHA512 a1e614f8a8611af3ccc34d1d79efd6ab14ae5319593b2caeb77f8f8d875f1fed03d38b7a489001857602475782012e7825872cde069cc21429a6145e4062d280
+EBUILD clang-5.0.1_rc2.ebuild 9140 BLAKE2B a73b931f1b88a16afd05b99322f7f0c8b9946cb69db42f9096e3af8e361a023272ff651bb8830b75970631e44903324c649fa754e8dfb83610d7a8edb60f0493 SHA512 c5618944a53a3cd4af228cc8e5b84d854e4423bded749d19d81f2bdd179183d5d5755472020c9765c196da6c2164dd2a991c2b4c25341cf409c1a1ccaf233020
EBUILD clang-5.0.9999.ebuild 9036 BLAKE2B 9117d1325027af025b7846318ec79a55816af7a22061a4c87fdbfe26b3745175f9e9d4973d606f667494340930ff51c6c514763600102df0331c451aacc39d23 SHA512 b21e1863928d44994d73628c6ab53c13f6c5237aabbbcbf0b377b739342d63d35f34a6dade848ec13719369e9e4afab2e0d50d298c132355247d818dd9a8db05
EBUILD clang-9999.ebuild 8828 BLAKE2B d8a2e6cef09bd75b6aea3eaf3b693e48b93df4bb29d43959c56b025d62595d8e6fea65f7e0c29466a24f612e8792eaae50806596c326e5c40d1fc388d28a00cb SHA512 4f2d78ab5e02df52bd28b9d4e07f7b3363ac2f053974292da8b603f788d454facac098bffdeb7d56c3827a73eb7f378f62e5a770a10757e0b95aed5b728b2883
MISC metadata.xml 1455 BLAKE2B 9dd88bba7158dfdc83bfc48fa4134e1f5a3357ab778cad400a51e348bbb4b44d2740ec417fdc888df0b4fd820441649e92b7adffdd4db558a2f4c3f4830a83a1 SHA512 369a87bd551e483e81ff56f5167177b1bcfedf9bc97f501ef2b07bfdfea3a25532f5e86af062568b3b22a53fe07318fd93dc55bd83b453dd10a0f4d3e88cb932
diff --git a/sys-devel/clang/clang-5.0.1_rc2.ebuild b/sys-devel/clang/clang-5.0.1_rc2.ebuild
new file mode 100644
index 000000000000..941177f9291f
--- /dev/null
+++ b/sys-devel/clang/clang-5.0.1_rc2.ebuild
@@ -0,0 +1,288 @@
+# Copyright 1999-2017 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 pax-utils 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="http://prereleases.llvm.org/${PV/_//}/${MY_P}.tar.xz
+ http://prereleases.llvm.org/${PV/_//}/${EXTRA_P}.tar.xz
+ test? ( http://prereleases.llvm.org/${PV/_//}/${LLVM_P}.tar.xz )"
+# !doc? ( https://dev.gentoo.org/~mgorny/dist/llvm/llvm-manpages-${PV}.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=""
+IUSE="debug default-compiler-rt default-libcxx +doc +static-analyzer
+ test xml z3 kernel_FreeBSD ${ALL_LLVM_TARGETS[*]}"
+
+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-runtime-${PV}
+ default-compiler-rt? ( =sys-libs/compiler-rt-${PV%_*}* )
+ default-libcxx? ( sys-libs/libcxx )"
+
+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=(
+ # fix finding compiler-rt libs
+ "${FILESDIR}"/5.0.0/0001-Driver-Use-arch-type-to-find-compiler-rt-libraries-o.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}"/utils/{lit,unittest} || die
+ mv "${LLVM_P}" "${WORKDIR}"/llvm || die
+ fi
+}
+
+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}"
+ # 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"
+ )
+
+ 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 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
+ # clang-tidy requires [static-analyzer] and tests are not split
+ # correctly, so they are all disabled when static-analyzer is off
+ if multilib_is_native_abi && use static-analyzer; then
+ cmake-utils_src_make check-clang-tools
+ fi
+}
+
+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-2 "${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.Y
+ # - clang -> clang-X.Y
+ # - clang++, clang-cl, clang-cpp -> clang
+ # we want to have:
+ # - clang-X.Y
+ # - clang++-X.Y, clang-cl-X.Y, clang-cpp-X.Y -> clang-X.Y
+ # - clang, clang++, clang-cl, clang-cpp -> clang*-X.Y
+ # 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
+
+ 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
+}
+
+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/gcc-apple/Manifest b/sys-devel/gcc-apple/Manifest
index f8488d6f38ff..d5b866400096 100644
--- a/sys-devel/gcc-apple/Manifest
+++ b/sys-devel/gcc-apple/Manifest
@@ -3,7 +3,6 @@ AUX gcc-apple-4.2.1-arch-option.patch 2151 BLAKE2B 18a0d7c4327eb18dc002f2d27f2d5
AUX gcc-apple-4.2.1-autoconf-m4-precious.patch 340 BLAKE2B 2b07c82d2701046948894f170cbe28025f1cd8b7bfb88f8e4e71b23e4d1f9c6077e91fc69b6eee1d32607725d0207fa601879ed6d9a274486a513a46c4bf9dc5 SHA512 7a7f40e1aa87c92d412d9b803cfbe43ecc51568a39bfab29eb3307489661a68c40d690af53a8902ce55e96f364860287a19934e3fe3d075c5d62e086d72836db
AUX gcc-apple-4.2.1-dsymutil.patch 853 BLAKE2B f5dab1cbe202d2eaa81543dee6566a58afa437b640e7861d4ea16ce2544607f0080b95992d3990e7ed60f5ce484b43660a2c0b813b5a27c26cd62e0c1a3c278d SHA512 382a49d92f03772e71bbb5b31257187b3fd964583f4a1ab2a19a459f679d9dd48549813cb3ef03e6cbaf728c9e62162364d1dafb75257d85b687b7e356d580d0
AUX gcc-apple-4.2.1-prefix-search-dirs-r1.patch 1587 BLAKE2B 63325134bc7d707fc754d963a65d0075a3a71ad7be0d480c6b30e596b8f07755ab7519329f779513ed0020d29c73bd82aee1ec531ebd26e61e952a59bd34115e SHA512 04ebd1b02ce022c4277988fabb7c198286bc9604ade70cf5d64a0296781a377b6c26ad8206da63d37ca1211537b4b8d31d7b06ae1fa3405f77f19ce01636156f
-AUX gcc-apple-4.2.1-prefix-search-dirs.patch 1053 BLAKE2B 55c14207ed817f709f32bf983919c8bbedf87906879a92ab4f012c8cc88f092760b5e3ae7ee3cda873821e0b13441920c3d3907c04ff24c0289ee8254ef84541 SHA512 0efdedb7a69b21732f254567f0593319f06ed25c12641d6df0219c5b1c90768494286affd98c02a726c82ffe0e27aa4548c9701981dc6a2eb8a0c3455b78a364
AUX gcc-apple-4.2.1-texinfo.patch 1110 BLAKE2B 6e20d296ed6e8c8ba10793476046f3737ff17c9a9cc3da9cec9184c6a94ad8e38a2f1491de44bc46346df540eebf68d6f3dd6f91715597dd0858fa61e25dcce3 SHA512 1b27fa076dffc80d4ea9cc2e209f4ef2cd31ba4f585b977c20a15432cb7a86f3bc76aa734cb328e5702309585e1c440ed33fd605b863e41c91d96268d1b6bf36
AUX gcc-apple-4.2.1_p5666-darwin14.patch 4870 BLAKE2B 6fd45e830d2d0a5f7b1d02738d3c28d8e13c577687cad35787edd87f843b73abfe68d9295fb6934925ba2d304a07b61d3735ee3dfbcf3cdd4468f33de02a75a2 SHA512 4569f6ae976760074629f5526a45793e10ca56508f13642c4da173c387f4ccf1ffc62b595e3fbc8694fd0d673f5a19eb5a9002b211ed149ad4492044d26bbba7
AUX gcc-apple-4.2.1_p5666-perl-5.18.patch 286 BLAKE2B 3c7b4f78046d24b3f44e4dc8f36e9735973ca04303944822594c9cdb716d98fc5995d7b03bdd096a3f6bbc871af5ba5933e231eb03b910b33ca8683072ddf42e SHA512 bdbb2e1d6146ff461c762d3efff59f272762121b033eb24bb1a016ab946268ec77dc22d01997870c406ac09d55e668eead61865a696a490482e69befb84cfdba
diff --git a/sys-devel/gcc-apple/files/gcc-apple-4.2.1-prefix-search-dirs.patch b/sys-devel/gcc-apple/files/gcc-apple-4.2.1-prefix-search-dirs.patch
deleted file mode 100644
index 2cd947b4e82f..000000000000
--- a/sys-devel/gcc-apple/files/gcc-apple-4.2.1-prefix-search-dirs.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-In Prefix we are really self-providing, so don't look back!
-Patch by Heiko Przybyl
-
---- gcc/gcc.c
-+++ gcc/gcc.c
-@@ -1525,8 +1525,8 @@ static const char *gcc_libexec_prefix;
- #endif
-
- static const char *const standard_exec_prefix = STANDARD_EXEC_PREFIX;
--static const char *const standard_exec_prefix_1 = "/usr/libexec/gcc/";
--static const char *const standard_exec_prefix_2 = "/usr/lib/gcc/";
-+static const char *const standard_exec_prefix_1 = "@GENTOO_PORTAGE_EPREFIX@/usr/libexec/gcc/";
-+static const char *const standard_exec_prefix_2 = "@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/";
- static const char *md_exec_prefix = MD_EXEC_PREFIX;
-
- static const char *md_startfile_prefix = MD_STARTFILE_PREFIX;
---- gcc/config/darwin.h
-+++ gcc/config/darwin.h
-@@ -1286,7 +1286,7 @@ void add_framework_path (char *);
- } \
- } while (0)
-
--#define SYSROOT_PRIORITY PREFIX_PRIORITY_FIRST
-+#define SYSROOT_PRIORITY PREFIX_PRIORITY_LAST
- /* APPLE LOCAL end isysroot 5083137 */
-
- /* Every program on darwin links against libSystem which contains the pthread
diff --git a/sys-devel/gcc-config/Manifest b/sys-devel/gcc-config/Manifest
index 38496fb48186..7e05b5121019 100644
--- a/sys-devel/gcc-config/Manifest
+++ b/sys-devel/gcc-config/Manifest
@@ -5,5 +5,5 @@ DIST gcc-config-1.9.0.tar.xz 17468 SHA256 3e0acf3fe683dc6193b0135fe4b26ce7f95921
EBUILD gcc-config-1.7.3.ebuild 1022 BLAKE2B c3bf80ee02b12b605c968d7658659bcdc0f9a7e41b841c3d5f54f236cb621935d01a3c4902ca219f758e824de20bf005f2a01ea24c7e474db4f2ef558790e3be SHA512 e48c80cfc24c0d701594fd53dc9ea7875bb8d4a43022331093db33d3a8d0b2652c9216e79c4f245b583f62a324a3ad9e2438adcf4cea53de4027e3de3cb84061
EBUILD gcc-config-1.8-r1.ebuild 1177 BLAKE2B 8e9bdab1960836eb2c95b042f5bbdf208103ddd2c9aac57dcd678f90ec47a843ea1b93e2f6e4f1fc011e240260481eda71509bb0041c68b00cf8a68f110bac77 SHA512 25f6f54b47ca456598c5617b5374ef180ba40875e9041547aab412430c943cc2befe714f5597eaca0ca460287a17943b0b71c4e7e4fd82813eba4afdd9ec5a25
EBUILD gcc-config-1.8.ebuild 1035 BLAKE2B cf04cb82684803291530886a03f8dba7e0b5ea4aabdc98611d7a4c6c0449de51a6de476074dd2c42bced35468673bcec34305ecbef6c5ad3746b6dca59da7b05 SHA512 8ed8f187fbb6c50f019a94826798c427f0d7647ca5a4369a551bc5e8571f4ac337c3c99066e1f6ae5ac562723500f1a718a2cbe3f54f24535caf7c4264a33620
-EBUILD gcc-config-1.9.0.ebuild 1079 BLAKE2B 8a12ebd2ab14c8f6adb12aef7af9808841e5c7287bde2bb8212f8b397791c85edae1512f49d778eb2391b1c52a11cb26c395d9fbaca8f5819577b462192640db SHA512 a91175f3690253014f695d45a52269c57bc7d6365a38b00d902502bde984d02aac6c59f28f2475c84dfecd2b538441a6c8b49ab92713c67d3dab84715d767d47
+EBUILD gcc-config-1.9.0-r1.ebuild 1124 BLAKE2B 51ab9edd92f0408094a195dbfc289b13f3e81faa2b33731b7686a115f9a69b1680b62ec36b8e742c7312b089be0c1771919b8dc4cc9bcde244465e30b7768991 SHA512 9a53fc5a2fd3cd87d9231ebd686b4cc0215714952820ac0857358d69e694bc0482fd10fa951e8e787fdb2a2a2b1b61eb39baec9a6b70979a3a772a6751adb1e2
MISC metadata.xml 257 BLAKE2B 468bd91200194cf2104205cb18f54d629954ed0d86d85a5d3e90af1942eb199d777a0ebc17d1f610f69326d3e0caa686255709f165466f5e0a675380373b30f9 SHA512 fd85d9cf15f6b7db96e4d184e32ae6f1503a5b70cb4cb1ce930ba13a1d5d4c4b24971781e95b7f3f9ead58b31760f84c368bc6fa2a793b4b5baf78259b047ff1
diff --git a/sys-devel/gcc-config/gcc-config-1.9.0.ebuild b/sys-devel/gcc-config/gcc-config-1.9.0-r1.ebuild
index f6b9422871d9..b27cc3b5c419 100644
--- a/sys-devel/gcc-config/gcc-config-1.9.0.ebuild
+++ b/sys-devel/gcc-config/gcc-config-1.9.0-r1.ebuild
@@ -18,7 +18,9 @@ IUSE=""
RDEPEND=">=sys-apps/gentoo-functions-0.10"
src_compile() {
- emake CC="$(tc-getCC)"
+ emake CC="$(tc-getCC)" \
+ PV="${PV}" \
+ SUBLIBDIR="$(get_libdir)"
}
src_install() {
diff --git a/sys-devel/gdb-apple/Manifest b/sys-devel/gdb-apple/Manifest
index bbf7bdf5c2dc..0feaccff47db 100644
--- a/sys-devel/gdb-apple/Manifest
+++ b/sys-devel/gdb-apple/Manifest
@@ -1,12 +1,8 @@
-AUX gdb-apple-1344-darwin8.patch 3606 BLAKE2B a8b145c00031f4a05965d7aa3faea56d3291417565f389795ac90e8bc0bda043c9dde200ce1b4badca806aabc06ece2beb5f89553109d2aad74abf44929088b6 SHA512 e98fd9a9d4d5969e868885fa467142eae0e3981eccc212fdfcd9b2d82c85d2e4f6aed50ad77227eb7ad24f71434f6f1564cf8ac49bdb9bc9898b85c2ea6ec45e
AUX gdb-apple-1461-darwin8.patch 3206 BLAKE2B 5923b0d1ca8a4f90aac5bd66af39affb70ebab41f3dfd07756c8ae61a949bc34d66d35e9d82b925f69b690b846454c01b2d1b49f3f462642fa8f15e1cb8c4321 SHA512 bbf8ff590bbc6225ba4a78813c36e239bc4bc50514ae59e024a2f4c54a79fa2e98db2313be8cc9bbb098f3df3b79b2e9925fda400879e196ac02071a8e9b1b93
AUX gdb-apple-1461-dyld-info.patch 503 BLAKE2B 419f776323e662d4c0a9871a19852743d5b061237aaf54e90395d7e4348d5b7d7b8df9547dd22f8470bc657276424a791fbe0fa089d08bdd07a26087ee65df20 SHA512 f697133fcad4b6d2c0492f3e800f02feb133526bbec548c966bf92dbb92df9cfa9e69fadcc2bf28898bdf6a90f3ef2480ff944101eb0d1e6566735d2278cf56e
AUX gdb-apple-1518-darwin8-9.patch 2260 BLAKE2B 29c00d40a6f34f2f602b0ecfaa4079b7e70cbc2a30d1bf93c6c93cb03168bb93a1af749b8631b05950863fa8d46b0060f9270f4980bab937aac50c8c738afb3c SHA512 7c079c480b3ed1e9d6cfed78ea87358988a4c72a0e89f4cd76e12b235e9451ab6ea77679ad0953f224e6c30ba0d078c5ce4e1a25f6bbd1134214dd721b0420b6
AUX gdb-apple-1518-darwin8.patch 3022 BLAKE2B e2c60e539fd81af137ac915a1c957ad62482686f196e941fcf9946f10682e35ecfe9438e04b6f0f9618b6fcb9c06ae363b97c2cf45cf1a13befad399b74df6c0 SHA512 efa100767336d0eba752d03d5d6ea6a77c80e40160208cd157abc444064c779f9d671e5a621cbeae8f7b2ae134e838e49a2726d1d9efcbd8421070a6b789679d
-AUX gdb-apple-1518-task_dyld_info.patch 557 BLAKE2B 6cb4ed12b5c51af609355f9ffe0414a2c46245fbc3c4371837e43128f0373348d991205720197479528e3ec2beb8e49bf5b32e680fceb81ce7ee1e58d804f500 SHA512 69ea8de6663c91b8587df903c5c8578586875d73b6fb2aeef37a98346e78d214814e794e6a294051fb3b82a9d450ab6e9a2b13265ae48b8ad3dfd80004d6caf5
AUX gdb-apple-1705-darwin8-10.patch 286 BLAKE2B f7f038e870aafe73ee79251bee1441e9186db898e211556212a53c1a0ec935059d1e16766d4bddffda980777c972bb661b09b6bb8973e6f3cc6b00008b37e3f3 SHA512 baf049e3a1e580faeb5b5481bbdda5cfd96abb22ec7dd2528986c4fa78113933565a9a1711f4dcf8bed9edd27190aa9f5f04d7df141b0eb1aa65b18b57915061
-AUX gdb-apple-563-darwin7.patch 3329 BLAKE2B 5ec000c7ef053960d17a904ec9736a1c59bf24d8b4fca28a80270da5af0c5cbcfa65c72afb1087598ea7ded54c20d76a243e17fcf7219a738400a56e4859b2e8 SHA512 5c12715998a039e114ae214848f4715848c6390f358d140b1886c52fc1ff376f8b26525c19b004ebbbda4c577a5a32d4909642943ceb5394fd8849d131aab626
-AUX gdb-apple-563-no-64bit.patch 767 BLAKE2B eedc1a35695cceb310ea88665fe345e0b0429ae068b73253b2515b8d924022dc5186708b1a1980fc67ab88fb187d4fad1515a60e877127e3a5d56e0d37572fa0 SHA512 79eb42ca51363276aec1dfc9c2580ad8524c826bcf0a0d2a0128ba671625d5546aad161ad2d368f71b5828b76965a27df0f4e47ab78e3b46c73553168af6b94a
AUX gdb-apple-768-darwin-arch.patch 571 BLAKE2B e77d26f86390b51758da726887b8cb376443a0bcf98225f5f8ee2de3b8e829f8b65380c67b83fb003b84822f12f0bbecddc4753fb6e3af3fc6672223bdc07443 SHA512 5d5345c0b9aab9610bfeb3adf98f92f2d132e198ce69278b8a7e35e59d9b45955b5eabd0cf2e6dd085a034369826804d833ec841726729a1272b06a8d7b8592b
AUX gdb-apple-768-texinfo.patch 487 BLAKE2B b429247205cb241c1b876d3477310b201ab9191d582daf2f40bae92f782680df3d60fbaf335ef5a91db7bab0fffd87ff8783813f1efca690ae255157f9f98464 SHA512 fb40c8c713e0cdd34df82b368fbae5b9cc4180a6519f303750d72181dcac31436f947fc01c6949bbfc8bf8a7be4459cb2083e821433c1c4e9a587e2171933b92
AUX gdb-apple-962-darwin64.patch 580 BLAKE2B e215baa922cce04b243546559d0136174b6148a3944eacb3099d1d2c30f187f808c5b102b12a5b7208209c8621b724b9288d57fa208f2b7143ebbe556732ef7d SHA512 2b940cfef9caeac9aa863ab53349de083026258458321108d54e4605d1030f496701e666a720e530d530ede0db7b59694f3fbc4ab28a6122ca1e28c03bbae8a2
diff --git a/sys-devel/gdb-apple/files/gdb-apple-1344-darwin8.patch b/sys-devel/gdb-apple/files/gdb-apple-1344-darwin8.patch
deleted file mode 100644
index c95f02e0fe2e..000000000000
--- a/sys-devel/gdb-apple/files/gdb-apple-1344-darwin8.patch
+++ /dev/null
@@ -1,131 +0,0 @@
---- src/gdb/symfile.c.orig 2009-09-25 09:00:15 +0200
-+++ src/gdb/symfile.c 2009-09-25 09:00:18 +0200
-@@ -67,7 +67,6 @@
- #include <ctype.h>
- #include <time.h>
- #include <sys/time.h>
--#include <libgen.h>
-
- #include <sys/mman.h>
-
---- src/gdb/utils.c.orig 2009-09-25 09:06:29 +0200
-+++ src/gdb/utils.c 2009-09-25 09:46:24 +0200
-@@ -27,7 +27,6 @@
- #include "gdb_string.h"
- #include "event-top.h"
- #include "exceptions.h"
--#include <execinfo.h>
-
- #ifdef TUI
- #include "tui/tui.h" /* For tui_get_command_dimension. */
-@@ -878,6 +877,7 @@
- target_terminal_ours ();
- begin_line ();
-
-+#if 0
- /* APPLE LOCAL: Do a stack crawl of how we got here so we're more likely
- to get useful bug reports. */
- {
-@@ -886,6 +886,7 @@
- fprintf (stderr, "gdb stack crawl at point of internal error:\n");
- backtrace_symbols_fd (bt_buffer, count, STDERR_FILENO);
- }
-+#endif
-
- /* Create a string containing the full error/warning message. Need
- to call query with this full string, as otherwize the reason
---- src/gdb/remote.c.orig 2009-09-25 09:31:58 +0200
-+++ src/gdb/remote.c 2009-09-25 09:48:18 +0200
-@@ -61,7 +61,6 @@
- #ifdef MACOSX_DYLD
- #include "macosx-nat-dyld.h"
- #endif
--#include <execinfo.h>
-
- /* Prototypes for local functions. */
- static void cleanup_sigint_signal_handler (void *dummy);
-@@ -483,10 +482,12 @@
- static void
- remote_backtrace_self ()
- {
-+#if 0
- void *bt_buffer[10];
- int count = backtrace (bt_buffer, 10);
- fprintf_filtered (gdb_stderr, "gdb stack crawl at point of invalid hex digit:\n");
- backtrace_symbols_fd (bt_buffer, count, STDERR_FILENO);
-+#endif
- }
-
- static void
---- src/gdb/macosx/macosx-tdep.c.orig 2009-09-25 09:09:00 +0200
-+++ src/gdb/macosx/macosx-tdep.c 2009-09-25 09:09:12 +0200
-@@ -61,7 +61,6 @@
- #include "exceptions.h"
-
- #include <dirent.h>
--#include <libgen.h>
- #include <sys/types.h>
- #include <sys/stat.h>
- #include <sys/param.h>
---- src/gdb/macosx/macosx-nat-inferior.c.orig 2009-09-25 09:12:44 +0200
-+++ src/gdb/macosx/macosx-nat-inferior.c 2009-09-25 09:13:24 +0200
-@@ -62,8 +62,10 @@
- #include <semaphore.h>
-
- #include <dlfcn.h>
-+#if 0
- #include <libproc.h>
- #include <sys/proc_info.h>
-+#endif
-
- #include "macosx-nat-dyld.h"
- #include "macosx-nat-inferior.h"
-@@ -3261,8 +3263,10 @@
- int_flags |= RTLD_NOLOAD;
- if (strstr (flags, "RTLD_NODELETE") != NULL)
- int_flags |= RTLD_NODELETE;
-+#ifdef RTLD_FIRST
- if (strstr (flags, "RTLD_FIRST") != NULL)
- int_flags |= RTLD_FIRST;
-+#endif
- }
-
- /* If the user didn't pass in anything, set some sensible defaults. */
---- src/gdb/macosx/macosx-nat-infthread.c.orig 2009-09-25 09:14:01 +0200
-+++ src/gdb/macosx/macosx-nat-infthread.c 2009-09-25 09:14:19 +0200
-@@ -36,8 +36,10 @@
- #include <sys/dir.h>
- #include <inttypes.h>
-
-+#if 0
- #include <libproc.h>
- #include <sys/proc_info.h>
-+#endif
-
- #include "macosx-nat-inferior.h"
- #include "macosx-nat-inferior-util.h"
---- src/gdb/macosx/macosx-nat-info.c.orig 2009-09-25 09:16:50 +0200
-+++ src/gdb/macosx/macosx-nat-info.c 2009-09-25 09:31:12 +0200
-@@ -45,6 +45,22 @@
- #include "macosx-nat-inferior.h"
- #include "macosx-nat-inferior-debug.h"
-
-+#ifdef __ppc__
-+#ifndef __darwin_ppc_thread_state
-+#define __darwin_ppc_thread_state ppc_thread_state
-+#define __r0 r0
-+#define __srr0 srr0
-+#define __srr1 srr1
-+#define __cr cr
-+#define __xer xer
-+#define __lr lr
-+#define __ctr ctr
-+#endif
-+#ifndef __darwin_ppc_exception_state
-+#define __darwin_ppc_exception_state ppc_exception_state
-+#endif
-+#endif
-+
- extern macosx_inferior_status *macosx_status;
-
- #define CHECK_ARGS(what, args) \
diff --git a/sys-devel/gdb-apple/files/gdb-apple-1518-task_dyld_info.patch b/sys-devel/gdb-apple/files/gdb-apple-1518-task_dyld_info.patch
deleted file mode 100644
index 633a36a7a048..000000000000
--- a/sys-devel/gdb-apple/files/gdb-apple-1518-task_dyld_info.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-If dyld-info is not available, don't try to compile unreachable code
-using it either.
-
---- gdb-1518/src/gdb/macosx/macosx-nat-dyld.c
-+++ gdb-1518/src/gdb/macosx/macosx-nat-dyld.c
-@@ -779,7 +779,7 @@
- {
- #if !defined (TASK_DYLD_INFO)
- return 0;
--#endif
-+#else
- if (macosx_status->task == TASK_NULL)
- return 0;
-
-@@ -799,6 +799,7 @@
- task_dyld_info.all_image_info_size == 0)
- return 0;
- s->dyld_image_infos = task_dyld_info.all_image_info_addr;
-+#endif /* TASK_DYLD_INFO */
- }
- #endif /* NM_NEXTSTEP */
-
diff --git a/sys-devel/gdb-apple/files/gdb-apple-563-darwin7.patch b/sys-devel/gdb-apple/files/gdb-apple-563-darwin7.patch
deleted file mode 100644
index bd5061d41fc0..000000000000
--- a/sys-devel/gdb-apple/files/gdb-apple-563-darwin7.patch
+++ /dev/null
@@ -1,110 +0,0 @@
-* Fabian Groffen <grobian@gentoo.org>
- Mac OS X Panther (10.3) doesn't have mach_vm_size_t yet, and
- apparently this was forseen in macosx-nat-inferior-debug.c. However,
- macosx-nat-inferior-debug.h also uses the provided types, hence we
- move the backwards-compatibility logic to the .h file.
-
-* Fabian Groffen <grobian@gentoo.org>
- On Mac OS X Panther (10.3) an older version of the Launch Services is
- available, which doesn't cover the requirements made by Xcode here.
- Because it's for Xcode only, and we don't use it on Gentoo, we just
- enable the functionality that doesn't compile on 10.3.
-
---- gdb/macosx/macosx-nat-inferior-debug.c
-+++ gdb/macosx/macosx-nat-inferior-debug.c
-@@ -53,24 +53,6 @@
-
- #include <AvailabilityMacros.h>
-
--#define MACH64 (MAC_OS_X_VERSION_MAX_ALLOWED >= 1040)
--
--#if MACH64
--
--#include <mach/mach_vm.h>
--
--#else /* ! MACH64 */
--
--#define mach_vm_size_t vm_size_t
--#define mach_vm_address_t vm_address_t
--#define mach_vm_read vm_read
--#define mach_vm_write vm_write
--#define mach_vm_region vm_region
--#define VM_REGION_BASIC_INFO_COUNT_64 VM_REGION_BASIC_INFO_COUNT
--#define VM_REGION_BASIC_INFO_64 VM_REGION_BASIC_INFO
--
--#endif /* MACH64 */
--
- FILE *inferior_stderr = NULL;
- int inferior_debug_flag = 0;
- int timestamps_debug_flag = 0;
---- gdb/macosx/macosx-nat-inferior-debug.h
-+++ gdb/macosx/macosx-nat-inferior-debug.h
-@@ -6,6 +6,24 @@
-
- #include "defs.h"
-
-+#define MACH64 (MAC_OS_X_VERSION_MAX_ALLOWED >= 1040)
-+
-+#if MACH64
-+
-+#include <mach/mach_vm.h>
-+
-+#else /* ! MACH64 */
-+
-+#define mach_vm_size_t vm_size_t
-+#define mach_vm_address_t vm_address_t
-+#define mach_vm_read vm_read
-+#define mach_vm_write vm_write
-+#define mach_vm_region vm_region
-+#define VM_REGION_BASIC_INFO_COUNT_64 VM_REGION_BASIC_INFO_COUNT
-+#define VM_REGION_BASIC_INFO_64 VM_REGION_BASIC_INFO
-+
-+#endif /* MACH64 */
-+
- extern FILE *inferior_stderr;
- extern int inferior_debug_flag;
-
---- gdb/macosx/macosx-tdep.c
-+++ gdb/macosx/macosx-tdep.c
-@@ -413,6 +413,7 @@
- } BabelAESelInfo;
- #pragma options align=reset
-
-+#if (MAC_OS_X_VERSION_MAX_ALLOWED >= 1040)
- static int
- open_file_with_LS (const char *file_path, int lineno)
- {
-@@ -538,7 +539,9 @@
-
- return 1;
- }
-+#endif
-
-+#if (MAC_OS_X_VERSION_MAX_ALLOWED >= 1040)
- /* Opens the file pointed to in ARGS with the default editor
- given by LaunchServices. If ARGS is NULL, opens the current
- source file & line. You can also supply file:line and it will
-@@ -609,6 +612,7 @@
-
- open_file_with_LS (filename, line_no);
- }
-+#endif
-
- void
- _initialize_macosx_tdep ()
-@@ -618,13 +622,15 @@
-
- add_info ("trampoline", info_trampoline_command,
- "Resolve function for DYLD trampoline stub and/or Objective-C call");
-+#if (MAC_OS_X_VERSION_MAX_ALLOWED >= 1040)
- c = add_com ("open", class_support, open_command, _("\
- Open the named source file in an application determined by LaunchServices.\n\
- With no arguments, open the currently selected source file.\n\
- Also takes file:line to hilight the file at the given line."));
- set_cmd_completer (c, filename_completer);
- add_com_alias ("op", "open", class_support, 1);
- add_com_alias ("ope", "open", class_support, 1);
-+#endif
-
- add_com ("flushstack", class_maintenance, stack_flush_command,
- "Force gdb to flush its stack-frame cache (maintainer command)");
diff --git a/sys-devel/gdb-apple/files/gdb-apple-563-no-64bit.patch b/sys-devel/gdb-apple/files/gdb-apple-563-no-64bit.patch
deleted file mode 100644
index 952f5b337871..000000000000
--- a/sys-devel/gdb-apple/files/gdb-apple-563-no-64bit.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-* Fabian Groffen <grobian@gentoo.org>
- On Gentoo, when the user doesn't have a 64-bits capable CPU, we
- compile GCC without multi-lib support. Hence, 64-bits defines are not
- available so we better not use them if we don't have __ppc64__
- defined.
-
---- gdb/macosx/macosx-nat-dyld.c
-+++ gdb/macosx/macosx-nat-dyld.c
-@@ -619,8 +619,10 @@
- structures. */
- if (header.cputype == CPU_TYPE_POWERPC || header.cputype == CPU_TYPE_I386)
- osabi_seen_in_attached_dyld = GDB_OSABI_DARWIN;
-+#if defined(__ppc64__)
- if (header.cputype == CPU_TYPE_POWERPC64 || header.cputype == GDB_CPU_TYPE_X86_64)
- osabi_seen_in_attached_dyld = GDB_OSABI_DARWIN64;
-+#endif
- }
-
- /* Once we know the address at which dyld was loaded, we can try to
diff --git a/sys-devel/gettext/Manifest b/sys-devel/gettext/Manifest
index 53493bbc7684..061537a5fd1b 100644
--- a/sys-devel/gettext/Manifest
+++ b/sys-devel/gettext/Manifest
@@ -1,4 +1,5 @@
AUX gettext-0.19.7-disable-libintl.patch 1307 BLAKE2B fb3d4d95ffbe57b0d1d6e8ede596ca9d7d8587d9c883fa2fc54b8d1109210ac2b435b4709a16c2043cef6cc8d5448dc58adab74aa2e8ce834abdee51163d8c51 SHA512 7887d2fbf4b9d9677688e6d8d785b6c10c76bc330cb7b40da432e0a1ff0f7fc1355bf8f671041a37477baa6c8508b6e39f90ead468674febd62777506badc227
-DIST gettext-0.19.8.1.tar.gz 19704011 SHA256 ff942af0e438ced4a8b0ea4b0b6e0d6d657157c5e2364de57baa279c1c125c43 SHA512 073042fa2dc48804c58e76f036130a669e19612c25427b0ab14d0b366b549a63751bf3af03bfd0745d7c4f72497a4b2aab26a3cc6de83189ce111679073878e1 WHIRLPOOL ef9aa9eef3067595dc725169075401dfad8ba15d6224d2b563e3421afa7c4dce9336a287147404273b772def811230b3758c005902ec90192e6ee4ac373d9a9a
-EBUILD gettext-0.19.8.1.ebuild 3867 BLAKE2B 840c75c6c4e8e8545a5d9e511ce2b169ec409c65fc448ec1ac1c06c66982f648677caf5d69fd982ddf47b9af04eedadef9d5fceb1530a347e066e4036b7cad57 SHA512 11e87aa6a4841c9b173bfa142f30e8370df6e7c16c202d7c6e350411926a809d7367f160ff3e094d6a9860baafbf3c26f3ec07601a4bf4a64793dd93f3890a94
+AUX gettext-0.19.8.1-format-security.patch 3932 BLAKE2B 791b05e3c72792b290946c3347ec40374cb50a91648857cb0c2e380b8616d32be0958eb9b0f2bcd022049d8fc7d53ed3e9df824ca91621c31972f359c140bc1e SHA512 7e8149a3c1e09854bb2a6cbfbc4635567e45f2b7f1a555acf5ab723aead3ad1a3a9118002c353bf42a551b8be159640b597556731317d79efbffc2fc0d96dbb8
+DIST gettext-0.19.8.1.tar.gz 19704011 BLAKE2B 17dc7aad338a26d71b818fea51e46a47dccf14744ee575ce86b591becaea402e36d64dc018e1a84113c356122ffef367cf2fa424e51ebc9720350040b4960091 SHA512 073042fa2dc48804c58e76f036130a669e19612c25427b0ab14d0b366b549a63751bf3af03bfd0745d7c4f72497a4b2aab26a3cc6de83189ce111679073878e1
+EBUILD gettext-0.19.8.1.ebuild 3926 BLAKE2B 998ec5488f3f50d93b72b21f9fc8d9d4ae1e13a0cddad89186a9cc8f3d7d4480281a4f02a0f7939e368312c85c8ba1aba3b507844b341eaa3e673350c98ab8d4 SHA512 7fbcf8529c4ff7f968c881d9a43d14ce98836bbe8e6fd904faad126319b9e74b5176cf42109a023722db1050c19ec9b885a2cbaf311417cca099bb77e358dbac
MISC metadata.xml 630 BLAKE2B 4e89248161acde4bca6252961fdf9227a08c528cfb91c7c06f85e4573bac6d0c3c7543ddd582b36cfbaedb7acf5139216e4518af4f7f310b1a9a1fd5b960fa5d SHA512 2eac2c110dde44856c6b45a3a1f5d58e26b887041fe8250c17ee6ca555240204296592a25122cf7595551b83b6414a4890a0886458dc4ff4e9135e2bbfc86507
diff --git a/sys-devel/gettext/files/gettext-0.19.8.1-format-security.patch b/sys-devel/gettext/files/gettext-0.19.8.1-format-security.patch
new file mode 100644
index 000000000000..6af160419877
--- /dev/null
+++ b/sys-devel/gettext/files/gettext-0.19.8.1-format-security.patch
@@ -0,0 +1,87 @@
+From e546de65a333789e83f5485757967cee29ee3681 Mon Sep 17 00:00:00 2001
+From: Robert Yang <liezhi.yang@windriver.com>
+Date: Sun, 19 Feb 2017 23:32:46 -0800
+Subject: [PATCH] cr-statement.c/timsort.h: fix formatting issues
+
+Fixed when compile with "-Wformat -Wformat-security -Werror=format-security":
+| gettext-tools/gnulib-lib/libcroco/cr-statement.c: In function 'cr_statement_dump_charset':
+| gettext-tools/gnulib-lib/libcroco/cr-statement.c:2661:17: error: format not a string literal and no format arguments [-Werror=format-security]
+| fprintf (a_fp, str) ;
+
+And:
+gettext-tools/gnulib-lib/libxml/timsort.h:326:80: warning: format '%lu' expects argument of type 'long unsigned int', but argument 3 has type 'unsigned int' [-Wformat=]
+ fprintf(stderr, "Error allocating temporary storage for tim sort: need %lu bytes", sizeof(SORT_TYPE) * new_size);
+
+Upstream-Status: Pending
+
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+---
+ gettext-tools/gnulib-lib/libcroco/cr-statement.c | 10 +++++-----
+ gettext-tools/gnulib-lib/libxml/timsort.h | 2 +-
+ 2 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/gettext-tools/gnulib-lib/libcroco/cr-statement.c b/gettext-tools/gnulib-lib/libcroco/cr-statement.c
+index 617520f..100104b 100644
+--- a/gettext-tools/gnulib-lib/libcroco/cr-statement.c
++++ b/gettext-tools/gnulib-lib/libcroco/cr-statement.c
+@@ -2607,7 +2607,7 @@ cr_statement_dump_ruleset (CRStatement * a_this, FILE * a_fp, glong a_indent)
+ g_return_if_fail (a_fp && a_this);
+ str = cr_statement_ruleset_to_string (a_this, a_indent);
+ if (str) {
+- fprintf (a_fp, str);
++ fprintf (a_fp, "%s", str);
+ g_free (str);
+ str = NULL;
+ }
+@@ -2658,7 +2658,7 @@ cr_statement_dump_charset (CRStatement * a_this, FILE * a_fp, gulong a_indent)
+ str = cr_statement_charset_to_string (a_this,
+ a_indent) ;
+ if (str) {
+- fprintf (a_fp, str) ;
++ fprintf (a_fp, "%s", str) ;
+ g_free (str) ;
+ str = NULL ;
+ }
+@@ -2685,7 +2685,7 @@ cr_statement_dump_page (CRStatement * a_this, FILE * a_fp, gulong a_indent)
+
+ str = cr_statement_at_page_rule_to_string (a_this, a_indent) ;
+ if (str) {
+- fprintf (a_fp, str);
++ fprintf (a_fp, "%s", str);
+ g_free (str) ;
+ str = NULL ;
+ }
+@@ -2711,7 +2711,7 @@ cr_statement_dump_media_rule (CRStatement * a_this,
+
+ str = cr_statement_media_rule_to_string (a_this, a_indent) ;
+ if (str) {
+- fprintf (a_fp, str) ;
++ fprintf (a_fp, "%s", str) ;
+ g_free (str) ;
+ str = NULL ;
+ }
+@@ -2737,7 +2737,7 @@ cr_statement_dump_import_rule (CRStatement * a_this, FILE * a_fp,
+
+ str = cr_statement_import_rule_to_string (a_this, a_indent) ;
+ if (str) {
+- fprintf (a_fp, str) ;
++ fprintf (a_fp, "%s", str) ;
+ g_free (str) ;
+ str = NULL ;
+ }
+diff --git a/gettext-tools/gnulib-lib/libxml/timsort.h b/gettext-tools/gnulib-lib/libxml/timsort.h
+index 795f272..443918a 100644
+--- a/gettext-tools/gnulib-lib/libxml/timsort.h
++++ b/gettext-tools/gnulib-lib/libxml/timsort.h
+@@ -323,7 +323,7 @@ static void TIM_SORT_RESIZE(TEMP_STORAGE_T *store, const size_t new_size)
+ SORT_TYPE *tempstore = (SORT_TYPE *)realloc(store->storage, new_size * sizeof(SORT_TYPE));
+ if (tempstore == NULL)
+ {
+- fprintf(stderr, "Error allocating temporary storage for tim sort: need %lu bytes", sizeof(SORT_TYPE) * new_size);
++ fprintf(stderr, "Error allocating temporary storage for tim sort: need %zu bytes", sizeof(SORT_TYPE) * new_size);
+ exit(1);
+ }
+ store->storage = tempstore;
+--
+2.10.2
+
diff --git a/sys-devel/gettext/gettext-0.19.8.1.ebuild b/sys-devel/gettext/gettext-0.19.8.1.ebuild
index 98f51b7a799e..e947a0e87905 100644
--- a/sys-devel/gettext/gettext-0.19.8.1.ebuild
+++ b/sys-devel/gettext/gettext-0.19.8.1.ebuild
@@ -52,6 +52,7 @@ src_prepare() {
java-pkg-opt-2_src_prepare
epatch "${FILESDIR}"/${PN}-0.19.7-disable-libintl.patch #564168
+ epatch "${FILESDIR}"/${PN}-0.19.8.1-format-security.patch
epunt_cxx
elibtoolize
diff --git a/sys-devel/lld/Manifest b/sys-devel/lld/Manifest
index 14cc16d16b39..1ccbfecb1b22 100644
--- a/sys-devel/lld/Manifest
+++ b/sys-devel/lld/Manifest
@@ -1,11 +1,14 @@
AUX 4.0.1/0002-test-Use-LLD-specific-binary-library-dirs-when-build.patch 4381 BLAKE2B 131ed63d4e9a68cabf23866412b2194656cece59eaddc0329beddffde86c76008afa1810721f36492189c244ce07673b8335fde66a47df89939c115b17b41824 SHA512 6d133999c5b95ede493ca98a0e8c7816dcca36e4e5f17f6d847996a2d70517cc50d0e1a6259b0d34173f76c4300f8809cea2c06d029a85d2fc62e856e69cbc72
AUX 4.0.1/0003-test-Fix-zlib-cond-when-building-stand-alone-clean-u.patch 2924 BLAKE2B d429f8354506562ed8b11e1c34344a3d3868a74125d794e291ab89753328da2fe615300a005fd74735bf13c02ed20672377d806b9676fe49a955a38a2d8bd5e2 SHA512 1b82f754fb872318740f77f78fa08647e2523d5b6d9cdd0dd9108bdac82a213d5d5c698a8915c0f6bd60b2163cce3c8bd1c13095dad52d0beb08079f851d30d8
DIST lld-4.0.1.src.tar.xz 593796 SHA256 63ce10e533276ca353941ce5ab5cc8e8dcd99dbdd9c4fa49f344a212f29d36ed SHA512 63bd0813094dc7fa9a95fdee93eb7b97026882a15548f819b5c67f3f0f9fa2a582d968af27ad8f802dbff1f6cd1b8c2fb26b3c7c80379488d05c4a4984d7af68 WHIRLPOOL e7adca75f7f5fbb6136d01544798e969cba69b86c5b76a7fdcf7918564aa13eb868f4fa41102d7a4c501f741664ae309d6842c821ac974503431722ae963f93f
-DIST lld-5.0.0.src.tar.xz 668344 SHA256 399a7920a5278d42c46a7bf7e4191820ec2301457a7d0d4fcc9a4ac05dd53897 SHA512 984606a8c8aa753805d30602ce851a70d5427ee0ec098e3fcb2751e58d36c601f59f17f5c9ab90a430bc670f689c3b86b6ecbeccb6ff187f108f6e2000621eb7 WHIRLPOOL 111f38f1005f2e4a7c31435acaaff133c3a2dec695f615f25b3872801c5865c5057bcc7e75551fd8d65abafe7f1637498853ca78840731cfae91b0ae3972b4c6
-DIST llvm-4.0.1.src.tar.xz 21065652 SHA256 da783db1f82d516791179fe103c71706046561f7972b18f0049242dee6712b51 SHA512 16adc39b34ddb628f81b171119a8e2a0e9138b25011e803ef0b688e2fbea116fc4953d3a1b61b90a98a75e33619f81566b7cb06a9a2ea4d04ac5e0eb303a2d1d WHIRLPOOL 1626ff270f7ce4801d02a0797b227fda9314ff5c0c01d653111599e9a4d2854c4d9edc3c698a7abee8d79d6bce8b18dc619fbced3c07ca610d44a248d65830cc
-DIST llvm-5.0.0.src.tar.xz 23411980 SHA256 e35dcbae6084adcf4abb32514127c5eabd7d63b733852ccdb31e06f1373136da SHA512 e6d8fdcb5bf27bded814d02f39f69c6171bc3a512d5957c03e5ac2e231f903b7de87634b059bd5c5da670f7c3a8f7a538f6299225799f15f921857f1452f6b3a WHIRLPOOL 6a99edbdc3e6726dc8ff9126b110fd7560faac46601407722e6dd80b5d894ff242521dc8fda7f4d879de83dac51c65645a37224f7e8def0d8d2f1e564b0531bb
+DIST lld-5.0.0.src.tar.xz 668344 BLAKE2B 2d027f44aa8487c2edffb53eba1eafc7bb7ef8d6b7b32ee93dcf906df249d69242ec90817b267604260d9616fb2934e78e6954e76e8adc68d6e38cea8ca24097 SHA512 984606a8c8aa753805d30602ce851a70d5427ee0ec098e3fcb2751e58d36c601f59f17f5c9ab90a430bc670f689c3b86b6ecbeccb6ff187f108f6e2000621eb7
+DIST lld-5.0.1rc2.src.tar.xz 668368 BLAKE2B 1a2323b08e35bd157ac7ea2743ff6e86dc928ea4388e19b9c79bf65716e3b3ada18d80ce5610ca6ecc80dfac97061894741e31abf42f72e4a20fe31f0afff8a3 SHA512 374eee52382df093cd16c8f91f54b5b76e10427a6fd03ea9d25c3c03122d6b330b1650a02b1e7ec726900eca41ea501d076f1ff704e9b99da5e6c7553aa9c140
+DIST llvm-4.0.1.src.tar.xz 21065652 BLAKE2B 6327eed2d1feb108440f22d2581d1ff86c10a10c29793538d8d899c7e2dc83d3f7b147d3fd4bcce2bd2bf57c071b08c624aeafe40a3e7a3914506e7751727e6c SHA512 16adc39b34ddb628f81b171119a8e2a0e9138b25011e803ef0b688e2fbea116fc4953d3a1b61b90a98a75e33619f81566b7cb06a9a2ea4d04ac5e0eb303a2d1d
+DIST llvm-5.0.0.src.tar.xz 23411980 BLAKE2B bc3d8b75b766c83912252b51d6b57c8151c9d83415eff7bc771923d35138ed253a788d6c8e0a384c5e78ce1a1065f10d66ef5004df163b4c3b0c6274bb3aa6b7 SHA512 e6d8fdcb5bf27bded814d02f39f69c6171bc3a512d5957c03e5ac2e231f903b7de87634b059bd5c5da670f7c3a8f7a538f6299225799f15f921857f1452f6b3a
+DIST llvm-5.0.1rc2.src.tar.xz 23508164 BLAKE2B 3594d1658310a99787b4ff6f85aa8dd12a0405464bcb095ba4f205ce5b4ed3240a8ae1bef726ff98aba61ae5c8f8c10eeb8e415320d210af60f9e74bff7a8d5c SHA512 0a156e3949d22304b5e173dc9a3628161dff2798ad67924341c11494544350ef3a35a3ebb6ec8e7223b2407ce47cf12dafa6de8c006c5799a620e35a86c30b1b
EBUILD lld-4.0.1.ebuild 1721 BLAKE2B f3e848199052fbec33376e9630afd80c031cd729457d1e3c302d78c42a128cc7d8baa626ed294bdde19dc2ec00683a01e4e9d5d0f6d893e24a575024b9e92556 SHA512 e971195cbf8976a0bd5140c62c3c4d9a375beaf3813119342f3f8f28db9843e53dc9804cb13b6f1a49a1b7dc60cd631cd69f742faf1de56001f59230625dbef1
EBUILD lld-5.0.0.ebuild 1349 BLAKE2B 410821548a8e388b72017eb34bb3b83fe82675d8d8082d04a49cdeb1213d00a0e1910b4a936b94971a3ffc807cde791948ca2e71ed24457c46361117ed6ea5a0 SHA512 243c72cb2e712392d9fad06b19090f276356d1f99739bec7cb65cb7eafaa98c5627ec6816872db69594c77203c2fc21bb004144161e31069604c85fc58fd8d7c
+EBUILD lld-5.0.1_rc2.ebuild 1575 BLAKE2B c582e59d9670fe99ccc1f4b763e736847ab904fd435b87b42a3027261d1449e7f25783420dd5aaae29dd547763e0e9a4a0c4307cbc55dd3aec8c53e29a852e91 SHA512 66adb0bb0d582cea320837e172441a061187cabf041c690d17da0d35a3602310f48f2bf485d3e46a3d565ded1fa88810d0475247d1e3e33bf5dc809271486517
EBUILD lld-5.0.9999.ebuild 1539 BLAKE2B 918688e5a216eee0caa96785226230fdf3cc5ed2eb50a3d17567856a5833c3b824d051c41e62806ce30d11f9d8d234dbd0882e60378071f408d785c21335a040 SHA512 cd22ae5f9927b78810d7cdaeab45652ab7fcfaff579c19a36e314da112b706ffcd52af524b7a4b635a0fdb17f80f655a3f49707a71ccb3dbce84cb4e27037f9f
EBUILD lld-9999.ebuild 1520 BLAKE2B de58d593329512f1f489049cb46ba73b35fb2d02e5cee1d3aeb7e432936a4b2429937123a9c16f07f65e638d4140d6fb6bde9795429fd708828efb5bff2c4ae0 SHA512 d77c4237afbb85631d5222fc29eba124f3bdbcca7dbe45646ab7c1a2a23fc9362364e0a30481c3ebedd31340b402b90090efdd628544dcb425845d2e4bf26bec
MISC metadata.xml 216 BLAKE2B fe5e49887842aa513fbf1f2e09bed09a884d531fd21bdaeb2d389e8bf590b6c0e7063f0af98f66e2db129308ab0f0804ba327c3c752bbb4c900c59ac109d99aa SHA512 3485598147c953e72e1785693a489a7e7d73d59620b76054db9c0ce95d8bfa0e8ffec29da7f7a9d73a32e5b77eac07ca3306c56a972dc57fd89d477edaebf3d5
diff --git a/sys-devel/lld/lld-5.0.1_rc2.ebuild b/sys-devel/lld/lld-5.0.1_rc2.ebuild
new file mode 100644
index 000000000000..5d89edc60527
--- /dev/null
+++ b/sys-devel/lld/lld-5.0.1_rc2.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2017 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 python-any-r1
+
+MY_P=${P/_/}.src
+LLVM_P=llvm-${PV/_/}.src
+
+DESCRIPTION="The LLVM linker (link editor)"
+HOMEPAGE="https://llvm.org/"
+SRC_URI="http://prereleases.llvm.org/${PV/_//}/${MY_P}.tar.xz
+ test? ( http://prereleases.llvm.org/${PV/_//}/${LLVM_P}.tar.xz )"
+
+LICENSE="UoI-NCSA"
+SLOT="0"
+KEYWORDS=""
+IUSE="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"
+ -DLIT_COMMAND="${EPREFIX}/usr/bin/lit"
+ )
+
+ 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 2337e5d29963..0f063e261f17 100644
--- a/sys-devel/llvm-common/Manifest
+++ b/sys-devel/llvm-common/Manifest
@@ -1,7 +1,9 @@
-DIST llvm-4.0.1.src.tar.xz 21065652 SHA256 da783db1f82d516791179fe103c71706046561f7972b18f0049242dee6712b51 SHA512 16adc39b34ddb628f81b171119a8e2a0e9138b25011e803ef0b688e2fbea116fc4953d3a1b61b90a98a75e33619f81566b7cb06a9a2ea4d04ac5e0eb303a2d1d WHIRLPOOL 1626ff270f7ce4801d02a0797b227fda9314ff5c0c01d653111599e9a4d2854c4d9edc3c698a7abee8d79d6bce8b18dc619fbced3c07ca610d44a248d65830cc
-DIST llvm-5.0.0.src.tar.xz 23411980 SHA256 e35dcbae6084adcf4abb32514127c5eabd7d63b733852ccdb31e06f1373136da SHA512 e6d8fdcb5bf27bded814d02f39f69c6171bc3a512d5957c03e5ac2e231f903b7de87634b059bd5c5da670f7c3a8f7a538f6299225799f15f921857f1452f6b3a WHIRLPOOL 6a99edbdc3e6726dc8ff9126b110fd7560faac46601407722e6dd80b5d894ff242521dc8fda7f4d879de83dac51c65645a37224f7e8def0d8d2f1e564b0531bb
+DIST llvm-4.0.1.src.tar.xz 21065652 BLAKE2B 6327eed2d1feb108440f22d2581d1ff86c10a10c29793538d8d899c7e2dc83d3f7b147d3fd4bcce2bd2bf57c071b08c624aeafe40a3e7a3914506e7751727e6c SHA512 16adc39b34ddb628f81b171119a8e2a0e9138b25011e803ef0b688e2fbea116fc4953d3a1b61b90a98a75e33619f81566b7cb06a9a2ea4d04ac5e0eb303a2d1d
+DIST llvm-5.0.0.src.tar.xz 23411980 BLAKE2B bc3d8b75b766c83912252b51d6b57c8151c9d83415eff7bc771923d35138ed253a788d6c8e0a384c5e78ce1a1065f10d66ef5004df163b4c3b0c6274bb3aa6b7 SHA512 e6d8fdcb5bf27bded814d02f39f69c6171bc3a512d5957c03e5ac2e231f903b7de87634b059bd5c5da670f7c3a8f7a538f6299225799f15f921857f1452f6b3a
+DIST llvm-5.0.1rc2.src.tar.xz 23508164 BLAKE2B 3594d1658310a99787b4ff6f85aa8dd12a0405464bcb095ba4f205ce5b4ed3240a8ae1bef726ff98aba61ae5c8f8c10eeb8e415320d210af60f9e74bff7a8d5c SHA512 0a156e3949d22304b5e173dc9a3628161dff2798ad67924341c11494544350ef3a35a3ebb6ec8e7223b2407ce47cf12dafa6de8c006c5799a620e35a86c30b1b
EBUILD llvm-common-4.0.1.ebuild 643 BLAKE2B 8d88b76a670ffeb6d35eb50525b366cafe5297f27d8c4677f6e446c82992899565c30e75735ee11b30ad161ba54f807a6c77fb7f3507ecca05de0c67a7acec0a SHA512 175ed7697c687160a00aac3dcaca4454b0e98fc3ffd871377e0d0c7465f8427e7e187763a98382505fde3071f0a7c771a511d18b5470b3fe153673deeb2c4290
EBUILD llvm-common-5.0.0.ebuild 644 BLAKE2B 5e9f29726a23575238cfccda31343001f3f1d0b5101d628379d9ab863b5447a128963f01c8f64052e7fc75b17e9ff625c8b76b48ad5afb8d026a4b1d654608b8 SHA512 036b41ba0bfe661a3970bd703a8d02afd6cebb80f7e44c0a4a8b4fde0327a72364c8175ee01c67f05a3f37d3969505706e64f929b3b8e170ce80efd1cd09a20e
+EBUILD llvm-common-5.0.1_rc2.ebuild 756 BLAKE2B 19825fe7c7b2d03d99d6d8844267138af9d9831a7f6e93186592a5304e2e586b96c7ac429a315816d92410257474e9909daed46175e232ec7d8d901052843257 SHA512 4a8c8fa41d9a8fc1fc46aa78c9955a387af0edb01e67ebc96ace31f3893c529f1dfc5b0511b41de093cb1ae3b654f5c8af616c983ff18fd48bc8317575598fdb
EBUILD llvm-common-5.0.9999.ebuild 729 BLAKE2B 7a9b82a95d343bfddd56e44e7ebf44646c8049d84fbfc5daa07dca8df5267cfeea662c5d91db55f62203325f93f0d4c61099552a63bdfa622cc42e68cd592a12 SHA512 57bc9c8c2b77dc56e6b7861d5866b5b3bedc85301de18f1ae952ca291a86d51a3d93629ef9f1a271eda9042da7c8b4eacb33cd7399a220c375d619b9958c7fe6
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-5.0.1_rc2.ebuild b/sys-devel/llvm-common/llvm-common-5.0.1_rc2.ebuild
new file mode 100644
index 000000000000..a42a1fc3e505
--- /dev/null
+++ b/sys-devel/llvm-common/llvm-common-5.0.1_rc2.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2017 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="http://prereleases.llvm.org/${PV/_//}/${MY_P}.tar.xz"
+
+LICENSE="UoI-NCSA"
+SLOT="0"
+KEYWORDS=""
+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 17594eb4f580..f89417208f5b 100644
--- a/sys-devel/llvm/Manifest
+++ b/sys-devel/llvm/Manifest
@@ -1,3 +1,5 @@
+AUX 4.0.1/0001-cmake-Pass-Wl-z-nodelete-on-Linux-to-prevent-unloadi.patch 2408 BLAKE2B 92f396663629d0f1bc65833d4050f8e28044c25dec961981edac768b374c543d9084eb70ac51435554acfc5430c45035e4acae6e02f453bc679a3458979b53f3 SHA512 0424f35f12054a7e3e20d948c714979cfcf01200e8aac1cfab1b9fdd08718b4f4143a635eca9500e7ac77993ff390358cb630b8d97029cd9ec1e14c9cfaedfd2
+AUX 5.0.1/0001-cmake-Pass-Wl-z-nodelete-on-Linux-to-prevent-unloadi.patch 3055 BLAKE2B 4087d3b68bfb2023ef0dc43aaa696ed12b02c776e702e1aaa6a32b6c44f9194df7e8bb78068f03cd23165ba5ad8f9b2451a228a9b77c0b2c08757fc660eb2e00 SHA512 2493369dfc8bee58c8f92215aba9b91fb718562f9fa040c1132269e538040e9baa3c0a50e888033c3805a1aa7ce40443c6e7ff52ecc791b8c86140cd34b3f751
AUX 9999/0007-llvm-config-Clean-up-exported-values-update-for-shar.patch 2626 BLAKE2B 6c3afe6941568119b6bbce1c66be913a29a2ac7853a881804c1c22e981075f1677ca7e4744738ad858f58a58c1a7295aeb5f1d87b3a2b2adfb971a54d76c04fb SHA512 34a84427c34fa8886f55e05cf0ffce258cdee8e98190e070eb40dc555a30784c49ebe4f946f7ea51b7d00fceb8071fc745007250dc5b5a61c4d2bb9910672ec5
AUX 9999/musl-fixes.patch 1258 BLAKE2B fe275412bc908884239ea71de9a9ddf1d2f64debaa1a9ada18170195a7775c41571600ed3666343bf967aff5f9117900f73155f60de5077bc4584cfc2f782f53 SHA512 314dcbe846a66312c9f1634f4ff3f4670b3db1d3210bb550f1d3877a423333ba042da2e90c8736918a36be4d4faf58dab8d3236d4f26df5af7f7f019b0e0ec8f
DIST cfe-3.4.2.src.tar.gz 10612313 SHA256 5ba6f5772f8d00f445209356a7daf83c5bca2da5acd10de517ad2359ae95bc10 SHA512 e01fa8e312e9b3b7b3cb572ac21349161aaa50078ecfe7bded273b75db4a0c44acde524f8fdfcbeec54c61eeeb8339e9917d1f205a8fda18e34fe7ccbe89c36d WHIRLPOOL 153208b1a60bb5fbe92a7162cb26bbe70d591e7db9dcf06fcd54efc539bbff0403ec88e64236969c9f256e5586bc333840bd6178fd158577d6fe228d9edd4dcd
@@ -31,6 +33,7 @@ DIST llvm-3.9.1-patchset.tar.xz 16404 SHA256 a4b3e5887b53af47984ea39ff8640f11e8a
DIST llvm-3.9.1.src.tar.xz 18130436 SHA256 1fd90354b9cf19232e8f168faf2220e79be555df3aa743242700879e8fd329ee SHA512 50cbe8ee911080f586e77861c442348701bd02e2de0c090c54c34f82ac275ecfcd712af0f41e387c33b4a6057778a4258a27554292fe68ab4af3fd9dd6d90683 WHIRLPOOL 1cd1a25befcb178bec4a4aace4367167f3838d32edbe9db9de8c6e558c01c1fcf123f6d6f80b7ec9ff32b3d6dcf2de2f4eb4201d417c3d17a5c8a69934832903
DIST llvm-4.0.1.src.tar.xz 21065652 BLAKE2B 6327eed2d1feb108440f22d2581d1ff86c10a10c29793538d8d899c7e2dc83d3f7b147d3fd4bcce2bd2bf57c071b08c624aeafe40a3e7a3914506e7751727e6c SHA512 16adc39b34ddb628f81b171119a8e2a0e9138b25011e803ef0b688e2fbea116fc4953d3a1b61b90a98a75e33619f81566b7cb06a9a2ea4d04ac5e0eb303a2d1d
DIST llvm-5.0.0.src.tar.xz 23411980 BLAKE2B bc3d8b75b766c83912252b51d6b57c8151c9d83415eff7bc771923d35138ed253a788d6c8e0a384c5e78ce1a1065f10d66ef5004df163b4c3b0c6274bb3aa6b7 SHA512 e6d8fdcb5bf27bded814d02f39f69c6171bc3a512d5957c03e5ac2e231f903b7de87634b059bd5c5da670f7c3a8f7a538f6299225799f15f921857f1452f6b3a
+DIST llvm-5.0.1rc2.src.tar.xz 23508164 BLAKE2B 3594d1658310a99787b4ff6f85aa8dd12a0405464bcb095ba4f205ce5b4ed3240a8ae1bef726ff98aba61ae5c8f8c10eeb8e415320d210af60f9e74bff7a8d5c SHA512 0a156e3949d22304b5e173dc9a3628161dff2798ad67924341c11494544350ef3a35a3ebb6ec8e7223b2407ce47cf12dafa6de8c006c5799a620e35a86c30b1b
DIST llvm-manpages-4.0.1.tar.bz2 87981 SHA256 28fa1dcd4774156247ba253d2d79c81796ef0f0763b4f37c9c5ae27af93f4320 SHA512 d5b3213567c25db58ef364d272314a79c311a80fc21d98c09a5540af45a8190a38f489228663fe9a9b63bf0f2b952c460c4196a8fc8d6f221619f6e7ed2fc415 WHIRLPOOL da897ea8d3713a5c4c10a6320f0e7dd13e0125e942e3444b0e8a2a062b83a8e86e3754be025b89ae00f63f557ec0518ab62d8cd21237962e93c708ca72c8e3f5
DIST llvm-manpages-5.0.0.tar.bz2 94240 SHA256 5082c316cf09e6c15d76f0b184745bf3392d3fd42a56cf0a5119b45918a67cb9 SHA512 0bccfb00caa0796bed8ea4e591616e025e43d304f05589180820c17f8567fa3a1f1f76c323098ed0d0e4590765415b1c1c272a94c6e2e7544788f4088ef0ffea WHIRLPOOL 410fe9eda01519c7ded00b2ca61dd323bafb3418a0a81fdc5c3b60d64ee80b75a6372ea29eb66a1b1ce6bb020c011cff7d9e896469dd6f9534fc19fb5b5a4696
EBUILD llvm-3.4.2-r100.ebuild 7025 BLAKE2B b494ca2548a0d759e0eb3eac8c609406010da506e707ba98fed7e53858612d51ffbc87344c240b77eb82b2bb67bd5b8f4a4dd99d2925065a6b3293839297188a SHA512 9829abe6dbd09d786236ed4b05edbdbdd96c82af22dee5e4d4eb33fa28c80102024eeed057bc15140cf4bb646e84e8ed86e152a10df99b59f9ce84790af53593
@@ -38,8 +41,9 @@ EBUILD llvm-3.5.2-r100.ebuild 7837 BLAKE2B 224f7bf982e0f65a512a873e6eca951d05d4e
EBUILD llvm-3.6.2-r100.ebuild 7982 BLAKE2B fd247bb8877a421ec4f00ed499cddaa982ab7662cc31ef145bbc6e49c177df32f2d3e55090b4d63b12d8a83103b17cf9179edb0504df22e88a8861ea5124e80e SHA512 4a1673e289d67385d2971f367251e1e301e30be59d8931f2c73ed9ce6708fee0c993a11a243f134101f5e2fffb662cad09173791ad80a11e052c073ee6f48419
EBUILD llvm-3.7.1-r3.ebuild 16958 BLAKE2B fd7a7890b0041c216fe4b21937a578b2a00da2f25baf648ad4847becdd49757c551f9fe9708c4c1757ab9991ca2468133746816372f26116c98788da5d059df6 SHA512 5e1824bb8e24faa592cdade50282c96a77bdc8574c0afee3984ab536d6a1c575babcc458c22acdc526c50838d20ce7fe7c4dff3d4cd7fcb2bcb11b2e7a2a3033
EBUILD llvm-3.9.1-r1.ebuild 16507 BLAKE2B 83692ac24d5df082c1eab87ef85353a44a485332fa5720414a5965d379939e82aa6bfccb2fb513bc8c18872184d4ef99a02dc4766dad5bd555f887b2a9122589 SHA512 1234349f89c1d2b07e1918075b52f2866e56cc742d3f3da233dd8465c559c765c7cb256f1d6eb77ee61fede9be2c84bd6236c42e5672d5130f0e7730ee24de96
-EBUILD llvm-4.0.1.ebuild 6570 BLAKE2B 9380f2906640c861c8314532cf9b879c645bb44b24196bfc1edf72e67a5887f165e35bd0c03e4a950da373ca172b3fb433fac5825bebcb2c7bc1753798be0a54 SHA512 0a37cd4437977fb0c6721f83d4527409aaad93c3639bed99d891ac7406f12f2cff506bd8500db3017a01d8bb6e3ba9419f678061e62f36689a6d79932071238e
+EBUILD llvm-4.0.1-r1.ebuild 6763 BLAKE2B b9f44823d48af23ffc19a66c14a20f21155a431c5fe406d838ceda9c1b178758803a67f10fe9f21e06e845a5bf168b4337f22cc8aa7e31ac471173b388f8afd9 SHA512 848cfe5724015e60abb955e5d9e50cb9f9d672005746dbd5ed4bebcd3b256f90f39b35ff36229b902ed0571bfde626afe9e0fefd26212fc1613fd00416b8b5b2
EBUILD llvm-5.0.0.ebuild 6803 BLAKE2B 0f8c567f7a18a6b8ba6cf122e51d1ac7e1a3ca31b6ed6558118642f5293fb1541323ffb02dea6f52bc80f9e3f934e1f92e886cee75ae6369530ff24118828d9a SHA512 0dd78bdc302f0c5132f66d36dce91f0562a2c0284e5b7bc6e3cdebc6c632378ecf7ea23ee348b39b8bcdc074c502a2824094c4b9ac754e379c7a51e3c14623ee
-EBUILD llvm-5.0.9999.ebuild 6448 BLAKE2B cc3973b43db453e5053faf02f89ca9acf8f4d02290e41ab566ba840ea2e2732da0c50c73c1e2e071a880f41e51ac96045c728faa0179fe7a11b3a5448430ac81 SHA512 b936ee8e3d3609f982341ad326d484264763520685a47a7faccc01f2f82042d4b77d864c9de1bcc3e3377e5482e5fdeeddffd6b290726b8d822d1ae2caf2eb5e
+EBUILD llvm-5.0.1_rc2.ebuild 6882 BLAKE2B 9d1238233e5459bb885229a1e7d4ba4a9ba1ab3d4149774cebee74abf0ae82764096f0472b8e3b71e1087c898a361129f61eefd6d68794036709e22d1be49867 SHA512 b2810405de24c4b9ffb0b02291351a00f75b756a3f96e7d1818efffa0bfed63d9af81f96717db215469ce461b6b5ccc8fe73352a2582171c0dbe9693b290293b
+EBUILD llvm-5.0.9999.ebuild 6641 BLAKE2B 1c7e375af64e7999b7429dd2fe3e4d108b034f6f46f8821069367e16eb509d07f2916ccb7cd87cd24cce93ac61ac9e3d7a1f2dfe67c91e94b82310e37a8b200c SHA512 42703947cf1258a238ade131b5a6b6fcb2490c619c1be6e5901ab1ccf846c4778e33675be8fe10265c04e02c39bc183ae3eb42a92a3278fb9dd4a7574d21f125
EBUILD llvm-9999.ebuild 6636 BLAKE2B ddcdf06967b51c76f0744cd8007013fd01b7948317090c743f2799db60e384a4b0483f24dc9fa8a20d34ff9ae6fe70b8e823efa07924af044d8161e41d561342 SHA512 161358697a161cb4f6bacd0511d9ecf6bcc89d3d4d58ba215c49225f8471d35f2bc8f1ad552e7f41b65497cbb52699cfeee8fc5a05d365c8eccf34a080b15938
MISC metadata.xml 2747 BLAKE2B 0684b3ae235b762c8c365ac0da29d285781cb7aae25250664704385c3326c07097a6061907b1bc2417b90db39745745bfbbab887d53a7fa1024e62bcded2d0be SHA512 cbb82ddab3a19f9103ed1f72bdae2b50dd3bd906b377ff6004dc7b85e9ec8852fd9d03f7f9e7015363454b86680ec5fdb756b08bc6a7c2743669ee4ff3b4aa08
diff --git a/sys-devel/llvm/files/4.0.1/0001-cmake-Pass-Wl-z-nodelete-on-Linux-to-prevent-unloadi.patch b/sys-devel/llvm/files/4.0.1/0001-cmake-Pass-Wl-z-nodelete-on-Linux-to-prevent-unloadi.patch
new file mode 100644
index 000000000000..b857136498b0
--- /dev/null
+++ b/sys-devel/llvm/files/4.0.1/0001-cmake-Pass-Wl-z-nodelete-on-Linux-to-prevent-unloadi.patch
@@ -0,0 +1,56 @@
+From 937b23b5fffa59deb1dc342cc5602d387d84a762 Mon Sep 17 00:00:00 2001
+From: Michal Gorny <mgorny@gentoo.org>
+Date: Mon, 27 Nov 2017 22:23:09 +0000
+Subject: [PATCH] [cmake] Pass -Wl,-z,nodelete on Linux to prevent unloading
+
+Prevent unloading shared libraries on Linux when dlclose() is called.
+This is necessary since command-line option parsing API relies on
+registering the global option instances in the option parser instance
+which can be loaded in a different shared library.
+
+Given that we can't reliably remove those options when a library is
+unloaded, the parser ends up containing dangling references. Since glibc
+has relatively complex library unloading rules, some of the LLVM
+libraries can be unloaded while others (including the Support library)
+stay loaded causing quite a mayhem. To reliably prevent that, just
+forbid unloading all libraries -- it's a very bad idea anyway.
+
+While the issue arguably happens only with BUILD_SHARED_LIBS, it may
+affect any library reusing llvm::cl interface.
+
+Based on patch provided Ross Hayward on https://bugs.gentoo.org/617154.
+Previously hit by Fedora back in Feb 2016:
+https://lists.freedesktop.org/archives/mesa-dev/2016-February/107242.html
+
+Differential Revision: https://reviews.llvm.org/D40459
+
+git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@319105 91177308-0d34-0410-b5e6-96231b3b80d8
+---
+ cmake/modules/HandleLLVMOptions.cmake | 8 ++++++++
+ unittests/Support/DynamicLibrary/CMakeLists.txt | 7 +++++++
+ 2 files changed, 15 insertions(+)
+
+ 4.0.1 backport: removed the unittest part
+
+diff --git a/cmake/modules/HandleLLVMOptions.cmake b/cmake/modules/HandleLLVMOptions.cmake
+index c5390371845..b5059a8a60e 100644
+--- a/cmake/modules/HandleLLVMOptions.cmake
++++ b/cmake/modules/HandleLLVMOptions.cmake
+@@ -151,6 +151,14 @@ if(NOT (${CMAKE_SYSTEM_NAME} MATCHES "Darwin" OR WIN32 OR CYGWIN OR
+ set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,-z,defs")
+ endif()
+
++# Pass -Wl,-z,nodelete. This makes sure our shared libraries are not unloaded
++# by dlclose(). We need that since the CLI API relies on cross-references
++# between global objects which became horribly broken when one of the libraries
++# is unloaded.
++if(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
++ set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,-z,nodelete")
++endif()
++
+
+ function(append value)
+ foreach(variable ${ARGN})
+--
+2.15.1
+
diff --git a/sys-devel/llvm/files/5.0.1/0001-cmake-Pass-Wl-z-nodelete-on-Linux-to-prevent-unloadi.patch b/sys-devel/llvm/files/5.0.1/0001-cmake-Pass-Wl-z-nodelete-on-Linux-to-prevent-unloadi.patch
new file mode 100644
index 000000000000..21702748893c
--- /dev/null
+++ b/sys-devel/llvm/files/5.0.1/0001-cmake-Pass-Wl-z-nodelete-on-Linux-to-prevent-unloadi.patch
@@ -0,0 +1,71 @@
+From 937b23b5fffa59deb1dc342cc5602d387d84a762 Mon Sep 17 00:00:00 2001
+From: Michal Gorny <mgorny@gentoo.org>
+Date: Mon, 27 Nov 2017 22:23:09 +0000
+Subject: [PATCH] [cmake] Pass -Wl,-z,nodelete on Linux to prevent unloading
+
+Prevent unloading shared libraries on Linux when dlclose() is called.
+This is necessary since command-line option parsing API relies on
+registering the global option instances in the option parser instance
+which can be loaded in a different shared library.
+
+Given that we can't reliably remove those options when a library is
+unloaded, the parser ends up containing dangling references. Since glibc
+has relatively complex library unloading rules, some of the LLVM
+libraries can be unloaded while others (including the Support library)
+stay loaded causing quite a mayhem. To reliably prevent that, just
+forbid unloading all libraries -- it's a very bad idea anyway.
+
+While the issue arguably happens only with BUILD_SHARED_LIBS, it may
+affect any library reusing llvm::cl interface.
+
+Based on patch provided Ross Hayward on https://bugs.gentoo.org/617154.
+Previously hit by Fedora back in Feb 2016:
+https://lists.freedesktop.org/archives/mesa-dev/2016-February/107242.html
+
+Differential Revision: https://reviews.llvm.org/D40459
+
+git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@319105 91177308-0d34-0410-b5e6-96231b3b80d8
+---
+ cmake/modules/HandleLLVMOptions.cmake | 8 ++++++++
+ unittests/Support/DynamicLibrary/CMakeLists.txt | 7 +++++++
+ 2 files changed, 15 insertions(+)
+
+diff --git a/cmake/modules/HandleLLVMOptions.cmake b/cmake/modules/HandleLLVMOptions.cmake
+index c5390371845..b5059a8a60e 100644
+--- a/cmake/modules/HandleLLVMOptions.cmake
++++ b/cmake/modules/HandleLLVMOptions.cmake
+@@ -151,6 +151,14 @@ if(NOT (${CMAKE_SYSTEM_NAME} MATCHES "Darwin" OR WIN32 OR CYGWIN OR
+ set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,-z,defs")
+ endif()
+
++# Pass -Wl,-z,nodelete. This makes sure our shared libraries are not unloaded
++# by dlclose(). We need that since the CLI API relies on cross-references
++# between global objects which became horribly broken when one of the libraries
++# is unloaded.
++if(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
++ set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,-z,nodelete")
++endif()
++
+
+ function(append value)
+ foreach(variable ${ARGN})
+diff --git a/unittests/Support/DynamicLibrary/CMakeLists.txt b/unittests/Support/DynamicLibrary/CMakeLists.txt
+index 9355979221a..c6201b1ad31 100644
+--- a/unittests/Support/DynamicLibrary/CMakeLists.txt
++++ b/unittests/Support/DynamicLibrary/CMakeLists.txt
+@@ -24,5 +24,12 @@ function(dynlib_add_module NAME)
+ add_dependencies(DynamicLibraryTests ${NAME})
+ endfunction(dynlib_add_module)
+
++# Revert -Wl,-z,nodelete on this test since it relies on the file
++# being unloaded.
++if(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
++ string(REPLACE "-Wl,-z,nodelete" "" CMAKE_SHARED_LINKER_FLAGS
++ ${CMAKE_SHARED_LINKER_FLAGS})
++endif()
++
+ dynlib_add_module(PipSqueak)
+ dynlib_add_module(SecondLib)
+--
+2.15.1
+
diff --git a/sys-devel/llvm/llvm-4.0.1.ebuild b/sys-devel/llvm/llvm-4.0.1-r1.ebuild
index 6ee123541ac5..1931365e8a7e 100644
--- a/sys-devel/llvm/llvm-4.0.1.ebuild
+++ b/sys-devel/llvm/llvm-4.0.1-r1.ebuild
@@ -75,6 +75,10 @@ src_prepare() {
# https://bugs.gentoo.org/show_bug.cgi?id=565358
eapply "${FILESDIR}"/9999/0007-llvm-config-Clean-up-exported-values-update-for-shar.patch
+ # Backport the fix for dlclose() causing option parser mess
+ # e.g. https://bugs.gentoo.org/617154
+ eapply "${FILESDIR}"/4.0.1/0001-cmake-Pass-Wl-z-nodelete-on-Linux-to-prevent-unloadi.patch
+
# support building llvm against musl-libc
use elibc_musl && eapply "${FILESDIR}"/9999/musl-fixes.patch
diff --git a/sys-devel/llvm/llvm-5.0.1_rc2.ebuild b/sys-devel/llvm/llvm-5.0.1_rc2.ebuild
new file mode 100644
index 000000000000..42978ec5cce1
--- /dev/null
+++ b/sys-devel/llvm/llvm-5.0.1_rc2.ebuild
@@ -0,0 +1,236 @@
+# Copyright 1999-2017 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 \
+ pax-utils python-any-r1 toolchain-funcs
+
+DESCRIPTION="Low Level Virtual Machine"
+HOMEPAGE="https://llvm.org/"
+SRC_URI="http://prereleases.llvm.org/${PV/_//}/${P/_/}.src.tar.xz"
+# !doc? ( https://dev.gentoo.org/~mgorny/dist/llvm/llvm-manpages-${PV}.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=""
+IUSE="debug +doc gold libedit +libffi ncurses test
+ kernel_Darwin ${ALL_LLVM_TARGETS[*]}"
+
+RDEPEND="
+ sys-libs/zlib:0=
+ 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}] )"
+# 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 )
+ )
+ || ( >=sys-devel/binutils-2.18 >=sys-devel/binutils-apple-5.1 )
+ kernel_Darwin? ( <sys-libs/libcxx-$(ver_cut 1-3).9999 )
+ 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 )"
+
+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
+
+ # Backport the fix for dlclose() causing option parser mess
+ # e.g. https://bugs.gentoo.org/617154
+ eapply "${FILESDIR}"/5.0.1/0001-cmake-Pass-Wl-z-nodelete-on-Linux-to-prevent-unloadi.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_ASSERTIONS=$(usex debug)
+ -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}"
+
+ # 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
+
+ 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+=(
+ -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
+
+ # 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
+
+ # install fuzzer libraries for clang (cmake rules were added in 6)
+ # https://bugs.gentoo.org/636840
+ into "/usr/lib/llvm/${SLOT}"
+ dolib.a "$(get_libdir)"/libLLVMFuzzer*.a
+
+ LLVM_LDPATHS+=( "${EPREFIX}/usr/lib/llvm/${SLOT}/$(get_libdir)" )
+}
+
+multilib_src_install_all() {
+ local revord=$(( 9999 - ${SLOT} ))
+ cat <<-_EOF_ > "${T}/10llvm-${revord}" || die
+ 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_
+ doenvd "${T}/10llvm-${revord}"
+
+ # install pre-generated manpages
+ if ! use doc; then
+ # (doman does not support custom paths)
+ insinto "/usr/lib/llvm/${SLOT}/share/man/man1"
+ doins "${WORKDIR}/llvm-manpages-${PV}/llvm"/*.1
+ fi
+
+ docompress "/usr/lib/llvm/${SLOT}/share/man"
+}
diff --git a/sys-devel/llvm/llvm-5.0.9999.ebuild b/sys-devel/llvm/llvm-5.0.9999.ebuild
index 3bf676e43609..2c8a9d8ecf07 100644
--- a/sys-devel/llvm/llvm-5.0.9999.ebuild
+++ b/sys-devel/llvm/llvm-5.0.9999.ebuild
@@ -75,6 +75,10 @@ src_prepare() {
# https://bugs.gentoo.org/show_bug.cgi?id=565358
eapply "${FILESDIR}"/9999/0007-llvm-config-Clean-up-exported-values-update-for-shar.patch
+ # Backport the fix for dlclose() causing option parser mess
+ # e.g. https://bugs.gentoo.org/617154
+ eapply "${FILESDIR}"/5.0.1/0001-cmake-Pass-Wl-z-nodelete-on-Linux-to-prevent-unloadi.patch
+
# disable use of SDK on OSX, bug #568758
sed -i -e 's/xcrun/false/' utils/lit/lit/util.py || die
diff --git a/sys-devel/native-cctools/Manifest b/sys-devel/native-cctools/Manifest
index fda29d3a611c..69c78a0aad3f 100644
--- a/sys-devel/native-cctools/Manifest
+++ b/sys-devel/native-cctools/Manifest
@@ -1,7 +1,5 @@
AUX aix-2/ld 2717 BLAKE2B 76669edd80b376a53741465627256c9001de66bf7c75d74fb1e157df90ab515b9b2ff17395417661418ca473afee587a8f012a7ad3bd103578a3d9b4af94b678 SHA512 38ab347451d67a36b37ae2aea8f27876a20cda7a6b3ba1f3ae3acbed5f8a8016822991e3aabc82c8d14f3b0962922d765e5c01ade0e9853ff03f3f0d8e743846
AUX aix-2/mkexpfile 1535 BLAKE2B 8e4fa825cad0bef1bee2e6db348f895e58fbf281a1801d49679971f0de0b466c20150237222e56fbead3da3579945eb481f9cbceb8daa439d82e3e9e903d7e0c SHA512 51491a3b215b2efcbf3a14ee7cc90ea6e9062eb98a939e88671b288cbd8262864aec8cffe481689ba325c1aed125881a2c6a375eff1bb1f4f9902f29b53944c6
AUX aix-2/nm 176 BLAKE2B a3ca7388a558fadaab1d843ebe684c2c945872bb34423042aacfbadfebc28ef005e63236dde6899aec954dbe1a1c810ce4aa99d5485ed225ad07a3bd435c71a2 SHA512 d5206f7bf3ce54f79c292f9734b028aa8c9d0db811db4cb6ef2a4570f3bd13e38b2e41def4d6053a3794dd0f5ed81b485deee4d27c3db6462035071d7c522411
-AUX ld-aix-1 2753 BLAKE2B 31d2aedbc8dd06a9498bdcee75887887cb2140ec052d993b12ac3debb5489ed4a9cf827d07a0113004f76c1e676fa9863a78cdfe0b5ecb13ed5d0bb953af63db SHA512 e637a4596164b88fef8d0e9b7259970f49bcee04b4baa75aa811c87e7973fdf63e89d3e72ed8b953ef07fa121e8e8f58d6da3de995c190bc2df59cea950d7cbb
-AUX ld-aix-2 2717 BLAKE2B ecd2dfa0d7e1ce20b322910bd8e15fd1d9e0b47deb016e83076db3189aad13db60e22e52b8791f2171ef0f535c767abe87428a93492b5ed3222c040739324d64 SHA512 88c88e80e38f2da69bc2adb0ccbaeb35b65ce6c0e00afdf7867c7fa254ed24aacd680ddb98aee3743613f606a18a46fc5525ff4667258c15b17d24ea3da718fe
EBUILD native-cctools-4.ebuild 2816 BLAKE2B 5b8a73d5c884529f57ea4c3cfb16db9fde6fdc4427654dbb1a5369185367c1d39d7df1a9b2cbf3bf33e5e13a0166826aeb466b142977ac37e64f2b425e032ad0 SHA512 92382257c82fe3b1a9c109a8628d1a08a588ce95fcc3ec799cd331f5e5b61ee536cc285f5dae5e83dc6e760c3128da294b81020779a2d668656bb08bc2b1a1c9
MISC metadata.xml 243 BLAKE2B d650658b3e248940751d20c9e517a011a34f8d99df54d5203162d67c21df384f507e44ed0c848c1adc99fae8d511e204129f2709f5bdc5d1b2c8e41120bbe6db SHA512 8489be9ea6eac385511b0d193b1b61fad9c8e0d4cb86fd711e6faf04e66b2c935ae64ce6ce0a044d036e76de6787e5d440d67f831e89261a71e74b645a0999d9
diff --git a/sys-devel/native-cctools/files/ld-aix-1 b/sys-devel/native-cctools/files/ld-aix-1
deleted file mode 100644
index 452edad70d87..000000000000
--- a/sys-devel/native-cctools/files/ld-aix-1
+++ /dev/null
@@ -1,140 +0,0 @@
-#! /usr/bin/env /bin/ksh
-# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-
-# Upon '-soname' and similar flags, create a "shared library" on AIX being an
-# archive file containing an Import File and the shared object file, as in:
-# http://lists.gnu.org/archive/html/libtool/2011-01/msg00023.html
-# with updates in:
-# http://lists.gnu.org/archive/html/libtool/2011-02/msg00000.html
-#
-# This helper script is meant not depend on anything Gentoo specific.
-
-ld=/usr/ccs/bin/ld
-ar=/usr/ccs/bin/ar
-strip=/usr/ccs/bin/strip
-dump=/usr/sbin/dump
-awk=/usr/bin/awk
-rm=/usr/bin/rm
-mkdir=/usr/bin/mkdir
-mv=/usr/bin/mv
-ln=/usr/bin/ln
-
-oldargs=
-output=
-soname=
-newargs=
-OBJECT_MODE=${OBJECT_MODE:-32}
-
-while [[ $# -gt 0 ]]
-do
- arg=$1
- shift
- oldargs="${oldargs} '${arg}'"
- case ${arg} in
- -o)
- newargs="${newargs} -o '$1'"
- output=$1
- oldargs="${oldargs} '$1'"
- shift
- ;;
- -bM:SRE)
- newargs="${newargs} '-G' '-bernotok'"
- ;;
- -soname=*)
- soname=${arg#-soname=}
- ;;
- -h*)
- soname=${arg#-h}
- ;;
- -soname|-h)
- soname=$1
- shift
- ;;
- -b32)
- newargs="${newargs} '${arg}'"
- OBJECT_MODE=32
- ;;
- -b64)
- newargs="${newargs} '${arg}'"
- OBJECT_MODE=64
- ;;
- *)
- newargs="${newargs} '${arg}'"
- ;;
- esac
-done
-
-if [[ -z ${output} || -z ${soname} ]]; then
- eval "exec ${ld} ${oldargs}"
- exit 1
-fi
-
-# Running ld against the orginal target file to retain
-# ld error message when there's a problem with it:
-eval "${ld} -o '${output}' ${newargs}" || exit 1
-
-workdir="${output}.$$"
-
-${rm} -rf "${workdir}" || exit 1
-trap "${rm} -rf '${workdir}'" 0
-
-case ${soname} in
-*\(*\))
- shro=${soname#*\(}
- shro=${shro%\)}
- shri=${shro%.*}.imp
- ;;
-*\[*\])
- shro=${soname#*\[}
- shro=${shro%\]}
- shri=${shro%.*}.imp
- ;;
-none) # loadable only module, not linkable: no import file
- shro='shr.o'
- soname="${output##*/}(${shro})"
- shri=
- ;;
-auto)
- shro='shr.o'
- soname=${output##*/}
- if [[ ${soname} == lib*.so* ]]; then
- # linkable library: need import file
- shri=${shro%.*}.imp
- else
- # loadable only module, not linkable: no import file
- shri=
- fi
- soname="${soname}(${shro})"
- ;;
-*)
- shro='shr.o'
- shri=${shro%.*}.imp
- soname="${soname}(${shro})"
- ;;
-esac
-
-export OBJECT_MODE
-
-${mkdir} "${workdir}" || exit 1
-${strip} -e "${output}" || exit 1
-if [[ -n ${shri} ]]; then
- ${dump} -Tv "${output}" > "${workdir}"/syms || exit 1
- ${awk} '
- BEGIN {
- print "#! '"${soname}"'"
- print "# '"${OBJECT_MODE}"'"
- }
- {
- if ($6 != "SECdef") {
- if ($4 == "EXP" || $4 == "ImpExp") {
- print $8
- } else
- if ($4 == "wEXP") {
- print $8" weak"
- }
- }
- }' <"${workdir}"/syms > "${workdir}"/${shri} || exit 1
-fi
-${mv} "${output}" "${workdir}/${shro}" || exit 1
-${ar} rc "${output}" ${shri:+"${workdir}/${shri}"} "${workdir}/${shro}" || exit 1
-exit 0
diff --git a/sys-devel/native-cctools/files/ld-aix-2 b/sys-devel/native-cctools/files/ld-aix-2
deleted file mode 100644
index 3ca9eb2357eb..000000000000
--- a/sys-devel/native-cctools/files/ld-aix-2
+++ /dev/null
@@ -1,138 +0,0 @@
-#! /usr/bin/env /bin/ksh
-# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-
-# Upon '-soname' and similar flags, create a "shared library" on AIX being an
-# archive file containing an Import File and the shared object file, as in:
-# http://lists.gnu.org/archive/html/libtool/2011-01/msg00023.html
-# with updates in:
-# http://lists.gnu.org/archive/html/libtool/2011-02/msg00000.html
-#
-# This helper script is meant not depend on anything Gentoo specific.
-
-ld=/usr/ccs/bin/ld
-ar=/usr/ccs/bin/ar
-strip=/usr/ccs/bin/strip
-dump=/usr/sbin/dump
-awk=/usr/bin/awk
-rm=/usr/bin/rm
-mkdir=/usr/bin/mkdir
-mv=/usr/bin/mv
-ln=/usr/bin/ln
-
-oldargs=
-output=
-soname=
-newargs=
-OBJECT_MODE=${OBJECT_MODE:-32}
-
-while [[ $# -gt 0 ]]
-do
- arg=$1
- shift
- oldargs="${oldargs} '${arg}'"
- case ${arg} in
- -o)
- newargs="${newargs} -o '$1'"
- output=$1
- oldargs="${oldargs} '$1'"
- shift
- ;;
- -bM:SRE)
- newargs="${newargs} '-G' '-bernotok'"
- ;;
- -soname=*)
- soname=${arg#-soname=}
- ;;
- -h*)
- soname=${arg#-h}
- ;;
- -soname|-h)
- soname=$1
- shift
- ;;
- -b32)
- newargs="${newargs} '${arg}'"
- OBJECT_MODE=32
- ;;
- -b64)
- newargs="${newargs} '${arg}'"
- OBJECT_MODE=64
- ;;
- *)
- newargs="${newargs} '${arg}'"
- ;;
- esac
-done
-
-if [[ -z ${output} || -z ${soname} ]]; then
- eval "exec ${ld} ${oldargs}"
- exit 1
-fi
-
-# Running ld against the orginal target file to retain
-# ld error message when there's a problem with it:
-eval "${ld} -o '${output}' ${newargs}" || exit 1
-
-workdir="${output}.$$"
-
-${rm} -rf "${workdir}" || exit 1
-trap "${rm} -rf '${workdir}'" 0
-
-case ${soname} in
-*\(*\))
- shro=${soname#*\(}
- shro=${shro%\)}
- shri=${shro%.*}.imp
- ;;
-*\[*\])
- shro=${soname#*\[}
- shro=${shro%\]}
- shri=${shro%.*}.imp
- ;;
-none) # loadable only module, not linkable: no import file
- shro='shr.o'
- soname="${output##*/}(${shro})"
- shri=
- ;;
-auto)
- shro='shr.o'
- soname=${output##*/}
- if [[ ${soname} == lib*.so* ]]; then
- # linkable library: need import file
- shri=${shro%.*}.imp
- else
- # loadable only module, not linkable: no import file
- shri=
- fi
- soname="${soname}(${shro})"
- ;;
-*)
- shro='shr.o'
- shri=${shro%.*}.imp
- soname="${soname}(${shro})"
- ;;
-esac
-
-export OBJECT_MODE
-
-${mkdir} "${workdir}" || exit 1
-${strip} -e "${output}" || exit 1
-if [[ -n ${shri} ]]; then
- ${dump} -Tv "${output}" > "${workdir}"/syms || exit 1
- ${awk} '
- BEGIN {
- print "#! '"${soname}"'"
- print "# '"${OBJECT_MODE}"'"
- }
- {
- if ($4 == "EXP" || $4 == "ImpExp") {
- print $8
- } else
- if ($4 == "wEXP") {
- print $8" weak"
- }
- }' <"${workdir}"/syms > "${workdir}"/${shri} || exit 1
-fi
-${mv} "${output}" "${workdir}/${shro}" || exit 1
-${ar} rc "${output}" ${shri:+"${workdir}/${shri}"} "${workdir}/${shro}" || exit 1
-exit 0