diff options
Diffstat (limited to 'sys-devel')
40 files changed, 1283 insertions, 904 deletions
diff --git a/sys-devel/Manifest.gz b/sys-devel/Manifest.gz Binary files differindex d9ea5d70f5ba..937411ff985c 100644 --- a/sys-devel/Manifest.gz +++ b/sys-devel/Manifest.gz diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest index 3c5242ea8c0b..912dd40b6ae5 100644 --- a/sys-devel/binutils/Manifest +++ b/sys-devel/binutils/Manifest @@ -17,5 +17,5 @@ EBUILD binutils-2.32-r2.ebuild 12417 BLAKE2B 0db121dfdf5af96c1884684ab0d8a25d69c EBUILD binutils-2.33.1-r1.ebuild 12152 BLAKE2B 71c89261848ff7d8898c81cd013de9bd9fac9f3853732fb4636c6e420106b74d3f42970d2dc25c2053a71003d898377618fb2c6ef271f993302f3f5c1f4d3d54 SHA512 689498a68f0e802c1468ee3a4df6dfe8ede15dfa797d1983466d01e64f5da26c071f1396d52f25085e5df4075cb2969349f0533eb89a543da224c6c3ed47d4b9 EBUILD binutils-2.34-r1.ebuild 12340 BLAKE2B f4947adc40ef2cd12bc0f95889372fa53166a91b70ad454127f239870524eb6fd334ba6a0ecf1e74163928d46c243c3e8e52e408419faad360e9e5dbfcb54e7c SHA512 32dc8053199384e15b74d1859988e8974164b0376452206face59c8b30e99dfcb030769b0252920c3a8ab2fd943fe292e70b82c9cb79bd0f88c96fbe1f2e48e4 EBUILD binutils-2.34.ebuild 12337 BLAKE2B dc373bf8ef89bf4b81619d16037996e19086859a5f8de8289a0f47bb21a0381990df5d0a912abcc3009213c0c97da8277f9b0bd92d740a529cadf7feda358ded SHA512 be63803f09026d414e77b0a831da5d24526c5c2e0a65649010074acb5410d7ffefd7b861e2ddeb6338356a0a488e0095009240bda7a4f398a5f63add9333e4d8 -EBUILD binutils-9999.ebuild 12148 BLAKE2B 0efe47e54fd54debf514adf269d8151ad7e6932854055becc0ba242da61c2cb17a1f3aa11e7d1edfafc1086e3a4d2a4f6bf69d37a753357f6d3d57cefecee96e SHA512 62b1b9540fbd666eec6c935e24cfc79ce293b89db75690dc7667aa99bceae51e82ff6c495a58a9a4d6283158297877523d798a9f0a802264c669d0308670b076 +EBUILD binutils-9999.ebuild 12188 BLAKE2B f6167e97971971f9264ae921c0b46ae05239547823878a544748b750ed689c6b4c81378cb72b0fb6efc62942ae815d55220af0a5b868725f7b00f42b65f1c499 SHA512 69c89f09a24688b39216027bd8d6ec6a9918d59e351fe5202a4128d6e5b2a3a43f7190eda466dca4d253590a4dd622ca74fc246f788827270a1d61ed0eec37b4 MISC metadata.xml 650 BLAKE2B 5f0547bb9a41a09f28afc7feb1d6f2da32205924d860a88f64a7970a5e24749b961531c023a8647720e119ffbf2bdcab9384f10726a3371a8ec750b808233eaf SHA512 9057a779adcdf1da85c7e26fdd134303e4fe53ba015dda84761f5e4894833ba50f1411c1e96102319479fb1becf6c02e23984737b3660a7c24101d0cf0d404b2 diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild index 7e5b921ee5f7..4cb22a0c7fcf 100644 --- a/sys-devel/binutils/binutils-9999.ebuild +++ b/sys-devel/binutils/binutils-9999.ebuild @@ -8,7 +8,7 @@ inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs DESCRIPTION="Tools necessary to build programs" HOMEPAGE="https://sourceware.org/binutils/" LICENSE="GPL-3+" -IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test" +IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test vanilla" REQUIRED_USE="default-gold? ( gold )" # Variables that can be set here: @@ -101,8 +101,10 @@ src_unpack() { src_prepare() { if [[ ! -z ${PATCH_VER} ]] ; then - einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}" - eapply "${WORKDIR}/patch"/*.patch + if ! use vanilla; then + einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}" + eapply "${WORKDIR}/patch"/*.patch + fi fi # This check should probably go somewhere else, like pkg_pretend. diff --git a/sys-devel/bison/Manifest b/sys-devel/bison/Manifest index 1339102fa7ee..923debec7c6d 100644 --- a/sys-devel/bison/Manifest +++ b/sys-devel/bison/Manifest @@ -6,14 +6,13 @@ DIST bison-3.4.2-patches-01.tar.xz 11152 BLAKE2B a0d0423e034cfa1dc45a542c05667a8 DIST bison-3.4.2.tar.xz 2240532 BLAKE2B fb3d90dc3f21075069684e5d9f8d6982353d909b8c62c4d9925a22319c9f486a4ad7e2629a8932449a3444580ed701357c326aa7cd778a68f66f8eeae70cdac1 SHA512 00d2b37187b93100ec4b220ce2752d12ccf68f9d0d39b380d375d36dd8a22aa1d6e60156918f95e4493f9531c5d42d8fad38fd807307b491c1ca7ca4177823d9 DIST bison-3.5.1-patches-01.tar.xz 9388 BLAKE2B 656cdc4fef308df3bc97c8f452ae75440909ed7eae13a8bdfc6b3b380f9d392ac3c9d300cb1e7a6d5548271b6ac63f5dfef594cbf9ef5322f97024468ed8e757 SHA512 195725726575998ff3d274d723ce3f605f9e1478601904668f165c1d9f628ed94380dfa65e546f12e3fc80b41aae7899774208510f382864dffde8545710f211 DIST bison-3.5.4.tar.xz 2370252 BLAKE2B 38078224f2e8e99210b64948831942f91062c6c9a080bee627f1ab4542f01b15bf2d4ce33a9864ae37cd5fb9bcc21e7e3382f98086698be12e01916640dd11f9 SHA512 92f59122dc4d5cae1debdd5567253f269ef001c98582a5763a2051424fecb78e8710c80a09fc488f6784705e679a8bc82874bc11cc03e4eb83445cb9f418b331 -DIST bison-3.6-patches-01.tar.xz 10140 BLAKE2B 7731f5ed15bd221f75a42961efa8a034383332344474c71db6d1c95bbeff6687f83e4a77f2330000f31787eb78d0826942a648c6f55b084632b2876e5810a5d4 SHA512 0325f4a5cf53ab4a51a4abe22bd53eb4023684d1b3bbe89de8a15769e0c76bc6746aebd36f1efa950f14228d194202b68de28b304260eeada4f85cecd1eb4675 -DIST bison-3.6.2.tar.xz 2468224 BLAKE2B a2a6b0e110de3a18686b174928d3216a671111d1a38a99719d0796788fe34a1508af19a08bb090db2bd84a092be2d5511393399db12a5e856582499c9fe20b0b SHA512 69f5b6d9f28e0fe2d127a86e1315b06f3367c4d1cb667c0f0eee537fd5705d702d2a8db51204d7928db83efa83208cb5f738b27453eac6e2fd5037e8ffd0cd19 DIST bison-3.6.3-patches-01.tar.xz 10316 BLAKE2B a99e12e69334371316e5841f8c86ed716a9fed108800a33099e99f8fe432374259bf5477188d054b6d474bc905f821939691fc97f0c891d17a79968466f0c7e3 SHA512 5c97a183232ad31f231580193ed1853aba18010703b0c22105eaf6834241c9828d180eaafbc5d1da751b2d45a7e8195493e10ca2321b35680b2b3cd4ec39e3ca DIST bison-3.6.3.tar.xz 2471436 BLAKE2B d0cb2b2e05096818f86c0212ef1c90ed7f6898e402e603a02e348b66305564121dde62fdba236e98054d7aca9daf6e9b3164c8885bc8c00d5577a4a3f7d7292c SHA512 8484fcc36f9767b0b5a90ca05e8cd956d38d7c8321038a3ce8b6c2dbf16852d816a03fe09025ad01072d64a2e46a2b42c803313a42e4e3dcc8d4ca6c7f960272 +DIST bison-3.6.4.tar.xz 2472456 BLAKE2B d2efe7ff1a349efe5a8c79eb69aa296dbc7eb9fde549afc91986460f27976e033dd793e904dda2f919f11e011ff6c458805288dff4939dcd1ee20e2b316cb9e6 SHA512 041cd87f4ca6b012031719a49aa81e62d3c0817c6364289732e6a3cb9a0762498760e0f2ce84c03ca9e9b74eb74bdffd1b8b86d2b4a6e4a0d8c8a4b864b672dc EBUILD bison-3.1.ebuild 2482 BLAKE2B 2595a1242d213c2839fd7cf1d3a069b666d3915d1e86a4903ee35136be9018bc5d0a960c9e4c24927c9f0573d76802a764ab8da9157ab399dd000238d196760c SHA512 97f27e6390787b602ad7aad377e1d8313d58036e7b3f3acb141b009bd8327839e2cac72ae3231d8ffed5fbaeb66298c356834956c8ea5665d1b0e674751457db EBUILD bison-3.3.2.ebuild 2604 BLAKE2B 4a634ef94acb4ec6189aa83967232f3b6a29f8408000a733920a8125da22ab2180950cd44eb06c7948cb87080e1fc9ca0ab864666d3ee519056b5820f12fa1c5 SHA512 95b30075d74b742c71cc8efbe9e2c096bc73827bbedc996e5429a9d26e6bd35c2ed6388f60e8f831588014e75868d3165078bab29e18a7970907e8e8a96357dd EBUILD bison-3.4.2.ebuild 2475 BLAKE2B 08355d3475296df4df66d7d8ed336d7bd85e3f856afdb43802afd929784c31b945250ace89f9f33f95238348a54502b3c62bea91cf75eb4becb0dc78fefb3273 SHA512 3a743140947e99949c2fb599ad2ebabc69bb3f773bc70961b0345c3009261b84a8f2bcc7a9612830b80e432957db4e50acbedd2d25c4af4d5436da58a8f97a4c EBUILD bison-3.5.4.ebuild 2487 BLAKE2B 4f9475c770b3ea48b98724599a5abd0846f907c5e37b5b315e4d19a74fb0b17981c1e2911f277132fc9d73e412a630c50b3b5802a3a6eaf39e8f0cf3c0aa1e8e SHA512 7e1e957a90d5244d13559f26c14f23b60b8cc9c23793a84c75cd78af77d28dae338932f9b87b7a3bbd9d3df141d43d1c770bf5611812d8ec1a08449471683285 -EBUILD bison-3.6.2.ebuild 2483 BLAKE2B 88ff7f1aeaa597f162123b63d1c22461d53ae9208cd62de168a678ccbd2439f6e088b55b15f8fe7bffe8a3883b6b7325212e528d6cc17bc25128cd09e1c4c502 SHA512 23d7b9097bfde2d99ccab14eaf1975af5ef2f9116a9e5353534771193baaebd820f105e3088457103628c5f9ab167de506eedda3d4ecd3f98c0961a74ac47924 EBUILD bison-3.6.3.ebuild 2487 BLAKE2B d94993cbdf3645d4bfb6dbe070eea007fdf30cb9881f991cb634b6a32d135376bdf32bd418de61e7940bdd58a2416f61d1375bafc4301b901ead02999f302306 SHA512 08ef2840e4d47baacb015ca7c55494d10314996eb031555df4578c4700bd5ab7bb68911132ad6eb600e0212fa6a7656a389e7281b25af7afa39d9bfa891c2170 +EBUILD bison-3.6.4.ebuild 2487 BLAKE2B d94993cbdf3645d4bfb6dbe070eea007fdf30cb9881f991cb634b6a32d135376bdf32bd418de61e7940bdd58a2416f61d1375bafc4301b901ead02999f302306 SHA512 08ef2840e4d47baacb015ca7c55494d10314996eb031555df4578c4700bd5ab7bb68911132ad6eb600e0212fa6a7656a389e7281b25af7afa39d9bfa891c2170 MISC metadata.xml 253 BLAKE2B 295e9d6d93aaa12af413972e1590c67087801cc09c9aa6b59d4606c0f4106d1dacf2baa9858559083b4c6d91beeef218d0729e8593a33788958da6d2897e8ce2 SHA512 54a9069aeb4165d2dff3d473c8001bc51613aac9dff3f7f5e9971a9891a737a31511ffa11cbd523febe581ac1d9de2bdf2f40410f0c4239138f2ccca3ef15555 diff --git a/sys-devel/bison/bison-3.6.2.ebuild b/sys-devel/bison/bison-3.6.4.ebuild index ae1caa517daa..fd0aba9c77d6 100644 --- a/sys-devel/bison/bison-3.6.2.ebuild +++ b/sys-devel/bison/bison-3.6.4.ebuild @@ -5,7 +5,7 @@ EAPI=7 inherit flag-o-matic -PATCHES="${PN}-3.6-patches-01.tar.xz" +PATCHES="${PN}-3.6.3-patches-01.tar.xz" DESCRIPTION="A general-purpose (yacc-compatible) parser generator" HOMEPAGE="https://www.gnu.org/software/bison/" @@ -33,7 +33,7 @@ DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO ) # ChangeLog-2012 ChangeLog-19 PATCHES=( "${WORKDIR}"/patches/${PN}-3.5-optional-perl.patch #538300 - "${WORKDIR}"/patches/${PN}-3.6-avoid_autoreconf.patch + "${WORKDIR}"/patches/${PN}-3.6.3-avoid_autoreconf.patch ) src_prepare() { diff --git a/sys-devel/clang-common/Manifest b/sys-devel/clang-common/Manifest index 724e28fdbf35..60afa68d8b32 100644 --- a/sys-devel/clang-common/Manifest +++ b/sys-devel/clang-common/Manifest @@ -3,9 +3,9 @@ DIST llvmorg-10.0.0.tar.gz 120804856 BLAKE2B 6b0254f5b913398cdcf2b2ec1ff21988870 DIST llvmorg-10.0.1-rc1.tar.gz 120834583 BLAKE2B 64244ebcb6f2c171c9f606e5eb0adff2794f06c9312a0ca627fb79c107c0c898ac242cf4e92523c3265fa717322601d7e3f4d178515fac95d03ee92312082b06 SHA512 f877f66046969a4055b166ad50ef876a9c8ecaf03e2cdd7c8e1a3348eb5f5180f222fa457b1f090a6660282a0d9f7a1d39cf09a04abe0dde0a6e1e10ccf15597 DIST llvmorg-9.0.1.tar.gz 113193320 BLAKE2B b86e405f2b8e00436045fd409fe19cdde75c797b1192c62a22b5ec75e6b4dc8e874a0f33008dc31562445e4cbe53a992b6f48c684255a6a1ef261e595b8b161f SHA512 fa88beeaae94b6d0cd9b5ba38658d0ffed8004035d7d8a4f95c3d31a709b88b581ae9bd7761333c8e5375c44b8f6be01768b5a3be901163159d7e6c43b71da59 EBUILD clang-common-10.0.0.ebuild 589 BLAKE2B 71f0090e6d67508ab556dc2260ae6f0d0aa05fedec01815b67db31884d41756c0224d5df19ad7c242a0ab24b23dfde9ba8bad5d9bf95ce5434848663bcd0b0a2 SHA512 ac2a3296c395e38f1c5ba5cbccd230a0e625995756b8a8eb6b74911f87e31d1afd069b452f51a890e74147a7a79307469185f00cce21522d0b6b60045f686e24 -EBUILD clang-common-10.0.1.9999.ebuild 513 BLAKE2B 3ca10da9963052dfcd89bfbc0399f9839325caba42a63e916ccb3ab5f10c0b1f1089cf2b932ce1f166e0dc60ae2d605003e345354eed6310eebc29a40275405d SHA512 18c55050f97348880eaa7676dcf4bde318f2db16c9014713ca32b17c2c02997e68034ed20dc8737a1f1c5d51de88da321dd68bfe83068008dc7f92857d782997 -EBUILD clang-common-10.0.1_rc1.ebuild 513 BLAKE2B 990eee9292990a4fa1fa12eda4963c78a838108bc7d56833d6696af03eded240fd01f095335020eca81832f5e64c496c129bdecff7dc4c4de86c38e95ec99dd7 SHA512 dc472092d704ca242e0370f580f506e83a17f3147cff31cf37fb3573e37ad0824960a6da576c8310f6ca43d64e7fffa0c65c9815344d40252b0ca0f8b5e3eefd -EBUILD clang-common-11.0.0.9999.ebuild 513 BLAKE2B 990eee9292990a4fa1fa12eda4963c78a838108bc7d56833d6696af03eded240fd01f095335020eca81832f5e64c496c129bdecff7dc4c4de86c38e95ec99dd7 SHA512 dc472092d704ca242e0370f580f506e83a17f3147cff31cf37fb3573e37ad0824960a6da576c8310f6ca43d64e7fffa0c65c9815344d40252b0ca0f8b5e3eefd +EBUILD clang-common-10.0.1.9999.ebuild 565 BLAKE2B debef4ab3878fd7cd72f67bba2eebbd7a4a5d488d1da5bb1066af6dfee3b0bfd230b267891edcdf388b523433f8fbdff3443394efdbc64e6231fa9d127d164dd SHA512 892819af7217e402a25b56ed6deb498b60342ca497b0e8efa6d86ee9e14eae37d6c03baecf31921052c1102137f4e66631bd2c983d6f996a438c21bf0ac713d7 +EBUILD clang-common-10.0.1_rc1.ebuild 565 BLAKE2B bef32d62a181c7552aa65a17b1ae4af5ae204d792f3dc96d4291be91c816da864d02cfc4a4141cfdc67dcf33824378eaae9f2156445f990c7defbf7f6dca2d16 SHA512 082b70a6ec2e7a8b5d690ec27b5168f45ca77d7d29887efd6e346a383026ca64670dcb0f239d2f1bae57f0c4b01253ca72fc52e940109db844471d40de17d072 +EBUILD clang-common-11.0.0.9999.ebuild 565 BLAKE2B bef32d62a181c7552aa65a17b1ae4af5ae204d792f3dc96d4291be91c816da864d02cfc4a4141cfdc67dcf33824378eaae9f2156445f990c7defbf7f6dca2d16 SHA512 082b70a6ec2e7a8b5d690ec27b5168f45ca77d7d29887efd6e346a383026ca64670dcb0f239d2f1bae57f0c4b01253ca72fc52e940109db844471d40de17d072 EBUILD clang-common-8.0.1.ebuild 798 BLAKE2B ee3a460e6e80ac0700fec452f3cf47a1f6054c7b93139e0fd4c5efec8ccf84d1cfe933420cca84e017e115bf45474db42f58813b98dc2f396feb61c00f2901d5 SHA512 feda961724c5bfde42926b0928107fae7df056e63041705a68eb7521ffc1e9f5be8f86591db41d10f97b940ef1ac664dc35ad11e59b29635b46b2fe5ea8c974b EBUILD clang-common-9.0.1.ebuild 584 BLAKE2B f9fca7b49c818a9918c199e0b12f2e73c5b7828c61a32506806591a374e8f90143a4af80eb809e7cc381773901a8b889f7cd76eb1c771b19932fc6d5797d983f SHA512 2ba5111a5c93bbde3beff601fd6a7dc5da6672a2d40afcea4fa09735c058aa4b23e9f07b90a939f9dbe6215df2760e6b1d2c2d1cf2b3695caf91139869ba672f MISC metadata.xml 216 BLAKE2B fe5e49887842aa513fbf1f2e09bed09a884d531fd21bdaeb2d389e8bf590b6c0e7063f0af98f66e2db129308ab0f0804ba327c3c752bbb4c900c59ac109d99aa SHA512 3485598147c953e72e1785693a489a7e7d73d59620b76054db9c0ce95d8bfa0e8ffec29da7f7a9d73a32e5b77eac07ca3306c56a972dc57fd89d477edaebf3d5 diff --git a/sys-devel/clang-common/clang-common-10.0.1.9999.ebuild b/sys-devel/clang-common/clang-common-10.0.1.9999.ebuild index d1bfe71d2f80..6da8d1a30ae7 100644 --- a/sys-devel/clang-common/clang-common-10.0.1.9999.ebuild +++ b/sys-devel/clang-common/clang-common-10.0.1.9999.ebuild @@ -18,6 +18,11 @@ IUSE="" PDEPEND="sys-devel/clang:*" +src_prepare() { + cd "${WORKDIR}" || die + default +} + src_install() { newbashcomp bash-autocomplete.sh clang } diff --git a/sys-devel/clang-common/clang-common-10.0.1_rc1.ebuild b/sys-devel/clang-common/clang-common-10.0.1_rc1.ebuild index 18e41e0917da..ca046d28ce0b 100644 --- a/sys-devel/clang-common/clang-common-10.0.1_rc1.ebuild +++ b/sys-devel/clang-common/clang-common-10.0.1_rc1.ebuild @@ -18,6 +18,11 @@ IUSE="" PDEPEND="sys-devel/clang:*" +src_prepare() { + cd "${WORKDIR}" || die + default +} + src_install() { newbashcomp bash-autocomplete.sh clang } diff --git a/sys-devel/clang-common/clang-common-11.0.0.9999.ebuild b/sys-devel/clang-common/clang-common-11.0.0.9999.ebuild index 18e41e0917da..ca046d28ce0b 100644 --- a/sys-devel/clang-common/clang-common-11.0.0.9999.ebuild +++ b/sys-devel/clang-common/clang-common-11.0.0.9999.ebuild @@ -18,6 +18,11 @@ IUSE="" PDEPEND="sys-devel/clang:*" +src_prepare() { + cd "${WORKDIR}" || die + default +} + src_install() { newbashcomp bash-autocomplete.sh clang } diff --git a/sys-devel/clang/Manifest b/sys-devel/clang/Manifest index f6a8e0939ec4..d8c57d0b49f6 100644 --- a/sys-devel/clang/Manifest +++ b/sys-devel/clang/Manifest @@ -1,3 +1,5 @@ +AUX 10.0.1/0003-clang-tools-extra-Prevent-linking-to-duplicate-.a-li.patch 23184 BLAKE2B 42bfc9401bceea6627703f7611aafe4708e4e745e47e8caa01fb8c7126524ef65e4c135cfd0541bc663bfc52fa8c47342f7f8de462abe283ec353b068d2e3532 SHA512 9561c9ab6dc62257b7626f7898afa667401522817ec57137641f8687549b0b8e531659a5afd5226dd7619126cc67f68235f628cbe639345277415343c4ca3650 +AUX 10.0.1/0004-clang-Avoid-linking-c-index-test-to-duplicate-librar.patch 970 BLAKE2B 564394bea7e9d5a056e7ce39b3e5261f1214637084c1669d34e4d9c3296582732765654ccc2dd76507df2d7fb8406da4185339134fa52bb5c38a2335a55b4f50 SHA512 41050092b31b2558b2d24665f4b5b5bde8b7d50b979c21d57c6e59119dcfa95c3616b873214a8e986268a20436c0895b702547adeb44d6d7576c89de1ba2d587 AUX 8.0.1/darwin_prefix-include-paths.patch 690 BLAKE2B cfb96eb259fb7d557d215be08ea3babcae6dc1353171fad7f297f787d476d28768c7c1bbe6efc7404ea638f1dc6b4b36e1c17e141faf82be623bbd96d5e09118 SHA512 5f8ecabaf43853964bffeb3953b205bea7e8928fd53637d01842723ac8344e19cc639f6f06c199f2be88b73e60b6eab1987bc5ee7dfeaea5e710eacab90f3533 DIST cfe-8.0.1.src.tar.xz 12810056 BLAKE2B 88cee0b6daa477ca0473c76efc45beb634f6194ecd3f45aaec3791e26b203c5dbd33c649435e0d97924096a72c727d76915bffc0b7ea305f24d5e5f06389c4a0 SHA512 1227b2d32052c70b4b494659849000188fce46fc31a71f3352ba8457ac0b0b17e4bc7c8589874c8586d55aa808ee6c1fceb7df501aafa33599f8df7bfd2b791d DIST clang-tools-extra-8.0.1.src.tar.xz 1994068 BLAKE2B 7d312c1a958d9c5b24515067cbb1db3a92b34cdf77c2345c08ef2f327d2ae4ca7f05252d72ede6569e25cda34225963a8d415cc64279e39d542449ba56eae9c9 SHA512 d39962c30ee9d8a1679d8007009b48dea2c8aaeb283bed781a9e22a1a57b8186c2cfe058da046658882ace1c84a30ddf9b4cb75bce988891189e8423b6c6a72c @@ -9,9 +11,9 @@ DIST llvmorg-10.0.0.tar.gz 120804856 BLAKE2B 6b0254f5b913398cdcf2b2ec1ff21988870 DIST llvmorg-10.0.1-rc1.tar.gz 120834583 BLAKE2B 64244ebcb6f2c171c9f606e5eb0adff2794f06c9312a0ca627fb79c107c0c898ac242cf4e92523c3265fa717322601d7e3f4d178515fac95d03ee92312082b06 SHA512 f877f66046969a4055b166ad50ef876a9c8ecaf03e2cdd7c8e1a3348eb5f5180f222fa457b1f090a6660282a0d9f7a1d39cf09a04abe0dde0a6e1e10ccf15597 DIST llvmorg-9.0.1.tar.gz 113193320 BLAKE2B b86e405f2b8e00436045fd409fe19cdde75c797b1192c62a22b5ec75e6b4dc8e874a0f33008dc31562445e4cbe53a992b6f48c684255a6a1ef261e595b8b161f SHA512 fa88beeaae94b6d0cd9b5ba38658d0ffed8004035d7d8a4f95c3d31a709b88b581ae9bd7761333c8e5375c44b8f6be01768b5a3be901163159d7e6c43b71da59 EBUILD clang-10.0.0.ebuild 10194 BLAKE2B b7fdf307bd1df5fb9b4a1b74ce54852293d884396004f23011aa30d0f53cc740d554fe2fa723939b826c34b3b0797242d16eeaac0eb4465f09142005b0213f26 SHA512 7187998e91d5239e4824c6ecce16dddadff571a0e75f50ca7f0766ff77dd842f6fec3be06a2bd5859d0e56fae2bb58136b1114d1d5dad37e2bdad23e1956d9a7 -EBUILD clang-10.0.1.9999.ebuild 10940 BLAKE2B 5203158d0a05a7063d581478d60fd43442b1395c4a16b115331132df2296cf792ddaf382aa79f99cd981703678e1e02c271d925bfc8fa3b509a1984948fce347 SHA512 5776f771d5a7539e79f0762228c646a5e57120bff3215a230204329ac7d3727c0dc6a2918a8e5a87503a4aa189cf71892261372905bd50bced05133e361f5865 -EBUILD clang-10.0.1_rc1.ebuild 10937 BLAKE2B a92db7c198d9ede332815bf89f35aa5aaed1c3c64a9fcc48a30cdaf80bb34aab5250ff05478a503d3dd8b1a0e1d060e89d3f94f31e34c2eed7795cc48530fcd2 SHA512 2ee8f66034c4da4f0a330da1984283149fc829215071707eba5cfdee34dde9e310f8aa524480b0ced31ad5b230b81065137e45827236d44e3a0e20dac9b12e94 -EBUILD clang-11.0.0.9999.ebuild 11090 BLAKE2B 7d1395a8c2d83ca9abd0d4ac700cc47c641feafb13dbed786691a191d7ec0ca4f014bba76d0042680c583ec0b8f8f06b51000c2c6f26b8ec8aab1c4607279e03 SHA512 6a25f9a1434622ae7854c97ca702c8955b7a5f27ff2ecd768c5acc6701bb982dd29c83ce870c0c4802c2d17ddd415e8eb4941bf995a28d5793795e8811516da8 +EBUILD clang-10.0.1.9999.ebuild 11297 BLAKE2B 2b50b01407f06e4ec5ae9f8988b8627d9f7ab1d57f102066c1353644fc76fec0d56d077f257d247ff3caee9ff9d2cf6d918a2ba8cda8079dbed84387c0590efa SHA512 ac7c8ac07d020de89fb68137d705231d0af649da541374a3bd9869786b3f090ef9b3d159769819d2d83acf833e3e1fff7006280b74876b499d0de1ae9769919f +EBUILD clang-10.0.1_rc1.ebuild 11294 BLAKE2B 0df40a2e087631aa266f7d39acc00eb723ac97546ba66733c01fb88f170d5ff83fb4c769a74c06ca0e048ad8c643434e913796f6b592f139ee44f07890b85a13 SHA512 ff52706ed43701df53ed5686b1ed070a5275fee808340378cebfb521ae989f9811f7fff73dbc224c33d6d2004e4c57ac6c3ff5a583750b0546aeeb5e30942b15 +EBUILD clang-11.0.0.9999.ebuild 11124 BLAKE2B 3193fa1a9d5db4e998a28153d43553509b5c503d38b8c1e89ba346f5325e5fd78696be11129ec11523bb3a4a9f9edca362d2711449985cef49e2cd3d50e6a775 SHA512 a34ba7aeb4a6010326dad5e44ab2819a1125c5a7e6076ca60ab5e4efc86c15f5a1f99af325691f84fcced76220c32b372b0c8b3cd13a2780c33db3104f982a01 EBUILD clang-8.0.1.ebuild 10138 BLAKE2B a2c91918e468c3f070ba10d7a0478e006c5d23289db387d6ca57ee082a7567ef24ad7af66a3b93e0e8934c69fbcd5a4fefbfbd77ba0ef077776b4110b30a6773 SHA512 da86670ee496b2a1bfe3f99eb7146cd8a85d793f580ae2ebd94bfb65363c6e39c58fb77b3b00c27e5d9bdc70ecb1688154e500506525b019da3f95d356f815e1 EBUILD clang-9.0.1.ebuild 8982 BLAKE2B 05319c777c4ecfd03a54bc9e14f322ad6f348a99554ebf8eb1e3a0a1b8c7aba5f3ba618fd3edb21022dd34f1cd4dca2c3f24b152b6f795b939a77c8959d27fa1 SHA512 f88f6c0dc7f1faed0f0d8310c9235a4d0d17352f710f28d9a8c7e47e28aaa43f7727e3e2a7e30334ffae7cb2e6df7769a543fd4c79a0ecb8a1f0a480b15fdb06 MISC metadata.xml 1377 BLAKE2B 8b580be2bcaddb98c2d2b8defd1730c69a7478248f7d241dd00f533d36d750a3f45c1e55161a4fd2731b6211a22c658046cf8ad5a87028c32928dfe0cd4a862f SHA512 b08ea2bd3454abb09abfa92b62e6dae4f4e10db0266c1e4895bef0f6a2d2fadea0b36b9b861831389413e1cca0e3c412b4cf474fc8c4170902b40deeab06686a diff --git a/sys-devel/clang/clang-10.0.1.9999.ebuild b/sys-devel/clang/clang-10.0.1.9999.ebuild index 6f913045c092..8db3efe5b94a 100644 --- a/sys-devel/clang/clang-10.0.1.9999.ebuild +++ b/sys-devel/clang/clang-10.0.1.9999.ebuild @@ -3,8 +3,8 @@ EAPI=7 -PYTHON_COMPAT=( python3_{6,7,8} ) -inherit cmake-utils llvm llvm.org multilib-minimal multiprocessing \ +PYTHON_COMPAT=( python3_{6..9} ) +inherit cmake llvm llvm.org multilib-minimal multiprocessing \ pax-utils python-single-r1 toolchain-funcs DESCRIPTION="C language family frontend for LLVM" @@ -15,8 +15,6 @@ LLVM_TEST_COMPONENTS=( llvm/utils/{lit,llvm-lit,unittest} ) llvm.org_set_globals -# We need extra level of indirection for CLANG_RESOURCE_DIR -S=${WORKDIR}/x/y/clang # Keep in sync with sys-devel/llvm ALL_LLVM_EXPERIMENTAL_TARGETS=( ARC AVR VE ) @@ -45,7 +43,7 @@ RDEPEND=" ${PYTHON_DEPS}" DEPEND="${RDEPEND}" BDEPEND=" - doc? ( dev-python/sphinx ) + dev-python/sphinx xml? ( virtual/pkgconfig ) ${PYTHON_DEPS}" RDEPEND="${RDEPEND} @@ -71,17 +69,28 @@ CMAKE_BUILD_TYPE=RelWithDebInfo # Therefore: use sys-devel/clang[${MULTILIB_USEDEP}] only if you need # multilib clang* libraries (not runtime, not wrappers). +PATCHES=( + # fix simultaneous linking to .a and dylib + "${FILESDIR}"/10.0.1/0003-clang-tools-extra-Prevent-linking-to-duplicate-.a-li.patch + "${FILESDIR}"/10.0.1/0004-clang-Avoid-linking-c-index-test-to-duplicate-librar.patch +) + pkg_setup() { LLVM_MAX_SLOT=${SLOT} llvm_pkg_setup python-single-r1_pkg_setup } -src_unpack() { - # create extra parent dir for CLANG_RESOURCE_DIR +src_prepare() { + # create extra parent dir for relative CLANG_RESOURCE_DIR access mkdir -p x/y || die - cd x/y || die - llvm.org_src_unpack - mv clang-tools-extra clang/tools/extra || die + BUILD_DIR=${WORKDIR}/x/y/clang + + # cmake eclasses suck by forcing ${S} here + CMAKE_USE_DIR=${S} \ + S=${WORKDIR} \ + cmake_src_prepare + + mv ../clang-tools-extra tools/extra || die } check_distribution_components() { @@ -106,6 +115,14 @@ check_distribution_components() { clang*|findAllSymbols) continue ;; + # headers for clang-tidy static library + clang-tidy-headers) + continue + ;; + # conditional to USE=doc + docs-clang-html|docs-clang-tools-html) + continue + ;; esac all_targets+=( "${l}" ) @@ -184,13 +201,15 @@ get_distribution_components() { find-all-symbols modularize pp-trace + + # manpages + docs-clang-man + docs-clang-tools-man ) use doc && out+=( docs-clang-html - docs-clang-man docs-clang-tools-html - docs-clang-tools-man ) use static-analyzer && out+=( @@ -239,7 +258,7 @@ multilib_src_configure() { -DCLANG_ENABLE_STATIC_ANALYZER=$(usex static-analyzer) ) use test && mycmakeargs+=( - -DLLVM_MAIN_SRC_DIR="${WORKDIR}/x/y/llvm" + -DLLVM_MAIN_SRC_DIR="${WORKDIR}/llvm" -DLLVM_LIT_ARGS="-vv;-j;${LIT_JOBS:-$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")}" ) @@ -247,10 +266,8 @@ multilib_src_configure() { mycmakeargs+=( # normally copied from LLVM_INCLUDE_DOCS but the latter # is lacking value in stand-alone builds - -DCLANG_INCLUDE_DOCS=$(usex doc) - -DCLANG_TOOLS_EXTRA_INCLUDE_DOCS=$(usex doc) - ) - use doc && mycmakeargs+=( + -DCLANG_INCLUDE_DOCS=ON + -DCLANG_TOOLS_EXTRA_INCLUDE_DOCS=ON -DLLVM_BUILD_DOCS=ON -DLLVM_ENABLE_SPHINX=ON -DCLANG_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/html" @@ -280,13 +297,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_src_compile # provide a symlink for tests if [[ ! -L ${WORKDIR}/lib/clang ]]; then @@ -298,9 +315,9 @@ multilib_src_compile() { multilib_src_test() { # respect TMPDIR! local -x LIT_PRESERVES_TMP=1 - cmake-utils_src_make check-clang + cmake_build check-clang multilib_is_native_abi && - cmake-utils_src_make check-clang-tools check-clangd + cmake_build check-clang-tools check-clangd } src_install() { @@ -356,7 +373,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 & ABI mismatch checks # (also drop the version suffix from runtime headers) diff --git a/sys-devel/clang/clang-10.0.1_rc1.ebuild b/sys-devel/clang/clang-10.0.1_rc1.ebuild index 13d42251a431..bc6d83f42a8d 100644 --- a/sys-devel/clang/clang-10.0.1_rc1.ebuild +++ b/sys-devel/clang/clang-10.0.1_rc1.ebuild @@ -3,8 +3,8 @@ EAPI=7 -PYTHON_COMPAT=( python3_{6,7,8} ) -inherit cmake-utils llvm llvm.org multilib-minimal multiprocessing \ +PYTHON_COMPAT=( python3_{6..9} ) +inherit cmake llvm llvm.org multilib-minimal multiprocessing \ pax-utils python-single-r1 toolchain-funcs DESCRIPTION="C language family frontend for LLVM" @@ -15,8 +15,6 @@ LLVM_TEST_COMPONENTS=( llvm/utils/{lit,llvm-lit,unittest} ) llvm.org_set_globals -# We need extra level of indirection for CLANG_RESOURCE_DIR -S=${WORKDIR}/x/y/clang # Keep in sync with sys-devel/llvm ALL_LLVM_EXPERIMENTAL_TARGETS=( ARC AVR ) @@ -45,7 +43,7 @@ RDEPEND=" ${PYTHON_DEPS}" DEPEND="${RDEPEND}" BDEPEND=" - doc? ( dev-python/sphinx ) + dev-python/sphinx xml? ( virtual/pkgconfig ) ${PYTHON_DEPS}" RDEPEND="${RDEPEND} @@ -71,17 +69,28 @@ CMAKE_BUILD_TYPE=RelWithDebInfo # Therefore: use sys-devel/clang[${MULTILIB_USEDEP}] only if you need # multilib clang* libraries (not runtime, not wrappers). +PATCHES=( + # fix simultaneous linking to .a and dylib + "${FILESDIR}"/10.0.1/0003-clang-tools-extra-Prevent-linking-to-duplicate-.a-li.patch + "${FILESDIR}"/10.0.1/0004-clang-Avoid-linking-c-index-test-to-duplicate-librar.patch +) + pkg_setup() { LLVM_MAX_SLOT=${SLOT} llvm_pkg_setup python-single-r1_pkg_setup } -src_unpack() { - # create extra parent dir for CLANG_RESOURCE_DIR +src_prepare() { + # create extra parent dir for relative CLANG_RESOURCE_DIR access mkdir -p x/y || die - cd x/y || die - llvm.org_src_unpack - mv clang-tools-extra clang/tools/extra || die + BUILD_DIR=${WORKDIR}/x/y/clang + + # cmake eclasses suck by forcing ${S} here + CMAKE_USE_DIR=${S} \ + S=${WORKDIR} \ + cmake_src_prepare + + mv ../clang-tools-extra tools/extra || die } check_distribution_components() { @@ -106,6 +115,14 @@ check_distribution_components() { clang*|findAllSymbols) continue ;; + # headers for clang-tidy static library + clang-tidy-headers) + continue + ;; + # conditional to USE=doc + docs-clang-html|docs-clang-tools-html) + continue + ;; esac all_targets+=( "${l}" ) @@ -184,13 +201,15 @@ get_distribution_components() { find-all-symbols modularize pp-trace + + # manpages + docs-clang-man + docs-clang-tools-man ) use doc && out+=( docs-clang-html - docs-clang-man docs-clang-tools-html - docs-clang-tools-man ) use static-analyzer && out+=( @@ -239,7 +258,7 @@ multilib_src_configure() { -DCLANG_ENABLE_STATIC_ANALYZER=$(usex static-analyzer) ) use test && mycmakeargs+=( - -DLLVM_MAIN_SRC_DIR="${WORKDIR}/x/y/llvm" + -DLLVM_MAIN_SRC_DIR="${WORKDIR}/llvm" -DLLVM_LIT_ARGS="-vv;-j;${LIT_JOBS:-$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")}" ) @@ -247,10 +266,8 @@ multilib_src_configure() { mycmakeargs+=( # normally copied from LLVM_INCLUDE_DOCS but the latter # is lacking value in stand-alone builds - -DCLANG_INCLUDE_DOCS=$(usex doc) - -DCLANG_TOOLS_EXTRA_INCLUDE_DOCS=$(usex doc) - ) - use doc && mycmakeargs+=( + -DCLANG_INCLUDE_DOCS=ON + -DCLANG_TOOLS_EXTRA_INCLUDE_DOCS=ON -DLLVM_BUILD_DOCS=ON -DLLVM_ENABLE_SPHINX=ON -DCLANG_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/html" @@ -280,13 +297,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_src_compile # provide a symlink for tests if [[ ! -L ${WORKDIR}/lib/clang ]]; then @@ -298,9 +315,9 @@ multilib_src_compile() { multilib_src_test() { # respect TMPDIR! local -x LIT_PRESERVES_TMP=1 - cmake-utils_src_make check-clang + cmake_build check-clang multilib_is_native_abi && - cmake-utils_src_make check-clang-tools check-clangd + cmake_build check-clang-tools check-clangd } src_install() { @@ -356,7 +373,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 & ABI mismatch checks # (also drop the version suffix from runtime headers) diff --git a/sys-devel/clang/clang-11.0.0.9999.ebuild b/sys-devel/clang/clang-11.0.0.9999.ebuild index 714dc5bb8c4c..76c40cb71042 100644 --- a/sys-devel/clang/clang-11.0.0.9999.ebuild +++ b/sys-devel/clang/clang-11.0.0.9999.ebuild @@ -3,8 +3,8 @@ EAPI=7 -PYTHON_COMPAT=( python3_{6,7,8} ) -inherit cmake-utils llvm llvm.org multilib-minimal multiprocessing \ +PYTHON_COMPAT=( python3_{6..9} ) +inherit cmake llvm llvm.org multilib-minimal multiprocessing \ pax-utils python-single-r1 toolchain-funcs DESCRIPTION="C language family frontend for LLVM" @@ -16,8 +16,6 @@ LLVM_TEST_COMPONENTS=( llvm/utils/{UpdateTestChecks,update_cc_test_checks.py} ) llvm.org_set_globals -# We need extra level of indirection for CLANG_RESOURCE_DIR -S=${WORKDIR}/x/y/clang # Keep in sync with sys-devel/llvm ALL_LLVM_EXPERIMENTAL_TARGETS=( ARC VE ) @@ -46,7 +44,7 @@ RDEPEND=" ${PYTHON_DEPS}" DEPEND="${RDEPEND}" BDEPEND=" - doc? ( dev-python/sphinx ) + dev-python/sphinx xml? ( virtual/pkgconfig ) ${PYTHON_DEPS}" RDEPEND="${RDEPEND} @@ -77,12 +75,17 @@ pkg_setup() { python-single-r1_pkg_setup } -src_unpack() { - # create extra parent dir for CLANG_RESOURCE_DIR +src_prepare() { + # create extra parent dir for relative CLANG_RESOURCE_DIR access mkdir -p x/y || die - cd x/y || die - llvm.org_src_unpack - mv clang-tools-extra clang/tools/extra || die + BUILD_DIR=${WORKDIR}/x/y/clang + + # cmake eclasses suck by forcing ${S} here + CMAKE_USE_DIR=${S} \ + S=${WORKDIR} \ + cmake_src_prepare + + mv ../clang-tools-extra tools/extra || die } check_distribution_components() { @@ -111,6 +114,10 @@ check_distribution_components() { clang-tidy-headers) continue ;; + # conditional to USE=doc + docs-clang-html|docs-clang-tools-html) + continue + ;; esac all_targets+=( "${l}" ) @@ -189,13 +196,15 @@ get_distribution_components() { find-all-symbols modularize pp-trace + + # manpages + docs-clang-man + docs-clang-tools-man ) use doc && out+=( docs-clang-html - docs-clang-man docs-clang-tools-html - docs-clang-tools-man ) use static-analyzer && out+=( @@ -244,7 +253,7 @@ multilib_src_configure() { -DCLANG_ENABLE_STATIC_ANALYZER=$(usex static-analyzer) ) use test && mycmakeargs+=( - -DLLVM_MAIN_SRC_DIR="${WORKDIR}/x/y/llvm" + -DLLVM_MAIN_SRC_DIR="${WORKDIR}/llvm" -DLLVM_LIT_ARGS="-vv;-j;${LIT_JOBS:-$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")}" ) @@ -252,10 +261,8 @@ multilib_src_configure() { mycmakeargs+=( # normally copied from LLVM_INCLUDE_DOCS but the latter # is lacking value in stand-alone builds - -DCLANG_INCLUDE_DOCS=$(usex doc) - -DCLANG_TOOLS_EXTRA_INCLUDE_DOCS=$(usex doc) - ) - use doc && mycmakeargs+=( + -DCLANG_INCLUDE_DOCS=ON + -DCLANG_TOOLS_EXTRA_INCLUDE_DOCS=ON -DLLVM_BUILD_DOCS=ON -DLLVM_ENABLE_SPHINX=ON -DCLANG_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/html" @@ -285,13 +292,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_src_compile # provide a symlink for tests if [[ ! -L ${WORKDIR}/lib/clang ]]; then @@ -303,9 +310,9 @@ multilib_src_compile() { multilib_src_test() { # respect TMPDIR! local -x LIT_PRESERVES_TMP=1 - cmake-utils_src_make check-clang + cmake_build check-clang multilib_is_native_abi && - cmake-utils_src_make check-clang-tools check-clangd + cmake_build check-clang-tools check-clangd } src_install() { @@ -361,7 +368,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 & ABI mismatch checks # (also drop the version suffix from runtime headers) diff --git a/sys-devel/clang/files/10.0.1/0003-clang-tools-extra-Prevent-linking-to-duplicate-.a-li.patch b/sys-devel/clang/files/10.0.1/0003-clang-tools-extra-Prevent-linking-to-duplicate-.a-li.patch new file mode 100644 index 000000000000..d01bd5d51e23 --- /dev/null +++ b/sys-devel/clang/files/10.0.1/0003-clang-tools-extra-Prevent-linking-to-duplicate-.a-li.patch @@ -0,0 +1,788 @@ +From 248d706ca72666a203a24b84406be430ccf40558 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> +Date: Tue, 16 Jun 2020 20:43:55 +0200 +Subject: [PATCH 3/4] [clang-tools-extra] Prevent linking to duplicate .a libs + and dylib + +Fix various tool libraries not to link to clang's .a libraries and dylib +simultaneously. This may cause breakage, in particular through +duplicate command-line option declarations. +--- + .../clang-apply-replacements/CMakeLists.txt | 4 +++- + .../clang-change-namespace/CMakeLists.txt | 4 +++- + clang-tools-extra/clang-doc/CMakeLists.txt | 4 +++- + .../clang-include-fixer/CMakeLists.txt | 6 +++++- + .../find-all-symbols/CMakeLists.txt | 4 +++- + clang-tools-extra/clang-move/CMakeLists.txt | 4 +++- + clang-tools-extra/clang-query/CMakeLists.txt | 4 +++- + .../clang-reorder-fields/CMakeLists.txt | 4 +++- + clang-tools-extra/clang-tidy/CMakeLists.txt | 7 +++++-- + clang-tools-extra/clang-tidy/abseil/CMakeLists.txt | 8 ++++++-- + .../clang-tidy/android/CMakeLists.txt | 8 ++++++-- + clang-tools-extra/clang-tidy/boost/CMakeLists.txt | 8 ++++++-- + .../clang-tidy/bugprone/CMakeLists.txt | 10 +++++++--- + clang-tools-extra/clang-tidy/cert/CMakeLists.txt | 12 ++++++++---- + .../clang-tidy/cppcoreguidelines/CMakeLists.txt | 14 +++++++++----- + clang-tools-extra/clang-tidy/darwin/CMakeLists.txt | 8 ++++++-- + .../clang-tidy/fuchsia/CMakeLists.txt | 10 +++++++--- + clang-tools-extra/clang-tidy/google/CMakeLists.txt | 10 +++++++--- + clang-tools-extra/clang-tidy/hicpp/CMakeLists.txt | 14 +++++++++----- + .../clang-tidy/linuxkernel/CMakeLists.txt | 8 ++++++-- + clang-tools-extra/clang-tidy/llvm/CMakeLists.txt | 10 +++++++--- + clang-tools-extra/clang-tidy/misc/CMakeLists.txt | 8 ++++++-- + .../clang-tidy/modernize/CMakeLists.txt | 10 +++++++--- + clang-tools-extra/clang-tidy/mpi/CMakeLists.txt | 8 ++++++-- + clang-tools-extra/clang-tidy/objc/CMakeLists.txt | 8 ++++++-- + clang-tools-extra/clang-tidy/openmp/CMakeLists.txt | 8 ++++++-- + .../clang-tidy/performance/CMakeLists.txt | 8 ++++++-- + clang-tools-extra/clang-tidy/plugin/CMakeLists.txt | 8 ++++++-- + .../clang-tidy/portability/CMakeLists.txt | 8 ++++++-- + .../clang-tidy/readability/CMakeLists.txt | 8 ++++++-- + clang-tools-extra/clang-tidy/utils/CMakeLists.txt | 6 +++++- + clang-tools-extra/clang-tidy/zircon/CMakeLists.txt | 8 ++++++-- + clang-tools-extra/clangd/CMakeLists.txt | 11 +++++++---- + clang-tools-extra/clangd/unittests/CMakeLists.txt | 1 - + 34 files changed, 188 insertions(+), 73 deletions(-) + +diff --git a/clang-tools-extra/clang-apply-replacements/CMakeLists.txt b/clang-tools-extra/clang-apply-replacements/CMakeLists.txt +index 5bfdcb487e1..27383b488e4 100644 +--- a/clang-tools-extra/clang-apply-replacements/CMakeLists.txt ++++ b/clang-tools-extra/clang-apply-replacements/CMakeLists.txt +@@ -4,8 +4,10 @@ set(LLVM_LINK_COMPONENTS + + add_clang_library(clangApplyReplacements + lib/Tooling/ApplyReplacements.cpp ++) + +- LINK_LIBS ++clang_target_link_libraries(clangApplyReplacements ++ PRIVATE + clangAST + clangBasic + clangRewrite +diff --git a/clang-tools-extra/clang-change-namespace/CMakeLists.txt b/clang-tools-extra/clang-change-namespace/CMakeLists.txt +index 178306423eb..dccfd7c0673 100644 +--- a/clang-tools-extra/clang-change-namespace/CMakeLists.txt ++++ b/clang-tools-extra/clang-change-namespace/CMakeLists.txt +@@ -4,8 +4,10 @@ set(LLVM_LINK_COMPONENTS + + add_clang_library(clangChangeNamespace + ChangeNamespace.cpp ++) + +- LINK_LIBS ++clang_target_link_libraries(clangChangeNamespace ++ PRIVATE + clangAST + clangASTMatchers + clangBasic +diff --git a/clang-tools-extra/clang-doc/CMakeLists.txt b/clang-tools-extra/clang-doc/CMakeLists.txt +index c301ad5afac..6f303a67c9a 100644 +--- a/clang-tools-extra/clang-doc/CMakeLists.txt ++++ b/clang-tools-extra/clang-doc/CMakeLists.txt +@@ -14,8 +14,10 @@ add_clang_library(clangDoc + Representation.cpp + Serialize.cpp + YAMLGenerator.cpp ++) + +- LINK_LIBS ++clang_target_link_libraries(clangDoc ++ PRIVATE + clangAnalysis + clangAST + clangASTMatchers +diff --git a/clang-tools-extra/clang-include-fixer/CMakeLists.txt b/clang-tools-extra/clang-include-fixer/CMakeLists.txt +index f27f7403ea6..d8685cb2075 100644 +--- a/clang-tools-extra/clang-include-fixer/CMakeLists.txt ++++ b/clang-tools-extra/clang-include-fixer/CMakeLists.txt +@@ -11,6 +11,11 @@ add_clang_library(clangIncludeFixer + YamlSymbolIndex.cpp + + LINK_LIBS ++ findAllSymbols ++ ) ++ ++clang_target_link_libraries(clangIncludeFixer ++ PRIVATE + clangAST + clangBasic + clangFormat +@@ -21,7 +26,6 @@ add_clang_library(clangIncludeFixer + clangSerialization + clangTooling + clangToolingCore +- findAllSymbols + ) + + add_subdirectory(plugin) +diff --git a/clang-tools-extra/clang-include-fixer/find-all-symbols/CMakeLists.txt b/clang-tools-extra/clang-include-fixer/find-all-symbols/CMakeLists.txt +index c5fe19bfdbd..06a2324e918 100644 +--- a/clang-tools-extra/clang-include-fixer/find-all-symbols/CMakeLists.txt ++++ b/clang-tools-extra/clang-include-fixer/find-all-symbols/CMakeLists.txt +@@ -11,8 +11,10 @@ add_clang_library(findAllSymbols + PragmaCommentHandler.cpp + STLPostfixHeaderMap.cpp + SymbolInfo.cpp ++ ) + +- LINK_LIBS ++clang_target_link_libraries(findAllSymbols ++ PRIVATE + clangAST + clangASTMatchers + clangBasic +diff --git a/clang-tools-extra/clang-move/CMakeLists.txt b/clang-tools-extra/clang-move/CMakeLists.txt +index c63127ea325..9ea409932da 100644 +--- a/clang-tools-extra/clang-move/CMakeLists.txt ++++ b/clang-tools-extra/clang-move/CMakeLists.txt +@@ -5,8 +5,10 @@ set(LLVM_LINK_COMPONENTS + add_clang_library(clangMove + Move.cpp + HelperDeclRefGraph.cpp ++ ) + +- LINK_LIBS ++clang_target_link_libraries(clangMove ++ PRIVATE + clangAnalysis + clangAST + clangASTMatchers +diff --git a/clang-tools-extra/clang-query/CMakeLists.txt b/clang-tools-extra/clang-query/CMakeLists.txt +index d1d68d502e3..bc76bae9c0e 100644 +--- a/clang-tools-extra/clang-query/CMakeLists.txt ++++ b/clang-tools-extra/clang-query/CMakeLists.txt +@@ -6,8 +6,10 @@ set(LLVM_LINK_COMPONENTS + add_clang_library(clangQuery + Query.cpp + QueryParser.cpp ++ ) + +- LINK_LIBS ++clang_target_link_libraries(clangQuery ++ PRIVATE + clangAST + clangASTMatchers + clangBasic +diff --git a/clang-tools-extra/clang-reorder-fields/CMakeLists.txt b/clang-tools-extra/clang-reorder-fields/CMakeLists.txt +index 9c75d785cc9..e555fd5cdf0 100644 +--- a/clang-tools-extra/clang-reorder-fields/CMakeLists.txt ++++ b/clang-tools-extra/clang-reorder-fields/CMakeLists.txt +@@ -2,8 +2,10 @@ set(LLVM_LINK_COMPONENTS support) + + add_clang_library(clangReorderFields + ReorderFieldsAction.cpp ++) + +- LINK_LIBS ++clang_target_link_libraries(clangReorderFields ++ PRIVATE + clangAST + clangASTMatchers + clangBasic +diff --git a/clang-tools-extra/clang-tidy/CMakeLists.txt b/clang-tools-extra/clang-tidy/CMakeLists.txt +index 6dadb271771..329df19f331 100644 +--- a/clang-tools-extra/clang-tidy/CMakeLists.txt ++++ b/clang-tools-extra/clang-tidy/CMakeLists.txt +@@ -14,8 +14,10 @@ add_clang_library(clangTidy + + DEPENDS + ClangSACheckers ++ ) + +- LINK_LIBS ++clang_target_link_libraries(clangTidy ++ PRIVATE + clangAnalysis + clangAST + clangASTMatchers +@@ -31,7 +33,8 @@ add_clang_library(clangTidy + ) + + if(CLANG_ENABLE_STATIC_ANALYZER) +- target_link_libraries(clangTidy PRIVATE ++ clang_target_link_libraries(clangTidy ++ PRIVATE + clangStaticAnalyzerCore + clangStaticAnalyzerFrontend + ) +diff --git a/clang-tools-extra/clang-tidy/abseil/CMakeLists.txt b/clang-tools-extra/clang-tidy/abseil/CMakeLists.txt +index 3f88da6233f..0f040e56a05 100644 +--- a/clang-tools-extra/clang-tidy/abseil/CMakeLists.txt ++++ b/clang-tools-extra/clang-tidy/abseil/CMakeLists.txt +@@ -22,11 +22,15 @@ add_clang_library(clangTidyAbseilModule + UpgradeDurationConversionsCheck.cpp + + LINK_LIBS ++ clangTidy ++ clangTidyUtils ++ ) ++ ++clang_target_link_libraries(clangTidyAbseilModule ++ PRIVATE + clangAST + clangASTMatchers + clangBasic + clangLex +- clangTidy +- clangTidyUtils + clangTooling + ) +diff --git a/clang-tools-extra/clang-tidy/android/CMakeLists.txt b/clang-tools-extra/clang-tidy/android/CMakeLists.txt +index 9d04003d9bb..d29adc610c8 100644 +--- a/clang-tools-extra/clang-tidy/android/CMakeLists.txt ++++ b/clang-tools-extra/clang-tidy/android/CMakeLists.txt +@@ -20,10 +20,14 @@ add_clang_library(clangTidyAndroidModule + ComparisonInTempFailureRetryCheck.cpp + + LINK_LIBS ++ clangTidy ++ clangTidyUtils ++ ) ++ ++clang_target_link_libraries(clangTidyAndroidModule ++ PRIVATE + clangAST + clangASTMatchers + clangBasic + clangLex +- clangTidy +- clangTidyUtils + ) +diff --git a/clang-tools-extra/clang-tidy/boost/CMakeLists.txt b/clang-tools-extra/clang-tidy/boost/CMakeLists.txt +index 059f6e91eca..481a709600c 100644 +--- a/clang-tools-extra/clang-tidy/boost/CMakeLists.txt ++++ b/clang-tools-extra/clang-tidy/boost/CMakeLists.txt +@@ -5,10 +5,14 @@ add_clang_library(clangTidyBoostModule + UseToStringCheck.cpp + + LINK_LIBS ++ clangTidy ++ clangTidyUtils ++ ) ++ ++clang_target_link_libraries(clangTidyBoostModule ++ PRIVATE + clangAST + clangASTMatchers + clangBasic + clangLex +- clangTidy +- clangTidyUtils + ) +diff --git a/clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt b/clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt +index 2cb28f4e8f1..d664f5eb875 100644 +--- a/clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt ++++ b/clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt +@@ -52,13 +52,17 @@ add_clang_library(clangTidyBugproneModule + VirtualNearMissCheck.cpp + + LINK_LIBS ++ clangTidy ++ clangTidyCppCoreGuidelinesModule ++ clangTidyUtils ++ ) ++ ++clang_target_link_libraries(clangTidyBugproneModule ++ PRIVATE + clangAnalysis + clangAST + clangASTMatchers + clangBasic + clangLex +- clangTidy +- clangTidyCppCoreGuidelinesModule +- clangTidyUtils + clangTooling + ) +diff --git a/clang-tools-extra/clang-tidy/cert/CMakeLists.txt b/clang-tools-extra/clang-tidy/cert/CMakeLists.txt +index 66ea2a13acd..75a13349f2f 100644 +--- a/clang-tools-extra/clang-tidy/cert/CMakeLists.txt ++++ b/clang-tools-extra/clang-tidy/cert/CMakeLists.txt +@@ -17,10 +17,6 @@ add_clang_library(clangTidyCERTModule + VariadicFunctionDefCheck.cpp + + LINK_LIBS +- clangAST +- clangASTMatchers +- clangBasic +- clangLex + clangTidy + clangTidyBugproneModule + clangTidyGoogleModule +@@ -29,3 +25,11 @@ add_clang_library(clangTidyCERTModule + clangTidyReadabilityModule + clangTidyUtils + ) ++ ++clang_target_link_libraries(clangTidyCERTModule ++ PRIVATE ++ clangAST ++ clangASTMatchers ++ clangBasic ++ clangLex ++ ) +diff --git a/clang-tools-extra/clang-tidy/cppcoreguidelines/CMakeLists.txt b/clang-tools-extra/clang-tidy/cppcoreguidelines/CMakeLists.txt +index 13c15bc9d22..e48bc1c8b1a 100644 +--- a/clang-tools-extra/clang-tidy/cppcoreguidelines/CMakeLists.txt ++++ b/clang-tools-extra/clang-tidy/cppcoreguidelines/CMakeLists.txt +@@ -23,15 +23,19 @@ add_clang_library(clangTidyCppCoreGuidelinesModule + SpecialMemberFunctionsCheck.cpp + + LINK_LIBS +- clangAST +- clangASTMatchers +- clangBasic +- clangLex +- clangSerialization + clangTidy + clangTidyMiscModule + clangTidyModernizeModule + clangTidyReadabilityModule + clangTidyUtils ++ ) ++ ++clang_target_link_libraries(clangTidyCppCoreGuidelinesModule ++ PRIVATE ++ clangAST ++ clangASTMatchers ++ clangBasic ++ clangLex ++ clangSerialization + clangTooling + ) +diff --git a/clang-tools-extra/clang-tidy/darwin/CMakeLists.txt b/clang-tools-extra/clang-tidy/darwin/CMakeLists.txt +index c650efb2a5f..feec79c12bf 100644 +--- a/clang-tools-extra/clang-tidy/darwin/CMakeLists.txt ++++ b/clang-tools-extra/clang-tidy/darwin/CMakeLists.txt +@@ -6,11 +6,15 @@ add_clang_library(clangTidyDarwinModule + DispatchOnceNonstaticCheck.cpp + + LINK_LIBS ++ clangTidy ++ clangTidyUtils ++ ) ++ ++clang_target_link_libraries(clangTidyDarwinModule ++ PRIVATE + clangAnalysis + clangAST + clangASTMatchers + clangBasic + clangLex +- clangTidy +- clangTidyUtils + ) +diff --git a/clang-tools-extra/clang-tidy/fuchsia/CMakeLists.txt b/clang-tools-extra/clang-tidy/fuchsia/CMakeLists.txt +index 30b319e7e5a..0148b20f364 100644 +--- a/clang-tools-extra/clang-tidy/fuchsia/CMakeLists.txt ++++ b/clang-tools-extra/clang-tidy/fuchsia/CMakeLists.txt +@@ -12,11 +12,15 @@ add_clang_library(clangTidyFuchsiaModule + VirtualInheritanceCheck.cpp + + LINK_LIBS ++ clangTidy ++ clangTidyGoogleModule ++ clangTidyUtils ++ ) ++ ++clang_target_link_libraries(clangTidyFuchsiaModule ++ PRIVATE + clangAST + clangASTMatchers + clangBasic + clangLex +- clangTidy +- clangTidyGoogleModule +- clangTidyUtils + ) +diff --git a/clang-tools-extra/clang-tidy/google/CMakeLists.txt b/clang-tools-extra/clang-tidy/google/CMakeLists.txt +index 08368932da5..302561ba646 100644 +--- a/clang-tools-extra/clang-tidy/google/CMakeLists.txt ++++ b/clang-tools-extra/clang-tidy/google/CMakeLists.txt +@@ -21,11 +21,15 @@ add_clang_library(clangTidyGoogleModule + UsingNamespaceDirectiveCheck.cpp + + LINK_LIBS ++ clangTidy ++ clangTidyReadabilityModule ++ clangTidyUtils ++ ) ++ ++clang_target_link_libraries(clangTidyGoogleModule ++ PRIVATE + clangAST + clangASTMatchers + clangBasic + clangLex +- clangTidy +- clangTidyReadabilityModule +- clangTidyUtils + ) +diff --git a/clang-tools-extra/clang-tidy/hicpp/CMakeLists.txt b/clang-tools-extra/clang-tidy/hicpp/CMakeLists.txt +index 4cf26767f3d..b4c9eb7a445 100644 +--- a/clang-tools-extra/clang-tidy/hicpp/CMakeLists.txt ++++ b/clang-tools-extra/clang-tidy/hicpp/CMakeLists.txt +@@ -8,11 +8,6 @@ add_clang_library(clangTidyHICPPModule + SignedBitwiseCheck.cpp + + LINK_LIBS +- clangAST +- clangASTMatchers +- clangBasic +- clangLex +- clangSerialization + clangTidy + clangTidyBugproneModule + clangTidyCppCoreGuidelinesModule +@@ -23,3 +18,12 @@ add_clang_library(clangTidyHICPPModule + clangTidyReadabilityModule + clangTidyUtils + ) ++ ++clang_target_link_libraries(clangTidyHICPPModule ++ PRIVATE ++ clangAST ++ clangASTMatchers ++ clangBasic ++ clangLex ++ clangSerialization ++ ) +diff --git a/clang-tools-extra/clang-tidy/linuxkernel/CMakeLists.txt b/clang-tools-extra/clang-tidy/linuxkernel/CMakeLists.txt +index f0e766d30e4..bfcc2ba526d 100644 +--- a/clang-tools-extra/clang-tidy/linuxkernel/CMakeLists.txt ++++ b/clang-tools-extra/clang-tidy/linuxkernel/CMakeLists.txt +@@ -5,10 +5,14 @@ add_clang_library(clangTidyLinuxKernelModule + MustCheckErrsCheck.cpp + + LINK_LIBS ++ clangTidy ++ clangTidyUtils ++ ) ++ ++clang_target_link_libraries(clangTidyLinuxKernelModule ++ PRIVATE + clangAST + clangASTMatchers + clangBasic + clangLex +- clangTidy +- clangTidyUtils + ) +diff --git a/clang-tools-extra/clang-tidy/llvm/CMakeLists.txt b/clang-tools-extra/clang-tidy/llvm/CMakeLists.txt +index c035596b556..bff128cbba7 100644 +--- a/clang-tools-extra/clang-tidy/llvm/CMakeLists.txt ++++ b/clang-tools-extra/clang-tidy/llvm/CMakeLists.txt +@@ -9,12 +9,16 @@ add_clang_library(clangTidyLLVMModule + TwineLocalCheck.cpp + + LINK_LIBS ++ clangTidy ++ clangTidyReadabilityModule ++ clangTidyUtils ++ ) ++ ++clang_target_link_libraries(clangTidyLLVMModule ++ PRIVATE + clangAST + clangASTMatchers + clangBasic + clangLex +- clangTidy +- clangTidyReadabilityModule +- clangTidyUtils + clangTooling + ) +diff --git a/clang-tools-extra/clang-tidy/misc/CMakeLists.txt b/clang-tools-extra/clang-tidy/misc/CMakeLists.txt +index 3fc152148d6..37bc2aa5af6 100644 +--- a/clang-tools-extra/clang-tidy/misc/CMakeLists.txt ++++ b/clang-tools-extra/clang-tidy/misc/CMakeLists.txt +@@ -17,13 +17,17 @@ add_clang_library(clangTidyMiscModule + UnusedUsingDeclsCheck.cpp + + LINK_LIBS ++ clangTidy ++ clangTidyUtils ++ ) ++ ++clang_target_link_libraries(clangTidyMiscModule ++ PRIVATE + clangAnalysis + clangAST + clangASTMatchers + clangBasic + clangLex + clangSerialization +- clangTidy +- clangTidyUtils + clangTooling + ) +diff --git a/clang-tools-extra/clang-tidy/modernize/CMakeLists.txt b/clang-tools-extra/clang-tidy/modernize/CMakeLists.txt +index 36193f0a6d1..162f44568c5 100644 +--- a/clang-tools-extra/clang-tidy/modernize/CMakeLists.txt ++++ b/clang-tools-extra/clang-tidy/modernize/CMakeLists.txt +@@ -36,12 +36,16 @@ add_clang_library(clangTidyModernizeModule + UseUsingCheck.cpp + + LINK_LIBS ++ clangTidy ++ clangTidyReadabilityModule ++ clangTidyUtils ++ ) ++ ++clang_target_link_libraries(clangTidyModernizeModule ++ PRIVATE + clangAST + clangASTMatchers + clangBasic + clangLex +- clangTidy +- clangTidyReadabilityModule +- clangTidyUtils + clangTooling + ) +diff --git a/clang-tools-extra/clang-tidy/mpi/CMakeLists.txt b/clang-tools-extra/clang-tidy/mpi/CMakeLists.txt +index 5be7b36550a..b36767ac7f3 100644 +--- a/clang-tools-extra/clang-tidy/mpi/CMakeLists.txt ++++ b/clang-tools-extra/clang-tidy/mpi/CMakeLists.txt +@@ -6,13 +6,17 @@ add_clang_library(clangTidyMPIModule + TypeMismatchCheck.cpp + + LINK_LIBS ++ clangTidy ++ clangTidyUtils ++ ) ++ ++clang_target_link_libraries(clangTidyMPIModule ++ PRIVATE + clangAnalysis + clangAST + clangASTMatchers + clangBasic + clangLex +- clangTidy +- clangTidyUtils + clangTooling + clangStaticAnalyzerCheckers + ) +diff --git a/clang-tools-extra/clang-tidy/objc/CMakeLists.txt b/clang-tools-extra/clang-tidy/objc/CMakeLists.txt +index 68dda6530f7..3624d2f3ef0 100644 +--- a/clang-tools-extra/clang-tidy/objc/CMakeLists.txt ++++ b/clang-tools-extra/clang-tidy/objc/CMakeLists.txt +@@ -9,10 +9,14 @@ add_clang_library(clangTidyObjCModule + SuperSelfCheck.cpp + + LINK_LIBS ++ clangTidy ++ clangTidyUtils ++ ) ++ ++clang_target_link_libraries(clangTidyObjCModule ++ PRIVATE + clangAST + clangASTMatchers + clangBasic + clangLex +- clangTidy +- clangTidyUtils + ) +diff --git a/clang-tools-extra/clang-tidy/openmp/CMakeLists.txt b/clang-tools-extra/clang-tidy/openmp/CMakeLists.txt +index af95704fd44..d182b29f366 100644 +--- a/clang-tools-extra/clang-tidy/openmp/CMakeLists.txt ++++ b/clang-tools-extra/clang-tidy/openmp/CMakeLists.txt +@@ -8,9 +8,13 @@ add_clang_library(clangTidyOpenMPModule + UseDefaultNoneCheck.cpp + + LINK_LIBS ++ clangTidy ++ clangTidyUtils ++ ) ++ ++clang_target_link_libraries(clangTidyOpenMPModule ++ PRIVATE + clangAST + clangASTMatchers + clangBasic +- clangTidy +- clangTidyUtils + ) +diff --git a/clang-tools-extra/clang-tidy/performance/CMakeLists.txt b/clang-tools-extra/clang-tidy/performance/CMakeLists.txt +index d1f9897b015..c9a7e262124 100644 +--- a/clang-tools-extra/clang-tidy/performance/CMakeLists.txt ++++ b/clang-tools-extra/clang-tidy/performance/CMakeLists.txt +@@ -18,11 +18,15 @@ add_clang_library(clangTidyPerformanceModule + UnnecessaryValueParamCheck.cpp + + LINK_LIBS ++ clangTidy ++ clangTidyUtils ++ ) ++ ++clang_target_link_libraries(clangTidyPerformanceModule ++ PRIVATE + clangAST + clangASTMatchers + clangAnalysis + clangBasic + clangLex +- clangTidy +- clangTidyUtils + ) +diff --git a/clang-tools-extra/clang-tidy/plugin/CMakeLists.txt b/clang-tools-extra/clang-tidy/plugin/CMakeLists.txt +index 4adc3f26977..0bfe122314e 100644 +--- a/clang-tools-extra/clang-tidy/plugin/CMakeLists.txt ++++ b/clang-tools-extra/clang-tidy/plugin/CMakeLists.txt +@@ -2,12 +2,16 @@ add_clang_library(clangTidyPlugin + ClangTidyPlugin.cpp + + LINK_LIBS ++ clangTidy ++ ${ALL_CLANG_TIDY_CHECKS} ++ ) ++ ++clang_target_link_libraries(clangTidyPlugin ++ PRIVATE + clangAST + clangASTMatchers + clangBasic + clangFrontend + clangSema +- clangTidy + clangTooling +- ${ALL_CLANG_TIDY_CHECKS} + ) +diff --git a/clang-tools-extra/clang-tidy/portability/CMakeLists.txt b/clang-tools-extra/clang-tidy/portability/CMakeLists.txt +index 0420a18a2a6..bbe9ccbef1f 100644 +--- a/clang-tools-extra/clang-tidy/portability/CMakeLists.txt ++++ b/clang-tools-extra/clang-tidy/portability/CMakeLists.txt +@@ -5,11 +5,15 @@ add_clang_library(clangTidyPortabilityModule + SIMDIntrinsicsCheck.cpp + + LINK_LIBS ++ clangTidy ++ clangTidyUtils ++ ) ++ ++clang_target_link_libraries(clangTidyPortabilityModule ++ PRIVATE + clangAST + clangASTMatchers + clangBasic + clangLex +- clangTidy +- clangTidyUtils + clangTooling + ) +diff --git a/clang-tools-extra/clang-tidy/readability/CMakeLists.txt b/clang-tools-extra/clang-tidy/readability/CMakeLists.txt +index 97144af06ca..5af900db5fd 100644 +--- a/clang-tools-extra/clang-tidy/readability/CMakeLists.txt ++++ b/clang-tools-extra/clang-tidy/readability/CMakeLists.txt +@@ -41,11 +41,15 @@ add_clang_library(clangTidyReadabilityModule + UppercaseLiteralSuffixCheck.cpp + + LINK_LIBS ++ clangTidy ++ clangTidyUtils ++ ) ++ ++clang_target_link_libraries(clangTidyReadabilityModule ++ PRIVATE + clangAST + clangASTMatchers + clangBasic + clangLex +- clangTidy +- clangTidyUtils + clangTooling + ) +diff --git a/clang-tools-extra/clang-tidy/utils/CMakeLists.txt b/clang-tools-extra/clang-tidy/utils/CMakeLists.txt +index fc383a318b9..5c837ca79aa 100644 +--- a/clang-tools-extra/clang-tidy/utils/CMakeLists.txt ++++ b/clang-tools-extra/clang-tidy/utils/CMakeLists.txt +@@ -18,11 +18,15 @@ add_clang_library(clangTidyUtils + UsingInserter.cpp + + LINK_LIBS ++ clangTidy ++ ) ++ ++clang_target_link_libraries(clangTidyUtils ++ PRIVATE + clangAST + clangASTMatchers + clangBasic + clangLex + clangSema +- clangTidy + clangTransformer + ) +diff --git a/clang-tools-extra/clang-tidy/zircon/CMakeLists.txt b/clang-tools-extra/clang-tidy/zircon/CMakeLists.txt +index 7aa7cd3f669..71db5e90f25 100644 +--- a/clang-tools-extra/clang-tidy/zircon/CMakeLists.txt ++++ b/clang-tools-extra/clang-tidy/zircon/CMakeLists.txt +@@ -5,10 +5,14 @@ add_clang_library(clangTidyZirconModule + ZirconTidyModule.cpp + + LINK_LIBS ++ clangTidy ++ clangTidyUtils ++ ) ++ ++clang_target_link_libraries(clangTidyZirconModule ++ PRIVATE + clangAST + clangASTMatchers + clangBasic + clangLex +- clangTidy +- clangTidyUtils + ) +diff --git a/clang-tools-extra/clangd/CMakeLists.txt b/clang-tools-extra/clangd/CMakeLists.txt +index e3eccb50a49..148043ee9df 100644 +--- a/clang-tools-extra/clangd/CMakeLists.txt ++++ b/clang-tools-extra/clangd/CMakeLists.txt +@@ -110,6 +110,13 @@ add_clang_library(clangDaemon + refactor/Tweak.cpp + + LINK_LIBS ++ clangTidy ++ ${LLVM_PTHREAD_LIB} ++ ${ALL_CLANG_TIDY_CHECKS} ++ ) ++ ++clang_target_link_libraries(clangDaemon ++ PRIVATE + clangAST + clangASTMatchers + clangBasic +@@ -120,15 +127,11 @@ add_clang_library(clangDaemon + clangLex + clangSema + clangSerialization +- clangTidy + clangTooling + clangToolingCore + clangToolingInclusions + clangToolingRefactoring + clangToolingSyntax +- ${LLVM_PTHREAD_LIB} +- ${CLANGD_ATOMIC_LIB} +- ${ALL_CLANG_TIDY_CHECKS} + ) + + add_subdirectory(refactor/tweaks) +diff --git a/clang-tools-extra/clangd/unittests/CMakeLists.txt b/clang-tools-extra/clangd/unittests/CMakeLists.txt +index 62113c6e4bb..6c2b56c93d5 100644 +--- a/clang-tools-extra/clangd/unittests/CMakeLists.txt ++++ b/clang-tools-extra/clangd/unittests/CMakeLists.txt +@@ -103,7 +103,6 @@ target_link_libraries(ClangdTests + PRIVATE + clangDaemon + clangTidy +- LLVMSupport + LLVMTestingSupport + ) + +-- +2.27.0 + diff --git a/sys-devel/clang/files/10.0.1/0004-clang-Avoid-linking-c-index-test-to-duplicate-librar.patch b/sys-devel/clang/files/10.0.1/0004-clang-Avoid-linking-c-index-test-to-duplicate-librar.patch new file mode 100644 index 000000000000..74b569ca4117 --- /dev/null +++ b/sys-devel/clang/files/10.0.1/0004-clang-Avoid-linking-c-index-test-to-duplicate-librar.patch @@ -0,0 +1,29 @@ +From e0df57328dd084d38ea4aac0cfb129fc320eae3f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> +Date: Fri, 19 Jun 2020 17:00:12 +0200 +Subject: [PATCH 4/4] [clang] Avoid linking c-index-test to duplicate libraries + +Use clang_target_link_libraries() to link libraries included +in clang-cpp.so to avoid simultaneously linking to it and to split +static libraries. This prevents units from being included twice. +--- + clang/tools/c-index-test/CMakeLists.txt | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/clang/tools/c-index-test/CMakeLists.txt b/clang/tools/c-index-test/CMakeLists.txt +index ceef4b08637..d83d1091936 100644 +--- a/clang/tools/c-index-test/CMakeLists.txt ++++ b/clang/tools/c-index-test/CMakeLists.txt +@@ -25,6 +25,9 @@ else() + target_link_libraries(c-index-test + PRIVATE + libclang ++ ) ++ clang_target_link_libraries(c-index-test ++ PRIVATE + clangAST + clangBasic + clangCodeGen +-- +2.27.0 + diff --git a/sys-devel/flex/Manifest b/sys-devel/flex/Manifest index 347b2fad6646..701ed7f6ac3d 100644 --- a/sys-devel/flex/Manifest +++ b/sys-devel/flex/Manifest @@ -7,6 +7,6 @@ DIST flex-2.6.4.tar.gz 1419096 BLAKE2B c003d4f764f7f4d41e33af7ee28c2af272a9f0aee EBUILD flex-2.6.1.ebuild 1900 BLAKE2B fe292f42310ca72b56acbbc613190dd242cd69f9b650eab845149b290588af7049a63c03112b04a919f701dbed3761c22da0ebee6a585f48e14280f46f4d8b40 SHA512 541083f9c1b9d05947f50c7fd9da6174d1ea68bd73fbd8006161771b1e77d4ec69b22be0ebc53c20c38ac80dd4e2edd65725c36bbbfca36ee8d20af8821a40a8 EBUILD flex-2.6.3-r1.ebuild 2044 BLAKE2B 8d1a67ad48a320dabc5980148196786ed3d121c2053b08f7c1f9b4cce0157f10b77abcabc58957ca7853bfed8fa42e0906851c6cb3afebebee33684621dfbf73 SHA512 ad58be31183ccd6c6d4e0dba8327b1c5af77a7451d52dc42d76924b0a912531e4e8b7fa0b4b64432c60b10c02b3d03b22b6466d76d4186a56de0cc7173816620 EBUILD flex-2.6.3.ebuild 1970 BLAKE2B 7e5d68765f51b29649f7e9a8ff5aeaf6b097d31118e00a691a35d24985f13c12c0bed0240c7350407c7606cc8c551377f7d1de501788c1aedf2c869d65603b3c SHA512 0de5e511498063e8ce497f8722a25e0f6d0fbf582928b0d4d00af3a5f5eed305d8e8d1bdafaf27c7c2094d31efa1d97100372fd18795870426c1083d84dad566 -EBUILD flex-2.6.4-r1.ebuild 2052 BLAKE2B ac04ab755e191629b4c9128d265adf1fa0f1ddff95d6b0261bd9d2c882223f5016186c7826d744fee5f0ddbdc54847f09b2b968ba9b026ce147618f265eada9b SHA512 ffd10fc7d6343328e42a59a10316485822f93b29d32164cd8d5653a5674fe33d11ab50c688fd1b12111f72cdced83809742ae301457b30ae9af8c4a89f79ee52 +EBUILD flex-2.6.4-r1.ebuild 2105 BLAKE2B 0ba2bf14b8f2b66033a7de50635485b4114dae5c1f571f1356d1260c35f4026d55a790990b1a2e27b130b0496efc4972533877dba8f7f90710496dcb02ede7bd SHA512 b4514bfac001e96d19dc6de4ea9ad517908834293266eac00587b59ef6ea9a92b050e22a34deb87fa4e1cc4df7301f8a6900a3f6c369a370503944dd89c023b6 EBUILD flex-2.6.4.ebuild 2009 BLAKE2B 25e93054e0a10548053185a2b3af311bcb85cf4940670e8fb5d1ae18b4b87b4c61a45dc51ff03bc09a4679718f6e8af4ba78926704ff8a47f2e3bc723c004c00 SHA512 d7454b849e7e8ccf1da433137511fab7d0c279a89e5b246cd03e6b2fc97823a566f3bcdc8ca43228f493936f9c158d4f5d7adf7870d8a093d185a2a3de74598c MISC metadata.xml 443 BLAKE2B 0e02862e2117e571beaf3938e56d19a5134b0c5371bd96e9973eb930a9874bcb103813e4a04f537549282b2a713c5bf882922142041f484a728da83755405777 SHA512 e115e8bfbf3c372f0e7200dc75d523214df2ce59165c43e01db5aeef87bfd7578de9757acbd67efc77e1ee7ac16fc00b99b905d65b8c0528c47de613bed872d5 diff --git a/sys-devel/flex/flex-2.6.4-r1.ebuild b/sys-devel/flex/flex-2.6.4-r1.ebuild index e040402480de..6d18e2634000 100644 --- a/sys-devel/flex/flex-2.6.4-r1.ebuild +++ b/sys-devel/flex/flex-2.6.4-r1.ebuild @@ -3,7 +3,7 @@ EAPI="6" -inherit eutils flag-o-matic libtool ltprune multilib-minimal +inherit eutils flag-o-matic libtool ltprune multilib-minimal toolchain-funcs DESCRIPTION="The Fast Lexical Analyzer" HOMEPAGE="https://flex.sourceforge.net/ https://github.com/westes/flex" @@ -50,6 +50,7 @@ multilib_src_configure() { # Do not install shared libs #503522 ECONF_SOURCE=${S} \ econf \ + CC_FOR_BUILD="$(tc-getBUILD_CC)" \ --disable-shared \ $(use_enable nls) } diff --git a/sys-devel/gcc-config/Manifest b/sys-devel/gcc-config/Manifest index 5df6a4db7e22..345b10b2fb1e 100644 --- a/sys-devel/gcc-config/Manifest +++ b/sys-devel/gcc-config/Manifest @@ -2,5 +2,5 @@ DIST gcc-config-2.2.1.tar.xz 16292 BLAKE2B bed319b73bb1dd1c693715654dab7d16c1292 DIST gcc-config-2.3.tar.xz 16736 BLAKE2B e8c22348d73ec756ebe377c3f9b0aca8e22b7ef53507bfa4dc0fbd459bca38ba6bea9dbb290b4d83239c21c913d12f8262a263e1c078a3997558a0b14fdf355d SHA512 4ce1e46bee6b2182c664746d939a7d843d5b4323c860ea3ee24e36aa629e65f3aa99da99905d4a7091ad0a3a37c14a6a56a0f79c76d6bc93fa0dad39552f221d EBUILD gcc-config-2.2.1.ebuild 1186 BLAKE2B c12aab5a9529bda5ad1a8d71598f8614428e494607651d26b510ccb14a5f612a2f114c8d40f9fdee1f4d62397891dc619bc60d7f54f1e987d1ad54f6b956a4a1 SHA512 ceb3d6b270f1bc0607b112dbb09faa27bc0584f1a35abcd770a4f3c2ac673b3a22ee3f3eaf6ac1073af66bac9802197bd408bee6a60c1dacd35350d04010cb6b EBUILD gcc-config-2.3.ebuild 1477 BLAKE2B 54a4304c340b7841be69e7308ff3c9d1b3c4db050fdbfd51313e47ee98e6daba6d9656264193f5c0997159ba0cc88c5eeaeaf0f6c01b53aa8ddf04cea2f2d5f4 SHA512 b4f845afe3380107f7444cbf1d18b7ab00946e0b2e3853f4eeb368c655b5a920217a137d0440cfc610a035f1484d02499d17a381a212994e59e0bc29eb305edf -EBUILD gcc-config-9999.ebuild 1477 BLAKE2B 54a4304c340b7841be69e7308ff3c9d1b3c4db050fdbfd51313e47ee98e6daba6d9656264193f5c0997159ba0cc88c5eeaeaf0f6c01b53aa8ddf04cea2f2d5f4 SHA512 b4f845afe3380107f7444cbf1d18b7ab00946e0b2e3853f4eeb368c655b5a920217a137d0440cfc610a035f1484d02499d17a381a212994e59e0bc29eb305edf +EBUILD gcc-config-9999.ebuild 1472 BLAKE2B 46db37d20da238fc05515c2bc000fcea6261b0f1651b6b8a20c19c2753fbde9661f2b4ba6380008bf144dbde6caf7787d62f935613e1f455a3dc6487c16141ca SHA512 ada2817124fa574984d12e3936db1286ecd57d92f11ac5423f2c8e211ee5f75ccc9819eff0b158b9eb9fa0a8962a524dfabee3d7ab8beb8d7d41ad533bd8cfb5 MISC metadata.xml 419 BLAKE2B 5dda1b92bb225b4a887de96721c7f8913e7ae26e0780bb0dabb875b0ee6993ec118b01c085bfa8e2d7ad824b23b561caa8a1bba443728832809242380dcde77c SHA512 7735c88b13f8ea1f076ca4344737d4d1200343e298ab37ceeeba0ff4651af7987140e541136bbdbb9feb75802e1b57f48c7b6c53bf684cd542f06adeeba5c562 diff --git a/sys-devel/gcc-config/gcc-config-9999.ebuild b/sys-devel/gcc-config/gcc-config-9999.ebuild index e2c270403dd3..f18c030a06c7 100644 --- a/sys-devel/gcc-config/gcc-config-9999.ebuild +++ b/sys-devel/gcc-config/gcc-config-9999.ebuild @@ -21,19 +21,21 @@ IUSE="+native-symlinks" RDEPEND=">=sys-apps/gentoo-functions-0.10" -src_compile() { - emake CC="$(tc-getCC)" \ +_emake() { + emake \ PV="${PV}" \ SUBLIBDIR="$(get_libdir)" \ - USE_NATIVE_LINKS="$(usex native-symlinks)" + USE_NATIVE_LINKS="$(usex native-symlinks)" \ + TOOLCHAIN_PREFIX="${CHOST}-" \ + "$@" +} + +src_compile() { + _emake } src_install() { - emake \ - DESTDIR="${D}" \ - PV="${PV}" \ - SUBLIBDIR="$(get_libdir)" \ - install + _emake DESTDIR="${D}" install } pkg_postinst() { diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest index 2208415493e5..0d8e44905b27 100644 --- a/sys-devel/gcc/Manifest +++ b/sys-devel/gcc/Manifest @@ -4,11 +4,8 @@ AUX 3.4.3/libffi-without-libgcj.patch 1658 BLAKE2B d1f14ae4d15ad7c70884afa88d9e6 AUX 3.4.4/gcc-3.4.4-cross-compile.patch 1912 BLAKE2B d05065e69610e10ced5ad67a2cbdd3c79d84b94f3318bb5b69253102b2e38c08c8d33e15ca3883c2d36b1623d7d362cee1cca0edd6df3539acfc02d7541401cf SHA512 c31cc4c77bb9a5f01a7a7969dad862fc5d7f9916adf67e039a71714e0eca02b13a576bdfbab50c069cc8020ef4dc335ed20bb10214f714a089b8daa02e849d2c AUX 4.1.0/gcc-4.1.0-cross-compile.patch 1134 BLAKE2B 945e234afcbbf2b5d737d7a4b9fb9282070ece739e1e487723baf9aa4e7c0777ec7b43cdd4957c89b9fc42c15eb2aff0564b370dd6b3e1a3849bf32680c69bd1 SHA512 84d0ab9bcfdd18148392a7219ec0ad4a1e63d43bda3f45a13e22f551f2f119822fed700570bd659f9260b09b0958d4c49e339ad4f135740e5b60e46462de7f20 AUX 4.1.0/gcc-4.1.0-fast-math-i386-Os-workaround.patch 1686 BLAKE2B 32053b87fd356274daf10dfc12ed04f6291cf948a3acea0200d05150b31e9244d17971f2faa100753aa5341a4e19a771e76c091e3f0eed4e64a07623aa357c48 SHA512 cb0268c64d8d50ee3c95e9c6ca9242be1cb08382c7b081c129045a4852a7b3ed5c48124b33aa51816d80f5c930929bdc097644e817d77b5e186442248a609f2f -AUX awk/fixlafiles.awk 7693 BLAKE2B 190e7709ca8a515f16065d5c831849452b6c6fad9fb8992a42be2d8d917221033c61dfe29bd4f7b4ad0533a9d661a051dc13d2011557a44e148d93294f847202 SHA512 3b7b06d4f82a67b642e8d74fa32c211ae597bea0e65a4a1992c10a3e7aa93ddf1aa210bfba1b5e34df87f8bea1d628a9a6c900579572433cd6d0fb9a34f6ddf4 -AUX awk/fixlafiles.awk-no_gcc_la 8473 BLAKE2B 58d7c9e98b356cefd08a24a978f88ca7d1dd21c22dcb6591e5ebc79849b1d798e4333b1a1d09c21e56309ae9f47dcb730b30b3e93bb44ab01f843b4b17623978 SHA512 bea5e047e8bf4dd5d6e877e84225b7efd79dedaad0a35713b3b6887b82aac215dde8f07b9bdfc8a75874248faf4cb7c73d01303e22476e6160e7398db1497b94 AUX c89 412 BLAKE2B 04236b6a32e8819c65713821e769d5bf55f194fb6bdaa61c48ad09c7e13e123d3e4725394b3a922445efaa951849f4e87f96e34a55d3e229dbedc50ca1816f44 SHA512 71d33a147339d8d70a62aa22a95d3e70e445d8435d6ac05893f7da19ae851b89bea851f6ce213fbd22470f13572ae13b83cf02f0621333f07d7b0c68a79b7924 AUX c99 446 BLAKE2B 061fcbef85149de611c4692c99c2c5ebeeef045637b999dbea0d1922398e16361cedbd461ed6aaf0c49c6269900a4c346f5026d8c22780044e1cc8afee74be4e SHA512 bf3b0eb1125d5e89b433954fcbf805cd86dec5a6eeb23df685ebf3ff83a610573f2ffcec65d893244c845936a73918387cba026710c65c854b2c94a78b007989 -AUX fix_libtool_files.sh 1546 BLAKE2B afef9b4e3add813374d95226ebe1d76986c00c7e81be20cb5110388ad9322e1a18f42d8c1ad2d355699033bb5f24071e2c1c308eee6390eeb864769f13e93614 SHA512 3c6fb7d8b127875aa9450b0f0835f99ae69a3d88df86fefc3932e9ced9912811f58e21a5d1ba9444422476efb5497452aa8a89a9d3499ad88add493a02b98fd3 AUX gcc-4.9.4-bootstrap.patch 2698 BLAKE2B 2fe9519590f0870aa201d550e027eaec311961c07b62f470d77f1de125fdf81cab6f884f08dfd8b957b7c2880ad04a7400f3fb395f5404d6c467373042e2fb0c SHA512 c712234b87aa66379bc52b43bce31a2dfd8de996030588a26261bb08471cd6e92587bc5aa35bb8f776a5128b1deb524e37aebe1c0b970a98210d653b5094d95b AUX gcc-9.2.0-neg-insn-cost.patch 728 BLAKE2B 31b393a42b5d54de07a43cc6e43dc9d7228905ceaf27f7541cad4baf4d1f475dfbf0b6c00e76e5cddaea382fb77909166843f16d2a76b07b9c42bb0e181b5781 SHA512 057c8fb003df37dd15bbfc7f9e87e07d8a1cdd67885f8efffb80aaa694cc9314bb7317b43e57be55d55b3dc58a29bde138b07738a2a0d6cb8454b270e1c88983 AUX gcc-configure-LANG.patch 2052 BLAKE2B 28c36f4992e41305ee421dade5eaaac34e3bdc523665b03f360f2bc01e8f69e9dc48052edb80dece63ab561e80325b4f125502482eb16f7324f1c03670021550 SHA512 a694c7ac2f45cc657097ff5b0cf1356ac88a9c06035c9ba15167e9d444844d0d8a478eb1b9b62195dd063774f79697b9148b9cdb6c261640b472c291061b2129 @@ -58,7 +55,7 @@ EBUILD gcc-7.5.0-r1.ebuild 456 BLAKE2B bad9ccb3415eae7e4f793fcda356b076556c62475 EBUILD gcc-7.5.0.ebuild 447 BLAKE2B e9c72e8743ec650fd79244b81e7855bcd1ff1b4a13d8fe245f92e0ae2fd37c15609aa951429afcd2eecd4ac2d3f45786e5e2d8a72fac439aaf7cd7a525f3c4e9 SHA512 3b0e22f868d6ff1ec47b21196354873da4d01f21350aea79d1a86c218d4245237a9e5462ae3cb5486ba48736edf6fd1550729a0b49fb22cd87d0f4d99c4eb68d EBUILD gcc-8.3.0-r3.ebuild 443 BLAKE2B d5da62636879b66b6e23d2bb000736c17b85d0ee81e3858994fc472edea55810b59f99737d07611ccbe7ff7e6b1af956e315feeffa3ffde227e92490c04b9300 SHA512 4b4b60fcdc829d5c28d8bff8e17d4ccfa0bb09426bf0b741fee6c5df6fc2753e8132c06d09cca8966ed398de4b1e94ba58cd06fb19c944f949a2cde0dfdc4614 EBUILD gcc-8.4.0-r1.ebuild 452 BLAKE2B 0896974e52aeced6004b4bab01fea077803a8e92a0df45f1cd9df3bca0bc19bb1502ab764526749252888b0cc9a67ba2ef09ec07589768ba6d65390502a751fe SHA512 0016848b01a437b8d5e40e115fbab8311b525b41bab46b5c3eb47727abaf4d8b26828293407533792fc9aefd931af9b0dcd56c8853b5e9708081e62789e6ee6b -EBUILD gcc-8.4.0.ebuild 444 BLAKE2B 2e2f512a590006c683ea89c51d82d64f43a3d775ef778941de495ae107ecf20dff336c56c9a32e24750ceb69dbb671dc955dd9f89ea248ed12ca5b7628adccd9 SHA512 182138a5434a5092d7a6d51d6c62294eaf87b10ddf72d817bda480e8ab4c3fcd07ccac6cae7c1f23ce640256f2dcaf5b5883bb50e0363202d7acbbf7c203a9a3 +EBUILD gcc-8.4.0.ebuild 443 BLAKE2B 0b37d1fa2fd83c95142b122a0fcc4bcd01f8278c80397f3aaffb0943af6578952a242de8fe0312b3c4c4d533f5fdebdcc63b67b29b17a6fc67b5b052f71cdf25 SHA512 c03adf50767371fef49b800bd0bd364eecf42e3e90033727bfecbd862757c43f1010f9230730506d09bbc96c747cb015fa7aa6342c5d475a3310a129cf0ec5f3 EBUILD gcc-9.2.0-r2.ebuild 539 BLAKE2B d48f3dd9a33734a1db5546b6223bbb68ddb1f5831c92aa435fe6536af843f3754a688e728055b56999dd836a82e2bbc0f7dd9a4644d66d1c64ab127bba1af3a3 SHA512 a0b565c5a9c54f419c572a760f9b0b310e7008ca0d701a890bee224f7491c265e978215714d12a9565f4924f37c389bfd7fb1512d43e325e715d40ad3ec85f38 EBUILD gcc-9.2.0-r4.ebuild 452 BLAKE2B 5b1ced4bebbe5558068cde5d495e04a978292cdccb118f199642484a6cb4fdde844c31fcd99347271addaafa7c23e6d8dbbd13d1d54a08bbe9fbc470566817d3 SHA512 65ae72ce9e55b2c8a86375ffe8188d9e05fd82a077d8b5abac5b5971f152efb7610fce553af12f1746ec6f6bcf881fafe3db76a5098d99c9e56fdd3cc3091096 EBUILD gcc-9.3.0-r1.ebuild 452 BLAKE2B a08af9f8f55166a07894145a6d53a4c6988b9a419e95386e28f6875d6a81a6a02db25a051506c981e17c68846056a919697cad6f5ee3461b4f3167777974921d SHA512 1991ba970e5e56eda9a8e1391514de8028ed6741b379375d23ae3e13f267203cdd29ac0aee9f8faf8dc6a42c0291095521257886c77bea64159665f0ebb00c1a diff --git a/sys-devel/gcc/files/awk/fixlafiles.awk b/sys-devel/gcc/files/awk/fixlafiles.awk deleted file mode 100644 index aa2ecb60266e..000000000000 --- a/sys-devel/gcc/files/awk/fixlafiles.awk +++ /dev/null @@ -1,313 +0,0 @@ -# Copyright 1999-2005 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -# -# Helper functions -# -function printn(string) { - printf("%s", string) -} -function einfo(string) { - printf(" \033[32;01m*\033[0m %s\n", string) -} -function einfon(string) { - printf(" \033[32;01m*\033[0m %s", string) -} -function ewarn(string) { - printf(" \033[33;01m*\033[0m %s\n", string) -} -function ewarnn(string) { - printf(" \033[33;01m*\033[0m %s", string) -} -function eerror(string) { - printf(" \033[31;01m*\033[0m %s\n", string) -} - -# -# assert(condition, errmsg) -# assert that a condition is true. Otherwise exit. -# -function assert(condition, string) { - if (! condition) { - printf("%s:%d: assertion failed: %s\n", - FILENAME, FNR, string) > "/dev/stderr" - _assert_exit = 1 - exit 1 - } -} - -# -# system(command, return) -# wrapper that normalizes return codes ... -# -function dosystem(command, ret) { - ret = 0 - ret = system(command) - if (ret == 0) - return 1 - else - return 0 -} - -BEGIN { - # - # Get our variables from environment - # - OLDVER = ENVIRON["OLDVER"] - OLDCHOST = ENVIRON["OLDCHOST"] - - if (OLDVER == "") { - eerror("Could not get OLDVER!"); - exit 1 - } - - # Setup some sane defaults - LIBCOUNT = 2 - HAVE_GCC34 = 0 - DIRLIST[1] = "/lib" - DIRLIST[2] = "/usr/lib" - - # - # Walk /etc/ld.so.conf to discover all our library paths - # - pipe = "cat /etc/ld.so.conf | sort 2>/dev/null" - while(((pipe) | getline ldsoconf_data) > 0) { - if (ldsoconf_data !~ /^[[:space:]]*#/) { - if (ldsoconf_data == "") continue - - # Remove any trailing comments - sub(/#.*$/, "", ldsoconf_data) - # Remove any trailing spaces - sub(/[[:space:]]+$/, "", ldsoconf_data) - - # If there's more than one path per line, split - # it up as if they were sep lines - split(ldsoconf_data, nodes, /[:,[:space:]]/) - - # Now add the rest from ld.so.conf - for (x in nodes) { - # wtf does this line do ? - sub(/=.*/, "", nodes[x]) - # Prune trailing / - sub(/\/$/, "", nodes[x]) - - if (nodes[x] == "") continue - - # - # Drop the directory if its a child directory of - # one that was already added ... - # For example, if we have: - # /usr/lib /usr/libexec /usr/lib/mozilla /usr/lib/nss - # We really just want to save /usr/lib /usr/libexec - # - CHILD = 0 - for (y in DIRLIST) { - if (nodes[x] ~ "^" DIRLIST[y] "(/|$)") { - CHILD = 1 - break - } - } - if (CHILD) continue - - DIRLIST[++LIBCOUNT] = nodes[x] - } - } - } - close(pipe) - - # - # Get line from gcc's output containing CHOST - # - pipe = "gcc -print-file-name=libgcc.a 2>/dev/null" - if ((!((pipe) | getline TMP_CHOST)) || (TMP_CHOST == "")) { - close(pipe) - - # If we fail to get the CHOST, see if we can get the CHOST - # portage thinks we are using ... - pipe = "/usr/bin/portageq envvar 'CHOST'" - assert(((pipe) | getline CHOST), "(" pipe ") | getline CHOST") - } else { - # Check pre gcc-3.4.x versions - CHOST = gensub("^.+lib/gcc-lib/([^/]+)/[0-9]+.+$", "\\1", 1, TMP_CHOST) - - if (CHOST == TMP_CHOST || CHOST == "") { - # Check gcc-3.4.x or later - CHOST = gensub("^.+lib/gcc/([^/]+)/[0-9]+.+$", "\\1", 1, TMP_CHOST); - - if (CHOST == TMP_CHOST || CHOST == "") - CHOST = "" - else - HAVE_GCC34 = 1 - } - } - close(pipe) - - if (CHOST == "") { - eerror("Could not get gcc's CHOST!") - exit 1 - } - - if (OLDCHOST != "") - if (OLDCHOST == CHOST) - OLDCHOST = "" - - GCCLIBPREFIX_OLD = "/usr/lib/gcc-lib/" - GCCLIBPREFIX_NEW = "/usr/lib/gcc/" - - if (HAVE_GCC34) - GCCLIBPREFIX = GCCLIBPREFIX_NEW - else - GCCLIBPREFIX = GCCLIBPREFIX_OLD - - GCCLIB = GCCLIBPREFIX CHOST - - if (OLDCHOST != "") { - OLDGCCLIB1 = GCCLIBPREFIX_OLD OLDCHOST - OLDGCCLIB2 = GCCLIBPREFIX_NEW OLDCHOST - } - - # Get current gcc's version - pipe = "gcc -dumpversion" - assert(((pipe) | getline NEWVER), "(" pipe ") | getline NEWVER)") - close(pipe) - - if (NEWVER == "") { - eerror("Could not get gcc's version!") - exit 1 - } - - # Nothing to do ? - if ((OLDVER == NEWVER) && (OLDCHOST == "")) - exit 0 - - # - # Ok, now let's scan for the .la files and actually fix them up - # - for (x = 1; x <= LIBCOUNT; x++) { - # Do nothing if the target dir is gcc's internal library path - if (DIRLIST[x] ~ GCCLIBPREFIX_OLD || - DIRLIST[x] ~ GCCLIBPREFIX_NEW) - continue - - einfo(" [" x "/" LIBCOUNT "] Scanning " DIRLIST[x] " ...") - - pipe = "find " DIRLIST[x] "/ -name '*.la' 2>/dev/null" - while (((pipe) | getline la_files) > 0) { - - # Do nothing if the .la file is located in gcc's internal lib path - if (la_files ~ GCCLIBPREFIX_OLD || - la_files ~ GCCLIBPREFIX_NEW) - continue - - CHANGED = 0 - CHOST_CHANGED = 0 - - # See if we need to fix the .la file - while ((getline la_data < (la_files)) > 0) { - if (OLDCHOST != "") { - if ((gsub(OLDGCCLIB1 "[/[:space:]]+", - GCCLIB, la_data) > 0) || - (gsub(OLDGCCLIB2 "[/[:space:]]+", - GCCLIB, la_data) > 0)) { - CHANGED = 1 - CHOST_CHANGED = 1 - } - } - if (OLDVER != NEWVER) { - if ((gsub(GCCLIBPREFIX_OLD CHOST "/" OLDVER "[/[:space:]]*", - GCCLIB "/" NEWVER, la_data) > 0) || - (gsub(GCCLIBPREFIX_NEW CHOST "/" OLDVER "[/[:space:]]*", - GCCLIB "/" NEWVER, la_data) > 0)) - CHANGED = 1 - } - } - close(la_files) - - # Do the actual changes in a second loop, as we can then - # verify that CHOST_CHANGED among things is correct ... - if (CHANGED) { - ewarnn(" FIXING: " la_files " ...") - - if (CHANGED) - printn("[") - - # Clear the temp file (removing rather than '>foo' is better - # out of a security point of view?) - dosystem("rm -f " la_files ".new") - - while ((getline la_data < (la_files)) > 0) { - if (OLDCHOST != "") { - tmpstr = gensub(OLDGCCLIB1 "([/[:space:]]+)", - GCCLIB "\\1", "g", la_data) - tmpstr = gensub(OLDGCCLIB2 "([/[:space:]]+)", - GCCLIB "\\1", "g", tmpstr) - - if (la_data != tmpstr) { - printn("c") - la_data = tmpstr - } - - if (CHOST_CHANGED > 0) { - # We try to be careful about CHOST changes outside - # the gcc library path (meaning we cannot match it - # via /GCCLIBPREFIX CHOST/) ... - - # Catch: - # - # dependency_libs=' -L/usr/CHOST/{bin,lib}' - # - gsub("-L/usr/" OLDCHOST "/", - "-L/usr/" CHOST "/", la_data) - # Catch: - # - # dependency_libs=' -L/usr/lib/gcc-lib/CHOST/VER/../../../../CHOST/lib' - # - la_data = gensub("(" GCCLIB "/[^[:space:]]+)/" OLDCHOST "/", - "\\1/" CHOST "/", "g", la_data) - } - } - - if (OLDVER != NEWVER) { - # Catch: - # - # dependency_libs=' -L/usr/lib/gcc/CHOST/VER' - # - tmpstr = gensub(GCCLIBPREFIX_OLD CHOST "/" OLDVER "([/[:space:]]+)", - GCCLIB "/" NEWVER "\\1", "g", la_data) - tmpstr = gensub(GCCLIBPREFIX_NEW CHOST "/" OLDVER "([/[:space:]]+)", - GCCLIB "/" NEWVER "\\1", "g", tmpstr) - - if (la_data != tmpstr) { - # Catch: - # - # dependency_libs=' -L/usr/lib/gcc-lib/../../CHOST/lib' - # - # in cases where we have gcc34 - tmpstr = gensub(GCCLIBPREFIX_OLD "(../../" CHOST "/lib)", - GCCLIBPREFIX "\\1", "g", tmpstr) - tmpstr = gensub(GCCLIBPREFIX_NEW "(../../" CHOST "/lib)", - GCCLIBPREFIX "\\1", "g", tmpstr) - printn("v") - la_data = tmpstr - } - } - - print la_data >> (la_files ".new") - } - - if (CHANGED) - print "]" - - close(la_files) - close(la_files ".new") - - assert(dosystem("mv -f " la_files ".new " la_files), - "dosystem(\"mv -f " la_files ".new " la_files "\")") - } - } - - close(pipe) - } -} - -# vim:ts=4 diff --git a/sys-devel/gcc/files/awk/fixlafiles.awk-no_gcc_la b/sys-devel/gcc/files/awk/fixlafiles.awk-no_gcc_la deleted file mode 100644 index d95a3c06e780..000000000000 --- a/sys-devel/gcc/files/awk/fixlafiles.awk-no_gcc_la +++ /dev/null @@ -1,334 +0,0 @@ -# Copyright 1999-2005 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -# -# Helper functions -# -function printn(string) { - printf("%s", string) -} -function einfo(string) { - printf(" \033[32;01m*\033[0m %s\n", string) -} -function einfon(string) { - printf(" \033[32;01m*\033[0m %s", string) -} -function ewarn(string) { - printf(" \033[33;01m*\033[0m %s\n", string) -} -function ewarnn(string) { - printf(" \033[33;01m*\033[0m %s", string) -} -function eerror(string) { - printf(" \033[31;01m*\033[0m %s\n", string) -} - -# -# assert(condition, errmsg) -# assert that a condition is true. Otherwise exit. -# -function assert(condition, string) { - if (! condition) { - printf("%s:%d: assertion failed: %s\n", - FILENAME, FNR, string) > "/dev/stderr" - _assert_exit = 1 - exit 1 - } -} - -# -# system(command, return) -# wrapper that normalizes return codes ... -# -function dosystem(command, ret) { - ret = 0 - ret = system(command) - if (ret == 0) - return 1 - else - return 0 -} - -# -# parse_ld_conf(config_file) -# -function parse_ld_conf(conf, pipe, ldsoconf_data, CHILD, y) { - pipe = "cd /etc; cat " conf " | sort 2>/dev/null" - while(((pipe) | getline ldsoconf_data) > 0) { - if (ldsoconf_data ~ /^[[:space:]]*#/) - continue - if (ldsoconf_data == "") - continue - - # Handle the "include" keyword - if (ldsoconf_data ~ /^include /) { - sub(/^include /, "", ldsoconf_data) - parse_ld_conf(ldsoconf_data) - continue - } - - # Remove any trailing comments - sub(/#.*$/, "", ldsoconf_data) - # Remove any trailing spaces - sub(/[[:space:]]+$/, "", ldsoconf_data) - # Eat duplicate slashes - sub(/\/\//, "/", ldsoconf_data) - # Prune trailing / - sub(/\/$/, "", ldsoconf_data) - - # - # Drop the directory if its a child directory of - # one that was already added ... - # For example, if we have: - # /usr/lib /usr/libexec /usr/lib/mozilla /usr/lib/nss - # We really just want to save /usr/lib /usr/libexec - # - CHILD = 0 - for (y in DIRLIST) { - if (ldsoconf_data ~ "^" DIRLIST[y] "(/|$)") { - CHILD = 1 - break - } - } - if (CHILD) continue - - DIRLIST[++LIBCOUNT] = ldsoconf_data - } - close(pipe) -} - -BEGIN { - # - # Get our variables from environment - # - OLDVER = ENVIRON["OLDVER"] - OLDCHOST = ENVIRON["OLDCHOST"] - - if (OLDVER == "") { - eerror("Could not get OLDVER!"); - exit 1 - } - - # Setup some sane defaults - LIBCOUNT = 2 - HAVE_GCC34 = 0 - DIRLIST[1] = "/lib" - DIRLIST[2] = "/usr/lib" - - # - # Walk /etc/ld.so.conf to discover all our library paths - # - parse_ld_conf("/etc/ld.so.conf") - - # - # Get line from gcc's output containing CHOST - # - pipe = "gcc -print-file-name=libgcc.a 2>/dev/null" - if ((!((pipe) | getline TMP_CHOST)) || (TMP_CHOST == "")) { - close(pipe) - - # If we fail to get the CHOST, see if we can get the CHOST - # portage thinks we are using ... - pipe = "/usr/bin/portageq envvar 'CHOST'" - assert(((pipe) | getline CHOST), "(" pipe ") | getline CHOST") - } else { - # Check pre gcc-3.4.x versions - CHOST = gensub("^.+lib/gcc-lib/([^/]+)/[0-9]+.+$", "\\1", 1, TMP_CHOST) - - if (CHOST == TMP_CHOST || CHOST == "") { - # Check gcc-3.4.x or later - CHOST = gensub("^.+lib/gcc/([^/]+)/[0-9]+.+$", "\\1", 1, TMP_CHOST); - - if (CHOST == TMP_CHOST || CHOST == "") - CHOST = "" - else - HAVE_GCC34 = 1 - } - } - close(pipe) - - if (CHOST == "") { - eerror("Could not get gcc's CHOST!") - exit 1 - } - - if (OLDCHOST != "") - if (OLDCHOST == CHOST) - OLDCHOST = "" - - GCCLIBPREFIX_OLD = "/usr/lib/gcc-lib/" - GCCLIBPREFIX_NEW = "/usr/lib/gcc/" - - if (HAVE_GCC34) - GCCLIBPREFIX = GCCLIBPREFIX_NEW - else - GCCLIBPREFIX = GCCLIBPREFIX_OLD - - GCCLIB = GCCLIBPREFIX CHOST - - if (OLDCHOST != "") { - OLDGCCLIB1 = GCCLIBPREFIX_OLD OLDCHOST - OLDGCCLIB2 = GCCLIBPREFIX_NEW OLDCHOST - } - - # Get current gcc's version - pipe = "gcc -dumpversion" - assert(((pipe) | getline NEWVER), "(" pipe ") | getline NEWVER)") - close(pipe) - - if (NEWVER == "") { - eerror("Could not get gcc's version!") - exit 1 - } - - # Nothing to do ? - # NB: Do not check for (OLDVER == NEWVER) anymore, as we might need to - # replace libstdc++.la .... - if ((OLDVER == "") && (OLDCHOST == "")) - exit 0 - - # - # Ok, now let's scan for the .la files and actually fix them up - # - for (x = 1; x <= LIBCOUNT; x++) { - # Do nothing if the target dir is gcc's internal library path - if (DIRLIST[x] ~ GCCLIBPREFIX_OLD || - DIRLIST[x] ~ GCCLIBPREFIX_NEW) - continue - - einfo(" [" x "/" LIBCOUNT "] Scanning " DIRLIST[x] " ...") - - pipe = "find " DIRLIST[x] "/ -name '*.la' 2>/dev/null" - while (((pipe) | getline la_files) > 0) { - - # Do nothing if the .la file is located in gcc's internal lib path - if (la_files ~ GCCLIBPREFIX_OLD || - la_files ~ GCCLIBPREFIX_NEW) - continue - - CHANGED = 0 - CHOST_CHANGED = 0 - - # See if we need to fix the .la file - while ((getline la_data < (la_files)) > 0) { - if (OLDCHOST != "") { - if ((gsub(OLDGCCLIB1 "[/[:space:]]+", - GCCLIB, la_data) > 0) || - (gsub(OLDGCCLIB2 "[/[:space:]]+", - GCCLIB, la_data) > 0)) { - CHANGED = 1 - CHOST_CHANGED = 1 - } - } - if (OLDVER != NEWVER) { - if ((gsub(GCCLIBPREFIX_OLD CHOST "/" OLDVER "[/[:space:]]*", - GCCLIB "/" NEWVER, la_data) > 0) || - (gsub(GCCLIBPREFIX_NEW CHOST "/" OLDVER "[/[:space:]]*", - GCCLIB "/" NEWVER, la_data) > 0)) - CHANGED = 1 - } - # We now check if we have libstdc++.la, as we remove the - # libtool linker scripts for gcc ... - # We do this last, as we only match the new paths - if (gsub(GCCLIB "/" NEWVER "/libstdc\\+\\+\\.la", - "-lstdc++", la_data) > 0) - CHANGED = 1 - } - close(la_files) - - # Do the actual changes in a second loop, as we can then - # verify that CHOST_CHANGED among things is correct ... - if (CHANGED) { - ewarnn(" FIXING: " la_files " ...[") - - # Clear the temp file (removing rather than '>foo' is better - # out of a security point of view?) - dosystem("rm -f " la_files ".new") - - while ((getline la_data < (la_files)) > 0) { - if (OLDCHOST != "") { - tmpstr = gensub(OLDGCCLIB1 "([/[:space:]]+)", - GCCLIB "\\1", "g", la_data) - tmpstr = gensub(OLDGCCLIB2 "([/[:space:]]+)", - GCCLIB "\\1", "g", tmpstr) - - if (la_data != tmpstr) { - printn("c") - la_data = tmpstr - } - - if (CHOST_CHANGED > 0) { - # We try to be careful about CHOST changes outside - # the gcc library path (meaning we cannot match it - # via /GCCLIBPREFIX CHOST/) ... - - # Catch: - # - # dependency_libs=' -L/usr/CHOST/{bin,lib}' - # - gsub("-L/usr/" OLDCHOST "/", - "-L/usr/" CHOST "/", la_data) - # Catch: - # - # dependency_libs=' -L/usr/lib/gcc-lib/CHOST/VER/../../../../CHOST/lib' - # - la_data = gensub("(" GCCLIB "/[^[:space:]]+)/" OLDCHOST "/", - "\\1/" CHOST "/", "g", la_data) - } - } - - if (OLDVER != NEWVER) { - # Catch: - # - # dependency_libs=' -L/usr/lib/gcc/CHOST/VER' - # - tmpstr = gensub(GCCLIBPREFIX_OLD CHOST "/" OLDVER "([/[:space:]]+)", - GCCLIB "/" NEWVER "\\1", "g", la_data) - tmpstr = gensub(GCCLIBPREFIX_NEW CHOST "/" OLDVER "([/[:space:]]+)", - GCCLIB "/" NEWVER "\\1", "g", tmpstr) - - if (la_data != tmpstr) { - # Catch: - # - # dependency_libs=' -L/usr/lib/gcc-lib/../../CHOST/lib' - # - # in cases where we have gcc34 - tmpstr = gensub(GCCLIBPREFIX_OLD "(../../" CHOST "/lib)", - GCCLIBPREFIX "\\1", "g", tmpstr) - tmpstr = gensub(GCCLIBPREFIX_NEW "(../../" CHOST "/lib)", - GCCLIBPREFIX "\\1", "g", tmpstr) - printn("v") - la_data = tmpstr - } - } - - # We now check if we have libstdc++.la, as we remove the - # libtool linker scripts for gcc and any referencese in any - # libtool linker scripts. - # We do this last, as we only match the new paths - tmpstr = gensub(GCCLIB "/" NEWVER "/libstdc\\+\\+\\.la", - "-lstdc++", "g", la_data); - if (la_data != tmpstr) { - printn("l") - la_data = tmpstr - } - - print la_data >> (la_files ".new") - } - - if (CHANGED) - print "]" - - close(la_files) - close(la_files ".new") - - assert(dosystem("mv -f " la_files ".new " la_files), - "dosystem(\"mv -f " la_files ".new " la_files "\")") - } - } - - close(pipe) - } -} - -# vim:ts=4 diff --git a/sys-devel/gcc/files/fix_libtool_files.sh b/sys-devel/gcc/files/fix_libtool_files.sh deleted file mode 100644 index af085e1efa01..000000000000 --- a/sys-devel/gcc/files/fix_libtool_files.sh +++ /dev/null @@ -1,66 +0,0 @@ -#!/bin/sh -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -usage() { -cat << "USAGE_END" -Usage: fix_libtool_files.sh <old-gcc-version> [--oldarch <old-CHOST>] - - Where <old-gcc-version> is the version number of the - previous gcc version. For example, if you updated to - gcc-3.2.1, and you had gcc-3.2 installed, run: - - # fix_libtool_files.sh 3.2 - - If you updated to gcc-3.2.3, and the old CHOST was i586-pc-linux-gnu - but you now have CHOST as i686-pc-linux-gnu, run: - - # fix_libtool_files.sh 3.2 --oldarch i586-pc-linux-gnu - - Note that if only the CHOST and not the version changed, you can run - it with the current version and the '--oldarch <old-CHOST>' arguments, - and it will do the expected: - - # fix_libtool_files.sh `gcc -dumpversion` --oldarch i586-pc-linux-gnu - -USAGE_END - exit 1 -} - -case $2 in ---oldarch) [ $# -ne 3 ] && usage ;; -*) [ $# -ne 1 ] && usage ;; -esac - -ARGV1=$1 -ARGV2=$2 -ARGV3=$3 - -. /etc/profile || exit 1 - -if [ ${EUID:-0} -ne 0 -a "${EPREFIX}" = '' ] ; then - echo "${0##*/}: Must be root." - exit 1 -fi - -# make sure the files come out sane -umask 0022 - -OLDCHOST= -[ "${ARGV2}" = "--oldarch" ] && OLDCHOST=${ARGV3} - -AWKDIR="/usr/share/gcc-data" - -if [ ! -r "${AWKDIR}/fixlafiles.awk" ] ; then - echo "${0##*/}: ${AWKDIR}/fixlafiles.awk does not exist!" - exit 1 -fi - -OLDVER=${ARGV1} - -export OLDVER OLDCHOST - -echo "Scanning libtool files for hardcoded gcc library paths..." -exec gawk -f "${AWKDIR}/fixlafiles.awk" - -# vim:ts=4 diff --git a/sys-devel/gcc/gcc-8.4.0.ebuild b/sys-devel/gcc/gcc-8.4.0.ebuild index 40522094368f..a34d9f09bd8d 100644 --- a/sys-devel/gcc/gcc-8.4.0.ebuild +++ b/sys-devel/gcc/gcc-8.4.0.ebuild @@ -7,7 +7,7 @@ PATCH_VER="1" inherit toolchain -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86" RDEPEND="" DEPEND="${RDEPEND} diff --git a/sys-devel/lld/Manifest b/sys-devel/lld/Manifest index 71bf355b61c4..580ef7bda600 100644 --- a/sys-devel/lld/Manifest +++ b/sys-devel/lld/Manifest @@ -4,9 +4,9 @@ DIST llvmorg-10.0.0.tar.gz 120804856 BLAKE2B 6b0254f5b913398cdcf2b2ec1ff21988870 DIST llvmorg-10.0.1-rc1.tar.gz 120834583 BLAKE2B 64244ebcb6f2c171c9f606e5eb0adff2794f06c9312a0ca627fb79c107c0c898ac242cf4e92523c3265fa717322601d7e3f4d178515fac95d03ee92312082b06 SHA512 f877f66046969a4055b166ad50ef876a9c8ecaf03e2cdd7c8e1a3348eb5f5180f222fa457b1f090a6660282a0d9f7a1d39cf09a04abe0dde0a6e1e10ccf15597 DIST llvmorg-9.0.1.tar.gz 113193320 BLAKE2B b86e405f2b8e00436045fd409fe19cdde75c797b1192c62a22b5ec75e6b4dc8e874a0f33008dc31562445e4cbe53a992b6f48c684255a6a1ef261e595b8b161f SHA512 fa88beeaae94b6d0cd9b5ba38658d0ffed8004035d7d8a4f95c3d31a709b88b581ae9bd7761333c8e5375c44b8f6be01768b5a3be901163159d7e6c43b71da59 EBUILD lld-10.0.0.ebuild 1483 BLAKE2B 7d949cb37acc2568db0915086fce712ad854df4fe0878ae42759f93c69a119e9f7f24fa8cd5047bc225b037d4afa178ce8e02f11eb9e1cd0e8c60ac3fe8a422d SHA512 bab240f2abe5b81f811080695d419683a423865dd38c62d8d65e7d2421aeb1b3d4da511298d78cd8b20ef53c18772f51367b25fc2b6252070297ceb262ffb1a2 -EBUILD lld-10.0.1.9999.ebuild 1453 BLAKE2B eece842076bb0a1e48c567ca4c57043bde3a988ef5a0b254b1336885d0fe5a51bbd5cb87b954f0b7b6dc2ecabcc0e9d47c0a0b522df3052e9ff5a7601695cc4f SHA512 0be2cc3d5613fd64769e3daf7aadcdcd30e8eb50ddf3bde02c4dd01906612a94d5b2edd4f036bb5f2f1177dd3e98d912f909fa23327b42b10e855b9375689a85 -EBUILD lld-10.0.1_rc1.ebuild 1453 BLAKE2B eece842076bb0a1e48c567ca4c57043bde3a988ef5a0b254b1336885d0fe5a51bbd5cb87b954f0b7b6dc2ecabcc0e9d47c0a0b522df3052e9ff5a7601695cc4f SHA512 0be2cc3d5613fd64769e3daf7aadcdcd30e8eb50ddf3bde02c4dd01906612a94d5b2edd4f036bb5f2f1177dd3e98d912f909fa23327b42b10e855b9375689a85 -EBUILD lld-11.0.0.9999.ebuild 1453 BLAKE2B eece842076bb0a1e48c567ca4c57043bde3a988ef5a0b254b1336885d0fe5a51bbd5cb87b954f0b7b6dc2ecabcc0e9d47c0a0b522df3052e9ff5a7601695cc4f SHA512 0be2cc3d5613fd64769e3daf7aadcdcd30e8eb50ddf3bde02c4dd01906612a94d5b2edd4f036bb5f2f1177dd3e98d912f909fa23327b42b10e855b9375689a85 +EBUILD lld-10.0.1.9999.ebuild 1545 BLAKE2B b3b9fa04cb0f406ad925b6ab59d67871c0a1a096cdcb797dc2eb45f67e415696a7af6a4abdd1632350313d7849766c8b6504f725c3b01c0b12fbfa509503340c SHA512 cd8fe30a226f19a5e2569b383149e0d43b2498ac6db25e6064804fe69c131072fc0614de79ff01f623722f256c9f4ba63d4b128a1244d2c3c227d089ad85badd +EBUILD lld-10.0.1_rc1.ebuild 1545 BLAKE2B b3b9fa04cb0f406ad925b6ab59d67871c0a1a096cdcb797dc2eb45f67e415696a7af6a4abdd1632350313d7849766c8b6504f725c3b01c0b12fbfa509503340c SHA512 cd8fe30a226f19a5e2569b383149e0d43b2498ac6db25e6064804fe69c131072fc0614de79ff01f623722f256c9f4ba63d4b128a1244d2c3c227d089ad85badd +EBUILD lld-11.0.0.9999.ebuild 1545 BLAKE2B b3b9fa04cb0f406ad925b6ab59d67871c0a1a096cdcb797dc2eb45f67e415696a7af6a4abdd1632350313d7849766c8b6504f725c3b01c0b12fbfa509503340c SHA512 cd8fe30a226f19a5e2569b383149e0d43b2498ac6db25e6064804fe69c131072fc0614de79ff01f623722f256c9f4ba63d4b128a1244d2c3c227d089ad85badd EBUILD lld-8.0.1.ebuild 1794 BLAKE2B 31cf9d99132629908515eb9a8c6b074caa7b84bfbd86446fcd7f65391e247ac23ffd272b715836fc0d787c004a00f613c2c7b0d1bff96a1c8e9054554ae3fe41 SHA512 3d29acfa6f2eedd49917bf811f93f0f9646de38f4b17cf78d748e93c0bb0653f95e7ff1d6aefa0e77ad7af4479f7d3b27d4b10a49ae34aa86efcbeb636064e79 EBUILD lld-9.0.1.ebuild 1323 BLAKE2B 042f875208515a2b9c39289239601e9b573aa2d9603f2bd58652612d44ff9e62b5776a2370eac1b6933f38f6dd085d3ba24749509eeb2084416e78dc4b5f8fe2 SHA512 d0a352fa95f0e5c47edce97ed4344555ee56d09b70db50b79f2b0ce50ab41e71aaa427dd4218f7239bfa56a439d04b9e99d4eabaa07f573617d55ac259721b55 MISC metadata.xml 216 BLAKE2B fe5e49887842aa513fbf1f2e09bed09a884d531fd21bdaeb2d389e8bf590b6c0e7063f0af98f66e2db129308ab0f0804ba327c3c752bbb4c900c59ac109d99aa SHA512 3485598147c953e72e1785693a489a7e7d73d59620b76054db9c0ce95d8bfa0e8ffec29da7f7a9d73a32e5b77eac07ca3306c56a972dc57fd89d477edaebf3d5 diff --git a/sys-devel/lld/lld-10.0.1.9999.ebuild b/sys-devel/lld/lld-10.0.1.9999.ebuild index f15808abce81..ab0472be1ac9 100644 --- a/sys-devel/lld/lld-10.0.1.9999.ebuild +++ b/sys-devel/lld/lld-10.0.1.9999.ebuild @@ -3,8 +3,8 @@ EAPI=7 -PYTHON_COMPAT=( python3_{6,7,8} ) -inherit cmake-utils llvm llvm.org multiprocessing python-any-r1 +PYTHON_COMPAT=( python3_{6..9} ) +inherit cmake llvm llvm.org multiprocessing python-any-r1 DESCRIPTION="The LLVM linker (link editor)" HOMEPAGE="https://llvm.org/" @@ -34,6 +34,13 @@ pkg_setup() { use test && python-any-r1_pkg_setup } +src_prepare() { + # cmake eclasses suck by forcing ${S} here + CMAKE_USE_DIR=${S} \ + S=${WORKDIR} \ + cmake_src_prepare +} + src_configure() { local mycmakeargs=( -DBUILD_SHARED_LIBS=OFF @@ -47,16 +54,16 @@ src_configure() { -DLLVM_LIT_ARGS="-vv;-j;${LIT_JOBS:-$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")}" ) - cmake-utils_src_configure + cmake_src_configure } src_test() { local -x LIT_PRESERVES_TMP=1 - cmake-utils_src_make check-lld + cmake_build check-lld } src_install() { - cmake-utils_src_install + cmake_src_install # LLD has no shared libraries, so strip it all for the time being rm -r "${ED}"/usr/{include,lib*} || die } diff --git a/sys-devel/lld/lld-10.0.1_rc1.ebuild b/sys-devel/lld/lld-10.0.1_rc1.ebuild index f15808abce81..ab0472be1ac9 100644 --- a/sys-devel/lld/lld-10.0.1_rc1.ebuild +++ b/sys-devel/lld/lld-10.0.1_rc1.ebuild @@ -3,8 +3,8 @@ EAPI=7 -PYTHON_COMPAT=( python3_{6,7,8} ) -inherit cmake-utils llvm llvm.org multiprocessing python-any-r1 +PYTHON_COMPAT=( python3_{6..9} ) +inherit cmake llvm llvm.org multiprocessing python-any-r1 DESCRIPTION="The LLVM linker (link editor)" HOMEPAGE="https://llvm.org/" @@ -34,6 +34,13 @@ pkg_setup() { use test && python-any-r1_pkg_setup } +src_prepare() { + # cmake eclasses suck by forcing ${S} here + CMAKE_USE_DIR=${S} \ + S=${WORKDIR} \ + cmake_src_prepare +} + src_configure() { local mycmakeargs=( -DBUILD_SHARED_LIBS=OFF @@ -47,16 +54,16 @@ src_configure() { -DLLVM_LIT_ARGS="-vv;-j;${LIT_JOBS:-$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")}" ) - cmake-utils_src_configure + cmake_src_configure } src_test() { local -x LIT_PRESERVES_TMP=1 - cmake-utils_src_make check-lld + cmake_build check-lld } src_install() { - cmake-utils_src_install + cmake_src_install # LLD has no shared libraries, so strip it all for the time being rm -r "${ED}"/usr/{include,lib*} || die } diff --git a/sys-devel/lld/lld-11.0.0.9999.ebuild b/sys-devel/lld/lld-11.0.0.9999.ebuild index f15808abce81..ab0472be1ac9 100644 --- a/sys-devel/lld/lld-11.0.0.9999.ebuild +++ b/sys-devel/lld/lld-11.0.0.9999.ebuild @@ -3,8 +3,8 @@ EAPI=7 -PYTHON_COMPAT=( python3_{6,7,8} ) -inherit cmake-utils llvm llvm.org multiprocessing python-any-r1 +PYTHON_COMPAT=( python3_{6..9} ) +inherit cmake llvm llvm.org multiprocessing python-any-r1 DESCRIPTION="The LLVM linker (link editor)" HOMEPAGE="https://llvm.org/" @@ -34,6 +34,13 @@ pkg_setup() { use test && python-any-r1_pkg_setup } +src_prepare() { + # cmake eclasses suck by forcing ${S} here + CMAKE_USE_DIR=${S} \ + S=${WORKDIR} \ + cmake_src_prepare +} + src_configure() { local mycmakeargs=( -DBUILD_SHARED_LIBS=OFF @@ -47,16 +54,16 @@ src_configure() { -DLLVM_LIT_ARGS="-vv;-j;${LIT_JOBS:-$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")}" ) - cmake-utils_src_configure + cmake_src_configure } src_test() { local -x LIT_PRESERVES_TMP=1 - cmake-utils_src_make check-lld + cmake_build check-lld } src_install() { - cmake-utils_src_install + cmake_src_install # LLD has no shared libraries, so strip it all for the time being rm -r "${ED}"/usr/{include,lib*} || die } diff --git a/sys-devel/llvm-common/Manifest b/sys-devel/llvm-common/Manifest index b328bd419ff9..0286676a51c2 100644 --- a/sys-devel/llvm-common/Manifest +++ b/sys-devel/llvm-common/Manifest @@ -3,9 +3,9 @@ DIST llvmorg-10.0.0.tar.gz 120804856 BLAKE2B 6b0254f5b913398cdcf2b2ec1ff21988870 DIST llvmorg-10.0.1-rc1.tar.gz 120834583 BLAKE2B 64244ebcb6f2c171c9f606e5eb0adff2794f06c9312a0ca627fb79c107c0c898ac242cf4e92523c3265fa717322601d7e3f4d178515fac95d03ee92312082b06 SHA512 f877f66046969a4055b166ad50ef876a9c8ecaf03e2cdd7c8e1a3348eb5f5180f222fa457b1f090a6660282a0d9f7a1d39cf09a04abe0dde0a6e1e10ccf15597 DIST llvmorg-9.0.1.tar.gz 113193320 BLAKE2B b86e405f2b8e00436045fd409fe19cdde75c797b1192c62a22b5ec75e6b4dc8e874a0f33008dc31562445e4cbe53a992b6f48c684255a6a1ef261e595b8b161f SHA512 fa88beeaae94b6d0cd9b5ba38658d0ffed8004035d7d8a4f95c3d31a709b88b581ae9bd7761333c8e5375c44b8f6be01768b5a3be901163159d7e6c43b71da59 EBUILD llvm-common-10.0.0.ebuild 604 BLAKE2B fe149a945f69a83939278f76189b47786f68f2f7953c948825ca6cf8caa5e3d986a21e87f23f8549160475a36a3c9fad30724979681141316c2bd84ba44125f0 SHA512 0798acea6da50210e14c460637d5f38f7d3c18f9de13ee36e2dd2424b475f3c343c0c4d8531811063056b4682a8d20b1de881044bdf47bec1fc421996568f98f -EBUILD llvm-common-10.0.1.9999.ebuild 528 BLAKE2B 957a2fbd49748e29068dfa987ee45e4fe1330c386ec4c3d7f2105136d1561c4427fe098f4199052b0f8267f4b5e50ff10f0c359435e4df007a6b4d9970275bd4 SHA512 643116074781e724ffb1184eaaa2ae041e20c9fb9b8927f1e6f1784c0a94b62021138267ff4d1fc1714e40eb4cf2e9b378b72d17ed16da32c9a0696580c8fe30 -EBUILD llvm-common-10.0.1_rc1.ebuild 528 BLAKE2B ac8c427ce977f480f46c33abe30cf92be1fc0f3787c619c5e4b57a3f2fd465e846b37924940413252cb178c857720e9953594cabd009253d4ab798e7fc85e854 SHA512 630d92131856eae97de7b7d448d2bd32cfa89e2ef9c7818f25b6696c3618a1931c14f424e73f7f57cc6183bf8f908e4e92d3c1b64a09e6840aab4c75ada629f9 -EBUILD llvm-common-11.0.0.9999.ebuild 528 BLAKE2B ac8c427ce977f480f46c33abe30cf92be1fc0f3787c619c5e4b57a3f2fd465e846b37924940413252cb178c857720e9953594cabd009253d4ab798e7fc85e854 SHA512 630d92131856eae97de7b7d448d2bd32cfa89e2ef9c7818f25b6696c3618a1931c14f424e73f7f57cc6183bf8f908e4e92d3c1b64a09e6840aab4c75ada629f9 +EBUILD llvm-common-10.0.1.9999.ebuild 580 BLAKE2B 00e3d530f838935197ddb2e8c4622af53812a41bd372ee1f785b4580df24252c802f6563e29fb01b32d7d4365293983cf0d45fe23d6a308fbd56e6e9c819f2a1 SHA512 0cde914ca2c20a8c7fe6c243726beca1be2acfb128bebe6201f438ee8c9aead4e84c7c010cacb4f22947c04c4b1fe81df6ab72e18344826a07230271cc2558c5 +EBUILD llvm-common-10.0.1_rc1.ebuild 580 BLAKE2B 00e3d530f838935197ddb2e8c4622af53812a41bd372ee1f785b4580df24252c802f6563e29fb01b32d7d4365293983cf0d45fe23d6a308fbd56e6e9c819f2a1 SHA512 0cde914ca2c20a8c7fe6c243726beca1be2acfb128bebe6201f438ee8c9aead4e84c7c010cacb4f22947c04c4b1fe81df6ab72e18344826a07230271cc2558c5 +EBUILD llvm-common-11.0.0.9999.ebuild 580 BLAKE2B 00e3d530f838935197ddb2e8c4622af53812a41bd372ee1f785b4580df24252c802f6563e29fb01b32d7d4365293983cf0d45fe23d6a308fbd56e6e9c819f2a1 SHA512 0cde914ca2c20a8c7fe6c243726beca1be2acfb128bebe6201f438ee8c9aead4e84c7c010cacb4f22947c04c4b1fe81df6ab72e18344826a07230271cc2558c5 EBUILD llvm-common-8.0.1.ebuild 855 BLAKE2B 81171ca3ce7d05be60c151d814ceb592e18fd2d8986db8a1106662727d0b1f94011cac9057f7fe8b398197b2d8fe588e684dacf7ed6b4d93777f4a8cdbfdc644 SHA512 f6a1f1b256bb1dae884dcecbeb6b22c295407ea3b3126839ac99c7c6e745c074c77167f52d7790b38501a0cab5680109274323ff8f6d27ea9b39bdec82ff8f7f EBUILD llvm-common-9.0.1.ebuild 599 BLAKE2B d6ac1c054ea708da18d5f557f2be5f0adc7dc5172ea679421516792a2a5e8a9e734bcbbb8c890c0b6ac136d7976fc7bedfde8c42837e67536d5dfeec1cf56230 SHA512 0beeb50ce3280418dfbeea22322dc9c585024a66b39ff8ce2b1465e62ea66af75bb0a151ca431a1a794ad25d74afc1e2b1ac3b9529a283b4b36ebdc99991a29f MISC metadata.xml 216 BLAKE2B fe5e49887842aa513fbf1f2e09bed09a884d531fd21bdaeb2d389e8bf590b6c0e7063f0af98f66e2db129308ab0f0804ba327c3c752bbb4c900c59ac109d99aa SHA512 3485598147c953e72e1785693a489a7e7d73d59620b76054db9c0ce95d8bfa0e8ffec29da7f7a9d73a32e5b77eac07ca3306c56a972dc57fd89d477edaebf3d5 diff --git a/sys-devel/llvm-common/llvm-common-10.0.1.9999.ebuild b/sys-devel/llvm-common/llvm-common-10.0.1.9999.ebuild index ba2ffc76a706..18d163abd5c8 100644 --- a/sys-devel/llvm-common/llvm-common-10.0.1.9999.ebuild +++ b/sys-devel/llvm-common/llvm-common-10.0.1.9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -17,6 +17,11 @@ IUSE="" RDEPEND="!sys-devel/llvm:0" +src_prepare() { + cd "${WORKDIR}" || Die + default +} + src_install() { insinto /usr/share/vim/vimfiles doins -r */ diff --git a/sys-devel/llvm-common/llvm-common-10.0.1_rc1.ebuild b/sys-devel/llvm-common/llvm-common-10.0.1_rc1.ebuild index df9cf92b47a1..18d163abd5c8 100644 --- a/sys-devel/llvm-common/llvm-common-10.0.1_rc1.ebuild +++ b/sys-devel/llvm-common/llvm-common-10.0.1_rc1.ebuild @@ -17,6 +17,11 @@ IUSE="" RDEPEND="!sys-devel/llvm:0" +src_prepare() { + cd "${WORKDIR}" || Die + default +} + src_install() { insinto /usr/share/vim/vimfiles doins -r */ diff --git a/sys-devel/llvm-common/llvm-common-11.0.0.9999.ebuild b/sys-devel/llvm-common/llvm-common-11.0.0.9999.ebuild index df9cf92b47a1..18d163abd5c8 100644 --- a/sys-devel/llvm-common/llvm-common-11.0.0.9999.ebuild +++ b/sys-devel/llvm-common/llvm-common-11.0.0.9999.ebuild @@ -17,6 +17,11 @@ IUSE="" RDEPEND="!sys-devel/llvm:0" +src_prepare() { + cd "${WORKDIR}" || Die + default +} + src_install() { insinto /usr/share/vim/vimfiles doins -r */ diff --git a/sys-devel/llvm-roc/Manifest b/sys-devel/llvm-roc/Manifest index ea14d4de79be..70c5494f20f1 100644 --- a/sys-devel/llvm-roc/Manifest +++ b/sys-devel/llvm-roc/Manifest @@ -18,6 +18,7 @@ DIST llvm-roc-ocl-3.0.0.tar.gz 117363122 BLAKE2B a85e456e715629fbb3349e13e50a62a DIST llvm-roc-ocl-3.1.0.tar.gz 120981974 BLAKE2B cbefc7b087c8df81ee093aeebff292c652dc29f37ee5bcf9ef891130c52bf93b3b735f1aa746fd1ec5e5e86c879d73ffa6f9df074f27b31799ef701206a7ea32 SHA512 bc6eb441f655f3b9cb13161fb731e592295a156e7d7bd0a38e4d3017bac90852d2ef64980c70889939ae082c9d1523af25d82ec2221415bbae0d01201d20ec57 DIST llvm-rocm-ocl-3.3.0.tar.gz 115703174 BLAKE2B 4695f07317d625bb285470cc906489f22a5eb023b4337945c1d7b4237509d3481b9f9369611dc57f4e8daa8a70c7cdd8a9b0df4842cc1424e301a5366f458727 SHA512 896afa458c7527de469e6ee891b22be6ef351858c5d0c3da57bcd6d1d85667256b3ab3fe64167cc26536dbcfd95e1146edff9c24daf5e1c966195555748d9278 DIST llvm-rocm-ocl-3.5.0.tar.gz 116948115 BLAKE2B 067ce3cef03b714059e6720269c864d8cffa8687040ae9a8607c6207d00a6a4d8e31099aba7ff09144bf1ded809b842fe856103346b9b06eb9bcd393397fe63f SHA512 04808724c7ede3e21485153d3ccf8050b4f2ceae356c4c6451e36da714ed57ac3578f1485d922b747e3c1f654cc9f27544800f869bef24efa80f4e1b98afbbaf +DIST llvm-rocm-ocl-3.5.1.tar.gz 116945831 BLAKE2B cab1023077a9425d158a4974b8b7baa12e15dd69ced4ea58a4f388c8057e9f6d57020e236c8f0903d5633fa73c799646f70493193cf36a760e8b658f9745ffb3 SHA512 cabc507d560c980e38214441f628e773d6621f72001fbc7d37516d1fa3d361f11919a8bf7903df60914e6f4ad6cf4993e44d121c5b6711b6ac69052d75974ab1 EBUILD llvm-roc-2.10.0.ebuild 1408 BLAKE2B 403c92548945befa4f863b45432096e19ce5e382a4f7b12ec8d178551e00e47e05d28ef46b8ad930fd01cfa3a052ca4947de59bb69ed3c54fdd76133c0e42fd2 SHA512 3fd04264ec0a05f28661cf63d7b2dd63824c41a9c4e8ed5b209f94ab1a816b8cf6968c1c70cad8dc4a2d34811baf8971116aa99aebe7f14481ee22ae5039ebfe EBUILD llvm-roc-2.6.0-r1.ebuild 1380 BLAKE2B 76af5352a82861b2ee0d95f1d3d2d8025af747523f36ef847bb03e77aa8b4aa3932dda9f57d525265eb39cfaafa9e8a7c5fe3b106875bfd3090f5627e7d55c96 SHA512 4fbb8add4966a700e31e4774665b4a8a583b5fb2a09bdac395ed0ccd19b4726d36e7c84a0d3bc571e846abdd282f7cd8b06c50a127a5d31346b99c689adcdd45 EBUILD llvm-roc-2.7.0.ebuild 1408 BLAKE2B 403c92548945befa4f863b45432096e19ce5e382a4f7b12ec8d178551e00e47e05d28ef46b8ad930fd01cfa3a052ca4947de59bb69ed3c54fdd76133c0e42fd2 SHA512 3fd04264ec0a05f28661cf63d7b2dd63824c41a9c4e8ed5b209f94ab1a816b8cf6968c1c70cad8dc4a2d34811baf8971116aa99aebe7f14481ee22ae5039ebfe @@ -27,4 +28,5 @@ EBUILD llvm-roc-3.0.0.ebuild 1279 BLAKE2B 60660c178d5b92e46b877277552b4ba19d5299 EBUILD llvm-roc-3.1.0.ebuild 1286 BLAKE2B 9349a3432f62a8884ad2105cfd1e82b942239e69be369814447ae56a26b42f2893c915acdf020dabfb0c25df12f83bd52d81041ca1f58964f7328e01efbf4c8f SHA512 e9635742f05bb43a3aebf2b12c161c6beb18f727c9573fa7a32ccc39c7d977fe4a2c65e17e70ddb9699e89d5a5f10f301e8a984389eadb1aa431c72591d88c73 EBUILD llvm-roc-3.3.0.ebuild 1289 BLAKE2B 569f17f1a4a97932a55e352a80fb6b8769809b1d05ecc52d25b262726382c68779dd2e2a2a4bea1c4b15bdafa36a0380dc99d6d3e250f79cf4f394ea4f83f75f SHA512 ec7822fc2774d905368c84c39bd9341f4df8706adf8c44afd26f9364d83ef0098d67d11b9075710c21355e60f6ca8470f3e6255db52b6e170342f3ae95350781 EBUILD llvm-roc-3.5.0.ebuild 1284 BLAKE2B 00d1837eba74f2bae5e40c5a7cad49cbe41bcfa13a92005367916028ebb16516f39f3951426f17aa2db46b7a0dd663ca3dbb6dc7084c4bcb2e8ad708999b8d3f SHA512 23174cc206eddab27d9e180b479ee02ce355f996b0a954531192835b6a8fc5bf6ac7f0d82578e7eaece5553f5587309bdcc235ebb62ddd5b43826e7fe0a37d53 +EBUILD llvm-roc-3.5.1.ebuild 1284 BLAKE2B 00d1837eba74f2bae5e40c5a7cad49cbe41bcfa13a92005367916028ebb16516f39f3951426f17aa2db46b7a0dd663ca3dbb6dc7084c4bcb2e8ad708999b8d3f SHA512 23174cc206eddab27d9e180b479ee02ce355f996b0a954531192835b6a8fc5bf6ac7f0d82578e7eaece5553f5587309bdcc235ebb62ddd5b43826e7fe0a37d53 MISC metadata.xml 469 BLAKE2B f2b3af990bf9b130ed1be4ad2c4da5a97f6eae74d5feb43d81b4dc90ca1c5dcf896b293ad60d1c932d0c64773c203c52ccca8a6e0e5dd1d614f97b53113146db SHA512 e3783dde65d914cc272478c2d1823de27a2daaf8fa3aa2d281b98b0ed707c758bce1d52326dda577baed5b127293fca435211cfee17cc43553b9be424a4e2348 diff --git a/sys-devel/llvm-roc/llvm-roc-3.5.1.ebuild b/sys-devel/llvm-roc/llvm-roc-3.5.1.ebuild new file mode 100644 index 000000000000..616e05f5cb90 --- /dev/null +++ b/sys-devel/llvm-roc/llvm-roc-3.5.1.ebuild @@ -0,0 +1,57 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit cmake + +DESCRIPTION="Radeon Open Compute llvm,lld,clang" +HOMEPAGE="https://github.com/RadeonOpenCompute/ROCm/" +SRC_URI="https://github.com/RadeonOpenCompute/llvm-project/archive/rocm-${PV}.tar.gz -> llvm-rocm-ocl-${PV}.tar.gz" + +LICENSE="UoI-NCSA rc BSD public-domain" +SLOT="0" +KEYWORDS="~amd64" +IUSE="debug" + +RDEPEND="virtual/cblas + dev-libs/rocr-runtime" +DEPEND="${RDEPEND}" + +S="${WORKDIR}/llvm-project-rocm-${PV}/llvm" + +CMAKE_BUILD_TYPE=RelWithDebInfo + +src_prepare() { + cd "${WORKDIR}/llvm-project-rocm-${PV}" || die + eapply "${FILESDIR}/${PN}-3.0.0-add_libraries.patch" + eapply_user + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/roc" + -DLLVM_ENABLE_PROJECTS="clang;lld" + -DLLVM_TARGETS_TO_BUILD="AMDGPU;X86" + -DLLVM_BUILD_DOCS=NO + -DLLVM_ENABLE_OCAMLDOC=OFF + -DLLVM_ENABLE_SPHINX=NO + -DLLVM_ENABLE_DOXYGEN=OFF + -DLLVM_INSTALL_UTILS=ON + -DLLVM_VERSION_SUFFIX=roc + -DOCAMLFIND=NO + ) + + use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" + + cmake_src_configure +} + +src_install() { + cmake_src_install + cat > "99${PN}" <<-EOF + LDPATH="${EROOT}/usr/lib/llvm/roc/lib" + EOF + doenvd "99${PN}" +} diff --git a/sys-devel/llvm/Manifest b/sys-devel/llvm/Manifest index 72f0ce5078c3..50ed11457d47 100644 --- a/sys-devel/llvm/Manifest +++ b/sys-devel/llvm/Manifest @@ -1,3 +1,5 @@ +AUX 10.0.1/0001-llvm-Avoid-linking-llvm-cfi-verify-to-duplicate-libs.patch 1480 BLAKE2B 09057d1e7ad466ba316335b66d9acf7b55fabdb209bddf7d28e641ea7a922d8af51ad6a8f0ab41b28da7ff0e76148d5ea388ad447bcd828f11ad3e7d89d0f78d SHA512 366041f1c4a4d7c3af2b611f65b238cb0bd00806ad0afa1181f05900b512a84c8997b2f2843564a573478af2e7b225d6ccc7ffe7823d88acd2ede706bee49ffa +AUX 10.0.1/0002-llvm-Disable-linking-llvm-exegesis-to-dylib.patch 983 BLAKE2B af7f06cf16ed45d446c7f879ccdc2d6ef50cd5e04f5eec40a2097f429063daeef610945e5201cb937349c041fc7d124df11319b253b4ea89f6b7baf701924ec9 SHA512 b39c0fc939d56cd6bb96b107d93cda23b01b76f51639000cf7b5516792c7bfcafbee56c0845b87cc30d172fa90f9fb2bdf137a5b27da272d405acec32bcc5b8d 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 @@ -8,9 +10,9 @@ DIST llvmorg-10.0.0.tar.gz 120804856 BLAKE2B 6b0254f5b913398cdcf2b2ec1ff21988870 DIST llvmorg-10.0.1-rc1.tar.gz 120834583 BLAKE2B 64244ebcb6f2c171c9f606e5eb0adff2794f06c9312a0ca627fb79c107c0c898ac242cf4e92523c3265fa717322601d7e3f4d178515fac95d03ee92312082b06 SHA512 f877f66046969a4055b166ad50ef876a9c8ecaf03e2cdd7c8e1a3348eb5f5180f222fa457b1f090a6660282a0d9f7a1d39cf09a04abe0dde0a6e1e10ccf15597 DIST llvmorg-9.0.1.tar.gz 113193320 BLAKE2B b86e405f2b8e00436045fd409fe19cdde75c797b1192c62a22b5ec75e6b4dc8e874a0f33008dc31562445e4cbe53a992b6f48c684255a6a1ef261e595b8b161f SHA512 fa88beeaae94b6d0cd9b5ba38658d0ffed8004035d7d8a4f95c3d31a709b88b581ae9bd7761333c8e5375c44b8f6be01768b5a3be901163159d7e6c43b71da59 EBUILD llvm-10.0.0.ebuild 10579 BLAKE2B 04be48351a56d46e4b13357415364c9d20a5e3e6438ca587a40f1233ffabaeeb14013a03e1794409a80cf9578bed03e93c82baae5ebe82fab7b4a9d141abaab4 SHA512 b4f6e58592423642bc570e57112b80a2c3b5abee66118333fff8bb06e5c7bb447b6636d73c304ab424d2caf842ef709db846aa8758eb7b72d0253e7e4b979b6d -EBUILD llvm-10.0.1.9999.ebuild 12263 BLAKE2B 448f555d5cdb973560e10c84d0175189a442a56d81e1f33a7eba74bde2c0d8ffa071caa000d496a86deeb78d7dcdcb783759d50a1d61fb9c8ce262639baff3e2 SHA512 9286d7a5e1ce0d62161246b5dd5623f072cf4528e92d6413c25bd62fc8334eb477e5ece33bb31979a0a88220ffc89b77ebcc0be934872aec5ff2845f78748b8f -EBUILD llvm-10.0.1_rc1.ebuild 11270 BLAKE2B 261bbe7885e29d83a0b60e71534e65dae287875d803f409675e17408d0a29f79417d03f59d1b69db6ead61b8cfaea374a8f40b2fb60fb7a390b5f40d3fca4503 SHA512 72d28860a4ab3c7ed79661165566b390b588a6ccdf8e4f43755430d90d1de23f0b109dea4998538561e7ab209ea037fc91b4b68eab9a94cdaa344570d8443149 -EBUILD llvm-11.0.0.9999.ebuild 12291 BLAKE2B 79a8f491fc1cc74303079b6c4365d20891a74c334623cde31c57909efad6f7c4d077a30f203bde50543823af0ab6c4d1b4169c9696799a53b1f26e27bf54585a SHA512 9691860b36db22a11b7956e1b077fd3debf2a4432d951dbac28e48c185d8618748b7f6597d814a3791193f302a3f9df7bd55c40a6a5c79b68a880aee35fcd82f +EBUILD llvm-10.0.1.9999.ebuild 12650 BLAKE2B 211f0b2414736b96abc8f8233b9887b07c3ffeff550b8730d827cba5553c72a3c1e03c60bbae3b67ea291d99ecfa26fe6a9c4d5df9f487f2720c7203e1ffeaf2 SHA512 9bdf03333f1a0db73981f5ad85ac999e4d6e9d752bbfe89cc14ab3f442492d12e923aa008364190959acffac0f3f761d48eb8db56939735b7bffbb293b3bc21d +EBUILD llvm-10.0.1_rc1.ebuild 11657 BLAKE2B 9efafea418d81c69252ae1384c987da275a73364881de966df418a1005bbbea39459ccbfb9d5e9fd2d7120c1d8f55e929e4d23111878c65814c0ac959243fb9d SHA512 47d7bdb20aba5337db602d652076919171d2fc12bdd6d952e9aacab829b358f3de21931ea2fe4411f2054e9bb1efe0809b114f680956fbc3cde50fcee0500d02 +EBUILD llvm-11.0.0.9999.ebuild 12451 BLAKE2B 12dc5b6901c4cee6a407c17531a9557d359baaa8a1fc2432a0e42c8ae5854ff50746ebfa6440c2948fc04fc4f6f427fdd09e21a4f75c60a90ec586d143c99ca1 SHA512 67d364038e5e7cbce658fd2d0624e20423a9ebe0890dfb43419cb4f382c20651cda4b6fccb804e11cfdb23162f95907124c950a12fc4991c1bde764b6404ccd6 EBUILD llvm-8.0.1.ebuild 8423 BLAKE2B 229579ed2cd28987476612666617c61af49760ace9b4664a4419f2518990666d88a2c234d55f7f9c89d04e4a107b34cad50ce7866e4fa944829b0eb3f7473a2b SHA512 307e04c4dac29e8b3fef2a422d231883883384b23fc9d54c8f5f9e69b9f40fb3ea7950651cc15938e0ea92a12413db67996b87b59ec88cf3ba4661b6099602e7 EBUILD llvm-9.0.1.ebuild 8454 BLAKE2B 33b4c7bdf4bc136d29f3f6f505799b11de31d33e393b51c9bafb121b0b8b347e86a5954ba6ba039cd6b39cb7c1a501d4747f51652351559c42ba0b84c4bae54b SHA512 f43a600265c1559e924a6f2ec97dffdacfae35df2cc3e3e874704c5ae179ba48d90fdd666411cdab500d171fa63b557538282545c7c4078867857e077c941a4c MISC metadata.xml 2563 BLAKE2B ca85030788fb213fc891d895238fd75562cdd25cc5fe4271d709cb1c00ef56b0e8b367dc70cc18f7d185d6fbdb57333e219a984220b60141d28fb4784b2cb94a SHA512 8de68ee7f964e6eb2613bd2ff584f834e0f5a3ae8b303b5f2f10fda718a87af9b8ddfc19399950fe4eb8be515930124ced8018190af0f69da7ec5fe8180a68a2 diff --git a/sys-devel/llvm/files/10.0.1/0001-llvm-Avoid-linking-llvm-cfi-verify-to-duplicate-libs.patch b/sys-devel/llvm/files/10.0.1/0001-llvm-Avoid-linking-llvm-cfi-verify-to-duplicate-libs.patch new file mode 100644 index 000000000000..445cb6de2c32 --- /dev/null +++ b/sys-devel/llvm/files/10.0.1/0001-llvm-Avoid-linking-llvm-cfi-verify-to-duplicate-libs.patch @@ -0,0 +1,48 @@ +From bc3be897be6994da7f52ba1b5735aa81150084a4 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> +Date: Tue, 16 Jun 2020 12:16:52 +0200 +Subject: [PATCH 1/4] [llvm] Avoid linking llvm-cfi-verify to duplicate libs + +Fix the CMake rules for LLVMCFIVerify library not to pull duplicate +LLVM .a libraries when linking to the dylib. This prevents problems +due to duplicate symbols and apparently fixes mingw32. + +This is an alternative approach to D44650 that just forces .a libraries +instead. However, there doesn't seem to be any reason to do that. +--- + llvm/tools/llvm-cfi-verify/lib/CMakeLists.txt | 20 +++++++++++-------- + 1 file changed, 12 insertions(+), 8 deletions(-) + +diff --git a/llvm/tools/llvm-cfi-verify/lib/CMakeLists.txt b/llvm/tools/llvm-cfi-verify/lib/CMakeLists.txt +index 82ca42e624a..41d55ed9321 100644 +--- a/llvm/tools/llvm-cfi-verify/lib/CMakeLists.txt ++++ b/llvm/tools/llvm-cfi-verify/lib/CMakeLists.txt +@@ -7,13 +7,17 @@ add_library(LLVMCFIVerify + ) + + llvm_update_compile_flags(LLVMCFIVerify) +-llvm_map_components_to_libnames(libs +- DebugInfoDWARF +- MC +- MCParser +- Object +- Support +- Symbolize +- ) ++if (LLVM_LINK_LLVM_DYLIB) ++ set(libs LLVM) ++else() ++ llvm_map_components_to_libnames(libs ++ DebugInfoDWARF ++ MC ++ MCParser ++ Object ++ Support ++ Symbolize ++ ) ++endif() + target_link_libraries(LLVMCFIVerify ${libs}) + set_target_properties(LLVMCFIVerify PROPERTIES FOLDER "Libraries") +-- +2.27.0 + diff --git a/sys-devel/llvm/files/10.0.1/0002-llvm-Disable-linking-llvm-exegesis-to-dylib.patch b/sys-devel/llvm/files/10.0.1/0002-llvm-Disable-linking-llvm-exegesis-to-dylib.patch new file mode 100644 index 000000000000..24786905c4d9 --- /dev/null +++ b/sys-devel/llvm/files/10.0.1/0002-llvm-Disable-linking-llvm-exegesis-to-dylib.patch @@ -0,0 +1,29 @@ +From 07b6fdcde1ed64043244965b97788a2b12af4d6d Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> +Date: Tue, 16 Jun 2020 12:31:36 +0200 +Subject: [PATCH 2/4] [llvm] Disable linking llvm-exegesis to dylib + +Force linking llvm-exegesis to static LLVM libraries instead of dylib +to prevent duplicate symbols due to linking both. Ideally, we'd want +to link to the dylib only here but the target sub-libraries use hidden +symbols from LLVM target libraries and therefore linking the dylib +fails. +--- + llvm/tools/llvm-exegesis/CMakeLists.txt | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/llvm/tools/llvm-exegesis/CMakeLists.txt b/llvm/tools/llvm-exegesis/CMakeLists.txt +index a59e1b74024..0575f2a06bb 100644 +--- a/llvm/tools/llvm-exegesis/CMakeLists.txt ++++ b/llvm/tools/llvm-exegesis/CMakeLists.txt +@@ -5,6 +5,7 @@ set(LLVM_LINK_COMPONENTS + ) + + add_llvm_tool(llvm-exegesis ++ DISABLE_LLVM_LINK_LLVM_DYLIB + llvm-exegesis.cpp + ) + +-- +2.27.0 + diff --git a/sys-devel/llvm/llvm-10.0.1.9999.ebuild b/sys-devel/llvm/llvm-10.0.1.9999.ebuild index f308f41ee444..27af603d49b5 100644 --- a/sys-devel/llvm/llvm-10.0.1.9999.ebuild +++ b/sys-devel/llvm/llvm-10.0.1.9999.ebuild @@ -3,9 +3,9 @@ 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 multiprocessing pax-utils \ + python-any-r1 toolchain-funcs DESCRIPTION="Low Level Virtual Machine" HOMEPAGE="https://llvm.org/" @@ -58,12 +58,11 @@ BDEPEND=" <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}" + $(python_gen_any_dep ' + dev-python/sphinx[${PYTHON_USEDEP}] + doc? ( dev-python/recommonmark[${PYTHON_USEDEP}] ) + ')" # There are no file collisions between these versions but having :0 # installed means llvm-config there will take precedence. RDEPEND="${RDEPEND} @@ -74,10 +73,17 @@ PDEPEND="sys-devel/llvm-common # least intrusive of all CMAKE_BUILD_TYPE=RelWithDebInfo -python_check_deps() { - use doc || return 0 +PATCHES=( + # Fix linking to dylib and .a libs simultaneously + "${FILESDIR}"/10.0.1/0001-llvm-Avoid-linking-llvm-cfi-verify-to-duplicate-libs.patch + "${FILESDIR}"/10.0.1/0002-llvm-Disable-linking-llvm-exegesis-to-dylib.patch +) - has_version -b "dev-python/recommonmark[${PYTHON_USEDEP}]" && +python_check_deps() { + if use doc; then + has_version -b "dev-python/recommonmark[${PYTHON_USEDEP}]" || + return 1 + fi has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]" } @@ -138,6 +144,10 @@ check_distribution_components() { distribution|llvm-libraries) continue ;; + # used only w/ USE=doc + docs-llvm-html) + continue + ;; esac all_targets+=( "${l}" ) @@ -180,11 +190,18 @@ 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 + # manpages don't use markdown + if ! use doc; then + sed -i -e '/source_parsers/d' docs/conf.py || die + fi # Verify that the live ebuild is up-to-date check_live_ebuild + + # cmake eclasses suck by forcing ${S} here + CMAKE_USE_DIR=${S} \ + S=${WORKDIR} \ + cmake_src_prepare } # Is LLVM being linked against libc++? @@ -299,12 +316,13 @@ get_distribution_components() { # python modules opt-viewer - ) - use doc && out+=( + # manpages docs-dsymutil-man docs-llvm-dwarfdump-man docs-llvm-man + ) + use doc && out+=( docs-llvm-html ) @@ -386,13 +404,11 @@ multilib_src_configure() { if multilib_is_native_abi; then mycmakeargs+=( - -DLLVM_BUILD_DOCS=$(usex doc) + -DLLVM_BUILD_DOCS=ON -DLLVM_ENABLE_OCAMLDOC=OFF - -DLLVM_ENABLE_SPHINX=$(usex doc) + -DLLVM_ENABLE_SPHINX=ON -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 @@ -424,13 +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_src_compile pax-mark m "${BUILD_DIR}"/bin/llvm-rtdyld pax-mark m "${BUILD_DIR}"/bin/lli @@ -446,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() { @@ -466,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 diff --git a/sys-devel/llvm/llvm-10.0.1_rc1.ebuild b/sys-devel/llvm/llvm-10.0.1_rc1.ebuild index 59ccce098614..36ee1f6d95dc 100644 --- a/sys-devel/llvm/llvm-10.0.1_rc1.ebuild +++ b/sys-devel/llvm/llvm-10.0.1_rc1.ebuild @@ -3,9 +3,9 @@ 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 multiprocessing pax-utils \ + python-any-r1 toolchain-funcs DESCRIPTION="Low Level Virtual Machine" HOMEPAGE="https://llvm.org/" @@ -58,12 +58,11 @@ BDEPEND=" <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}" + $(python_gen_any_dep ' + dev-python/sphinx[${PYTHON_USEDEP}] + doc? ( dev-python/recommonmark[${PYTHON_USEDEP}] ) + ')" # There are no file collisions between these versions but having :0 # installed means llvm-config there will take precedence. RDEPEND="${RDEPEND} @@ -74,10 +73,17 @@ PDEPEND="sys-devel/llvm-common # least intrusive of all CMAKE_BUILD_TYPE=RelWithDebInfo -python_check_deps() { - use doc || return 0 +PATCHES=( + # Fix linking to dylib and .a libs simultaneously + "${FILESDIR}"/10.0.1/0001-llvm-Avoid-linking-llvm-cfi-verify-to-duplicate-libs.patch + "${FILESDIR}"/10.0.1/0002-llvm-Disable-linking-llvm-exegesis-to-dylib.patch +) - has_version -b "dev-python/recommonmark[${PYTHON_USEDEP}]" && +python_check_deps() { + if use doc; then + has_version -b "dev-python/recommonmark[${PYTHON_USEDEP}]" || + return 1 + fi has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]" } @@ -106,6 +112,10 @@ check_distribution_components() { distribution|llvm-libraries) continue ;; + # used only w/ USE=doc + docs-llvm-html) + continue + ;; esac all_targets+=( "${l}" ) @@ -148,8 +158,15 @@ 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 + # manpages don't use markdown + if ! use doc; then + sed -i -e '/source_parsers/d' docs/conf.py || die + fi + + # cmake eclasses suck by forcing ${S} here + CMAKE_USE_DIR=${S} \ + S=${WORKDIR} \ + cmake_src_prepare } # Is LLVM being linked against libc++? @@ -264,12 +281,13 @@ get_distribution_components() { # python modules opt-viewer - ) - use doc && out+=( + # manpages docs-dsymutil-man docs-llvm-dwarfdump-man docs-llvm-man + ) + use doc && out+=( docs-llvm-html ) @@ -351,13 +369,11 @@ multilib_src_configure() { if multilib_is_native_abi; then mycmakeargs+=( - -DLLVM_BUILD_DOCS=$(usex doc) + -DLLVM_BUILD_DOCS=ON -DLLVM_ENABLE_OCAMLDOC=OFF - -DLLVM_ENABLE_SPHINX=$(usex doc) + -DLLVM_ENABLE_SPHINX=ON -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 @@ -389,13 +405,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_src_compile pax-mark m "${BUILD_DIR}"/bin/llvm-rtdyld pax-mark m "${BUILD_DIR}"/bin/lli @@ -411,7 +427,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() { @@ -431,7 +447,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 diff --git a/sys-devel/llvm/llvm-11.0.0.9999.ebuild b/sys-devel/llvm/llvm-11.0.0.9999.ebuild index f6ed4b7a9be5..5af65c0f4a0d 100644 --- a/sys-devel/llvm/llvm-11.0.0.9999.ebuild +++ b/sys-devel/llvm/llvm-11.0.0.9999.ebuild @@ -3,9 +3,9 @@ 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 multiprocessing pax-utils \ + python-any-r1 toolchain-funcs DESCRIPTION="Low Level Virtual Machine" HOMEPAGE="https://llvm.org/" @@ -58,12 +58,11 @@ BDEPEND=" <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}" + $(python_gen_any_dep ' + dev-python/sphinx[${PYTHON_USEDEP}] + doc? ( dev-python/recommonmark[${PYTHON_USEDEP}] ) + ')" # There are no file collisions between these versions but having :0 # installed means llvm-config there will take precedence. RDEPEND="${RDEPEND} @@ -75,9 +74,10 @@ PDEPEND="sys-devel/llvm-common CMAKE_BUILD_TYPE=RelWithDebInfo python_check_deps() { - use doc || return 0 - - has_version -b "dev-python/recommonmark[${PYTHON_USEDEP}]" && + if use doc; then + has_version -b "dev-python/recommonmark[${PYTHON_USEDEP}]" || + return 1 + fi has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]" } @@ -138,6 +138,10 @@ check_distribution_components() { distribution|llvm-libraries) continue ;; + # used only w/ USE=doc + docs-llvm-html) + continue + ;; esac all_targets+=( "${l}" ) @@ -180,11 +184,18 @@ 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 + # manpages don't use markdown + if ! use doc; then + sed -i -e '/source_parsers/d' docs/conf.py || die + fi # Verify that the live ebuild is up-to-date check_live_ebuild + + # cmake eclasses suck by forcing ${S} here + CMAKE_USE_DIR=${S} \ + S=${WORKDIR} \ + cmake_src_prepare } # Is LLVM being linked against libc++? @@ -301,12 +312,13 @@ get_distribution_components() { # python modules opt-viewer - ) - use doc && out+=( + # manpages docs-dsymutil-man docs-llvm-dwarfdump-man docs-llvm-man + ) + use doc && out+=( docs-llvm-html ) @@ -388,13 +400,11 @@ multilib_src_configure() { if multilib_is_native_abi; then mycmakeargs+=( - -DLLVM_BUILD_DOCS=$(usex doc) + -DLLVM_BUILD_DOCS=ON -DLLVM_ENABLE_OCAMLDOC=OFF - -DLLVM_ENABLE_SPHINX=$(usex doc) + -DLLVM_ENABLE_SPHINX=ON -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 @@ -426,13 +436,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_src_compile pax-mark m "${BUILD_DIR}"/bin/llvm-rtdyld pax-mark m "${BUILD_DIR}"/bin/lli @@ -448,7 +458,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() { @@ -468,7 +478,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 |