summaryrefslogtreecommitdiff
path: root/sys-devel/llvm
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2020-12-14 13:26:14 +0000
committerV3n3RiX <venerix@redcorelinux.org>2020-12-14 13:26:14 +0000
commit6abbf81ef2f298e3221ff5e67a1f3c5f23958212 (patch)
tree25413d1cb3a0cbfe36029db32398c0f333609215 /sys-devel/llvm
parent9c417bacd51da6d8b57fa9f37425161d30d4b95b (diff)
gentoo resync : 14.12.2020
Diffstat (limited to 'sys-devel/llvm')
-rw-r--r--sys-devel/llvm/Manifest15
-rw-r--r--sys-devel/llvm/llvm-10.0.1.ebuild7
-rw-r--r--sys-devel/llvm/llvm-11.0.0.ebuild9
-rw-r--r--sys-devel/llvm/llvm-11.0.1.9999.ebuild (renamed from sys-devel/llvm/llvm-11.0.0.9999.ebuild)14
-rw-r--r--sys-devel/llvm/llvm-11.0.1_rc1.ebuild (renamed from sys-devel/llvm/llvm-10.0.0.ebuild)184
-rw-r--r--sys-devel/llvm/llvm-12.0.0.9999.ebuild14
-rw-r--r--sys-devel/llvm/llvm-9.0.1.ebuild7
7 files changed, 156 insertions, 94 deletions
diff --git a/sys-devel/llvm/Manifest b/sys-devel/llvm/Manifest
index 8fac45f0da44..ed7852cd35f3 100644
--- a/sys-devel/llvm/Manifest
+++ b/sys-devel/llvm/Manifest
@@ -3,18 +3,17 @@ AUX 10.0.1/0002-llvm-Disable-linking-llvm-exegesis-to-dylib.patch 983 BLAKE2B af
AUX 11.0.0/0001-backport-D88371-guard-find_library-tensorflow_c_api.patch 2450 BLAKE2B b070b1b90e63eda30caceda63076f44e7d72c41567b28f56ccaebffbb7b832cac72c2d444007988f5e535173eb961ba23b56d6e50a8bcbe18dbcf751527cb876 SHA512 c10f7fff5f951ef17a77c25ec85072e06a1cd672720cf2a3a5c72102f0968ee2123bf02fdcd5df41b7832564891ace6dd58ce5370c42f6be5e52c72780f2abfa
AUX 9999/0007-llvm-config-Clean-up-exported-values-update-for-shar.patch 1188 BLAKE2B 72311a8da991b9f3b98523baefe6f5b31aa7f9101c388f35484dd5f384a08e838ea42a17447ca17a0dfe6b7d3c20abbdf0e8afee72e8ad5d46ec38b8d55307c8 SHA512 0ada997db2a0eb875105fb212dc3fc3077b9c4f7804d78c33c4b1f512bf1267295f325153ae14c00404c86e576ae1c78a6aeb0a57d1d4525aabd1169c21806ef
AUX 9999/musl-fixes.patch 1258 BLAKE2B fe275412bc908884239ea71de9a9ddf1d2f64debaa1a9ada18170195a7775c41571600ed3666343bf967aff5f9117900f73155f60de5077bc4584cfc2f782f53 SHA512 314dcbe846a66312c9f1634f4ff3f4670b3db1d3210bb550f1d3877a423333ba042da2e90c8736918a36be4d4faf58dab8d3236d4f26df5af7f7f019b0e0ec8f
-DIST llvm-10.0.0-manpages.tar.bz2 177084 BLAKE2B 16b38e60fce4d67ac602b317ea7089c095d46b9426ba9940041e65d7ab493f85dba2e94a4aeba7b7c52042f23825efcfcd32a57d306aaf05b4307061a5a8a368 SHA512 eac57ad218ff4c2b5a74e453a29192ee6e911152b668d8a9420b59529d5cae8aa241f2485b4a7ea304acbecc7ecb27391a77552080726432c2b7b59b95fc0bd7
DIST llvm-10.0.1-manpages.tar.bz2 180157 BLAKE2B ddf5951c8f5a2a8a80726fd713e6c818c852851a2261e904b484afdb67ac55f2ce10976ca2ca5d81fe2bf4806a72cc7b59f4068741306491a4f39065ca8fb56e SHA512 d3c2470dbd0f3143d64b380f7534ebcacdcf4bc4f140a6014283150007fe615ebd86247cf13b2432165a681614849e8eaab69a8d077f7a51e4e040e28ed33ebc
DIST llvm-11.0.0-manpages.tar.bz2 179592 BLAKE2B d03dff5e7426f4c648d6112dee0fa7a91edf41584290c94c3f738fc65fa82fc6ef47b49c245fb0e741bdf267fc64534311194c476ece4b447649ba2250e61430 SHA512 1cf598f50c99a85a35b03398e4768cd1eafec9d602f788d401120adb91b3b59965216ed7102da26b7c2af7e1bbca4bca8f1d43bb687fcd8ed418e2f7076bdce4
DIST llvm-9.0.0-manpages.tar.bz2 158546 BLAKE2B eed6235698a0b5993affe305f7fd22cd4cf444adf931275a1685f2049a5f17cf2933907577d9ce142348a3c579769b0436aa2b5a9a953958504125a8c3e83b7d SHA512 64c8d18061eb2870b379a1df485be0b61eac07cb10b3f97347b54b2ee326faa63437ca04466776be282e120dd3f6147e14fffdd38ca370db85748fe5eb54d764
-DIST llvmorg-10.0.0.tar.gz 120804856 BLAKE2B 6b0254f5b913398cdcf2b2ec1ff219888706d2b79d5296590934714e42ac79f6a6547941ac2b1d2c4e6313dd18b6c7068e748aa6ac033e49fccbf5d355aa8191 SHA512 baa182d62fef1851836013ae8a1a00861ea89769778d67fb97b407a9de664e6c85da2af9c5b3f75d2bf34ff6b00004e531ca7e4b3115a26c0e61c575cf2303a0
DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3c8a6ff1a1f152f94bfe362c07884339fe571ff7fe903ed3b3deb150b2fa868c387887a0dea2930dc08b81db71a5b1 SHA512 48078fff9293a87f1a973f3348f79506f04c3da774295f5eb67d74dd2d1aa94f0973f8ced3f4ab9e8339902071f82c603b43d5608ad7227046c4da769c5d2151
DIST llvmorg-11.0.0.tar.gz 122743665 BLAKE2B 3f95570240789fd68ddb747df817f5c6cdc9da40911bbe9ee3531c15ada9165e5002b1c2f778cf8735858485ea05a8754e3d3a5f4b15bdd6cb33d64a14692984 SHA512 b6d38871ccce0e086e27d35e42887618d68e57d8274735c59e3eabc42dee352412489296293f8d5169fe0044936345915ee7da61ebdc64ec10f7737f6ecd90f2
+DIST llvmorg-11.0.1-rc1.tar.gz 122777435 BLAKE2B 23b520d33cf4b641027ee52bb10c6171d60356c9167d5b94012929e6e547c526cda1a6177c295ed19592dfb83b020f63b2cef4cabc70ce9a2a8e098fe654a3cd SHA512 605c7bbff1610f335be8ea4f1204df797fed21185a54c77565f6ff2d00794d1967e9c5fab7c87633e242f2f999bdffb76da83f756d261c1ca476114599409ae1
DIST llvmorg-9.0.1.tar.gz 113193320 BLAKE2B b86e405f2b8e00436045fd409fe19cdde75c797b1192c62a22b5ec75e6b4dc8e874a0f33008dc31562445e4cbe53a992b6f48c684255a6a1ef261e595b8b161f SHA512 fa88beeaae94b6d0cd9b5ba38658d0ffed8004035d7d8a4f95c3d31a709b88b581ae9bd7761333c8e5375c44b8f6be01768b5a3be901163159d7e6c43b71da59
-EBUILD llvm-10.0.0.ebuild 10751 BLAKE2B 338970325836138a0214d3e97e1b408b466052abe7bda4815edcb41e3b998a7b9df26bcf2caf457ee8b66d997b383a0f94a196a580671db4b5288b8522e48bb5 SHA512 c588a1cce4e950bdbd189ad0f44c1b9377adc5bdf041a1da4872cc2d629d79f73132f1776cee09d8e08cd799aa7bc0473915d3a3644606e3cc26f5329b533194
-EBUILD llvm-10.0.1.ebuild 11955 BLAKE2B df1609d90f64fe1ff969af18adf18aee99ef3ddc947ee7ebc1c247e0bedc38f39cc46498841bd3fb85378329ef05f5dfa32a522c6549313d27a7f177680ad1c4 SHA512 6385e8501f927a7015298d75e472949470c58b39e35ba8cf6d264662942b714235913c49b9c37f17ce9835c220b64dbea961716bf57b62ebcc8edbb9f46f6acc
-EBUILD llvm-11.0.0.9999.ebuild 12629 BLAKE2B 2af00259c1df990169c614e689007cfea6cb877a9df06b64255c8fde48e9f750b1744918dae483730a40a0152edf99c2bbc72101a2920f19202e2d1f95fe9bc2 SHA512 5e086dda86d65e34ab9528ac2d04945a22aeb359a24c11e9b2a9d4f0862e10c879d2e1bc4e99cf3e650f1685d8c1ddf5a066fb167c880d005fc71670bb89641a
-EBUILD llvm-11.0.0.ebuild 12904 BLAKE2B f3f6bb06293efb2ab541e17d3051266a551c665f525a41d29733c8977d823dfded4e11fcac963d3302013795539f9774376c5c0f784d5e1ebbf3748cac698e8a SHA512 776abfb031174677a2a6bc36c82af074c2c38c5387af578ca6cd716f8d8a4ad8478a4ffce096dcf0ca18b30cb8231a5df2db35e7b7139efb65e06cb108b1d1fe
-EBUILD llvm-12.0.0.9999.ebuild 12718 BLAKE2B 496526527ec7cc5aea590e45a6d38800da60d446f54568a164465cc184e22e07653e745220d2271ef0d9cacdcad08404a5a5aee153086e6aa99e6022607b5087 SHA512 6091649ca4fc3864f5f3dfefc1fa5d74a539b314775d1da22c8505eafe22c40496b84919b0169de0c85e0fa2a954a98e46f09688c9d8855c3437a6ffd75e00d7
-EBUILD llvm-9.0.1.ebuild 8454 BLAKE2B 33b4c7bdf4bc136d29f3f6f505799b11de31d33e393b51c9bafb121b0b8b347e86a5954ba6ba039cd6b39cb7c1a501d4747f51652351559c42ba0b84c4bae54b SHA512 f43a600265c1559e924a6f2ec97dffdacfae35df2cc3e3e874704c5ae179ba48d90fdd666411cdab500d171fa63b557538282545c7c4078867857e077c941a4c
+EBUILD llvm-10.0.1.ebuild 11900 BLAKE2B 069cd18c06aeb6a52f32736bbfe8bd7f9af7050e16298b5653b1b02c326255c41385ab6047052adc2b4c4efd44ccd61ffd20dde8160f48265e1500280612b018 SHA512 576336d3cef1257bf7ae1577d47fd3dc354b9e9d174ff5c75c055f1c306f110fc42313e235caf008308699a66820d1e67de7da3776d40fec3a9e0337f94d0c1f
+EBUILD llvm-11.0.0.ebuild 12856 BLAKE2B 15e4f40259f637a12a67bff0ed1c76c9e80547304370f48a31c00abe73b74a65d34e63b606e43b91e3bae87ac45c0804128bfc1946899b3f1685f7e6cd6296e4 SHA512 4d0cb037ec5919f3a0a3b56e3c59b7e16a5d0c1284908a709cb08faf2cdbbed9c6fbd3d77e59103938614ec7471293043c6dbe80a842ea03ae5c02538dfac4b5
+EBUILD llvm-11.0.1.9999.ebuild 12575 BLAKE2B 12f9dbad338a4b0cd05c8fcddb5da262802da300aae463b2b2ab9f64f96c4cd0d37d4bc9ea69a9f00f71373d807f67e871456a7a069b1812d045c240674f1249 SHA512 a383cfb2901dcdebb49f5451e462168bd0c1991205d6d52d7cff950168ec7ac20bde2e3cc4cd8cdf8004dabcd8ff4fc7f4bb036409c62046279497aaa3074b5b
+EBUILD llvm-11.0.1_rc1.ebuild 12575 BLAKE2B 12f9dbad338a4b0cd05c8fcddb5da262802da300aae463b2b2ab9f64f96c4cd0d37d4bc9ea69a9f00f71373d807f67e871456a7a069b1812d045c240674f1249 SHA512 a383cfb2901dcdebb49f5451e462168bd0c1991205d6d52d7cff950168ec7ac20bde2e3cc4cd8cdf8004dabcd8ff4fc7f4bb036409c62046279497aaa3074b5b
+EBUILD llvm-12.0.0.9999.ebuild 12664 BLAKE2B e1a606a81a25bac625bf7847b779e79a27ccf7558b4e0438304146730609cf9f4150e7f585fa02805cac0d58b6dda7f748751413cd6165895be34d4884fe41c5 SHA512 e71e509e3dab84173da46e18ef19c172141b96b4824a12e46b2f70ea8016cd3c79aad2fec43e3978869cdb3c56307db1d0d1083ee889a86af488ebaef66d6339
+EBUILD llvm-9.0.1.ebuild 8399 BLAKE2B c296c1b0575c295bb14db4d3ac8fac06395e327cf95fda0c7e2263062de7eec6d6ea90cc264ac2b806ee2e6071fdc1c66c496502c2349d44b2364165258b6b7d SHA512 92c550916a048de53623aba4f7c2e32b6e6a35fde794116310f1a265e7e6124bfc8b48f27ae6830415802b5a2ffde222948f40c607d1ae5d96fecbf2d9c5591d
MISC metadata.xml 2563 BLAKE2B ca85030788fb213fc891d895238fd75562cdd25cc5fe4271d709cb1c00ef56b0e8b367dc70cc18f7d185d6fbdb57333e219a984220b60141d28fb4784b2cb94a SHA512 8de68ee7f964e6eb2613bd2ff584f834e0f5a3ae8b303b5f2f10fda718a87af9b8ddfc19399950fe4eb8be515930124ced8018190af0f69da7ec5fe8180a68a2
diff --git a/sys-devel/llvm/llvm-10.0.1.ebuild b/sys-devel/llvm/llvm-10.0.1.ebuild
index d81126a219bc..2c1968b03ad2 100644
--- a/sys-devel/llvm/llvm-10.0.1.ebuild
+++ b/sys-devel/llvm/llvm-10.0.1.ebuild
@@ -38,12 +38,7 @@ RESTRICT="!test? ( test )"
RDEPEND="
sys-libs/zlib:0=[${MULTILIB_USEDEP}]
exegesis? ( dev-libs/libpfm:= )
- gold? (
- || (
- >=sys-devel/binutils-2.31.1-r4:*[plugins]
- <sys-devel/binutils-2.31.1-r4:*[cxx]
- )
- )
+ gold? ( >=sys-devel/binutils-2.31.1-r4:*[plugins] )
libedit? ( dev-libs/libedit:0=[${MULTILIB_USEDEP}] )
libffi? ( >=dev-libs/libffi-3.0.13-r1:0=[${MULTILIB_USEDEP}] )
ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[${MULTILIB_USEDEP}] )
diff --git a/sys-devel/llvm/llvm-11.0.0.ebuild b/sys-devel/llvm/llvm-11.0.0.ebuild
index 1b22698435e6..332088bd5615 100644
--- a/sys-devel/llvm/llvm-11.0.0.ebuild
+++ b/sys-devel/llvm/llvm-11.0.0.ebuild
@@ -29,7 +29,7 @@ ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" )
LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA BSD public-domain rc"
SLOT="$(ver_cut 1)"
-KEYWORDS="amd64 arm arm64 ppc64 x86 ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos"
+KEYWORDS="amd64 arm arm64 ppc64 ~riscv x86 ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos"
IUSE="debug doc exegesis gold libedit +libffi ncurses test xar xml z3
kernel_Darwin ${ALL_LLVM_TARGETS[*]}"
REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )"
@@ -38,12 +38,7 @@ RESTRICT="!test? ( test )"
RDEPEND="
sys-libs/zlib:0=[${MULTILIB_USEDEP}]
exegesis? ( dev-libs/libpfm:= )
- gold? (
- || (
- >=sys-devel/binutils-2.31.1-r4:*[plugins]
- <sys-devel/binutils-2.31.1-r4:*[cxx]
- )
- )
+ gold? ( >=sys-devel/binutils-2.31.1-r4:*[plugins] )
libedit? ( dev-libs/libedit:0=[${MULTILIB_USEDEP}] )
libffi? ( >=dev-libs/libffi-3.0.13-r1:0=[${MULTILIB_USEDEP}] )
ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[${MULTILIB_USEDEP}] )
diff --git a/sys-devel/llvm/llvm-11.0.0.9999.ebuild b/sys-devel/llvm/llvm-11.0.1.9999.ebuild
index 8e4357a1098c..9c6edd92398f 100644
--- a/sys-devel/llvm/llvm-11.0.0.9999.ebuild
+++ b/sys-devel/llvm/llvm-11.0.1.9999.ebuild
@@ -9,9 +9,6 @@ inherit cmake llvm.org multilib-minimal pax-utils python-any-r1 \
DESCRIPTION="Low Level Virtual Machine"
HOMEPAGE="https://llvm.org/"
-LLVM_COMPONENTS=( llvm )
-LLVM_MANPAGES=build
-llvm.org_set_globals
# Those are in lib/Targets, without explicit CMakeLists.txt mention
ALL_LLVM_EXPERIMENTAL_TARGETS=( ARC VE )
@@ -38,12 +35,7 @@ RESTRICT="!test? ( test )"
RDEPEND="
sys-libs/zlib:0=[${MULTILIB_USEDEP}]
exegesis? ( dev-libs/libpfm:= )
- gold? (
- || (
- >=sys-devel/binutils-2.31.1-r4:*[plugins]
- <sys-devel/binutils-2.31.1-r4:*[cxx]
- )
- )
+ gold? ( >=sys-devel/binutils-2.31.1-r4:*[plugins] )
libedit? ( dev-libs/libedit:0=[${MULTILIB_USEDEP}] )
libffi? ( >=dev-libs/libffi-3.0.13-r1:0=[${MULTILIB_USEDEP}] )
ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[${MULTILIB_USEDEP}] )
@@ -73,6 +65,10 @@ RDEPEND="${RDEPEND}
PDEPEND="sys-devel/llvm-common
gold? ( >=sys-devel/llvmgold-${SLOT} )"
+LLVM_COMPONENTS=( llvm )
+LLVM_MANPAGES=build
+llvm.org_set_globals
+
python_check_deps() {
use doc || return 0
diff --git a/sys-devel/llvm/llvm-10.0.0.ebuild b/sys-devel/llvm/llvm-11.0.1_rc1.ebuild
index 5abee337a223..9c6edd92398f 100644
--- a/sys-devel/llvm/llvm-10.0.0.ebuild
+++ b/sys-devel/llvm/llvm-11.0.1_rc1.ebuild
@@ -3,22 +3,17 @@
EAPI=7
-PYTHON_COMPAT=( python3_{6,7,8} )
-inherit cmake-utils llvm.org multilib-minimal multiprocessing \
- pax-utils python-any-r1 toolchain-funcs
+PYTHON_COMPAT=( python3_{6..9} )
+inherit cmake llvm.org multilib-minimal pax-utils python-any-r1 \
+ toolchain-funcs
-MANPAGE_P=llvm-10.0.0-manpages
DESCRIPTION="Low Level Virtual Machine"
HOMEPAGE="https://llvm.org/"
-SRC_URI="
- !doc? ( https://dev.gentoo.org/~mgorny/dist/llvm/${MANPAGE_P}.tar.bz2 )"
-LLVM_COMPONENTS=( llvm )
-llvm.org_set_globals
# Those are in lib/Targets, without explicit CMakeLists.txt mention
-ALL_LLVM_EXPERIMENTAL_TARGETS=( ARC AVR )
+ALL_LLVM_EXPERIMENTAL_TARGETS=( ARC VE )
# Keep in sync with CMakeLists.txt
-ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM BPF Hexagon Lanai Mips MSP430
+ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM AVR BPF Hexagon Lanai Mips MSP430
NVPTX PowerPC RISCV Sparc SystemZ WebAssembly X86 XCore
"${ALL_LLVM_EXPERIMENTAL_TARGETS[@]}" )
ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" )
@@ -31,7 +26,7 @@ ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" )
LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA BSD public-domain rc"
SLOT="$(ver_cut 1)"
-KEYWORDS="amd64 arm arm64 ppc64 x86 ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos"
+KEYWORDS=""
IUSE="debug doc exegesis gold libedit +libffi ncurses test xar xml z3
kernel_Darwin ${ALL_LLVM_TARGETS[*]}"
REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )"
@@ -40,12 +35,7 @@ RESTRICT="!test? ( test )"
RDEPEND="
sys-libs/zlib:0=[${MULTILIB_USEDEP}]
exegesis? ( dev-libs/libpfm:= )
- gold? (
- || (
- >=sys-devel/binutils-2.31.1-r4:*[plugins]
- <sys-devel/binutils-2.31.1-r4:*[cxx]
- )
- )
+ gold? ( >=sys-devel/binutils-2.31.1-r4:*[plugins] )
libedit? ( dev-libs/libedit:0=[${MULTILIB_USEDEP}] )
libffi? ( >=dev-libs/libffi-3.0.13-r1:0=[${MULTILIB_USEDEP}] )
ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[${MULTILIB_USEDEP}] )
@@ -56,6 +46,7 @@ DEPEND="${RDEPEND}
gold? ( sys-libs/binutils-libs )"
BDEPEND="
dev-lang/perl
+ >=dev-util/cmake-3.16
sys-devel/gnuconfig
kernel_Darwin? (
<sys-libs/libcxx-$(ver_cut 1-3).9999
@@ -74,8 +65,9 @@ RDEPEND="${RDEPEND}
PDEPEND="sys-devel/llvm-common
gold? ( >=sys-devel/llvmgold-${SLOT} )"
-# least intrusive of all
-CMAKE_BUILD_TYPE=RelWithDebInfo
+LLVM_COMPONENTS=( llvm )
+LLVM_MANPAGES=build
+llvm.org_set_globals
python_check_deps() {
use doc || return 0
@@ -84,13 +76,95 @@ python_check_deps() {
has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]"
}
-src_unpack() {
- llvm.org_src_unpack
+check_live_ebuild() {
+ local prod_targets=(
+ $(sed -n -e '/set(LLVM_ALL_TARGETS/,/)/p' CMakeLists.txt \
+ | tail -n +2 | head -n -1)
+ )
+ local all_targets=(
+ lib/Target/*/
+ )
+ all_targets=( "${all_targets[@]#lib/Target/}" )
+ all_targets=( "${all_targets[@]%/}" )
+
+ local exp_targets=() i
+ for i in "${all_targets[@]}"; do
+ has "${i}" "${prod_targets[@]}" || exp_targets+=( "${i}" )
+ done
+ # reorder
+ all_targets=( "${prod_targets[@]}" "${exp_targets[@]}" )
+
+ if [[ ${exp_targets[*]} != ${ALL_LLVM_EXPERIMENTAL_TARGETS[*]} ]]; then
+ eqawarn "ALL_LLVM_EXPERIMENTAL_TARGETS is outdated!"
+ eqawarn " Have: ${ALL_LLVM_EXPERIMENTAL_TARGETS[*]}"
+ eqawarn "Expected: ${exp_targets[*]}"
+ eqawarn
+ fi
- if ! use doc; then
- ebegin "Unpacking ${MANPAGE_P}.tar.bz2"
- tar -xf "${DISTDIR}/${MANPAGE_P}.tar.bz2" || die
- eend ${?}
+ if [[ ${all_targets[*]} != ${ALL_LLVM_TARGETS[*]#llvm_targets_} ]]; then
+ eqawarn "ALL_LLVM_TARGETS is outdated!"
+ eqawarn " Have: ${ALL_LLVM_TARGETS[*]#llvm_targets_}"
+ eqawarn "Expected: ${all_targets[*]}"
+ fi
+}
+
+check_distribution_components() {
+ if [[ ${CMAKE_MAKEFILE_GENERATOR} == ninja ]]; then
+ local all_targets=() my_targets=() l
+ cd "${BUILD_DIR}" || die
+
+ while read -r l; do
+ if [[ ${l} == install-*-stripped:* ]]; then
+ l=${l#install-}
+ l=${l%%-stripped*}
+
+ case ${l} in
+ # shared libs
+ LLVM|LLVMgold)
+ ;;
+ # TableGen lib + deps
+ LLVMDemangle|LLVMSupport|LLVMTableGen)
+ ;;
+ # static libs
+ LLVM*)
+ continue
+ ;;
+ # meta-targets
+ distribution|llvm-libraries)
+ continue
+ ;;
+ # used only w/ USE=doc
+ docs-llvm-html)
+ use doc || continue
+ ;;
+ esac
+
+ all_targets+=( "${l}" )
+ fi
+ done < <(ninja -t targets all)
+
+ while read -r l; do
+ my_targets+=( "${l}" )
+ done < <(get_distribution_components $"\n")
+
+ local add=() remove=()
+ for l in "${all_targets[@]}"; do
+ if ! has "${l}" "${my_targets[@]}"; then
+ add+=( "${l}" )
+ fi
+ done
+ for l in "${my_targets[@]}"; do
+ if ! has "${l}" "${all_targets[@]}"; then
+ remove+=( "${l}" )
+ fi
+ done
+
+ if [[ ${#add[@]} -gt 0 || ${#remove[@]} -gt 0 ]]; then
+ eqawarn "get_distribution_components() is outdated!"
+ eqawarn " Add: ${add[*]}"
+ eqawarn "Remove: ${remove[*]}"
+ fi
+ cd - >/dev/null || die
fi
}
@@ -105,8 +179,10 @@ src_prepare() {
# Update config.guess to support more systems
cp "${BROOT}/usr/share/gnuconfig/config.guess" cmake/ || die
- # User patches + QA
- cmake-utils_src_prepare
+ # Verify that the live ebuild is up-to-date
+ check_live_ebuild
+
+ llvm.org_src_prepare
}
# Is LLVM being linked against libc++?
@@ -180,6 +256,7 @@ get_distribution_components() {
llvm-elfabi
llvm-exegesis
llvm-extract
+ llvm-gsymutil
llvm-ifs
llvm-install-name-tool
llvm-jitlink
@@ -190,6 +267,7 @@ get_distribution_components() {
llvm-lto2
llvm-mc
llvm-mca
+ llvm-ml
llvm-modextract
llvm-mt
llvm-nm
@@ -223,10 +301,15 @@ get_distribution_components() {
opt-viewer
)
+ if llvm_are_manpages_built; then
+ out+=(
+ # manpages
+ docs-dsymutil-man
+ docs-llvm-dwarfdump-man
+ docs-llvm-man
+ )
+ fi
use doc && out+=(
- docs-dsymutil-man
- docs-llvm-dwarfdump-man
- docs-llvm-man
docs-llvm-html
)
@@ -281,6 +364,8 @@ multilib_src_configure() {
# used only for llvm-objdump tool
-DHAVE_LIBXAR=$(multilib_native_usex xar 1 0)
+ -DPython3_EXECUTABLE="${PYTHON}"
+
# disable OCaml bindings (now in dev-ml/llvm-ocaml)
-DOCAMLFIND=NO
)
@@ -303,22 +388,27 @@ multilib_src_configure() {
# fi
use test && mycmakeargs+=(
- -DLLVM_LIT_ARGS="-vv;-j;${LIT_JOBS:-$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")}"
+ -DLLVM_LIT_ARGS="$(get_lit_flags)"
)
if multilib_is_native_abi; then
+ local build_docs=OFF
+ if llvm_are_manpages_built; then
+ build_docs=ON
+ 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
+ )
+ fi
+
mycmakeargs+=(
- -DLLVM_BUILD_DOCS=$(usex doc)
+ -DLLVM_BUILD_DOCS=${build_docs}
-DLLVM_ENABLE_OCAMLDOC=OFF
- -DLLVM_ENABLE_SPHINX=$(usex doc)
+ -DLLVM_ENABLE_SPHINX=${build_docs}
-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
)
@@ -350,11 +440,13 @@ multilib_src_configure() {
# LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
- cmake-utils_src_configure
+ cmake_src_configure
+
+ multilib_is_native_abi && check_distribution_components
}
multilib_src_compile() {
- cmake-utils_src_compile
+ cmake_build distribution
pax-mark m "${BUILD_DIR}"/bin/llvm-rtdyld
pax-mark m "${BUILD_DIR}"/bin/lli
@@ -370,7 +462,7 @@ multilib_src_compile() {
multilib_src_test() {
# respect TMPDIR!
local -x LIT_PRESERVES_TMP=1
- cmake-utils_src_make check
+ cmake_build check
}
src_install() {
@@ -390,7 +482,7 @@ src_install() {
}
multilib_src_install() {
- DESTDIR=${D} cmake-utils_src_make install-distribution
+ DESTDIR=${D} cmake_build install-distribution
# move headers to /usr/include for wrapping
rm -rf "${ED}"/usr/include || die
@@ -409,14 +501,8 @@ multilib_src_install_all() {
LDPATH="$( IFS=:; echo "${LLVM_LDPATHS[*]}" )"
_EOF_
- # install pre-generated manpages
- if ! use doc; then
- # (doman does not support custom paths)
- insinto "/usr/lib/llvm/${SLOT}/share/man/man1"
- doins "${WORKDIR}/${MANPAGE_P}/llvm"/*.1
- fi
-
docompress "/usr/lib/llvm/${SLOT}/share/man"
+ llvm_install_manpages
}
pkg_postinst() {
diff --git a/sys-devel/llvm/llvm-12.0.0.9999.ebuild b/sys-devel/llvm/llvm-12.0.0.9999.ebuild
index a1a53f9e1e26..610b92aa0fb2 100644
--- a/sys-devel/llvm/llvm-12.0.0.9999.ebuild
+++ b/sys-devel/llvm/llvm-12.0.0.9999.ebuild
@@ -9,9 +9,6 @@ inherit cmake llvm.org multilib-minimal pax-utils python-any-r1 \
DESCRIPTION="Low Level Virtual Machine"
HOMEPAGE="https://llvm.org/"
-LLVM_COMPONENTS=( llvm )
-LLVM_MANPAGES=build
-llvm.org_set_globals
# Those are in lib/Targets, without explicit CMakeLists.txt mention
ALL_LLVM_EXPERIMENTAL_TARGETS=( ARC CSKY VE )
@@ -38,12 +35,7 @@ RESTRICT="!test? ( test )"
RDEPEND="
sys-libs/zlib:0=[${MULTILIB_USEDEP}]
exegesis? ( dev-libs/libpfm:= )
- gold? (
- || (
- >=sys-devel/binutils-2.31.1-r4:*[plugins]
- <sys-devel/binutils-2.31.1-r4:*[cxx]
- )
- )
+ gold? ( >=sys-devel/binutils-2.31.1-r4:*[plugins] )
libedit? ( dev-libs/libedit:0=[${MULTILIB_USEDEP}] )
libffi? ( >=dev-libs/libffi-3.0.13-r1:0=[${MULTILIB_USEDEP}] )
ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[${MULTILIB_USEDEP}] )
@@ -73,6 +65,10 @@ RDEPEND="${RDEPEND}
PDEPEND="sys-devel/llvm-common
gold? ( >=sys-devel/llvmgold-${SLOT} )"
+LLVM_COMPONENTS=( llvm )
+LLVM_MANPAGES=build
+llvm.org_set_globals
+
python_check_deps() {
use doc || return 0
diff --git a/sys-devel/llvm/llvm-9.0.1.ebuild b/sys-devel/llvm/llvm-9.0.1.ebuild
index 2f2553d82fba..6f532c4a5308 100644
--- a/sys-devel/llvm/llvm-9.0.1.ebuild
+++ b/sys-devel/llvm/llvm-9.0.1.ebuild
@@ -38,12 +38,7 @@ RESTRICT="!test? ( test )"
RDEPEND="
sys-libs/zlib:0=[${MULTILIB_USEDEP}]
exegesis? ( dev-libs/libpfm:= )
- gold? (
- || (
- >=sys-devel/binutils-2.31.1-r4:*[plugins]
- <sys-devel/binutils-2.31.1-r4:*[cxx]
- )
- )
+ gold? ( >=sys-devel/binutils-2.31.1-r4:*[plugins] )
libedit? ( dev-libs/libedit:0=[${MULTILIB_USEDEP}] )
libffi? ( >=dev-libs/libffi-3.0.13-r1:0=[${MULTILIB_USEDEP}] )
ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[${MULTILIB_USEDEP}] )