diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2021-08-31 08:59:54 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2021-08-31 08:59:54 +0100 |
commit | 3b08f674e3f771b49370edb144dab0958c8cf721 (patch) | |
tree | 3673eb62859b2343bc70589f2f9d670c2eee5cc8 /sys-devel | |
parent | b1c81de4fadbd00897700a7321f03b390d952b2e (diff) |
gentoo resync : 31.08.2021
Diffstat (limited to 'sys-devel')
27 files changed, 1335 insertions, 86 deletions
diff --git a/sys-devel/Manifest.gz b/sys-devel/Manifest.gz Binary files differindex c5df42e0dd34..fa9c65d64749 100644 --- a/sys-devel/Manifest.gz +++ b/sys-devel/Manifest.gz diff --git a/sys-devel/bmake/Manifest b/sys-devel/bmake/Manifest index 5f1b7c13bd22..3cb9b163b63a 100644 --- a/sys-devel/bmake/Manifest +++ b/sys-devel/bmake/Manifest @@ -1,10 +1,8 @@ AUX bmake-20210206-tests.patch 467 BLAKE2B 7c66cfbb610f2ea9615a737dd2d97fbea359ecb0e5b5c746447b9a0e9d2dff188f6f0d45225dd07d1226a86297f0c9ba8b8be7587039f2cc7ceaab4bde61f570 SHA512 3d855d54b64e2871ad8ccd494939c92a6bca2bec61f186e907a9b6b8b4f51b4ff63fcacbb8b6d44cef33a39c6ba2bed6c1fdd30d7ad65ad03d1d659781c420fe AUX bmake-20210314-mk-fixes.patch 2054 BLAKE2B 404e99593f04408e3f62d8c6118fc1676ef414b4cc18f5ec8b089182fad8865ad79e40c236e58b084f3194bdcc94c92e1e10e40efbddc142b84053117065e202 SHA512 8c9e823dd158e352021f0905e2a15cb8d7da3020c49a8f824cc5dbd8f33910fc64629d5f400fd8651a16b07e0685a1247a661fd9230a62b7330bd5fc71427dd4 -DIST bmake-20210420.tar.gz 755281 BLAKE2B fe98dc5d0c5a11aecf45b160cfe5b69ef49e56a973823e84ec1f607023aa94d66cd87bc3f31fc340dc86eae0a6e87ca2a71b8367f3e9bb1a9eae8626d13a80ea SHA512 3bb603965c149e4f6bee4afff9710921e943bd1faaf5d142418a5f7a0752416e094b6a0f0dfc998bf6bedc391f668162856a51167e34b6f2ad2a0a498c96ed35 DIST bmake-20210704.tar.gz 759047 BLAKE2B 4c21941c45c826e1758c64bc60532cff3b9a727cc18658b019ce55382aad8c668a5ef9039df695629f81a334969f1a5aaf08d5924aa20576474a528fe8dbcb15 SHA512 b21d89753b659a70d6f5d70aa41cc2b5f5ded5a5a4a227064c938db42282d7684df9389fa1db532c2e0de11d5be1e66698388f1e1e6966153ec56330af688674 DIST bmake-20210808.tar.gz 765029 BLAKE2B 27ff99395e7cdc00a118ebfb5b043180ffbd9d5385b008c49baae8bf953e45e277aeb133d736bd282c1ffc08bd7c3b87b4dc23d0b188a86469116e1d94ed2409 SHA512 d0afb9b6a50858c330cccf57a8f8b35ddf1ea1faefc2110237e30262b35eb69c1a4918e48acc2ed3deed8b11bf87b80429d71c46366c81ceb7427a79a3e58089 DIST mk-20210330.tar.gz 107380 BLAKE2B 9ac30a117d9ba31635cf8d8d29fdba76f148611f47628403ca8f807081c32509f10498d3c30fd24985e5420af4710fe59fc6315d71f2d0c1cfed93263a06553a SHA512 6acd3ee911442934082f4f877d795b07c5e23022eaa9c0874799d97e92a2f5a663cb45f94b7f9745c49cbbce6b7e755a29e381ccfb9e68a0be1eedbd22fd5d3b -EBUILD bmake-20210420.ebuild 1265 BLAKE2B 085219c02d197e22d6afad2f68cc030cf25bb0d846cffa21a931f1f123a8319c858fc4fe1f3def677cf75684efc891d0e2394a79f675723ef78413b52cae2b44 SHA512 d900abeb3ca40e87e6fa2daeb270e7a4641c68f2be0dfd78c15d6b649401cdd7b7f473c368bc48167654af86b5c3db1c2c17ef35f235e8a491ee4d283a6b3aea -EBUILD bmake-20210704.ebuild 1266 BLAKE2B a5942f2e09caac94b265833f06d341cf4c15856cd81dcb44e606250ffbd13b8ed541ccc11a953fdf5762da59c151667a5755fa2436415d6bc09e2498b89c63ca SHA512 e2afff68379224b51a8274901f00a18e7f230d95ee63488d936ddaa1f419331f16f7f379266d27f6408f4b1bd743d867ddf5706653ea196bbe76ac9fe5dbfd10 +EBUILD bmake-20210704.ebuild 1265 BLAKE2B 9e38d36c77052e8829a8e75a36178a705218f910f0b588ca1f459de6f1a3e1f0445894ab7a34da2723e1caf14494b8a1fef663395b657e0dc492ec38aff94f4d SHA512 f7d935f6c5b449c52c67b0f2cf61d7e6eeba38d4d24f7934f46023cf2fcc136d06c1f4443d51340723b32b00bc7314f0af99dbe342edc515f74e489ee3da0e3c EBUILD bmake-20210808.ebuild 1266 BLAKE2B a5942f2e09caac94b265833f06d341cf4c15856cd81dcb44e606250ffbd13b8ed541ccc11a953fdf5762da59c151667a5755fa2436415d6bc09e2498b89c63ca SHA512 e2afff68379224b51a8274901f00a18e7f230d95ee63488d936ddaa1f419331f16f7f379266d27f6408f4b1bd743d867ddf5706653ea196bbe76ac9fe5dbfd10 -MISC metadata.xml 356 BLAKE2B c8acffcd095f37e19987d6d116df6654453aab320818262c98e1ccec0871084adb919e408599eb6b4460544c2ec8660abe1e0add7a858d41dc48492f78d1c53d SHA512 c63247454ecc0add57dc73ae2e16421dab39ad199d592c459366b567f3ef3f63c706cb66ac3bdadfafe8a995216e35dc3f90f22ad45a7c078b302b48116f4645 +MISC metadata.xml 352 BLAKE2B 31dd20628c2efcc8d16c6e63a622f6a003e78e2db6b9a226de18a0f5723296835fd008ca0fc305ca1f5372c0629bb0954ef665e1d51143731c7024f0b45e6a7c SHA512 ae2b797f8672b1bfe2a829ff15877a61f2a957cd519b90ffdd7047eb57256ea34ddec426dd50e60d1757eee443cb75031f3b12cc4f2430b403e697aa4c64fa58 diff --git a/sys-devel/bmake/bmake-20210420.ebuild b/sys-devel/bmake/bmake-20210420.ebuild deleted file mode 100644 index d0820d8040e3..000000000000 --- a/sys-devel/bmake/bmake-20210420.ebuild +++ /dev/null @@ -1,55 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -MK_VER=20210330 - -DESCRIPTION="NetBSD's portable make" -HOMEPAGE="http://www.crufty.net/help/sjg/bmake.html" -SRC_URI=" - http://void.crufty.net/ftp/pub/sjg/${P}.tar.gz - http://void.crufty.net/ftp/pub/sjg/mk-${MK_VER}.tar.gz" -S="${WORKDIR}/${PN}" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 ~ppc ~x86" - -# Skip failing test (sandbox and csh) -PATCHES=( "${FILESDIR}"/${PN}-20210206-tests.patch ) - -src_prepare() { - default - cd "${WORKDIR}" || die - eapply "${FILESDIR}"/${PN}-20210314-mk-fixes.patch -} - -src_configure() { - econf \ - --with-mksrc=../mk \ - --with-default-sys-path="${EPREFIX}"/usr/share/mk/${PN} \ - --with-machine_arch=${ARCH} -} - -src_compile() { - sh make-bootstrap.sh || die "bootstrap failed" -} - -src_test() { - cd unit-tests || die - - # the 'ternary' test uses ${A} internally, which - # conflicts with Gentoo's ${A}, hence unset it for - # the tests temporarily. - env -u A MAKEFLAGS= \ - "${S}"/bmake -r -m / TEST_MAKE="${S}"/bmake test || die "tests compilation failed" -} - -src_install() { - dobin ${PN} - doman ${PN}.1 - FORCE_BSD_MK=1 SYS_MK_DIR=. \ - sh ../mk/install-mk -v -m 644 "${ED}"/usr/share/mk/${PN} \ - || die "failed to install mk files" -} diff --git a/sys-devel/bmake/bmake-20210704.ebuild b/sys-devel/bmake/bmake-20210704.ebuild index 5d5f15630855..f3e4c0d04f65 100644 --- a/sys-devel/bmake/bmake-20210704.ebuild +++ b/sys-devel/bmake/bmake-20210704.ebuild @@ -14,7 +14,7 @@ S="${WORKDIR}/${PN}" LICENSE="BSD" SLOT="0" -KEYWORDS="~amd64 ~ppc ~x86" +KEYWORDS="amd64 ~ppc ~x86" # Skip failing test (sandbox and csh) PATCHES=( "${FILESDIR}"/${PN}-20210206-tests.patch ) diff --git a/sys-devel/bmake/metadata.xml b/sys-devel/bmake/metadata.xml index 97c59ff25556..ee2c64618d56 100644 --- a/sys-devel/bmake/metadata.xml +++ b/sys-devel/bmake/metadata.xml @@ -2,8 +2,8 @@ <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> <maintainer type="person"> - <email>jakov.smolic@sartura.hr</email> - <name>Jakov Smolic</name> + <email>jsmolic@gentoo.org</email> + <name>Jakov Smolić</name> </maintainer> <maintainer type="person"> <email>soap@gentoo.org</email> diff --git a/sys-devel/clang-common/Manifest b/sys-devel/clang-common/Manifest index b151ce1e7817..e83c6347eba3 100644 --- a/sys-devel/clang-common/Manifest +++ b/sys-devel/clang-common/Manifest @@ -3,11 +3,13 @@ DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45c DIST llvmorg-12.0.0.tar.gz 134226215 BLAKE2B f9c3ba8c58571855caa4f206fd285c9b5be66672fb0814cb8bc0964a051f57f5d35013aa1e27cbda502652b37df1ec23474129109e76a42066847860db441dbe SHA512 0cff02155c5ac0d6db2b72d60d9819d5b5dd859663b45f721b1c7540239c2fceb1f57d9173f6870c49de851c242ed8e85c5c6d6577a1f8092a7c5dcd12513b26 DIST llvmorg-12.0.1.tar.gz 134259748 BLAKE2B f41de787bc73ff2edfda1b22cc8602be6f65f37dd9e4c8888533cfa8c3ccdcf4f108aaab9de23ab0ab987966eb160f2a553a0bdff99461e71ddd5bfcd086090d SHA512 6eb0dc18e2c25935fabfdfc48b0114be0939158dfdef7b85b395fe2e71042672446af0e68750aae003c9847d10d1f63316fe95d3df738d18f249174292b1b9e1 DIST llvmorg-13.0.0-rc1.tar.gz 147235597 BLAKE2B 089fed119dee8a16f278cebb13808bd5a95629cc87ebee3050225cc041b78fee51acacc5bcc913d4a99e830bfe5774b19a04a845293c5087dd2a8c9d94d2fde9 SHA512 6e307e2c2dcb7ff41d11ee29d69f41c0ef55f200999847a3a924a2e773fc9c2160015746789af8b723c628bd232f97fce63370209bd0065491d80b0cc0017e85 +DIST llvmorg-13.0.0-rc2.tar.gz 147267736 BLAKE2B 153bf7320f2aa911112d366ffc79f7110cb04f135c2a8b176c263f0a75eb768206d9bd462893d45504b0e58aa9e127fdcafb02300eab1666e4616aa654d457dd SHA512 a01baf3eaa02f02af42bfcf6dcf24f166351bf1c09601495617c81e41def23210573bad40a344270f40c5deb881d06863536abac2a6481930766a6a56335fb44 EBUILD clang-common-10.0.1.ebuild 573 BLAKE2B a2e0ed9b70b470ade3c22d56ea097befd935702369dcb21b367f3baa95635e1edea1f62760ffe3b678a72410b8b20091167bc5c38d75350004f52b24d7497cae SHA512 da407fe94951d7b6edfe8a237d761bda0114a8e34fd3fe59933c4605851b6a414f9278204e6b7f83d3f6ac9334f80660a7733484b64291ad58c84364015585a4 EBUILD clang-common-11.1.0.ebuild 581 BLAKE2B 3e7e2e6c0b0a7f177aaf610a7be4bebb6eb23aec0f4677263555a37c57eb6547d94078465939f9062b562f0b5cc59bda22b2e293e0b2f7907f66dd76c95fe554 SHA512 1ce397f6029bc8ee03c8d0aac13e14b7faf77cc446ab390f1435c8c028364620e565e73cb5e97bb6c0093e0a20c34e8a4ceab9591707687567520c0192264bea EBUILD clang-common-12.0.0.ebuild 594 BLAKE2B 24422b771d72ca53dec018f281f05701f0b39a60e81168f60dbe36545e520f1e974eaa3b2d65d513fd5207f01acd63a90777b50509953ba2d21e38d8c4d025dc SHA512 07ded270729f30ec981a54b729f451c8c2dcc3d94ea60cd37556f54a8f4e78e9aa0daf3c377dda7de8d8d9c1277e0c33c5576e89f6a239750b87d52139578f2b EBUILD clang-common-12.0.1.ebuild 597 BLAKE2B d72fc72d52a30928d2d4fed8ba35e2ae726107d5727d4c383f303a313d298dc2de8706c94d49772892b171db1686db792ffb229d70ab408f0bceca57e64df121 SHA512 6a8b05bc4bf181da5aab6a1bfeff17755a01889305aff856f9f7a2b3c8cf607b463df1081ee4251181296827a1c80369064dabd1be38b5522fa9af7998bad9f2 EBUILD clang-common-13.0.0.9999.ebuild 514 BLAKE2B 7b27ed67c1ec7fdaee393ebe4685597f1a982232ca452e4ecb54f5e6078ea44bd2c8a56d061bace32bfc81e7506edd3f12aa6e54bad4d9f80a8bad4165cbe6f8 SHA512 302824c98bc818f78992db66c1e3bc3881fd9466fef0b14ce165e13575a0b4643b7f868b4d8914f5ac40bddd6963f17f15b2f9488667882238dd4a10c2d0c2bb EBUILD clang-common-13.0.0_rc1.ebuild 514 BLAKE2B 7b27ed67c1ec7fdaee393ebe4685597f1a982232ca452e4ecb54f5e6078ea44bd2c8a56d061bace32bfc81e7506edd3f12aa6e54bad4d9f80a8bad4165cbe6f8 SHA512 302824c98bc818f78992db66c1e3bc3881fd9466fef0b14ce165e13575a0b4643b7f868b4d8914f5ac40bddd6963f17f15b2f9488667882238dd4a10c2d0c2bb +EBUILD clang-common-13.0.0_rc2.ebuild 514 BLAKE2B 7b27ed67c1ec7fdaee393ebe4685597f1a982232ca452e4ecb54f5e6078ea44bd2c8a56d061bace32bfc81e7506edd3f12aa6e54bad4d9f80a8bad4165cbe6f8 SHA512 302824c98bc818f78992db66c1e3bc3881fd9466fef0b14ce165e13575a0b4643b7f868b4d8914f5ac40bddd6963f17f15b2f9488667882238dd4a10c2d0c2bb EBUILD clang-common-14.0.0.9999.ebuild 514 BLAKE2B 7b27ed67c1ec7fdaee393ebe4685597f1a982232ca452e4ecb54f5e6078ea44bd2c8a56d061bace32bfc81e7506edd3f12aa6e54bad4d9f80a8bad4165cbe6f8 SHA512 302824c98bc818f78992db66c1e3bc3881fd9466fef0b14ce165e13575a0b4643b7f868b4d8914f5ac40bddd6963f17f15b2f9488667882238dd4a10c2d0c2bb MISC metadata.xml 216 BLAKE2B fe5e49887842aa513fbf1f2e09bed09a884d531fd21bdaeb2d389e8bf590b6c0e7063f0af98f66e2db129308ab0f0804ba327c3c752bbb4c900c59ac109d99aa SHA512 3485598147c953e72e1785693a489a7e7d73d59620b76054db9c0ce95d8bfa0e8ffec29da7f7a9d73a32e5b77eac07ca3306c56a972dc57fd89d477edaebf3d5 diff --git a/sys-devel/clang-common/clang-common-13.0.0_rc2.ebuild b/sys-devel/clang-common/clang-common-13.0.0_rc2.ebuild new file mode 100644 index 000000000000..03e4441b91b9 --- /dev/null +++ b/sys-devel/clang-common/clang-common-13.0.0_rc2.ebuild @@ -0,0 +1,24 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit bash-completion-r1 llvm.org + +DESCRIPTION="Common files shared between multiple slots of clang" +HOMEPAGE="https://llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" +SLOT="0" +KEYWORDS="" +IUSE="" + +PDEPEND="sys-devel/clang:*" + +LLVM_COMPONENTS=( clang/utils/bash-autocomplete.sh ) +llvm.org_set_globals +S=${WORKDIR}/clang/utils + +src_install() { + newbashcomp bash-autocomplete.sh clang +} diff --git a/sys-devel/clang-runtime/Manifest b/sys-devel/clang-runtime/Manifest index 268a70b1887d..aea2fcc0ffd2 100644 --- a/sys-devel/clang-runtime/Manifest +++ b/sys-devel/clang-runtime/Manifest @@ -4,5 +4,6 @@ EBUILD clang-runtime-12.0.0.ebuild 705 BLAKE2B e78f47523b471645662518919b515067f EBUILD clang-runtime-12.0.1.ebuild 708 BLAKE2B 8157a8f46b6ce5228d6adf84bb4beebab9e25e79be59540b6f46275c695c2ecbf8f4fa571c5ab02b422c289540cc7fe0e19ee3c62789dea041da613193278f6e SHA512 0484ec1a4331b33d1931c6bf4082a345e45ed5df04c05813d6e56434cd3e2c5d4df6ece7e3e494aeb111a9788607ec53a4b91157e32a1676ad12911526ff126e EBUILD clang-runtime-13.0.0.9999.ebuild 643 BLAKE2B 350729e0dfcd606089836e7d8f40e6f080a2dcc9553e9283df027c39ab041f93584162a9d299f5a2fea49c448019c9d19d0df6f1fd40d53b51324a0ad7495020 SHA512 c383b8976ca5e5b5a0a8f724854c019e1f6800d8b47594a2f9203c6b9c0831675a862218acfcaa93267f114a5904ca7041e281b746f9f1fbaeddfbfc08235c4f EBUILD clang-runtime-13.0.0_rc1.ebuild 643 BLAKE2B 350729e0dfcd606089836e7d8f40e6f080a2dcc9553e9283df027c39ab041f93584162a9d299f5a2fea49c448019c9d19d0df6f1fd40d53b51324a0ad7495020 SHA512 c383b8976ca5e5b5a0a8f724854c019e1f6800d8b47594a2f9203c6b9c0831675a862218acfcaa93267f114a5904ca7041e281b746f9f1fbaeddfbfc08235c4f +EBUILD clang-runtime-13.0.0_rc2.ebuild 643 BLAKE2B 350729e0dfcd606089836e7d8f40e6f080a2dcc9553e9283df027c39ab041f93584162a9d299f5a2fea49c448019c9d19d0df6f1fd40d53b51324a0ad7495020 SHA512 c383b8976ca5e5b5a0a8f724854c019e1f6800d8b47594a2f9203c6b9c0831675a862218acfcaa93267f114a5904ca7041e281b746f9f1fbaeddfbfc08235c4f EBUILD clang-runtime-14.0.0.9999.ebuild 643 BLAKE2B 350729e0dfcd606089836e7d8f40e6f080a2dcc9553e9283df027c39ab041f93584162a9d299f5a2fea49c448019c9d19d0df6f1fd40d53b51324a0ad7495020 SHA512 c383b8976ca5e5b5a0a8f724854c019e1f6800d8b47594a2f9203c6b9c0831675a862218acfcaa93267f114a5904ca7041e281b746f9f1fbaeddfbfc08235c4f MISC metadata.xml 578 BLAKE2B d58a4d1a7bf88a0d5640a02f3acb7e491f275b3bb66a8583aa057b8daae93bb1dbb80f6150bc326228c6ab8c8f8498b46bf72a3fb5e97d0eeea2fb39f87660e3 SHA512 822f56b33d991088ad5e51c3dd96e2e36f544b68c57e45ed8365835d1ef6d0eb797f9de1f8f33b59fbbaf085e245079ca767d5e8b773261cf9ad2c5629b7b16a diff --git a/sys-devel/clang-runtime/clang-runtime-13.0.0_rc2.ebuild b/sys-devel/clang-runtime/clang-runtime-13.0.0_rc2.ebuild new file mode 100644 index 000000000000..218cdb1426f6 --- /dev/null +++ b/sys-devel/clang-runtime/clang-runtime-13.0.0_rc2.ebuild @@ -0,0 +1,25 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit multilib-build + +DESCRIPTION="Meta-ebuild for clang runtime libraries" +HOMEPAGE="https://clang.llvm.org/" +SRC_URI="" + +LICENSE="metapackage" +SLOT="$(ver_cut 1-3)" +KEYWORDS="" +IUSE="+compiler-rt libcxx openmp +sanitize" +REQUIRED_USE="sanitize? ( compiler-rt )" +PROPERTIES="live" + +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}] )" diff --git a/sys-devel/clang/Manifest b/sys-devel/clang/Manifest index da4b47969deb..3817abdc0f9b 100644 --- a/sys-devel/clang/Manifest +++ b/sys-devel/clang/Manifest @@ -6,17 +6,20 @@ DIST llvm-gentoo-patchset-10.0.1-1.tar.xz 8320 BLAKE2B 1b7ea7669586e08fece0efcf0 DIST llvm-gentoo-patchset-11.1.0-1.tar.xz 4032 BLAKE2B e69138a422e315b31a3d9c11faa4ae1ddf1bf9092cee2db0de4d2adef81fd802973488293aab48b764402b51996893b17ca03249ef4620848a576d1f6cdb9698 SHA512 e1c5504dab6c5db9fdf4addfeb12316f22d0258717ba551a9b7b3ba37919491fb6011ac5cca1e793b7509d5c1c186bc6bc4213f7d6155d190612492b216f979b DIST llvm-gentoo-patchset-12.0.0-1.tar.xz 6364 BLAKE2B bcf96dad8300cdc3e1f416cb90935ae3b1359efc5687118b5a9bbee25de7087a266250f50c6f2abd18f4efeeec19354f59513c8fdd1d61c2cfc8cc2f0115e514 SHA512 76201e169f71a8d568365ffeafcfd37138e74b0536826f47eb6ce89c2280586f10426917e851f99bfb20477cd828cc40daa8cb7a62959981620fbd81e1b22ee1 DIST llvm-gentoo-patchset-12.0.1.tar.xz 5280 BLAKE2B 963d005bc7b636570be90eb841ac5bcaeb927538cc7de27683167111a17d6496677c7517de2ecfaf14b5d8ac22bad357be490b8a2ed9aba502fd5f447ecc99e9 SHA512 fc7c38e671555751650299c3a8bee44d5c7f26e11b68d5538c507fb7fe9ff2d349bdcd43bce90a448a747f082d523b3849d6bcda5e3ae2e998edcb926d6aa249 +DIST llvm-gentoo-patchset-13.0.0-rc2.tar.xz 5556 BLAKE2B e6c7ecfe8f842edc4d4f30a20c66973519182ecb46e21fb20b6c5fcb6d54cdef830fcb120a405b77f1332e3557acbbbbfa99170b20d17f137e0a63b2d0dc1258 SHA512 ddeaf1d07f0ba893ce93e5fe1eff1c0716769a7879fc503c397f4db7becb363f94747f59b6d53c204df73a93954fb0ca5aae6ad544ce55c964c4bf441a410cd2 DIST llvm-gentoo-patchset-9999-2.tar.xz 4064 BLAKE2B 4b29234f10ea4ab2609e83c71bcd5f968cd93abd275c13366146ca899bbc576d55a3364432cc7db353739f5da5762529436689b848857e839e230425d551265b SHA512 c0d40a81bd11dc6018d7b3789e4ca7e1cd784992d44fab8d750b8b5281db39ad9092d320d125cae93164d2dddc42177a173b6d5e4158e4b62d7507db877acb9e DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3c8a6ff1a1f152f94bfe362c07884339fe571ff7fe903ed3b3deb150b2fa868c387887a0dea2930dc08b81db71a5b1 SHA512 48078fff9293a87f1a973f3348f79506f04c3da774295f5eb67d74dd2d1aa94f0973f8ced3f4ab9e8339902071f82c603b43d5608ad7227046c4da769c5d2151 DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81 DIST llvmorg-12.0.0.tar.gz 134226215 BLAKE2B f9c3ba8c58571855caa4f206fd285c9b5be66672fb0814cb8bc0964a051f57f5d35013aa1e27cbda502652b37df1ec23474129109e76a42066847860db441dbe SHA512 0cff02155c5ac0d6db2b72d60d9819d5b5dd859663b45f721b1c7540239c2fceb1f57d9173f6870c49de851c242ed8e85c5c6d6577a1f8092a7c5dcd12513b26 DIST llvmorg-12.0.1.tar.gz 134259748 BLAKE2B f41de787bc73ff2edfda1b22cc8602be6f65f37dd9e4c8888533cfa8c3ccdcf4f108aaab9de23ab0ab987966eb160f2a553a0bdff99461e71ddd5bfcd086090d SHA512 6eb0dc18e2c25935fabfdfc48b0114be0939158dfdef7b85b395fe2e71042672446af0e68750aae003c9847d10d1f63316fe95d3df738d18f249174292b1b9e1 DIST llvmorg-13.0.0-rc1.tar.gz 147235597 BLAKE2B 089fed119dee8a16f278cebb13808bd5a95629cc87ebee3050225cc041b78fee51acacc5bcc913d4a99e830bfe5774b19a04a845293c5087dd2a8c9d94d2fde9 SHA512 6e307e2c2dcb7ff41d11ee29d69f41c0ef55f200999847a3a924a2e773fc9c2160015746789af8b723c628bd232f97fce63370209bd0065491d80b0cc0017e85 +DIST llvmorg-13.0.0-rc2.tar.gz 147267736 BLAKE2B 153bf7320f2aa911112d366ffc79f7110cb04f135c2a8b176c263f0a75eb768206d9bd462893d45504b0e58aa9e127fdcafb02300eab1666e4616aa654d457dd SHA512 a01baf3eaa02f02af42bfcf6dcf24f166351bf1c09601495617c81e41def23210573bad40a344270f40c5deb881d06863536abac2a6481930766a6a56335fb44 EBUILD clang-10.0.1.ebuild 11494 BLAKE2B 0e3a04d4d8f6db728703cac19b8bc0a07e3e9644651986969e9422515eb5037ac2107ae90e5b6fc3cf8d3c549cfb6e21b918bf193f275f18efbb46b0e7da4464 SHA512 05df3ae5d3bd93f55dd572b5e524f4e8f1bcd155228d480bcdafb5db29613edf8d8d98a02183260091bfccb61636612355b387e53c8e0c1bb9612a5a4f9fb148 EBUILD clang-11.1.0.ebuild 11852 BLAKE2B f2c36f5206bc0995a921a583beb85ba6430ba74ff62409f238b36dadcd20b3092abdbd1f4143a6a1a6de1f6b82a24cbaff481ea0483e30240e4d8788c8294a07 SHA512 3833b2597f3cf7d6887e151a95e6e81bab8b8c4f964ab08e4ea2bedd4a7b22e7efc12ce2ba15ba02c6dd6997801a81a9b905f2bbedc1611d8e78bde05c192278 EBUILD clang-12.0.0-r1.ebuild 12007 BLAKE2B 105fee23696a755fead0b4c261da12c87648ccdb5b499078e6821e17b48d8a2148a805457dbcc100888d9df0f32aeed1c4b9277023252766d8aa1f98af95d098 SHA512 22b1cedea4b139b4d4cb942631dee99fe0f0c7fb242e3e46ac857cf396fc49cb50006e9ac3f42fa85aa16bf75cd07f60592e1e6c7b05ff585be6ee10c2e05241 EBUILD clang-12.0.1.ebuild 12009 BLAKE2B 75d8254f6421dfaf89b511b16cf69bd130cb44f29fd9d4acfcce9fb145d24881010c0cba4b5e5b3b11342a32bf632f77fc4196054246550818eeb3167d4e955d SHA512 6873cbc8087417c031cd4c815150cbacab715334af89bb03190b1eade8e4b72bdbddb9541e4069c8feaeaf8efaae0935e4c9a2e03b5d44fa469700c4d14f1652 EBUILD clang-13.0.0.9999.ebuild 11952 BLAKE2B dd5024b469679b5ec459101bc2dea65fb2f888d15c494cce41491604973946e4370a661c4783269fb3952e838bfd9cf55981baa3d986d3df88ed225b68899126 SHA512 b434043d9b98baf06ab7a1b07916fabcadaeafee68abdc16e515fb0c015fa78c7e660e5864896e6cce740107882ec361cc4ec62a5b95afee1d6fbe5d7b9e8915 EBUILD clang-13.0.0_rc1.ebuild 11952 BLAKE2B dd5024b469679b5ec459101bc2dea65fb2f888d15c494cce41491604973946e4370a661c4783269fb3952e838bfd9cf55981baa3d986d3df88ed225b68899126 SHA512 b434043d9b98baf06ab7a1b07916fabcadaeafee68abdc16e515fb0c015fa78c7e660e5864896e6cce740107882ec361cc4ec62a5b95afee1d6fbe5d7b9e8915 +EBUILD clang-13.0.0_rc2.ebuild 11956 BLAKE2B 73b120564e114f6b0702d69fcf88ded19d52ce8265b6117edf06672fa6bb53738d167cbe21d44e4fbdde53af9f8a5b6d909ccf63c1ec5f50d8da56cc5efc42b5 SHA512 1825e5176d59cf4fb88d54bf4f00f658c0dcd74c04b683e64acddb42ea930d64c1a1100f177100dc4bbe8478fb209bc9ebf76b33a280b297f656e7b6bb80caf7 EBUILD clang-14.0.0.9999.ebuild 11952 BLAKE2B dd5024b469679b5ec459101bc2dea65fb2f888d15c494cce41491604973946e4370a661c4783269fb3952e838bfd9cf55981baa3d986d3df88ed225b68899126 SHA512 b434043d9b98baf06ab7a1b07916fabcadaeafee68abdc16e515fb0c015fa78c7e660e5864896e6cce740107882ec361cc4ec62a5b95afee1d6fbe5d7b9e8915 MISC metadata.xml 1336 BLAKE2B aaddc1c1193323466a545df21dfa53b637c3edff4f61cd55037d8327273457cf8d35cad7b92a2eef31acfb055a3e1ed93cb53a913b01eddf43b7b3dc6de880c4 SHA512 0538198df449cdf4d0cd00cb50d7c6883b06524419a29c4376cdcaed440fb84cfbd4983a1a025ae9a6e2fc5d91a4870bfcde587c493d8b617baec2214705601c diff --git a/sys-devel/clang/clang-13.0.0_rc2.ebuild b/sys-devel/clang/clang-13.0.0_rc2.ebuild new file mode 100644 index 000000000000..a56902ca9b36 --- /dev/null +++ b/sys-devel/clang/clang-13.0.0_rc2.ebuild @@ -0,0 +1,441 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{8..10} ) +inherit cmake llvm llvm.org multilib-minimal pax-utils \ + prefix python-single-r1 toolchain-funcs + +DESCRIPTION="C language family frontend for LLVM" +HOMEPAGE="https://llvm.org/" + +# Keep in sync with sys-devel/llvm +ALL_LLVM_EXPERIMENTAL_TARGETS=( ARC CSKY M68k VE ) +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_}" ) + +# MSVCSetupApi.h: MIT +# sorttable.js: MIT + +LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA MIT" +SLOT="$(ver_cut 1)" +KEYWORDS="" +IUSE="debug default-compiler-rt default-libcxx default-lld + doc llvm-libunwind +static-analyzer test xml kernel_FreeBSD ${ALL_LLVM_TARGETS[*]}" +REQUIRED_USE="${PYTHON_REQUIRED_USE} + || ( ${ALL_LLVM_TARGETS[*]} )" +RESTRICT="!test? ( test )" + +RDEPEND=" + ~sys-devel/llvm-${PV}:${SLOT}=[debug=,${MULTILIB_USEDEP}] + static-analyzer? ( dev-lang/perl:* ) + xml? ( dev-libs/libxml2:2=[${MULTILIB_USEDEP}] ) + ${PYTHON_DEPS}" +for x in "${ALL_LLVM_TARGETS[@]}"; do + RDEPEND+=" + ${x}? ( ~sys-devel/llvm-${PV}:${SLOT}[${x}] )" +done +unset x + +DEPEND="${RDEPEND}" +BDEPEND=" + >=dev-util/cmake-3.16 + doc? ( dev-python/sphinx ) + xml? ( virtual/pkgconfig ) + ${PYTHON_DEPS}" +RDEPEND="${RDEPEND} + !<sys-devel/llvm-4.0.0_rc:0 + !sys-devel/clang:0" +PDEPEND=" + sys-devel/clang-common + ~sys-devel/clang-runtime-${PV} + default-compiler-rt? ( + =sys-libs/compiler-rt-${PV%_*}* + llvm-libunwind? ( sys-libs/llvm-libunwind ) + !llvm-libunwind? ( sys-libs/libunwind ) + ) + default-libcxx? ( >=sys-libs/libcxx-${PV} ) + default-lld? ( sys-devel/lld )" + +LLVM_COMPONENTS=( clang clang-tools-extra ) +LLVM_MANPAGES=build +LLVM_TEST_COMPONENTS=( + llvm/lib/Testing/Support + llvm/utils/{lit,llvm-lit,unittest} + llvm/utils/{UpdateTestChecks,update_cc_test_checks.py} +) +LLVM_PATCHSET=13.0.0-rc2 +llvm.org_set_globals + +# 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_prepare() { + # create extra parent dir for relative CLANG_RESOURCE_DIR access + mkdir -p x/y || die + BUILD_DIR=${WORKDIR}/x/y/clang + + llvm.org_src_prepare + + # add Gentoo Portage Prefix for Darwin (see prefix-dirs.patch) + eprefixify \ + lib/Frontend/InitHeaderSearch.cpp \ + lib/Driver/ToolChains/Darwin.cpp || die +} + +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 + # meta-targets + clang-libraries|distribution) + continue + ;; + # headers for clang-tidy static library + clang-tidy-headers) + continue + ;; + # tools + clang|clangd|clang-*) + ;; + # static libraries + clang*|findAllSymbols) + continue + ;; + # conditional to USE=doc + docs-clang-html|docs-clang-tools-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 +} + +get_distribution_components() { + local sep=${1-;} + + local out=( + # common stuff + clang-cmake-exports + clang-headers + clang-resource-headers + libclang-headers + + # libs + clang-cpp + libclang + ) + + if multilib_is_native_abi; then + out+=( + # common stuff + bash-autocomplete + libclang-python-bindings + + # tools + c-index-test + clang + clang-format + clang-offload-bundler + clang-offload-wrapper + clang-refactor + clang-rename + clang-scan-deps + diagtool + hmaptool + + # extra tools + clang-apply-replacements + clang-change-namespace + clang-doc + clang-include-fixer + clang-move + clang-query + clang-reorder-fields + clang-tidy + clangd + find-all-symbols + modularize + pp-trace + ) + + if llvm_are_manpages_built; then + out+=( + # manpages + docs-clang-man + docs-clang-tools-man + ) + fi + + use doc && out+=( + docs-clang-html + docs-clang-tools-html + ) + + use static-analyzer && out+=( + clang-check + clang-extdef-mapping + scan-build + scan-build-py + scan-view + ) + fi + + printf "%s${sep}" "${out[@]}" +} + +multilib_src_configure() { + local llvm_version=$(llvm-config --version) || die + local clang_version=$(ver_cut 1-3 "${llvm_version}") + + local mycmakeargs=( + -DLLVM_CMAKE_PATH="${EPREFIX}/usr/lib/llvm/${SLOT}/$(get_libdir)/cmake/llvm" + -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${SLOT}" + -DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/${SLOT}/share/man" + # relative to bindir + -DCLANG_RESOURCE_DIR="../../../../lib/clang/${clang_version}" + + -DBUILD_SHARED_LIBS=OFF + -DCLANG_LINK_CLANG_DYLIB=ON + -DLLVM_DISTRIBUTION_COMPONENTS=$(get_distribution_components) + + -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 + + # disable using CUDA to autodetect GPU, just build for all + -DCMAKE_DISABLE_FIND_PACKAGE_CUDA=ON + + # override default stdlib and rtlib + -DCLANG_DEFAULT_CXX_STDLIB=$(usex default-libcxx libc++ "") + -DCLANG_DEFAULT_RTLIB=$(usex default-compiler-rt compiler-rt "") + -DCLANG_DEFAULT_LINKER=$(usex default-lld lld "") + -DCLANG_DEFAULT_UNWINDLIB=$(usex default-compiler-rt libunwind "") + + -DCLANG_ENABLE_ARCMT=$(usex static-analyzer) + -DCLANG_ENABLE_STATIC_ANALYZER=$(usex static-analyzer) + + -DPython3_EXECUTABLE="${PYTHON}" + ) + use test && mycmakeargs+=( + -DLLVM_MAIN_SRC_DIR="${WORKDIR}/llvm" + -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+=( + -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 + ) + fi + mycmakeargs+=( + -DLLVM_EXTERNAL_CLANG_TOOLS_EXTRA_SOURCE_DIR="${WORKDIR}"/clang-tools-extra + -DCLANG_INCLUDE_DOCS=${build_docs} + -DCLANG_TOOLS_EXTRA_INCLUDE_DOCS=${build_docs} + ) + else + mycmakeargs+=( + -DLLVM_TOOL_CLANG_TOOLS_EXTRA_BUILD=OFF + ) + fi + + if [[ -n ${EPREFIX} ]]; then + mycmakeargs+=( + -DGCC_INSTALL_PREFIX="${EPREFIX}/usr" + ) + fi + + if tc-is-cross-compiler; then + [[ -x "/usr/bin/clang-tblgen" ]] \ + || die "/usr/bin/clang-tblgen not found or usable" + mycmakeargs+=( + -DCMAKE_CROSSCOMPILING=ON + -DCLANG_TABLEGEN=/usr/bin/clang-tblgen + ) + fi + + # LLVM can have very high memory consumption while linking, + # exhausting the limit on 32-bit linker executable + use x86 && local -x LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory" + + # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 + use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" + cmake_src_configure + + multilib_is_native_abi && check_distribution_components +} + +multilib_src_compile() { + cmake_build distribution + + # 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_build check-clang + multilib_is_native_abi && + cmake_build check-clang-tools check-clangd +} + +src_install() { + MULTILIB_WRAPPED_HEADERS=( + /usr/include/clang/Config/config.h + ) + + multilib-minimal_src_install + + # Move runtime headers to /usr/lib/clang, where they belong + mv "${ED}"/usr/include/clangrt "${ED}"/usr/lib/clang || die + # move (remaining) wrapped headers back + mv "${ED}"/usr/include "${ED}"/usr/lib/llvm/${SLOT}/include || die + + # Apply CHOST and version suffix to clang tools + # note: we use two version components here (vs 3 in runtime path) + local llvm_version=$(llvm-config --version) || die + local clang_version=$(ver_cut 1 "${llvm_version}") + local clang_full_version=$(ver_cut 1-3 "${llvm_version}") + local clang_tools=( clang clang++ clang-cl clang-cpp ) + local abi i + + # cmake gives us: + # - clang-X + # - clang -> clang-X + # - clang++, clang-cl, clang-cpp -> clang + # we want to have: + # - clang-X + # - clang++-X, clang-cl-X, clang-cpp-X -> clang-X + # - clang, clang++, clang-cl, clang-cpp -> clang*-X + # also in CHOST variant + for i in "${clang_tools[@]:1}"; do + rm "${ED}/usr/lib/llvm/${SLOT}/bin/${i}" || die + dosym "clang-${clang_version}" "/usr/lib/llvm/${SLOT}/bin/${i}-${clang_version}" + dosym "${i}-${clang_version}" "/usr/lib/llvm/${SLOT}/bin/${i}" + done + + # now create target symlinks for all supported ABIs + for abi in $(get_all_abis); do + local abi_chost=$(get_abi_CHOST "${abi}") + for i in "${clang_tools[@]}"; do + dosym "${i}-${clang_version}" \ + "/usr/lib/llvm/${SLOT}/bin/${abi_chost}-${i}-${clang_version}" + dosym "${abi_chost}-${i}-${clang_version}" \ + "/usr/lib/llvm/${SLOT}/bin/${abi_chost}-${i}" + done + done + + # Remove unnecessary headers on FreeBSD, bug #417171 + if use kernel_FreeBSD; then + rm "${ED}"/usr/lib/clang/${clang_full_version}/include/{std,float,iso,limits,tgmath,varargs}*.h || die + fi +} + +multilib_src_install() { + DESTDIR=${D} cmake_build install-distribution + + # 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" + llvm_install_manpages + # 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 [[ -z ${ROOT} && -f ${EPREFIX}/usr/share/eselect/modules/compiler-shadow.eselect ]] ; then + eselect compiler-shadow update all + fi + + elog "You can find additional utility scripts in:" + elog " ${EROOT}/usr/lib/llvm/${SLOT}/share/clang" + elog "Some of them are vim integration scripts (with instructions inside)." + elog "The run-clang-tidy.py script requires the following additional package:" + elog " dev-python/pyyaml" +} + +pkg_postrm() { + if [[ -z ${ROOT} && -f ${EPREFIX}/usr/share/eselect/modules/compiler-shadow.eselect ]] ; then + eselect compiler-shadow clean all + fi +} diff --git a/sys-devel/elftoolchain/Manifest b/sys-devel/elftoolchain/Manifest index 947f13092da4..67391bed6dd9 100644 --- a/sys-devel/elftoolchain/Manifest +++ b/sys-devel/elftoolchain/Manifest @@ -3,4 +3,4 @@ DIST elftoolchain-0.7.1.tar.bz2 5361427 BLAKE2B f86204b3c89433948eaf2cd2edc57abf DIST elftoolchain-0.7.1_p20210319.tar.gz 6767324 BLAKE2B c7e068577744fd42a44784e6a2b03ffdaa9dd15e41f4ff2a6d5fd80df24a61a950ff11fa63ebbbaf2c90bc1b19e58f7184a2b883a6f866adcbf0940ad9fca81c SHA512 968d3247e160dd6f90a88e69bf3cb8e6bf2b8216500a0a91699bc2b8d3de22db8f013212813139701e75c3a9eb852bb4c1360e8058f85959e0973e05e4851c8c EBUILD elftoolchain-0.7.1-r2.ebuild 1275 BLAKE2B 8a37ec62e7d09051d8a6b794c113dac64bc1986de6e897c4051c864dbf6d8b6ce6bb095dd82e7982afea08c634a26d3c5d912ad685b5dad180946c2ca8a0156f SHA512 40ed6cea81157836c11326fcb414019809feda1cd4b276332f358c1bfe996cdfdd7b4f7ad4b8749e440868a6f22b399bc5292ffad2e62e95dd08f78bcf827a0d EBUILD elftoolchain-0.7.1_p20210319.ebuild 1400 BLAKE2B dd0334ee7a4896766e3c53dc134daf6189856b02188ac76a61a74c1f9d4d6a88a52c780d8713c3aa0114df2bebc64402503141857a6aac22c896ff898232f179 SHA512 4f3e065afc8cc228ee05e959cd97d0d6c8add49263643118efbafd09508229628899cfd0b15c33ce8b1e60b55f6c1f4387442658ef4c64c8c2b33b0459243a87 -MISC metadata.xml 450 BLAKE2B b2e66c3665e4d1d24e8a4887114e5b5d2306a996a56660c7f40846550383588aea10c667b6e055c32dd22b756d8b2a81afbb0512919b273ef15bcf28b0a9c2c0 SHA512 8306332a971bd86d79ee9c3e3d1415ac15a40d015aa9db631b57e4afd125641f5106b8a06bc1c22b0d1aa128dc01ba390b94abaed780e8d92d3a43833fd79f40 +MISC metadata.xml 329 BLAKE2B 42ca6b237062933dbe59eaaaa1e9282fd996e47ec1264d94e8a2ebf831a64d88a2b1a209bd774ae34e423a81c867bdb93ccab39b14d7aca2dfc70387b4035f15 SHA512 50afd77c58579ce53af5a67f2f686156ea8b25536a2761d230677091f954e6ccaf3822a4a2ed11407697fd42b372cca46055e41a01f4c5918a857f3117af5ffb diff --git a/sys-devel/elftoolchain/metadata.xml b/sys-devel/elftoolchain/metadata.xml index cebcfd378268..e8c98918df92 100644 --- a/sys-devel/elftoolchain/metadata.xml +++ b/sys-devel/elftoolchain/metadata.xml @@ -2,12 +2,8 @@ <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> <maintainer type="person"> - <email>jakov.smolic@sartura.hr</email> - <name>Jakov Smolic</name> - </maintainer> - <maintainer type="project"> - <email>proxy-maint@gentoo.org</email> - <name>Proxy Maintainers</name> + <email>jsmolic@gentoo.org</email> + <name>Jakov Smolić</name> </maintainer> <upstream> <remote-id type="sourceforge">elftoolchain</remote-id> diff --git a/sys-devel/gdb/Manifest b/sys-devel/gdb/Manifest index b82c5e006019..ae8441dd03bd 100644 --- a/sys-devel/gdb/Manifest +++ b/sys-devel/gdb/Manifest @@ -4,8 +4,8 @@ AUX gdb-10.2-sparc-nat.patch 1683 BLAKE2B b5ef1ce44dd935ca8a69a6477cfea703109300 AUX gdb-8.3.1-verbose-build.patch 395 BLAKE2B e2e82307ceae64d16aa9b57a5e639eb5d217c4d977aed0847fdf125bb13ebc004906d9afb8e3f629c41efccca88df0040015e7799c1fd24de5fb50f62f5bbd90 SHA512 c2bb013e4fcabefddcd8042bd3cbb53471f83182cc8769fe0d19eed80ccc4a83bd84d120006fa25b3b7d0310dc2f2ec6b44a6ff74909cd312b7e491f371777a3 DIST gdb-10.1.tar.xz 21507112 BLAKE2B 69d79cd667ecb6e936b41a03817ade5dd9b761f97bc123d668b5f968d123c37d048fc8ec1289151e989f01bb01a43cc3d8b5b54f1807f1e3eb5f43e6bf0aa55b SHA512 0dc54380435c6853db60f1e388b94836d294dfa9ad7f518385a27db4edd03cb970f8717d5f1e9c9a0d4a33d7fcf91bc2e5d6c9cf9e4b561dcc74e65b806c1537 DIST gdb-10.2.tar.xz 21518900 BLAKE2B c5d31d80d2b454767d6f844e8471b012ad437c3872391b618fd7b14c5cf251b78e55d28c12e81382fd600f67e2f618ff5dbe3a7b737a5d5161ceb3542afbb90b SHA512 3653762ac008e065c37cd641653184c9ff7ce51ee2222ade1122bec9d6cc64dffd4fb74888ef11ac1942064a08910e96b7865112ad37f4602eb0a16bed074caa -EBUILD gdb-10.1.ebuild 7019 BLAKE2B 34dd10dad9c958e960775dbaa65e941448c096f52bd59dd16f214922f2b81fea84c80196cc59660fdc59a60297b23e5aae8de3d6b0453b7ab636862a9c760604 SHA512 7c132c6ee9aad5d683646b8bd9ed9179fcb3c59c40bd049745d4bde6366c4f75c36faa9184e72a5e82954e84a10fae049b907cdfcf4a55671b126f53d2322dc4 -EBUILD gdb-10.2-r1.ebuild 7115 BLAKE2B 41c7ffb7ea952f794146a8cb9f1738387fc0f1161e1923474c8f25a824dc984582963537d1f29673b13a0addae03159206862364f9b2a42455c3dfae4dbe04e8 SHA512 7b16c497f26e67f3e5de1035bbab1201ca79cdbe9583bce716e6816f7187956f2cbed1eb9991661fd597b5e20b24af6e63a2e6ddd28fa75cc76e4a1e27a24d8b -EBUILD gdb-10.2.ebuild 7063 BLAKE2B 93bacd2f7e3f45c17d01f12a0302d9cf070a65ea4dc00c6c0d47a93b1a0e19ff2d092dd38b813bb43a405f58028f4c43be7e4fb3b1b9bc13d57d5b59aa1db643 SHA512 2ec5d372037d0d98d50d58f5bba03fda00d06fd46e7d11280e4b17a91435086ef288c46cbc5157a3ca4bbc288d4ff679845878e457c8e9e631fde606a85c741a -EBUILD gdb-9999.ebuild 6990 BLAKE2B 4b35c8d7d109a74e98ca5bc9e6c7967f1f3a9d8ff508f14cd15bf752df8117f3355562bacb2a8bff4ccffe28971e428d9a209df83cb3dd6006d97489259686de SHA512 dbba8eb4feea97afd7ca3d90a9e48209facc426e4227792eb57dc3124ef64979440409382f0ad2ab9f05792ca5661505c46f0f563126bc33d05793af04d74357 +EBUILD gdb-10.1.ebuild 7003 BLAKE2B b98d23ee8b9ba2d9fa573e488fd8f4d941ff34b6e2afc4b7a6d2e7e74ec444f379ac2af9da840cd811aa823ebb5905e426200765bfaf0f0ada06574866ee768d SHA512 bfd8581d2d9cf4631769b1366997974cf08449d4b2166fc48d8b7a5ca9f56560a1350a4141e92946f98176b998780ca118c199d4e0873b3a5f59d1e7bc238c40 +EBUILD gdb-10.2-r1.ebuild 7099 BLAKE2B 10054cc05f91a31e5ea178aa4f98616a3499f20a518b5e189655f2bfc3e59eeb9606a1a0daed51544e836a2c5137080f0adc44401d5f3c33ccb038e9c544f320 SHA512 4c3e25a80776350b0ea5d6b26923b0c4065b9ec0cce90719bc3d8438e0c104a96fbadbd8342b1e90a7ce62639b5247bbefdc28efd4479f1db7f150320fd84ba0 +EBUILD gdb-10.2.ebuild 7047 BLAKE2B 2bcaea9fa86e92c1d3fc4579583f174fbfb48ee0c3acd1fae561111489b2aa0bac001b7b78bced7f27029ef527b4766d1ccf193cb32a770d95c1ce5853ead2ee SHA512 391f5552cc263c4d676a2d6aa144679f283f90744434a92654e4b3d320b9bc25e55cdf2efe8101e9e8cb46bf06b184972e92ff0b6287ee61fa00aa67aa7933b6 +EBUILD gdb-9999.ebuild 6974 BLAKE2B cbcb87d59aba0da99b4b033542bd7ea5e67e57912b46179558fab087e626a4f965e036129e123104eb0d6b69bb76535b34e2dcb92ff7fa5a2a6fb56dabbb95eb SHA512 4b16cc4cc0e62ef27469534c3d397e6f01d41df903b4a7a6fe8bb24083793a33dee1e8a01be3eb8f112ec396d655203fb2c5e2a42cf466a16e62a79c42fe44a2 MISC metadata.xml 1102 BLAKE2B 76a586ca542d54f382f13416d53729e9a26f05d8ee2e592cf0b0aa1851d0a9546b20d2058107ca250986682c5f4f86c38939f4cd627f36d9223be3589337caad SHA512 047a745a15e2fd6ecbf22d52e3771e0982a10ed2eb41513e30946574e5b6e813088a31bb3c32832181f19fbd4f5061575389723f66b1821e75839a863e422c0e diff --git a/sys-devel/gdb/gdb-10.1.ebuild b/sys-devel/gdb/gdb-10.1.ebuild index 43bc2989930f..c751cccea855 100644 --- a/sys-devel/gdb/gdb-10.1.ebuild +++ b/sys-devel/gdb/gdb-10.1.ebuild @@ -46,7 +46,7 @@ SLOT="0" if [[ ${PV} != 9999* ]] ; then KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" fi -IUSE="cet lzma multitarget nls +python +server source-highlight test vanilla xml xxhash" +IUSE="cet guile lzma multitarget nls +python +server source-highlight test vanilla xml xxhash" REQUIRED_USE=" python? ( ${PYTHON_REQUIRED_USE} ) " @@ -65,6 +65,7 @@ RDEPEND=" sys-libs/zlib lzma? ( app-arch/xz-utils ) python? ( ${PYTHON_DEPS} ) + guile? ( >=dev-scheme/guile-2.0 ) xml? ( dev-libs/expat ) source-highlight? ( dev-util/source-highlight @@ -157,8 +158,6 @@ src_configure() { --enable-64-bit-bfd --disable-install-libbfd --disable-install-libiberty - # Disable guile for now as it requires guile-2.x #562902 - --without-guile --enable-obsolete # This only disables building in the readline subdir. # For gdb itself, it'll use the system version. @@ -176,6 +175,7 @@ src_configure() { $(use multitarget && echo --enable-targets=all) $(use_with python python "${EPYTHON}") $(use_with xxhash) + $(use_with guile) ) if use sparc-solaris || use x86-solaris ; then # disable largefile support diff --git a/sys-devel/gdb/gdb-10.2-r1.ebuild b/sys-devel/gdb/gdb-10.2-r1.ebuild index b5d5204d0458..7440aef64f5c 100644 --- a/sys-devel/gdb/gdb-10.2-r1.ebuild +++ b/sys-devel/gdb/gdb-10.2-r1.ebuild @@ -46,7 +46,7 @@ SLOT="0" if [[ ${PV} != 9999* ]] ; then KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" fi -IUSE="cet lzma multitarget nls +python +server source-highlight test vanilla xml xxhash" +IUSE="cet guile lzma multitarget nls +python +server source-highlight test vanilla xml xxhash" REQUIRED_USE=" python? ( ${PYTHON_REQUIRED_USE} ) " @@ -65,6 +65,7 @@ RDEPEND=" sys-libs/zlib lzma? ( app-arch/xz-utils ) python? ( ${PYTHON_DEPS} ) + guile? ( >=dev-scheme/guile-2.0 ) xml? ( dev-libs/expat ) source-highlight? ( dev-util/source-highlight @@ -159,8 +160,6 @@ src_configure() { --enable-64-bit-bfd --disable-install-libbfd --disable-install-libiberty - # Disable guile for now as it requires guile-2.x #562902 - --without-guile --enable-obsolete # This only disables building in the readline subdir. # For gdb itself, it'll use the system version. @@ -178,6 +177,7 @@ src_configure() { $(use multitarget && echo --enable-targets=all) $(use_with python python "${EPYTHON}") $(use_with xxhash) + $(use_with guile) ) if use sparc-solaris || use x86-solaris ; then # disable largefile support diff --git a/sys-devel/gdb/gdb-10.2.ebuild b/sys-devel/gdb/gdb-10.2.ebuild index 9968e1b3e6af..bdb30edb1d9e 100644 --- a/sys-devel/gdb/gdb-10.2.ebuild +++ b/sys-devel/gdb/gdb-10.2.ebuild @@ -46,7 +46,7 @@ SLOT="0" if [[ ${PV} != 9999* ]] ; then KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" fi -IUSE="cet lzma multitarget nls +python +server source-highlight test vanilla xml xxhash" +IUSE="cet guile lzma multitarget nls +python +server source-highlight test vanilla xml xxhash" REQUIRED_USE=" python? ( ${PYTHON_REQUIRED_USE} ) " @@ -65,6 +65,7 @@ RDEPEND=" sys-libs/zlib lzma? ( app-arch/xz-utils ) python? ( ${PYTHON_DEPS} ) + guile? ( >=dev-scheme/guile-2.0 ) xml? ( dev-libs/expat ) source-highlight? ( dev-util/source-highlight @@ -158,8 +159,6 @@ src_configure() { --enable-64-bit-bfd --disable-install-libbfd --disable-install-libiberty - # Disable guile for now as it requires guile-2.x #562902 - --without-guile --enable-obsolete # This only disables building in the readline subdir. # For gdb itself, it'll use the system version. @@ -177,6 +176,7 @@ src_configure() { $(use multitarget && echo --enable-targets=all) $(use_with python python "${EPYTHON}") $(use_with xxhash) + $(use_with guile) ) if use sparc-solaris || use x86-solaris ; then # disable largefile support diff --git a/sys-devel/gdb/gdb-9999.ebuild b/sys-devel/gdb/gdb-9999.ebuild index d45841148f9b..fde1ad992437 100644 --- a/sys-devel/gdb/gdb-9999.ebuild +++ b/sys-devel/gdb/gdb-9999.ebuild @@ -46,7 +46,7 @@ SLOT="0" if [[ ${PV} != 9999* ]] ; then KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" fi -IUSE="cet lzma multitarget nls +python +server source-highlight test vanilla xml xxhash" +IUSE="cet guile lzma multitarget nls +python +server source-highlight test vanilla xml xxhash" REQUIRED_USE=" python? ( ${PYTHON_REQUIRED_USE} ) " @@ -65,6 +65,7 @@ RDEPEND=" sys-libs/zlib lzma? ( app-arch/xz-utils ) python? ( ${PYTHON_DEPS} ) + guile? ( >=dev-scheme/guile-2.0 ) xml? ( dev-libs/expat ) source-highlight? ( dev-util/source-highlight @@ -156,8 +157,6 @@ src_configure() { --enable-64-bit-bfd --disable-install-libbfd --disable-install-libiberty - # Disable guile for now as it requires guile-2.x #562902 - --without-guile --enable-obsolete # This only disables building in the readline subdir. # For gdb itself, it'll use the system version. @@ -175,6 +174,7 @@ src_configure() { $(use multitarget && echo --enable-targets=all) $(use_with python python "${EPYTHON}") $(use_with xxhash) + $(use_with guile) ) if use sparc-solaris || use x86-solaris ; then # disable largefile support diff --git a/sys-devel/lld/Manifest b/sys-devel/lld/Manifest index 37f5cd201cdf..c6d98de876b8 100644 --- a/sys-devel/lld/Manifest +++ b/sys-devel/lld/Manifest @@ -3,6 +3,7 @@ DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45c DIST llvmorg-12.0.0.tar.gz 134226215 BLAKE2B f9c3ba8c58571855caa4f206fd285c9b5be66672fb0814cb8bc0964a051f57f5d35013aa1e27cbda502652b37df1ec23474129109e76a42066847860db441dbe SHA512 0cff02155c5ac0d6db2b72d60d9819d5b5dd859663b45f721b1c7540239c2fceb1f57d9173f6870c49de851c242ed8e85c5c6d6577a1f8092a7c5dcd12513b26 DIST llvmorg-12.0.1.tar.gz 134259748 BLAKE2B f41de787bc73ff2edfda1b22cc8602be6f65f37dd9e4c8888533cfa8c3ccdcf4f108aaab9de23ab0ab987966eb160f2a553a0bdff99461e71ddd5bfcd086090d SHA512 6eb0dc18e2c25935fabfdfc48b0114be0939158dfdef7b85b395fe2e71042672446af0e68750aae003c9847d10d1f63316fe95d3df738d18f249174292b1b9e1 DIST llvmorg-13.0.0-rc1.tar.gz 147235597 BLAKE2B 089fed119dee8a16f278cebb13808bd5a95629cc87ebee3050225cc041b78fee51acacc5bcc913d4a99e830bfe5774b19a04a845293c5087dd2a8c9d94d2fde9 SHA512 6e307e2c2dcb7ff41d11ee29d69f41c0ef55f200999847a3a924a2e773fc9c2160015746789af8b723c628bd232f97fce63370209bd0065491d80b0cc0017e85 +DIST llvmorg-13.0.0-rc2.tar.gz 147267736 BLAKE2B 153bf7320f2aa911112d366ffc79f7110cb04f135c2a8b176c263f0a75eb768206d9bd462893d45504b0e58aa9e127fdcafb02300eab1666e4616aa654d457dd SHA512 a01baf3eaa02f02af42bfcf6dcf24f166351bf1c09601495617c81e41def23210573bad40a344270f40c5deb881d06863536abac2a6481930766a6a56335fb44 EBUILD lld-10.0.1-r1.ebuild 1178 BLAKE2B 52360dc17b7276276ead4183d47954a68f217f19fc0b52f36772cf28225df793b53e61b38a6c90b0dfade77c05270e5c4ade8696b4b29b56746b1b8e2a97f691 SHA512 6a313c7fe0719f32805f7eb3fdc601ec84c6a386ec25867ddafd05c71ec5a37ce1116ead22d8ae64b5f96dda944b34202a0e2eb03452daa9bff822442865ec74 EBUILD lld-10.0.1.ebuild 1327 BLAKE2B c1933a141d5460f94cee3bdeac644760aec6d8e5906e3202e54a7a9da441a57d2de33b77d906dea4dcf6d7bac0bef97edd29c0a8d756093e9b56f81fbec07e01 SHA512 5901b7d0f5b2d07234d3287ab003e68b032a42e0887ab0d76fdd7a7af12feaea97a3ce07f06f3f1c428f7b5b4fa7f98daddf0909c8e3c0bf7ab2adc75363ed95 EBUILD lld-11.1.0-r1.ebuild 1250 BLAKE2B befcc678c9eda33c73806c12b2c24bb8f3b8c9310303c42ceb87247e9816862f25bab546a5989bbe018f40118283c432c71f895e0b333a27a3e344d570e58102 SHA512 7a2046cc5bef8a7c0889fa6fb0bbf1eeaf776cd446ce3188df6c70898de097c0833e6d9293d4a7dad99fa1d6bf894440920549b6295ed442aa0c560149a71a58 @@ -11,5 +12,6 @@ EBUILD lld-12.0.0.ebuild 1666 BLAKE2B 6fe783db711fd7a68603e02271eb8dcdd71bee6729 EBUILD lld-12.0.1.ebuild 1670 BLAKE2B cdcd11b84306a45791d3bdcb41f7058ced2df5278d5a2c7c57a83a359ede641ecfd7009894c67c60b4b43b1303df347a1bf85f790bd71b069acf82b87df073da SHA512 887a40f2f88f34815e5f355ad38c6a9bc20a3d24bfd55f9e1117021b696940a9c947b4beddf20f6acedd404c7f279495a768c77e594d1fed9bf86a819bb32fae EBUILD lld-13.0.0.9999.ebuild 1629 BLAKE2B 6bbe1d8e730c8ab5719492f03791754bcba4b18839bed1031afa617cff7e88f6b16cad038fa96eccf64e817fe017844fe466b754fbecebea32bb7bc48c5a0339 SHA512 f4239a40bd9cbdde38f837643290214d230f79243f21b22503af0c0c2ebc28683d913db3b0a72ac9582c95c236b63f1134cdac41a18118a98915c606e4d62285 EBUILD lld-13.0.0_rc1.ebuild 1629 BLAKE2B 6bbe1d8e730c8ab5719492f03791754bcba4b18839bed1031afa617cff7e88f6b16cad038fa96eccf64e817fe017844fe466b754fbecebea32bb7bc48c5a0339 SHA512 f4239a40bd9cbdde38f837643290214d230f79243f21b22503af0c0c2ebc28683d913db3b0a72ac9582c95c236b63f1134cdac41a18118a98915c606e4d62285 +EBUILD lld-13.0.0_rc2.ebuild 1629 BLAKE2B 6bbe1d8e730c8ab5719492f03791754bcba4b18839bed1031afa617cff7e88f6b16cad038fa96eccf64e817fe017844fe466b754fbecebea32bb7bc48c5a0339 SHA512 f4239a40bd9cbdde38f837643290214d230f79243f21b22503af0c0c2ebc28683d913db3b0a72ac9582c95c236b63f1134cdac41a18118a98915c606e4d62285 EBUILD lld-14.0.0.9999.ebuild 1629 BLAKE2B 6bbe1d8e730c8ab5719492f03791754bcba4b18839bed1031afa617cff7e88f6b16cad038fa96eccf64e817fe017844fe466b754fbecebea32bb7bc48c5a0339 SHA512 f4239a40bd9cbdde38f837643290214d230f79243f21b22503af0c0c2ebc28683d913db3b0a72ac9582c95c236b63f1134cdac41a18118a98915c606e4d62285 MISC metadata.xml 216 BLAKE2B fe5e49887842aa513fbf1f2e09bed09a884d531fd21bdaeb2d389e8bf590b6c0e7063f0af98f66e2db129308ab0f0804ba327c3c752bbb4c900c59ac109d99aa SHA512 3485598147c953e72e1785693a489a7e7d73d59620b76054db9c0ce95d8bfa0e8ffec29da7f7a9d73a32e5b77eac07ca3306c56a972dc57fd89d477edaebf3d5 diff --git a/sys-devel/lld/lld-13.0.0_rc2.ebuild b/sys-devel/lld/lld-13.0.0_rc2.ebuild new file mode 100644 index 000000000000..68762b0a03cc --- /dev/null +++ b/sys-devel/lld/lld-13.0.0_rc2.ebuild @@ -0,0 +1,68 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{8..10} ) +inherit cmake llvm llvm.org python-any-r1 + +DESCRIPTION="The LLVM linker (link editor)" +HOMEPAGE="https://llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" +SLOT="0" +KEYWORDS="" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND="~sys-devel/llvm-${PV}" +DEPEND="${RDEPEND}" +BDEPEND=" + test? ( + >=dev-util/cmake-3.16 + $(python_gen_any_dep "~dev-python/lit-${PV}[\${PYTHON_USEDEP}]") + )" + +LLVM_COMPONENTS=( lld libunwind/include/mach-o ) +LLVM_TEST_COMPONENTS=( llvm/utils/{lit,unittest} ) +llvm.org_set_globals + +python_check_deps() { + has_version -b "dev-python/lit[${PYTHON_USEDEP}]" +} + +pkg_setup() { + LLVM_MAX_SLOT=${PV%%.*} llvm_pkg_setup + use test && python-any-r1_pkg_setup +} + +src_unpack() { + llvm.org_src_unpack + + # Directory ${WORKDIR}/llvm does not exist with USE="-test", + # but LLVM_MAIN_SRC_DIR="${WORKDIR}/llvm" is set below, + # and ${LLVM_MAIN_SRC_DIR}/../libunwind/include is used by build system + # (lld/MachO/CMakeLists.txt) and is expected to be resolvable + # to existent directory ${WORKDIR}/libunwind/include. + mkdir -p "${WORKDIR}/llvm" || die +} + +src_configure() { + local mycmakeargs=( + -DBUILD_SHARED_LIBS=ON + -DLLVM_INCLUDE_TESTS=$(usex test) + -DLLVM_MAIN_SRC_DIR="${WORKDIR}/llvm" + ) + use test && mycmakeargs+=( + -DLLVM_BUILD_TESTS=ON + -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" + -DLLVM_LIT_ARGS="$(get_lit_flags)" + -DPython3_EXECUTABLE="${PYTHON}" + ) + cmake_src_configure +} + +src_test() { + local -x LIT_PRESERVES_TMP=1 + cmake_build check-lld +} diff --git a/sys-devel/llvm-common/Manifest b/sys-devel/llvm-common/Manifest index 9fc1c92a0b9b..bb81b5f8263d 100644 --- a/sys-devel/llvm-common/Manifest +++ b/sys-devel/llvm-common/Manifest @@ -3,11 +3,13 @@ DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45c DIST llvmorg-12.0.0.tar.gz 134226215 BLAKE2B f9c3ba8c58571855caa4f206fd285c9b5be66672fb0814cb8bc0964a051f57f5d35013aa1e27cbda502652b37df1ec23474129109e76a42066847860db441dbe SHA512 0cff02155c5ac0d6db2b72d60d9819d5b5dd859663b45f721b1c7540239c2fceb1f57d9173f6870c49de851c242ed8e85c5c6d6577a1f8092a7c5dcd12513b26 DIST llvmorg-12.0.1.tar.gz 134259748 BLAKE2B f41de787bc73ff2edfda1b22cc8602be6f65f37dd9e4c8888533cfa8c3ccdcf4f108aaab9de23ab0ab987966eb160f2a553a0bdff99461e71ddd5bfcd086090d SHA512 6eb0dc18e2c25935fabfdfc48b0114be0939158dfdef7b85b395fe2e71042672446af0e68750aae003c9847d10d1f63316fe95d3df738d18f249174292b1b9e1 DIST llvmorg-13.0.0-rc1.tar.gz 147235597 BLAKE2B 089fed119dee8a16f278cebb13808bd5a95629cc87ebee3050225cc041b78fee51acacc5bcc913d4a99e830bfe5774b19a04a845293c5087dd2a8c9d94d2fde9 SHA512 6e307e2c2dcb7ff41d11ee29d69f41c0ef55f200999847a3a924a2e773fc9c2160015746789af8b723c628bd232f97fce63370209bd0065491d80b0cc0017e85 +DIST llvmorg-13.0.0-rc2.tar.gz 147267736 BLAKE2B 153bf7320f2aa911112d366ffc79f7110cb04f135c2a8b176c263f0a75eb768206d9bd462893d45504b0e58aa9e127fdcafb02300eab1666e4616aa654d457dd SHA512 a01baf3eaa02f02af42bfcf6dcf24f166351bf1c09601495617c81e41def23210573bad40a344270f40c5deb881d06863536abac2a6481930766a6a56335fb44 EBUILD llvm-common-10.0.1.ebuild 588 BLAKE2B cd416d913d8ef3f7abc35f4d4db088cb116ba1881b6ce10760ad6a7302b91cc128c560ddf9b7d4ba0acbbbf9c88f2fdc57ddb15e117254d4feec03a601a7fb24 SHA512 c0e63e8e0b26e33133aa0982b21fef306e3d07ad07a9d9e6046e5dbe782162ec8ec701064d0db1aa741d61b6146854cd1de2a352938e6b579be22a21dde753fe EBUILD llvm-common-11.1.0.ebuild 603 BLAKE2B 0a7273b73b30e1cfb707d232c8634368edf0c10ec938c78544c65ee8553f0916a271fbdacbd358fbafc8d02f1f3e2d8f48dc4ff5b77ef9f5d5f80ef3d2e05eb3 SHA512 520efa24caa6415e82461362659b7db6ea11d4bc3b6b93105cbdd45ce0f46dc35f2b14151425e989a45656e93a5d7b9a3288ff55ef0d585b4b376dfcd5908067 EBUILD llvm-common-12.0.0.ebuild 609 BLAKE2B 2faa36404e10c224574c12300a941de17ef147a0574a95b5c3296ebcd607b705dee123620ba335e98a66846a2989a37a2f6a53330c9f1a5fb6ee14ae4bcf5aa9 SHA512 236aa7322479eec3d1c442998fbbc235f277c559bd060ab1655cbd8e172de5a1fc603b56390bbba0e027d62fc46d2d781b7680daa29f62633230fd167f9f9a95 EBUILD llvm-common-12.0.1.ebuild 612 BLAKE2B c0c69e45e0a291ac7648d29e5fe115945edc767d58c933d25e5f13b0566ae590993283dbb8e13c702eed030c1e7dfc549cffb7730337bcc986cfe2fb9f46fbd5 SHA512 6f7f7ad3f9c4dc7caa358d54c0cec553c145c20e4b2f9d43d1bc5cc4a3aceb1e7aa4c8c317424f00af97225e25a71dcd3961e411836aa41d3dd595c6b299b567 EBUILD llvm-common-13.0.0.9999.ebuild 529 BLAKE2B 1fb911ccad47efb5abf020ffb55999c598e2f3e3184f2aedf4083d99fd7b6c87370362f1bddfce76b3ed94da5bfa6df1bbc38161104dbd49892e0e5fe7f42169 SHA512 bbbde7b5ea8352ec4cb6953417b3f85374a0ad338aecb0794ff4557f9c58bc1974fbc1defb3c7be80adaca7184271b17a11bfc711dce269f4cee74b7a2c19ad7 EBUILD llvm-common-13.0.0_rc1.ebuild 529 BLAKE2B 1fb911ccad47efb5abf020ffb55999c598e2f3e3184f2aedf4083d99fd7b6c87370362f1bddfce76b3ed94da5bfa6df1bbc38161104dbd49892e0e5fe7f42169 SHA512 bbbde7b5ea8352ec4cb6953417b3f85374a0ad338aecb0794ff4557f9c58bc1974fbc1defb3c7be80adaca7184271b17a11bfc711dce269f4cee74b7a2c19ad7 +EBUILD llvm-common-13.0.0_rc2.ebuild 529 BLAKE2B 1fb911ccad47efb5abf020ffb55999c598e2f3e3184f2aedf4083d99fd7b6c87370362f1bddfce76b3ed94da5bfa6df1bbc38161104dbd49892e0e5fe7f42169 SHA512 bbbde7b5ea8352ec4cb6953417b3f85374a0ad338aecb0794ff4557f9c58bc1974fbc1defb3c7be80adaca7184271b17a11bfc711dce269f4cee74b7a2c19ad7 EBUILD llvm-common-14.0.0.9999.ebuild 529 BLAKE2B 1fb911ccad47efb5abf020ffb55999c598e2f3e3184f2aedf4083d99fd7b6c87370362f1bddfce76b3ed94da5bfa6df1bbc38161104dbd49892e0e5fe7f42169 SHA512 bbbde7b5ea8352ec4cb6953417b3f85374a0ad338aecb0794ff4557f9c58bc1974fbc1defb3c7be80adaca7184271b17a11bfc711dce269f4cee74b7a2c19ad7 MISC metadata.xml 216 BLAKE2B fe5e49887842aa513fbf1f2e09bed09a884d531fd21bdaeb2d389e8bf590b6c0e7063f0af98f66e2db129308ab0f0804ba327c3c752bbb4c900c59ac109d99aa SHA512 3485598147c953e72e1785693a489a7e7d73d59620b76054db9c0ce95d8bfa0e8ffec29da7f7a9d73a32e5b77eac07ca3306c56a972dc57fd89d477edaebf3d5 diff --git a/sys-devel/llvm-common/llvm-common-13.0.0_rc2.ebuild b/sys-devel/llvm-common/llvm-common-13.0.0_rc2.ebuild new file mode 100644 index 000000000000..53511a0a20e3 --- /dev/null +++ b/sys-devel/llvm-common/llvm-common-13.0.0_rc2.ebuild @@ -0,0 +1,27 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit llvm.org + +DESCRIPTION="Common files shared between multiple slots of LLVM" +HOMEPAGE="https://llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" +SLOT="0" +KEYWORDS="" +IUSE="" + +RDEPEND="!sys-devel/llvm:0" + +LLVM_COMPONENTS=( llvm/utils/vim ) +llvm.org_set_globals + +src_install() { + insinto /usr/share/vim/vimfiles + doins -r */ + # some users may find it useful + newdoc README README.vim + dodoc vimrc +} diff --git a/sys-devel/llvm-roc/Manifest b/sys-devel/llvm-roc/Manifest index d328fc6325f1..8e4fedf9a975 100644 --- a/sys-devel/llvm-roc/Manifest +++ b/sys-devel/llvm-roc/Manifest @@ -7,6 +7,7 @@ AUX llvm-roc-4.1.0-fix-missing-include.patch 665 BLAKE2B f1bf71ef746cb7bf2671e88 AUX llvm-roc-4.2.0-add_Object.patch 439 BLAKE2B c59ab50959d94ea04d63b734d580f1e91e6fc12bab5ff94b2322a28388ffb2e9e2bd26905dc3095bc75c57248b6e9a0e8913a1d02054b06c7e5e3e72a05add93 SHA512 ed2ffebd3c79f2dbcdb77cbacffc9a546b35e11a7c523d524ad74b6b69eab7fca91e0d22af09bac42284865da1a332292dbe8a3df968e4364baf55996ea05823 AUX llvm-roc-4.2.0-current_pos.patch 1217 BLAKE2B 693e79cb895918f5e1a56be8d6624c049e8aa5640c55c34fc3fe27f053b7642670310ece321548df58f23e73d145f00d5c95b1e462eee008070cf6a2fde1c66c SHA512 fa8f773ba230e01f83526e4ae644fb2e7aceae99720cb5219c1b22baaabc5008f9b0151aee4c44ba9a4415ef421a8bfeb268302ee70e8c56428bf56c08b15903 AUX llvm-roc-4.2.0-cyclades.patch 3703 BLAKE2B 3250b2da548ffe759155fb673f0f81cfba1a918a8337aac72c8190edde18c0d14610b9734ac47c9e47570c35c6c28a525045f48acb446f70e7b6aa0706daab72 SHA512 694c38775a6353eba3c5bdcc39e2884a913f72b7a35dd5285ceed0ddf89456c9ca89fa2f5d801b6f4aa44f1301e3ceeb65f1641cd92d5128a91ebce5f42a261e +AUX llvm-roc-4.3.0-hip-location.patch 7128 BLAKE2B 6756bcad1c0bdef0729d3e7f2c6ea3468777623fb1493209956f436e9f234a1728e052c31ff064f8125c72d2a8cf68f425f76fb21cecf02680e999a6d5e7e41b SHA512 09f42ce7a37e072aa813036b78efd38cdaee54a1155fb347bf22f3f9f87441a6af83014fbc798f4d6d11966f40cf9c9fe6d3a8662b58be7859ab5b167eee37c2 DIST llvm-rocm-ocl-3.10.0.tar.gz 123600166 BLAKE2B 9b69dab6c7d1a8dfe0d90c76b54446ec7f8ef6e59c74ad328208ac07dbf8836ae412dc5c32fdcbfc926a2488e81cd8afef71c3ebca6cd8ff745205028ab380d8 SHA512 3bb7dac13d89cadfb61a231564155f49021437b7c35eae8735b88ceae4a23b7950643f17e3bfebb0868621297202a04d41120d50ea52b6ad8980dabe9bc75509 DIST llvm-rocm-ocl-3.7.0.tar.gz 116973132 BLAKE2B c1cc8a3b95292d726626d3cb59ec1b96549682bfcbec16030e47cf1318c6ea01bc76f3349f012ce4f1e4d8b9fe192c51a025c2d08cf593622c61fe7c61969ba6 SHA512 0626075bedb3898c96c0bb0be7a2aba4662050a1c738115f661bedc03d744ace7a4581b55c6325060740c13a0e50e72e09272bb02c1186c2c4a40fc9b961dcbe DIST llvm-rocm-ocl-3.8.0.tar.gz 117004300 BLAKE2B 13c3213f0fb951fb9d574e8f6d76bb6c632fecadfe93dbe68a9720baa22e35aa3269deef8b533c5a5ff50a2c1ee3dd7a1ea0fae4b8ab8573ec5bfc5ca5d04f4f SHA512 4eca387a132c9d1237ebec7c80319e99c80088766209d05a697d09890f4a82c56ba5f48a5c8c8749bb051c177bb5eab67e00405b04d3191681d0ac7cf1ae868c @@ -27,5 +28,5 @@ EBUILD llvm-roc-4.0.1.ebuild 2344 BLAKE2B d195d63018e995832f513b50ad0f2ac7563492 EBUILD llvm-roc-4.1.0.ebuild 2353 BLAKE2B 0ad6a859369212effe46aa857af8902d2be4113ff00b7760c79c4372c31f4c08e217b928fa06938e9aa9f4859677c6dc7b6624fe19b42b1477c238ec31c2b0df SHA512 2075d70c1d396a7a09a570480dfe054236ec987bf2b95059a85a0011e2c82f9dbc0d0a66ec61a93b5954ecfd5a6061cf742b51edf574754e3876e92733d458be EBUILD llvm-roc-4.1.1.ebuild 2392 BLAKE2B 6991a50a82746c051c1084f0e4794c31347fc792a7da6ba791cc09fe16de7394cdf70edc50da73db0db8db5e554c6d8cd41f087c47b9dec0d60bb9f8ac98f9fb SHA512 489431911aa16544645387b13a6296000b7171bd0910065bd778d87ef5b1db33f26d40ca4d6ea88998a7ed932603ceba41eea5c11b1ffb09890c5d530f64b644 EBUILD llvm-roc-4.2.0.ebuild 2366 BLAKE2B 91003a3a21fc407c8546b4984daf617414877b61b83bfa20ddad15f64582b3076e744d42040d896c3afec6ca9e9a06433035883775d72841914c48b6a60546b8 SHA512 c149083879e100e8db6125c9d5ce839e3cf15e932b49378be4351da1e5213369b18a428b681d7dd1fd53aa1e0c9ec24e6d8cc2c59a8fd748395764473b5bedd4 -EBUILD llvm-roc-4.3.0.ebuild 2394 BLAKE2B 082476642b71e1985d9993a9f031cd4bc05814ef070c174906ed2799874e735010f081b656fe54abe802e79cf8e06a73a39ffe1ac103c48b977eb19869ea950f SHA512 70ddf87455d9a96fb6a0b9045516a72041ebd0070a4b4d342226de3783aaf1efeb5e8f8addaf3a932448228e82610bf8a896bf9fbf2450a6935a91f2ebcc0ba8 +EBUILD llvm-roc-4.3.0-r1.ebuild 2447 BLAKE2B f8c8605942225d53517c373cc42e6f6ca73000a47415ad89fdf8a6095a05637715be1d7636b388a82f7040db5e256d9a2a0a206a6956de6ca4fa7b8884e9b637 SHA512 fe11f3b4a2ba24cdb068fc4ba8a0a0f0b8bb72a3d42fc0701d3d6fdf1cad9fb9f0d8f458da987a14601102a095eccb1ec7dac36a1863e19d58cdc2722325cc86 MISC metadata.xml 469 BLAKE2B a1e09f1367584ac91c7ff11e1960ea9bc9fb4cc91f6aba026c62bc8eda0d73c63d9cac2307c0acc45a0d6edad2c42dfe48b62ce7186e97eeaa431cd92e49efb9 SHA512 80825c579b65284d97c97ed7988330141c9c5587e3b95e22c28908b98cf010298b75dc04b5e2ccfe38cee22f6ef916c9226f7db4c604a4b4dde2b2ff6c755a37 diff --git a/sys-devel/llvm-roc/files/llvm-roc-4.3.0-hip-location.patch b/sys-devel/llvm-roc/files/llvm-roc-4.3.0-hip-location.patch new file mode 100644 index 000000000000..1fe93a33db36 --- /dev/null +++ b/sys-devel/llvm-roc/files/llvm-roc-4.3.0-hip-location.patch @@ -0,0 +1,189 @@ +replace hardcoded hip finder with Gentoo paths. + +It is not necessary to check HIP runtime each time. + +Author: Benda Xu <heroxbd@gentoo.org> +Author: Yiyang Wu <xgreenlandforwyy@gmail.com> + +--- orig/clang/lib/Driver/ToolChains/AMDGPU.cpp ++++ llvm-project-rocm-4.3.0/clang/lib/Driver/ToolChains/AMDGPU.cpp +@@ -165,133 +165,8 @@ bool RocmInstallationDetector::parseHIPV + /// cached and populated only once. + const SmallVectorImpl<RocmInstallationDetector::Candidate> & + RocmInstallationDetector::getInstallationPathCandidates() { +- +- // Return the cached candidate list if it has already been populated. +- if (!ROCmSearchDirs.empty()) +- return ROCmSearchDirs; +- +- auto DoPrintROCmSearchDirs = [&]() { +- if (PrintROCmSearchDirs) +- for (auto Cand : ROCmSearchDirs) { +- llvm::errs() << "ROCm installation search path"; +- if (Cand.isSPACK()) +- llvm::errs() << " (Spack " << Cand.SPACKReleaseStr << ")"; +- llvm::errs() << ": " << Cand.Path << '\n'; +- } +- }; +- +- // For candidate specified by --rocm-path we do not do strict check, i.e., +- // checking existence of HIP version file and device library files. +- if (!RocmPathArg.empty()) { +- ROCmSearchDirs.emplace_back(RocmPathArg.str()); +- DoPrintROCmSearchDirs(); +- return ROCmSearchDirs; +- } else if (const char *RocmPathEnv = ::getenv("ROCM_PATH")) { +- if (!StringRef(RocmPathEnv).empty()) { +- ROCmSearchDirs.emplace_back(RocmPathEnv); +- DoPrintROCmSearchDirs(); +- return ROCmSearchDirs; +- } +- } +- +- // Try to find relative to the compiler binary. +- const char *InstallDir = D.getInstalledDir(); +- +- // Check both a normal Unix prefix position of the clang binary, as well as +- // the Windows-esque layout the ROCm packages use with the host architecture +- // subdirectory of bin. +- auto DeduceROCmPath = [](StringRef ClangPath) { +- // Strip off directory (usually bin) +- StringRef ParentDir = llvm::sys::path::parent_path(ClangPath); +- StringRef ParentName = llvm::sys::path::filename(ParentDir); +- +- // Some builds use bin/{host arch}, so go up again. +- if (ParentName == "bin") { +- ParentDir = llvm::sys::path::parent_path(ParentDir); +- ParentName = llvm::sys::path::filename(ParentDir); +- } +- +- // Detect ROCm packages built with SPACK. +- // clang is installed at +- // <rocm_root>/llvm-amdgpu-<rocm_release_string>-<hash>/bin directory. +- // We only consider the parent directory of llvm-amdgpu package as ROCm +- // installation candidate for SPACK. +- if (ParentName.startswith("llvm-amdgpu-")) { +- auto SPACKPostfix = +- ParentName.drop_front(strlen("llvm-amdgpu-")).split('-'); +- auto SPACKReleaseStr = SPACKPostfix.first; +- if (!SPACKReleaseStr.empty()) { +- ParentDir = llvm::sys::path::parent_path(ParentDir); +- return Candidate(ParentDir.str(), /*StrictChecking=*/true, +- SPACKReleaseStr); +- } +- } +- +- // Some versions of the rocm llvm package install to /opt/rocm/llvm/bin +- // Some versions of the aomp package install to /opt/rocm/aomp/bin +- if (ParentName == "llvm" || ParentName.startswith("aomp")) +- ParentDir = llvm::sys::path::parent_path(ParentDir); +- +- return Candidate(ParentDir.str(), /*StrictChecking=*/true); +- }; +- +- // Deduce ROCm path by the path used to invoke clang. Do not resolve symbolic +- // link of clang itself. +- ROCmSearchDirs.emplace_back(DeduceROCmPath(InstallDir)); +- +- // Deduce ROCm path by the real path of the invoked clang, resolving symbolic +- // link of clang itself. +- llvm::SmallString<256> RealClangPath; +- llvm::sys::fs::real_path(D.getClangProgramPath(), RealClangPath); +- auto ParentPath = llvm::sys::path::parent_path(RealClangPath); +- if (ParentPath != InstallDir) +- ROCmSearchDirs.emplace_back(DeduceROCmPath(ParentPath)); +- +- // Device library may be installed in clang resource directory. +- ROCmSearchDirs.emplace_back(D.ResourceDir, +- /*StrictChecking=*/true); +- +- ROCmSearchDirs.emplace_back(D.SysRoot + "/opt/rocm", +- /*StrictChecking=*/true); +- +- // Find the latest /opt/rocm-{release} directory. +- std::error_code EC; +- std::string LatestROCm; +- llvm::VersionTuple LatestVer; +- // Get ROCm version from ROCm directory name. +- auto GetROCmVersion = [](StringRef DirName) { +- llvm::VersionTuple V; +- std::string VerStr = DirName.drop_front(strlen("rocm-")).str(); +- // The ROCm directory name follows the format of +- // rocm-{major}.{minor}.{subMinor}[-{build}] +- std::replace(VerStr.begin(), VerStr.end(), '-', '.'); +- V.tryParse(VerStr); +- return V; +- }; +- for (llvm::vfs::directory_iterator +- File = D.getVFS().dir_begin(D.SysRoot + "/opt", EC), +- FileEnd; +- File != FileEnd && !EC; File.increment(EC)) { +- llvm::StringRef FileName = llvm::sys::path::filename(File->path()); +- if (!FileName.startswith("rocm-")) +- continue; +- if (LatestROCm.empty()) { +- LatestROCm = FileName.str(); +- LatestVer = GetROCmVersion(LatestROCm); +- continue; +- } +- auto Ver = GetROCmVersion(FileName); +- if (LatestVer < Ver) { +- LatestROCm = FileName.str(); +- LatestVer = Ver; +- } +- } +- if (!LatestROCm.empty()) +- ROCmSearchDirs.emplace_back(D.SysRoot + "/opt/" + LatestROCm, +- /*StrictChecking=*/true); +- +- DoPrintROCmSearchDirs(); +- return ROCmSearchDirs; ++ ROCmSearchDirs.emplace_back(D.SysRoot + "/usr", /*StrictChecking=*/true); ++ return ROCmSearchDirs; + } + + RocmInstallationDetector::RocmInstallationDetector( +@@ -423,42 +298,7 @@ void RocmInstallationDetector::detectDev + } + + void RocmInstallationDetector::detectHIPRuntime() { +- SmallVector<Candidate, 4> HIPSearchDirs; +- if (!HIPPathArg.empty()) +- HIPSearchDirs.emplace_back(HIPPathArg.str(), /*StrictChecking=*/true); +- else +- HIPSearchDirs.append(getInstallationPathCandidates()); +- auto &FS = D.getVFS(); +- +- for (const auto &Candidate : HIPSearchDirs) { +- InstallPath = Candidate.Path; +- if (InstallPath.empty() || !FS.exists(InstallPath)) +- continue; +- // HIP runtime built by SPACK is installed to +- // <rocm_root>/hip-<rocm_release_string>-<hash> directory. +- auto SPACKPath = findSPACKPackage(Candidate, "hip"); +- InstallPath = SPACKPath.empty() ? InstallPath : SPACKPath; +- +- BinPath = InstallPath; +- llvm::sys::path::append(BinPath, "bin"); +- IncludePath = InstallPath; +- llvm::sys::path::append(IncludePath, "include"); +- LibPath = InstallPath; +- llvm::sys::path::append(LibPath, "lib"); +- +- llvm::ErrorOr<std::unique_ptr<llvm::MemoryBuffer>> VersionFile = +- FS.getBufferForFile(BinPath + "/.hipVersion"); +- if (!VersionFile && Candidate.StrictChecking) +- continue; +- +- if (HIPVersionArg.empty() && VersionFile) +- if (parseHIPVersionFile((*VersionFile)->getBuffer())) +- continue; +- +- HasHIPRuntime = true; +- return; +- } +- HasHIPRuntime = false; ++ HasHIPRuntime = true; + } + + void RocmInstallationDetector::print(raw_ostream &OS) const { diff --git a/sys-devel/llvm-roc/llvm-roc-4.3.0.ebuild b/sys-devel/llvm-roc/llvm-roc-4.3.0-r1.ebuild index f055da5b9391..34567ada1922 100644 --- a/sys-devel/llvm-roc/llvm-roc-4.3.0.ebuild +++ b/sys-devel/llvm-roc/llvm-roc-4.3.0-r1.ebuild @@ -33,6 +33,7 @@ src_prepare() { cd "${WORKDIR}/llvm-project-rocm-${PV}" || die eapply "${FILESDIR}/${PN}-3.0.0-add_libraries.patch" eapply "${FILESDIR}/${PN}-4.0.0-remove-isystem-usr-include.patch" + eapply "${FILESDIR}/${PN}-4.3.0-hip-location.patch" eapply "${FILESDIR}/${PN}-4.2.0-cyclades.patch" if [[ -n ${EPREFIX} ]]; then diff --git a/sys-devel/llvm/Manifest b/sys-devel/llvm/Manifest index 3c0a62ac8a3e..f79a31a06af8 100644 --- a/sys-devel/llvm/Manifest +++ b/sys-devel/llvm/Manifest @@ -6,17 +6,20 @@ DIST llvm-gentoo-patchset-10.0.1-3.tar.xz 9244 BLAKE2B f568b8eef92f048f08fb6618e DIST llvm-gentoo-patchset-11.1.0-1.tar.xz 4032 BLAKE2B e69138a422e315b31a3d9c11faa4ae1ddf1bf9092cee2db0de4d2adef81fd802973488293aab48b764402b51996893b17ca03249ef4620848a576d1f6cdb9698 SHA512 e1c5504dab6c5db9fdf4addfeb12316f22d0258717ba551a9b7b3ba37919491fb6011ac5cca1e793b7509d5c1c186bc6bc4213f7d6155d190612492b216f979b DIST llvm-gentoo-patchset-12.0.0-1.tar.xz 6364 BLAKE2B bcf96dad8300cdc3e1f416cb90935ae3b1359efc5687118b5a9bbee25de7087a266250f50c6f2abd18f4efeeec19354f59513c8fdd1d61c2cfc8cc2f0115e514 SHA512 76201e169f71a8d568365ffeafcfd37138e74b0536826f47eb6ce89c2280586f10426917e851f99bfb20477cd828cc40daa8cb7a62959981620fbd81e1b22ee1 DIST llvm-gentoo-patchset-12.0.1.tar.xz 5280 BLAKE2B 963d005bc7b636570be90eb841ac5bcaeb927538cc7de27683167111a17d6496677c7517de2ecfaf14b5d8ac22bad357be490b8a2ed9aba502fd5f447ecc99e9 SHA512 fc7c38e671555751650299c3a8bee44d5c7f26e11b68d5538c507fb7fe9ff2d349bdcd43bce90a448a747f082d523b3849d6bcda5e3ae2e998edcb926d6aa249 +DIST llvm-gentoo-patchset-13.0.0-rc2.tar.xz 5556 BLAKE2B e6c7ecfe8f842edc4d4f30a20c66973519182ecb46e21fb20b6c5fcb6d54cdef830fcb120a405b77f1332e3557acbbbbfa99170b20d17f137e0a63b2d0dc1258 SHA512 ddeaf1d07f0ba893ce93e5fe1eff1c0716769a7879fc503c397f4db7becb363f94747f59b6d53c204df73a93954fb0ca5aae6ad544ce55c964c4bf441a410cd2 DIST llvm-gentoo-patchset-9999-1.tar.xz 4032 BLAKE2B b9413484dafed8ae0c68c2c164b45fd07bb8d5d0898f03abe118fd2120ffcb1fb6c949de9649a97c2e8105f24b9d131a725c67c0a502ca4d4d192c1a0d65f49d SHA512 e64449eeaf756c5bd945109937b84ba4bd8a015222bd792d39cf3947871e87571a4ca57814790e51544cb05ad4c2d1f044e818e4caaac7c2e2a02cb1aa290fcc DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3c8a6ff1a1f152f94bfe362c07884339fe571ff7fe903ed3b3deb150b2fa868c387887a0dea2930dc08b81db71a5b1 SHA512 48078fff9293a87f1a973f3348f79506f04c3da774295f5eb67d74dd2d1aa94f0973f8ced3f4ab9e8339902071f82c603b43d5608ad7227046c4da769c5d2151 DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81 DIST llvmorg-12.0.0.tar.gz 134226215 BLAKE2B f9c3ba8c58571855caa4f206fd285c9b5be66672fb0814cb8bc0964a051f57f5d35013aa1e27cbda502652b37df1ec23474129109e76a42066847860db441dbe SHA512 0cff02155c5ac0d6db2b72d60d9819d5b5dd859663b45f721b1c7540239c2fceb1f57d9173f6870c49de851c242ed8e85c5c6d6577a1f8092a7c5dcd12513b26 DIST llvmorg-12.0.1.tar.gz 134259748 BLAKE2B f41de787bc73ff2edfda1b22cc8602be6f65f37dd9e4c8888533cfa8c3ccdcf4f108aaab9de23ab0ab987966eb160f2a553a0bdff99461e71ddd5bfcd086090d SHA512 6eb0dc18e2c25935fabfdfc48b0114be0939158dfdef7b85b395fe2e71042672446af0e68750aae003c9847d10d1f63316fe95d3df738d18f249174292b1b9e1 DIST llvmorg-13.0.0-rc1.tar.gz 147235597 BLAKE2B 089fed119dee8a16f278cebb13808bd5a95629cc87ebee3050225cc041b78fee51acacc5bcc913d4a99e830bfe5774b19a04a845293c5087dd2a8c9d94d2fde9 SHA512 6e307e2c2dcb7ff41d11ee29d69f41c0ef55f200999847a3a924a2e773fc9c2160015746789af8b723c628bd232f97fce63370209bd0065491d80b0cc0017e85 +DIST llvmorg-13.0.0-rc2.tar.gz 147267736 BLAKE2B 153bf7320f2aa911112d366ffc79f7110cb04f135c2a8b176c263f0a75eb768206d9bd462893d45504b0e58aa9e127fdcafb02300eab1666e4616aa654d457dd SHA512 a01baf3eaa02f02af42bfcf6dcf24f166351bf1c09601495617c81e41def23210573bad40a344270f40c5deb881d06863536abac2a6481930766a6a56335fb44 EBUILD llvm-10.0.1.ebuild 11490 BLAKE2B 40960dd1109655157b04396283d704ea1a0af35ffd09ec9bab2718d62fde888508246ea77a473cd7512c1818b5a3a8d7b72e5786d64faf43bd42ff823b765e22 SHA512 75767e94d55ca1f9f7a769abfc0c916388e69ccd51620c8083f8bb184bf9649d2b9c75efaed46d96f8e0932cb3e6beb71d51a3b1565243218a3efd5144238296 EBUILD llvm-11.1.0.ebuild 12504 BLAKE2B 7f22ab387fab31e11d554667b1b183f5b66203f601096c130642500f877f2af473b31a0cba96da93d9c85d50e2fbafb7f46a0ff6bf2f96a0bd41266ddc04dc8f SHA512 716b8474077279b821140d2defa5f1dd5b2ab7cf09aeb27907410a184a701ecbf99f545622e68d0a81a762c3b5cbc6ff3b30415a331d38dac8fb72f37a3147bf EBUILD llvm-12.0.0.ebuild 12772 BLAKE2B a41ff10ab546eecb3b37c32ad55ac317b7d966f6a3b0cad7c3d5263a43919df575f76e0f60498e03e0fda4e6eb61183d4aa645621c946cd3aad5d05908209eb2 SHA512 6ca48dfcb3b975f0d837fd6de1b1a02ff199fe615ef0524ff8cfea95ca9cb8b25339c14fc9c746081cb4d19566ffb9d9c5dac42e650efc56174bf5ffeca80fb5 EBUILD llvm-12.0.1.ebuild 12624 BLAKE2B 6805d822bc72cac0c028c88848662f0ca4e23a9a9bd7ae55e48a2e55a62c4830cae727fc007b99e351258b8507c85faaccdccbd3c9fe453e298746b198e3878d SHA512 9ce574d793324cb126022f170fa0111460233dc0a9e1df69604ee028e018a29affc013a41defbbd164cfbcd44a146cc3158c8d9f2d9ca32a60e1f43f1d209795 EBUILD llvm-13.0.0.9999.ebuild 12589 BLAKE2B 44bca6c287c2d804f6701a8ac8a953624e8418d1ead94450b7b8b5f0ff5192bf6c027ca4f290c8a0e6bc96badd50be68e3fa2765f8cc535ddbd2bd8a39530b2d SHA512 b3e11ab52ca7309933d7cb66e3cb5c85c934c5e417e271d3c8c14879a1afc190b7a49f68a5abc2d847f1883a17f85cd3e9ab42b358b530424d4314707063fce9 EBUILD llvm-13.0.0_rc1.ebuild 12589 BLAKE2B 44bca6c287c2d804f6701a8ac8a953624e8418d1ead94450b7b8b5f0ff5192bf6c027ca4f290c8a0e6bc96badd50be68e3fa2765f8cc535ddbd2bd8a39530b2d SHA512 b3e11ab52ca7309933d7cb66e3cb5c85c934c5e417e271d3c8c14879a1afc190b7a49f68a5abc2d847f1883a17f85cd3e9ab42b358b530424d4314707063fce9 +EBUILD llvm-13.0.0_rc2.ebuild 12593 BLAKE2B b1a89a4d89292e48f7bfb092c7b560cd8c8ee3d086e00e8ee1897023fbab48f43e81f89d44df263ace43ce71bc928f6357ac8bb75f80e325db169bdecc128e3e SHA512 e6de5707273c49c5141289dd8a08e3142de63c3c4cb6340465c6de41ebc9f46dcbaaa4944c1c2c1b41be21c9b457f2374d2a26a64469c393f5e2df0be9d949fc EBUILD llvm-14.0.0.9999.ebuild 12589 BLAKE2B 44bca6c287c2d804f6701a8ac8a953624e8418d1ead94450b7b8b5f0ff5192bf6c027ca4f290c8a0e6bc96badd50be68e3fa2765f8cc535ddbd2bd8a39530b2d SHA512 b3e11ab52ca7309933d7cb66e3cb5c85c934c5e417e271d3c8c14879a1afc190b7a49f68a5abc2d847f1883a17f85cd3e9ab42b358b530424d4314707063fce9 MISC metadata.xml 2563 BLAKE2B ca85030788fb213fc891d895238fd75562cdd25cc5fe4271d709cb1c00ef56b0e8b367dc70cc18f7d185d6fbdb57333e219a984220b60141d28fb4784b2cb94a SHA512 8de68ee7f964e6eb2613bd2ff584f834e0f5a3ae8b303b5f2f10fda718a87af9b8ddfc19399950fe4eb8be515930124ced8018190af0f69da7ec5fe8180a68a2 diff --git a/sys-devel/llvm/llvm-13.0.0_rc2.ebuild b/sys-devel/llvm/llvm-13.0.0_rc2.ebuild new file mode 100644 index 000000000000..cc9415e5e563 --- /dev/null +++ b/sys-devel/llvm/llvm-13.0.0_rc2.ebuild @@ -0,0 +1,521 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{8..10} ) +inherit cmake llvm.org multilib-minimal pax-utils python-any-r1 \ + toolchain-funcs + +DESCRIPTION="Low Level Virtual Machine" +HOMEPAGE="https://llvm.org/" + +# Those are in lib/Targets, without explicit CMakeLists.txt mention +ALL_LLVM_EXPERIMENTAL_TARGETS=( ARC CSKY M68k VE ) +# Keep in sync with CMakeLists.txt +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_}" ) + +# Additional licenses: +# 1. OpenBSD regex: Henry Spencer's license ('rc' in Gentoo) + BSD. +# 2. xxhash: BSD. +# 3. MD5 code: public-domain. +# 4. ConvertUTF.h: TODO. + +LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA BSD public-domain rc" +SLOT="$(ver_cut 1)" +KEYWORDS="" +IUSE="debug doc exegesis gold libedit +libffi ncurses test xar xml z3 + kernel_Darwin ${ALL_LLVM_TARGETS[*]}" +REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )" +RESTRICT="!test? ( test )" + +RDEPEND=" + sys-libs/zlib:0=[${MULTILIB_USEDEP}] + exegesis? ( dev-libs/libpfm:= ) + 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}] ) + xar? ( app-arch/xar ) + xml? ( dev-libs/libxml2:2=[${MULTILIB_USEDEP}] ) + z3? ( >=sci-mathematics/z3-4.7.1:0=[${MULTILIB_USEDEP}] )" +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 + >=sys-devel/binutils-apple-5.1 + ) + doc? ( $(python_gen_any_dep ' + dev-python/recommonmark[${PYTHON_USEDEP}] + dev-python/sphinx[${PYTHON_USEDEP}] + ') ) + libffi? ( virtual/pkgconfig ) + ${PYTHON_DEPS}" +# There are no file collisions between these versions but having :0 +# installed means llvm-config there will take precedence. +RDEPEND="${RDEPEND} + !sys-devel/llvm:0" +PDEPEND="sys-devel/llvm-common + gold? ( >=sys-devel/llvmgold-${SLOT} )" + +LLVM_COMPONENTS=( llvm ) +LLVM_MANPAGES=build +LLVM_PATCHSET=13.0.0-rc2 +llvm.org_set_globals + +python_check_deps() { + use doc || return 0 + + has_version -b "dev-python/recommonmark[${PYTHON_USEDEP}]" && + has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]" +} + +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 [[ ${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 +} + +src_prepare() { + # disable use of SDK on OSX, bug #568758 + sed -i -e 's/xcrun/false/' utils/lit/lit/util.py || die + + # Update config.guess to support more systems + cp "${BROOT}/usr/share/gnuconfig/config.guess" cmake/ || die + + # Verify that the live ebuild is up-to-date + check_live_ebuild + + llvm.org_src_prepare +} + +# Is LLVM being linked against libc++? +is_libcxx_linked() { + local code='#include <ciso646> +#if defined(_LIBCPP_VERSION) + HAVE_LIBCXX +#endif +' + local out=$($(tc-getCXX) ${CXXFLAGS} ${CPPFLAGS} -x c++ -E -P - <<<"${code}") || return 1 + + [[ ${out} == *HAVE_LIBCXX* ]] +} + +get_distribution_components() { + local sep=${1-;} + + local out=( + # shared libs + LLVM + LTO + Remarks + + # tools + llvm-config + + # common stuff + cmake-exports + llvm-headers + + # libraries needed for clang-tblgen + LLVMDemangle + LLVMSupport + LLVMTableGen + ) + + if multilib_is_native_abi; then + out+=( + # utilities + llvm-tblgen + FileCheck + llvm-PerfectShuffle + count + not + yaml-bench + + # tools + bugpoint + dsymutil + llc + lli + lli-child-target + llvm-addr2line + llvm-ar + llvm-as + llvm-bcanalyzer + llvm-bitcode-strip + llvm-c-test + llvm-cat + llvm-cfi-verify + llvm-config + llvm-cov + llvm-cvtres + llvm-cxxdump + llvm-cxxfilt + llvm-cxxmap + llvm-diff + llvm-dis + llvm-dlltool + llvm-dwarfdump + llvm-dwp + llvm-exegesis + llvm-extract + llvm-gsymutil + llvm-ifs + llvm-install-name-tool + llvm-jitlink + llvm-jitlink-executor + llvm-lib + llvm-libtool-darwin + llvm-link + llvm-lipo + llvm-lto + llvm-lto2 + llvm-mc + llvm-mca + llvm-ml + llvm-modextract + llvm-mt + llvm-nm + llvm-objcopy + llvm-objdump + llvm-opt-report + llvm-otool + llvm-pdbutil + llvm-profdata + llvm-profgen + llvm-ranlib + llvm-rc + llvm-readelf + llvm-readobj + llvm-reduce + llvm-rtdyld + llvm-sim + llvm-size + llvm-split + llvm-stress + llvm-strings + llvm-strip + llvm-symbolizer + llvm-tapi-diff + llvm-undname + llvm-windres + llvm-xray + obj2yaml + opt + sancov + sanstats + split-file + verify-uselistorder + yaml2obj + + # python modules + 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-llvm-html + ) + + use gold && out+=( + LLVMgold + ) + fi + + printf "%s${sep}" "${out[@]}" +} + +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=OFF + -DLLVM_BUILD_LLVM_DYLIB=ON + -DLLVM_LINK_LLVM_DYLIB=ON + -DLLVM_DISTRIBUTION_COMPONENTS=$(get_distribution_components) + + # cheap hack: LLVM combines both anyway, and the only difference + # is that the former list is explicitly verified at cmake time + -DLLVM_TARGETS_TO_BUILD="" + -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}" + -DLLVM_BUILD_TESTS=$(usex test) + + -DLLVM_ENABLE_FFI=$(usex libffi) + -DLLVM_ENABLE_LIBEDIT=$(usex libedit) + -DLLVM_ENABLE_TERMINFO=$(usex ncurses) + -DLLVM_ENABLE_LIBXML2=$(usex xml) + -DLLVM_ENABLE_ASSERTIONS=$(usex debug) + -DLLVM_ENABLE_LIBPFM=$(usex exegesis) + -DLLVM_ENABLE_EH=ON + -DLLVM_ENABLE_RTTI=ON + -DLLVM_ENABLE_Z3_SOLVER=$(usex z3) + + -DLLVM_HOST_TRIPLE="${CHOST}" + + -DFFI_INCLUDE_DIR="${ffi_cflags#-I}" + -DFFI_LIBRARY_DIR="${ffi_ldflags#-L}" + # used only for llvm-objdump tool + -DLLVM_HAVE_LIBXAR=$(multilib_native_usex xar 1 0) + + -DPython3_EXECUTABLE="${PYTHON}" + + # disable OCaml bindings (now in dev-ml/llvm-ocaml) + -DOCAMLFIND=NO + ) + + if is_libcxx_linked; then + # Smart hack: alter version suffix -> SOVERSION when linking + # against libc++. This way we won't end up mixing LLVM libc++ + # libraries with libstdc++ clang, and the other way around. + mycmakeargs+=( + -DLLVM_VERSION_SUFFIX="libcxx" + -DLLVM_ENABLE_LIBCXX=ON + ) + fi + +# Note: go bindings have no CMake rules at the moment +# but let's kill the check in case they are introduced +# if ! multilib_is_native_abi || ! use go; then + mycmakeargs+=( + -DGO_EXECUTABLE=GO_EXECUTABLE-NOTFOUND + ) +# fi + + use test && mycmakeargs+=( + -DLLVM_LIT_ARGS="$(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=${build_docs} + -DLLVM_ENABLE_OCAMLDOC=OFF + -DLLVM_ENABLE_SPHINX=${build_docs} + -DLLVM_ENABLE_DOXYGEN=OFF + -DLLVM_INSTALL_UTILS=ON + ) + use gold && mycmakeargs+=( + -DLLVM_BINUTILS_INCDIR="${EPREFIX}"/usr/include + ) + fi + + if tc-is-cross-compiler; then + local tblgen="${EPREFIX}/usr/lib/llvm/${SLOT}/bin/llvm-tblgen" + [[ -x "${tblgen}" ]] \ + || die "${tblgen} not found or usable" + mycmakeargs+=( + -DCMAKE_CROSSCOMPILING=ON + -DLLVM_TABLEGEN="${tblgen}" + ) + fi + + # workaround BMI bug in gcc-7 (fixed in 7.4) + # https://bugs.gentoo.org/649880 + # apply only to x86, https://bugs.gentoo.org/650506 + if tc-is-gcc && [[ ${MULTILIB_ABI_FLAG} == abi_x86* ]] && + [[ $(gcc-major-version) -eq 7 && $(gcc-minor-version) -lt 4 ]] + then + local CFLAGS="${CFLAGS} -mno-bmi" + local CXXFLAGS="${CXXFLAGS} -mno-bmi" + fi + + # LLVM can have very high memory consumption while linking, + # exhausting the limit on 32-bit linker executable + use x86 && local -x LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory" + + # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 + use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" + cmake_src_configure + + multilib_is_native_abi && check_distribution_components +} + +multilib_src_compile() { + cmake_build distribution + + 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_build 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() { + DESTDIR=${D} cmake_build install-distribution + + # move headers to /usr/include for wrapping + rm -rf "${ED}"/usr/include || die + mv "${ED}"/usr/lib/llvm/${SLOT}/include "${ED}"/usr/include || die + + LLVM_LDPATHS+=( "${EPREFIX}/usr/lib/llvm/${SLOT}/$(get_libdir)" ) +} + +multilib_src_install_all() { + local revord=$(( 9999 - ${SLOT} )) + newenvd - "60llvm-${revord}" <<-_EOF_ + PATH="${EPREFIX}/usr/lib/llvm/${SLOT}/bin" + # we need to duplicate it in ROOTPATH for Portage to respect... + ROOTPATH="${EPREFIX}/usr/lib/llvm/${SLOT}/bin" + MANPATH="${EPREFIX}/usr/lib/llvm/${SLOT}/share/man" + LDPATH="$( IFS=:; echo "${LLVM_LDPATHS[*]}" )" + _EOF_ + + docompress "/usr/lib/llvm/${SLOT}/share/man" + llvm_install_manpages +} + +pkg_postinst() { + elog "You can find additional opt-viewer utility scripts in:" + elog " ${EROOT}/usr/lib/llvm/${SLOT}/share/opt-viewer" + elog "To use these scripts, you will need Python along with the following" + elog "packages:" + elog " dev-python/pygments (for opt-viewer)" + elog " dev-python/pyyaml (for all of them)" +} |