diff options
author | V3n3RiX <venerix@koprulu.sector> | 2024-08-13 11:06:03 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2024-08-13 11:06:03 +0100 |
commit | be8708090362c01c6111c4b76f1e395c14d86e00 (patch) | |
tree | bb61ca73e867522450783849eb63c9e1f0ba1730 /sys-devel | |
parent | e93a38d535f2c29b55a5756d2de99425986b0bf3 (diff) |
gentoo auto-resync : 13:08:2024 - 11:06:03
Diffstat (limited to 'sys-devel')
24 files changed, 57 insertions, 3602 deletions
diff --git a/sys-devel/Manifest.gz b/sys-devel/Manifest.gz Binary files differindex 5fbff598fad9..6f3434bd933a 100644 --- a/sys-devel/Manifest.gz +++ b/sys-devel/Manifest.gz diff --git a/sys-devel/clang-common/Manifest b/sys-devel/clang-common/Manifest index 3be395b5b4ba..631a4c26d5a8 100644 --- a/sys-devel/clang-common/Manifest +++ b/sys-devel/clang-common/Manifest @@ -1,4 +1,3 @@ -DIST llvm-project-130c135689ec12ab78c53645808524a8d28f7cae.tar.gz 217788932 BLAKE2B 9ba8ad82597780f24e750272f9439d1e8d464813a607efec4920a13473103975bc181506dcc15c76a6e4ca83622284b77a7903e36aff6145719529630121cf0b SHA512 d9c67155f462e53968ec448e325b35a80c0d207039dd7155568fa366aa1894bc8dfaa2d5c03a67320bdefb1934720a1d23bc4b972c9fae3ff09c7a79d885c53d DIST llvm-project-15.0.7.src.tar.xz 110936452 BLAKE2B f3d277e2029157329e5be78b78af36b0826a1dfd9a337992499bf701e33149665bfc47d5e14978e38f342559629a559f8b2ce328705ba34fdf6830f5ae9721a5 SHA512 4836d3603f32e8e54434cbfa8ef33d9d473ac5dc20ebf9c67132653c73f4524931abd1084655eaee5f20bcfcb91bcc4bbc5c4a0b603ad0c9029c556e14dc4c52 DIST llvm-project-15.0.7.src.tar.xz.sig 566 BLAKE2B 47dc8c82d86237b80c6d85f83a6c9a6e9e174cf8e7f367b071e0cd9481d7cd408e991337c5624e07f3f370f26387c814f212808575ed1c1b58404d3e3836b7df SHA512 fc6891b440dd1175eb8df3790590af8d36bc92301660f84744ae15123475aeb900a151e6a8e7998ded27ec4d86871903ad0b89cd61164943054c2e3bc8d8beb2 DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db365965f1c00bfea6c2d653b3996bd2acef8a2b37e37f6fc8a9d2b65711ad72657e0ef52c42f733053cf65051e7822f27396c30406d SHA512 89a67ebfbbc764cc456e8825ecfa90707741f8835b1b2adffae0b227ab1fe5ca9cce75b0efaffc9ca8431cae528dc54fd838867a56a2b645344d9e82d19ab1b7 @@ -7,8 +6,6 @@ DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e06541 DIST llvm-project-17.0.6.src.tar.xz.sig 438 BLAKE2B 186e75b6a0fbfe1e85408589c149e1800fcc47d685b74e4260018e05cd08bc793d1d1197c9c50e177eea941a3d0c65cb0c583ce6dae449099b920adf8a508ef7 SHA512 f78c55053a6450625f3e95f52c305110b4468a9854fec75831b65b8d6ceee3c9206ab9e63c4b5fda8be9bd344f72cfbdaae0520ed240abd505e08ebeaa25d340 DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffef86468169ba2f211a9733ec2d4cf30040f7f277ef00f048bb44dee9f97d7d762f0f241f19e5a2a7b0b49217d3821ddfc8c354f SHA512 25eeee9984c8b4d0fbc240df90f33cbb000d3b0414baff5c8982beafcc5e59e7ef18f6f85d95b3a5f60cb3d4cd4f877c80487b5768bc21bc833f107698ad93db DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b -DIST llvm-project-19.1.0-rc1.src.tar.xz 141259912 BLAKE2B e882ff54a96900b4948e572cf073c897df6b4ce159869a42c56a4c830187d83b8d9d9b3940dad22346f142f9674575191cc9d079312f0d9aa1105390c07f504f SHA512 9f43dbe8d5f1322f73fb1c638ce4fc7a8179c9ca33fdbfbb6d72632a3d6bf4bc4993f8f5ec827510af55f4f013fba8fe3d7d9e45f262eec16ecf9ab39296b4b8 -DIST llvm-project-19.1.0-rc1.src.tar.xz.sig 438 BLAKE2B cc1acbd33440bb14f78c19cc3061a5c0cb3d9dbcd6f0d1516fe118ac02c500ba4df129f870ddf3fe1a52519feab4b631866413fce9c726272d52c3865a9eea27 SHA512 a3361992b55be13aeff5d91bb90a15e3a2ab89e486328fa4d9abc9efa3925aee70bea48449b003ae1926909d389bf71afcf6dc56d800ed2e0e3dbc65da6e4e92 DIST llvm-project-19.1.0-rc2.src.tar.xz 141264388 BLAKE2B 690b4912d9e4a8019b7990934dd6486362337ccb303dca119c0e75aa1063ad452222be1ee965e43b160dfcea20e491a20c289344152666b618712a1d76dc4780 SHA512 508a401e8433b1ac9a399246eb1a3c18faed7c3d41d8c118e77cefbb64cc6d6e171bd41a3e5584f6c84df141ba6819f1a1cce75b5c1ef33e3d2ac239e662d07c DIST llvm-project-19.1.0-rc2.src.tar.xz.sig 438 BLAKE2B 1eaf10a1419ecf009c033a8f6ecb6eec86107d81621d5b4665c8d929b05f4845ce0c432017343d7b06f33e6ff6384df9e1d8fc7b9c6efe7f10ef69798891b7e5 SHA512 b46e9a1d40f891c5f3544d8cc6295900bff5dda9a4a526b8db55a42a37ae90deb216b316d2117984e82f4e918d15343e75b3b9e6d6c773866707c3398e032826 DIST llvm-project-fd7d7882e7fa5a38d4bfde426120d4663718beb4.tar.gz 218217769 BLAKE2B a6c2aa012c342e31527b7e9f85e8fea3549d52530d8f87cd699e094a0aa768d099f9fd2631161ff7f53b4a5011937ed6d1f52b8fa1d23aa34183be1f487d4277 SHA512 c4863fab1a3c03f7f9c42f3501d3a75cebb491343515d77d30b26e5cbd720fc3fd628052099d87ed638e8c424bcbe7a1d066ed857f73da6f243d3d5a76b0e6c5 @@ -17,9 +14,7 @@ EBUILD clang-common-16.0.6-r4.ebuild 5726 BLAKE2B de26b88570bf487a2be2a59f4551c8 EBUILD clang-common-17.0.6-r5.ebuild 9010 BLAKE2B cbb5c5094ca6e99fc9ce1734acf02e2e35b792173f84b71e19b25e687f7a93a6fca31e4461fc580d92c0eadabe1400359bec3938fc0cba2cac9bc28a4b8d66be SHA512 ea66877912d34f11a0b788a0d188caf03a5c06098507e7bbb3fa609f594d7b9397ac8fa21c7b502238e36b1ede7bf32dc173b9a6d74a3be1e5d3f25babac9165 EBUILD clang-common-17.0.6-r6.ebuild 9035 BLAKE2B 4e18fbf5bb39238603a6d490eb3e17012f510b859272331826e43fa3c14bdb57af0d63cadcac45dc3cac5a89dcdd401242022f130c681d17fb74c1339aa4dd69 SHA512 5b592d886f4b6d7ffdc67593d994f89a3202710633b61e0ee2d709052edd75ecc2f32e66668902901f5d5d21d08992f085b6f6a054a0f887d3a691f714a59caf EBUILD clang-common-18.1.8-r1.ebuild 9151 BLAKE2B 43a8bcc9b07107ab5a743722d04afc54b8d0b1074dab407f17ee613b572d84d0f217f145dc8786d764e9dea3254bd06f912aa1f09bcc6e76bec1be29ebfb0561 SHA512 a7cf13b1137da79b58580a4181a6ba3b19195467f0d979c826b746f4429b6f431d49373d870053d3abe5ff0f3e45cb9faff2768fcee66d0f09b8c49837032b56 -EBUILD clang-common-19.1.0_rc1.ebuild 9042 BLAKE2B 7fc18661a55e2c223cc3c4e6c8477a913a0ed025b013f4407e58682f00f389cc2961c8cd5ee20d13e75b51f1c8a0b79569a0bb35da6a2028703f9fee553ed4c0 SHA512 212b4035d367e465de90d6b89c81388e45023257aec550dfe81c7ca71ea0a8d59b2ece092c8cbc4b5eadf4d29a3fbde6a49e6fdbce3fde8ccd1300dc7fafdf58 EBUILD clang-common-19.1.0_rc2.ebuild 9042 BLAKE2B 7fc18661a55e2c223cc3c4e6c8477a913a0ed025b013f4407e58682f00f389cc2961c8cd5ee20d13e75b51f1c8a0b79569a0bb35da6a2028703f9fee553ed4c0 SHA512 212b4035d367e465de90d6b89c81388e45023257aec550dfe81c7ca71ea0a8d59b2ece092c8cbc4b5eadf4d29a3fbde6a49e6fdbce3fde8ccd1300dc7fafdf58 EBUILD clang-common-20.0.0.9999.ebuild 9042 BLAKE2B 7fc18661a55e2c223cc3c4e6c8477a913a0ed025b013f4407e58682f00f389cc2961c8cd5ee20d13e75b51f1c8a0b79569a0bb35da6a2028703f9fee553ed4c0 SHA512 212b4035d367e465de90d6b89c81388e45023257aec550dfe81c7ca71ea0a8d59b2ece092c8cbc4b5eadf4d29a3fbde6a49e6fdbce3fde8ccd1300dc7fafdf58 -EBUILD clang-common-20.0.0_pre20240801.ebuild 9042 BLAKE2B 7fc18661a55e2c223cc3c4e6c8477a913a0ed025b013f4407e58682f00f389cc2961c8cd5ee20d13e75b51f1c8a0b79569a0bb35da6a2028703f9fee553ed4c0 SHA512 212b4035d367e465de90d6b89c81388e45023257aec550dfe81c7ca71ea0a8d59b2ece092c8cbc4b5eadf4d29a3fbde6a49e6fdbce3fde8ccd1300dc7fafdf58 EBUILD clang-common-20.0.0_pre20240808.ebuild 9042 BLAKE2B 7fc18661a55e2c223cc3c4e6c8477a913a0ed025b013f4407e58682f00f389cc2961c8cd5ee20d13e75b51f1c8a0b79569a0bb35da6a2028703f9fee553ed4c0 SHA512 212b4035d367e465de90d6b89c81388e45023257aec550dfe81c7ca71ea0a8d59b2ece092c8cbc4b5eadf4d29a3fbde6a49e6fdbce3fde8ccd1300dc7fafdf58 MISC metadata.xml 1248 BLAKE2B d9c542ec74a08857a87a42927feef909c343b5b672145e471ebc69753a3f93432d2ae93ed2659a67d504e2c5ff4212640e4208b173d96e5a173a1043766b66f8 SHA512 eb6d4be1dfbdf6b70b774d42493f6b3015472d5e4bba9386254f6e4ae92307169fe1ac6f0f613d452a9c21c6d61ed57ab50efb54813146983f4d6809b32ddacb diff --git a/sys-devel/clang-common/clang-common-19.1.0_rc1.ebuild b/sys-devel/clang-common/clang-common-19.1.0_rc1.ebuild deleted file mode 100644 index 090a45690818..000000000000 --- a/sys-devel/clang-common/clang-common-19.1.0_rc1.ebuild +++ /dev/null @@ -1,304 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit bash-completion-r1 llvm.org multilib - -DESCRIPTION="Common files shared between multiple slots of clang" -HOMEPAGE="https://llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" -SLOT="0" -IUSE=" - default-compiler-rt default-libcxx default-lld - bootstrap-prefix cet hardened llvm-libunwind -" - -PDEPEND=" - sys-devel/clang:* - default-compiler-rt? ( - sys-devel/clang-runtime[compiler-rt] - llvm-libunwind? ( sys-libs/llvm-libunwind[static-libs] ) - !llvm-libunwind? ( sys-libs/libunwind[static-libs] ) - ) - !default-compiler-rt? ( sys-devel/gcc ) - default-libcxx? ( >=sys-libs/libcxx-${PV}[static-libs] ) - !default-libcxx? ( sys-devel/gcc ) - default-lld? ( >=sys-devel/lld-${PV} ) - !default-lld? ( sys-devel/binutils ) -" -IDEPEND=" - !default-compiler-rt? ( sys-devel/gcc-config ) - !default-libcxx? ( sys-devel/gcc-config ) -" - -LLVM_COMPONENTS=( clang/utils ) -llvm.org_set_globals - -pkg_pretend() { - [[ ${CLANG_IGNORE_DEFAULT_RUNTIMES} ]] && return - - local flag missing_flags=() - for flag in default-{compiler-rt,libcxx,lld}; do - if ! use "${flag}" && has_version "sys-devel/clang[${flag}]"; then - missing_flags+=( "${flag}" ) - fi - done - - if [[ ${missing_flags[@]} ]]; then - eerror "It seems that you have the following flags set on sys-devel/clang:" - eerror - eerror " ${missing_flags[*]}" - eerror - eerror "The default runtimes are now set via flags on sys-devel/clang-common." - eerror "The build is being aborted to prevent breakage. Please either set" - eerror "the respective flags on this ebuild, e.g.:" - eerror - eerror " sys-devel/clang-common ${missing_flags[*]}" - eerror - eerror "or build with CLANG_IGNORE_DEFAULT_RUNTIMES=1." - die "Mismatched defaults detected between sys-devel/clang and sys-devel/clang-common" - fi -} - -_doclang_cfg() { - local triple="${1}" - - local tool - for tool in ${triple}-clang{,++}; do - newins - "${tool}.cfg" <<-EOF - # This configuration file is used by ${tool} driver. - @gentoo-common.cfg - @gentoo-common-ld.cfg - EOF - if [[ ${triple} == x86_64* ]]; then - cat >> "${ED}/etc/clang/${tool}.cfg" <<-EOF || die - @gentoo-cet.cfg - EOF - fi - done - - if use kernel_Darwin; then - cat >> "${ED}/etc/clang/${triple}-clang++.cfg" <<-EOF || die - -lc++abi - EOF - fi - - newins - "${triple}-clang-cpp.cfg" <<-EOF - # This configuration file is used by the ${triple}-clang-cpp driver. - @gentoo-common.cfg - EOF - if [[ ${triple} == x86_64* ]]; then - cat >> "${ED}/etc/clang/${triple}-clang-cpp.cfg" <<-EOF || die - @gentoo-cet.cfg - EOF - fi - - # Install symlinks for triples with other vendor strings since some - # programs insist on mangling the triple. - local vendor - for vendor in gentoo pc unknown; do - local vendor_triple="${triple%%-*}-${vendor}-${triple#*-*-}" - for tool in clang{,++,-cpp}; do - if [[ ! -f "${ED}/etc/clang/${vendor_triple}-${tool}.cfg" ]]; then - dosym "${triple}-${tool}.cfg" "/etc/clang/${vendor_triple}-${tool}.cfg" - fi - done - done -} - -doclang_cfg() { - local triple="${1}" - - _doclang_cfg ${triple} - - # LLVM may have different arch names in some cases. For example in x86 - # profiles the triple uses i686, but llvm will prefer i386 if invoked - # with "clang" on x86 or "clang -m32" on x86_64. The gentoo triple will - # be used if invoked through ${CHOST}-clang{,++,-cpp} though. - # - # To make sure the correct triples are installed, - # see Triple::getArchTypeName() in llvm/lib/TargetParser/Triple.cpp - # and compare with CHOST values in profiles. - - local abi=${triple%%-*} - case ${abi} in - armv4l|armv4t|armv5tel|armv6j|armv7a) - _doclang_cfg ${triple/${abi}/arm} - ;; - i686) - _doclang_cfg ${triple/${abi}/i386} - ;; - sparc) - _doclang_cfg ${triple/${abi}/sparcel} - ;; - sparc64) - _doclang_cfg ${triple/${abi}/sparcv9} - ;; - esac -} - -src_install() { - newbashcomp bash-autocomplete.sh clang - - insinto /etc/clang - newins - gentoo-runtimes.cfg <<-EOF - # This file is initially generated by sys-devel/clang-runtime. - # It is used to control the default runtimes using by clang. - - --rtlib=$(usex default-compiler-rt compiler-rt libgcc) - --unwindlib=$(usex default-compiler-rt libunwind libgcc) - --stdlib=$(usex default-libcxx libc++ libstdc++) - -fuse-ld=$(usex default-lld lld bfd) - EOF - - newins - gentoo-gcc-install.cfg <<-EOF - # This file is maintained by gcc-config. - # It is used to specify the selected GCC installation. - EOF - - newins - gentoo-common.cfg <<-EOF - # This file contains flags common to clang, clang++ and clang-cpp. - @gentoo-runtimes.cfg - @gentoo-gcc-install.cfg - @gentoo-hardened.cfg - # bug #870001 - -include "${EPREFIX}/usr/include/gentoo/maybe-stddefs.h" - EOF - - # clang-cpp does not like link args being passed to it when directly - # invoked, so use a separate configuration file. - newins - gentoo-common-ld.cfg <<-EOF - # This file contains flags common to clang and clang++ - @gentoo-hardened-ld.cfg - EOF - - # Baseline hardening (bug #851111) - newins - gentoo-hardened.cfg <<-EOF - # Some of these options are added unconditionally, regardless of - # USE=hardened, for parity with sys-devel/gcc. - -Xarch_host -fstack-clash-protection - -Xarch_host -fstack-protector-strong - -fPIE - -include "${EPREFIX}/usr/include/gentoo/fortify.h" - EOF - - newins - gentoo-cet.cfg <<-EOF - -Xarch_host -fcf-protection=$(usex cet full none) - EOF - - if use kernel_Darwin; then - newins - gentoo-hardened-ld.cfg <<-EOF - # There was -Wl,-z,relro here, but it's not supported on Mac - # TODO: investigate whether -bind_at_load or -read_only_stubs will do the job - EOF - else - newins - gentoo-hardened-ld.cfg <<-EOF - # Some of these options are added unconditionally, regardless of - # USE=hardened, for parity with sys-devel/gcc. - -Wl,-z,relro - -Wl,-z,now - EOF - fi - - dodir /usr/include/gentoo - - cat >> "${ED}/usr/include/gentoo/maybe-stddefs.h" <<-EOF || die - /* __has_include is an extension, but it's fine, because this is only - for Clang anyway. */ - #if defined __has_include && __has_include (<stdc-predef.h>) && !defined(__GLIBC__) - # include <stdc-predef.h> - #endif - EOF - - local fortify_level=$(usex hardened 3 2) - # We have to do this because glibc's headers warn if F_S is set - # without optimization and that would at the very least be very noisy - # during builds and at worst trigger many -Werror builds. - cat >> "${ED}/usr/include/gentoo/fortify.h" <<- EOF || die - #ifdef __clang__ - # pragma clang system_header - #endif - #ifndef _FORTIFY_SOURCE - # if defined(__has_feature) - # define __GENTOO_HAS_FEATURE(x) __has_feature(x) - # else - # define __GENTOO_HAS_FEATURE(x) 0 - # endif - # - # if defined(__STDC_HOSTED__) && __STDC_HOSTED__ == 1 - # define __GENTOO_NOT_FREESTANDING 1 - # else - # define __GENTOO_NOT_FREESTANDING 0 - # endif - # - # if defined(__OPTIMIZE__) && __OPTIMIZE__ > 0 && __GENTOO_NOT_FREESTANDING > 0 - # if !defined(__SANITIZE_ADDRESS__) && !__GENTOO_HAS_FEATURE(address_sanitizer) && !__GENTOO_HAS_FEATURE(memory_sanitizer) - # define _FORTIFY_SOURCE ${fortify_level} - # endif - # endif - # undef __GENTOO_HAS_FEATURE - # undef __GENTOO_NOT_FREESTANDING - #endif - EOF - - # TODO: Maybe -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_FAST for - # non-hardened? - if use hardened ; then - cat >> "${ED}/etc/clang/gentoo-hardened.cfg" <<-EOF || die - # Options below are conditional on USE=hardened. - -Xarch_host -D_GLIBCXX_ASSERTIONS - - # Analogue to GLIBCXX_ASSERTIONS - # https://libcxx.llvm.org/UsingLibcxx.html#assertions-mode - # https://libcxx.llvm.org/Hardening.html#using-hardened-mode - -Xarch_host -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE - EOF - - cat >> "${ED}/etc/clang/gentoo-hardened-ld.cfg" <<-EOF || die - # Options below are conditional on USE=hardened. - EOF - fi - - # We only install config files for supported ABIs because unprefixed tools - # might be used for crosscompilation where e.g. PIE may not be supported. - # See bug #912237 and bug #901247. Just ${CHOST} won't do due to bug #912685. - local abi - for abi in $(get_all_abis); do - local abi_chost=$(get_abi_CHOST "${abi}") - doclang_cfg "${abi_chost}" - done - - if use kernel_Darwin; then - cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die - # Gentoo Prefix on Darwin - -Wl,-search_paths_first - -Wl,-rpath,${EPREFIX}/usr/lib - -L ${EPREFIX}/usr/lib - -isystem ${EPREFIX}/usr/include - -isysroot ${EPREFIX}/MacOSX.sdk - EOF - if use bootstrap-prefix ; then - # bootstrap-prefix is only set during stage2 of bootstrapping - # Prefix, where EPREFIX is set to EPREFIX/tmp. - # Here we need to point it at the future lib dir of the stage3's - # EPREFIX. - cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die - -Wl,-rpath,${EPREFIX}/../usr/lib - EOF - fi - fi -} - -pkg_preinst() { - if has_version -b sys-devel/gcc-config && has_version sys-devel/gcc - then - local gcc_path=$(gcc-config --get-lib-path 2>/dev/null) - if [[ -n ${gcc_path} ]]; then - cat >> "${ED}/etc/clang/gentoo-gcc-install.cfg" <<-EOF - --gcc-install-dir="${gcc_path%%:*}" - EOF - fi - fi -} diff --git a/sys-devel/clang-common/clang-common-20.0.0_pre20240801.ebuild b/sys-devel/clang-common/clang-common-20.0.0_pre20240801.ebuild deleted file mode 100644 index 090a45690818..000000000000 --- a/sys-devel/clang-common/clang-common-20.0.0_pre20240801.ebuild +++ /dev/null @@ -1,304 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit bash-completion-r1 llvm.org multilib - -DESCRIPTION="Common files shared between multiple slots of clang" -HOMEPAGE="https://llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" -SLOT="0" -IUSE=" - default-compiler-rt default-libcxx default-lld - bootstrap-prefix cet hardened llvm-libunwind -" - -PDEPEND=" - sys-devel/clang:* - default-compiler-rt? ( - sys-devel/clang-runtime[compiler-rt] - llvm-libunwind? ( sys-libs/llvm-libunwind[static-libs] ) - !llvm-libunwind? ( sys-libs/libunwind[static-libs] ) - ) - !default-compiler-rt? ( sys-devel/gcc ) - default-libcxx? ( >=sys-libs/libcxx-${PV}[static-libs] ) - !default-libcxx? ( sys-devel/gcc ) - default-lld? ( >=sys-devel/lld-${PV} ) - !default-lld? ( sys-devel/binutils ) -" -IDEPEND=" - !default-compiler-rt? ( sys-devel/gcc-config ) - !default-libcxx? ( sys-devel/gcc-config ) -" - -LLVM_COMPONENTS=( clang/utils ) -llvm.org_set_globals - -pkg_pretend() { - [[ ${CLANG_IGNORE_DEFAULT_RUNTIMES} ]] && return - - local flag missing_flags=() - for flag in default-{compiler-rt,libcxx,lld}; do - if ! use "${flag}" && has_version "sys-devel/clang[${flag}]"; then - missing_flags+=( "${flag}" ) - fi - done - - if [[ ${missing_flags[@]} ]]; then - eerror "It seems that you have the following flags set on sys-devel/clang:" - eerror - eerror " ${missing_flags[*]}" - eerror - eerror "The default runtimes are now set via flags on sys-devel/clang-common." - eerror "The build is being aborted to prevent breakage. Please either set" - eerror "the respective flags on this ebuild, e.g.:" - eerror - eerror " sys-devel/clang-common ${missing_flags[*]}" - eerror - eerror "or build with CLANG_IGNORE_DEFAULT_RUNTIMES=1." - die "Mismatched defaults detected between sys-devel/clang and sys-devel/clang-common" - fi -} - -_doclang_cfg() { - local triple="${1}" - - local tool - for tool in ${triple}-clang{,++}; do - newins - "${tool}.cfg" <<-EOF - # This configuration file is used by ${tool} driver. - @gentoo-common.cfg - @gentoo-common-ld.cfg - EOF - if [[ ${triple} == x86_64* ]]; then - cat >> "${ED}/etc/clang/${tool}.cfg" <<-EOF || die - @gentoo-cet.cfg - EOF - fi - done - - if use kernel_Darwin; then - cat >> "${ED}/etc/clang/${triple}-clang++.cfg" <<-EOF || die - -lc++abi - EOF - fi - - newins - "${triple}-clang-cpp.cfg" <<-EOF - # This configuration file is used by the ${triple}-clang-cpp driver. - @gentoo-common.cfg - EOF - if [[ ${triple} == x86_64* ]]; then - cat >> "${ED}/etc/clang/${triple}-clang-cpp.cfg" <<-EOF || die - @gentoo-cet.cfg - EOF - fi - - # Install symlinks for triples with other vendor strings since some - # programs insist on mangling the triple. - local vendor - for vendor in gentoo pc unknown; do - local vendor_triple="${triple%%-*}-${vendor}-${triple#*-*-}" - for tool in clang{,++,-cpp}; do - if [[ ! -f "${ED}/etc/clang/${vendor_triple}-${tool}.cfg" ]]; then - dosym "${triple}-${tool}.cfg" "/etc/clang/${vendor_triple}-${tool}.cfg" - fi - done - done -} - -doclang_cfg() { - local triple="${1}" - - _doclang_cfg ${triple} - - # LLVM may have different arch names in some cases. For example in x86 - # profiles the triple uses i686, but llvm will prefer i386 if invoked - # with "clang" on x86 or "clang -m32" on x86_64. The gentoo triple will - # be used if invoked through ${CHOST}-clang{,++,-cpp} though. - # - # To make sure the correct triples are installed, - # see Triple::getArchTypeName() in llvm/lib/TargetParser/Triple.cpp - # and compare with CHOST values in profiles. - - local abi=${triple%%-*} - case ${abi} in - armv4l|armv4t|armv5tel|armv6j|armv7a) - _doclang_cfg ${triple/${abi}/arm} - ;; - i686) - _doclang_cfg ${triple/${abi}/i386} - ;; - sparc) - _doclang_cfg ${triple/${abi}/sparcel} - ;; - sparc64) - _doclang_cfg ${triple/${abi}/sparcv9} - ;; - esac -} - -src_install() { - newbashcomp bash-autocomplete.sh clang - - insinto /etc/clang - newins - gentoo-runtimes.cfg <<-EOF - # This file is initially generated by sys-devel/clang-runtime. - # It is used to control the default runtimes using by clang. - - --rtlib=$(usex default-compiler-rt compiler-rt libgcc) - --unwindlib=$(usex default-compiler-rt libunwind libgcc) - --stdlib=$(usex default-libcxx libc++ libstdc++) - -fuse-ld=$(usex default-lld lld bfd) - EOF - - newins - gentoo-gcc-install.cfg <<-EOF - # This file is maintained by gcc-config. - # It is used to specify the selected GCC installation. - EOF - - newins - gentoo-common.cfg <<-EOF - # This file contains flags common to clang, clang++ and clang-cpp. - @gentoo-runtimes.cfg - @gentoo-gcc-install.cfg - @gentoo-hardened.cfg - # bug #870001 - -include "${EPREFIX}/usr/include/gentoo/maybe-stddefs.h" - EOF - - # clang-cpp does not like link args being passed to it when directly - # invoked, so use a separate configuration file. - newins - gentoo-common-ld.cfg <<-EOF - # This file contains flags common to clang and clang++ - @gentoo-hardened-ld.cfg - EOF - - # Baseline hardening (bug #851111) - newins - gentoo-hardened.cfg <<-EOF - # Some of these options are added unconditionally, regardless of - # USE=hardened, for parity with sys-devel/gcc. - -Xarch_host -fstack-clash-protection - -Xarch_host -fstack-protector-strong - -fPIE - -include "${EPREFIX}/usr/include/gentoo/fortify.h" - EOF - - newins - gentoo-cet.cfg <<-EOF - -Xarch_host -fcf-protection=$(usex cet full none) - EOF - - if use kernel_Darwin; then - newins - gentoo-hardened-ld.cfg <<-EOF - # There was -Wl,-z,relro here, but it's not supported on Mac - # TODO: investigate whether -bind_at_load or -read_only_stubs will do the job - EOF - else - newins - gentoo-hardened-ld.cfg <<-EOF - # Some of these options are added unconditionally, regardless of - # USE=hardened, for parity with sys-devel/gcc. - -Wl,-z,relro - -Wl,-z,now - EOF - fi - - dodir /usr/include/gentoo - - cat >> "${ED}/usr/include/gentoo/maybe-stddefs.h" <<-EOF || die - /* __has_include is an extension, but it's fine, because this is only - for Clang anyway. */ - #if defined __has_include && __has_include (<stdc-predef.h>) && !defined(__GLIBC__) - # include <stdc-predef.h> - #endif - EOF - - local fortify_level=$(usex hardened 3 2) - # We have to do this because glibc's headers warn if F_S is set - # without optimization and that would at the very least be very noisy - # during builds and at worst trigger many -Werror builds. - cat >> "${ED}/usr/include/gentoo/fortify.h" <<- EOF || die - #ifdef __clang__ - # pragma clang system_header - #endif - #ifndef _FORTIFY_SOURCE - # if defined(__has_feature) - # define __GENTOO_HAS_FEATURE(x) __has_feature(x) - # else - # define __GENTOO_HAS_FEATURE(x) 0 - # endif - # - # if defined(__STDC_HOSTED__) && __STDC_HOSTED__ == 1 - # define __GENTOO_NOT_FREESTANDING 1 - # else - # define __GENTOO_NOT_FREESTANDING 0 - # endif - # - # if defined(__OPTIMIZE__) && __OPTIMIZE__ > 0 && __GENTOO_NOT_FREESTANDING > 0 - # if !defined(__SANITIZE_ADDRESS__) && !__GENTOO_HAS_FEATURE(address_sanitizer) && !__GENTOO_HAS_FEATURE(memory_sanitizer) - # define _FORTIFY_SOURCE ${fortify_level} - # endif - # endif - # undef __GENTOO_HAS_FEATURE - # undef __GENTOO_NOT_FREESTANDING - #endif - EOF - - # TODO: Maybe -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_FAST for - # non-hardened? - if use hardened ; then - cat >> "${ED}/etc/clang/gentoo-hardened.cfg" <<-EOF || die - # Options below are conditional on USE=hardened. - -Xarch_host -D_GLIBCXX_ASSERTIONS - - # Analogue to GLIBCXX_ASSERTIONS - # https://libcxx.llvm.org/UsingLibcxx.html#assertions-mode - # https://libcxx.llvm.org/Hardening.html#using-hardened-mode - -Xarch_host -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE - EOF - - cat >> "${ED}/etc/clang/gentoo-hardened-ld.cfg" <<-EOF || die - # Options below are conditional on USE=hardened. - EOF - fi - - # We only install config files for supported ABIs because unprefixed tools - # might be used for crosscompilation where e.g. PIE may not be supported. - # See bug #912237 and bug #901247. Just ${CHOST} won't do due to bug #912685. - local abi - for abi in $(get_all_abis); do - local abi_chost=$(get_abi_CHOST "${abi}") - doclang_cfg "${abi_chost}" - done - - if use kernel_Darwin; then - cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die - # Gentoo Prefix on Darwin - -Wl,-search_paths_first - -Wl,-rpath,${EPREFIX}/usr/lib - -L ${EPREFIX}/usr/lib - -isystem ${EPREFIX}/usr/include - -isysroot ${EPREFIX}/MacOSX.sdk - EOF - if use bootstrap-prefix ; then - # bootstrap-prefix is only set during stage2 of bootstrapping - # Prefix, where EPREFIX is set to EPREFIX/tmp. - # Here we need to point it at the future lib dir of the stage3's - # EPREFIX. - cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die - -Wl,-rpath,${EPREFIX}/../usr/lib - EOF - fi - fi -} - -pkg_preinst() { - if has_version -b sys-devel/gcc-config && has_version sys-devel/gcc - then - local gcc_path=$(gcc-config --get-lib-path 2>/dev/null) - if [[ -n ${gcc_path} ]]; then - cat >> "${ED}/etc/clang/gentoo-gcc-install.cfg" <<-EOF - --gcc-install-dir="${gcc_path%%:*}" - EOF - fi - fi -} diff --git a/sys-devel/clang-runtime/Manifest b/sys-devel/clang-runtime/Manifest index 5bfb160a7f2c..978724ba3f30 100644 --- a/sys-devel/clang-runtime/Manifest +++ b/sys-devel/clang-runtime/Manifest @@ -2,9 +2,7 @@ EBUILD clang-runtime-15.0.7.ebuild 759 BLAKE2B d7b481faffc4da0a6dc1b4e708322cd17 EBUILD clang-runtime-16.0.6.ebuild 1448 BLAKE2B be376aab09a0268444784d1a0bcb590222c9c8a118e260b15939e574687334eb476d6f66ab0f1f4fb0841a226c7b7f690666c33bec2d9c14f27a4f30f986b859 SHA512 b0b7a2f5c69890cb2fc0a9c2c8a1910669a4eae16826c0702a2ef508f91b6ec3b5607beab5b24f02951cf9b377f1d09395bd97c27f476137ef6cdf2571330578 EBUILD clang-runtime-17.0.6.ebuild 1448 BLAKE2B be376aab09a0268444784d1a0bcb590222c9c8a118e260b15939e574687334eb476d6f66ab0f1f4fb0841a226c7b7f690666c33bec2d9c14f27a4f30f986b859 SHA512 b0b7a2f5c69890cb2fc0a9c2c8a1910669a4eae16826c0702a2ef508f91b6ec3b5607beab5b24f02951cf9b377f1d09395bd97c27f476137ef6cdf2571330578 EBUILD clang-runtime-18.1.8.ebuild 1448 BLAKE2B be376aab09a0268444784d1a0bcb590222c9c8a118e260b15939e574687334eb476d6f66ab0f1f4fb0841a226c7b7f690666c33bec2d9c14f27a4f30f986b859 SHA512 b0b7a2f5c69890cb2fc0a9c2c8a1910669a4eae16826c0702a2ef508f91b6ec3b5607beab5b24f02951cf9b377f1d09395bd97c27f476137ef6cdf2571330578 -EBUILD clang-runtime-19.1.0_rc1.ebuild 1339 BLAKE2B 4a5ee8a332faf2da21256df048867b1458a5ccb2d733d00ee3788bfbc28b3daf4ce2ae2455ab03c9ebb192d964feae2cd5806b5fef23eaa9401d57b35386aa57 SHA512 fac3e259b5a7b5e105b3d5fd2f8e9a9b6236642867e4c4a67106ec999dfaf0a30a97a3905685043a0ab9f38b15b7b8a5a814a97921e37029b9d0beac7ba7085a EBUILD clang-runtime-19.1.0_rc2.ebuild 1339 BLAKE2B 4a5ee8a332faf2da21256df048867b1458a5ccb2d733d00ee3788bfbc28b3daf4ce2ae2455ab03c9ebb192d964feae2cd5806b5fef23eaa9401d57b35386aa57 SHA512 fac3e259b5a7b5e105b3d5fd2f8e9a9b6236642867e4c4a67106ec999dfaf0a30a97a3905685043a0ab9f38b15b7b8a5a814a97921e37029b9d0beac7ba7085a EBUILD clang-runtime-20.0.0.9999.ebuild 1339 BLAKE2B 4a5ee8a332faf2da21256df048867b1458a5ccb2d733d00ee3788bfbc28b3daf4ce2ae2455ab03c9ebb192d964feae2cd5806b5fef23eaa9401d57b35386aa57 SHA512 fac3e259b5a7b5e105b3d5fd2f8e9a9b6236642867e4c4a67106ec999dfaf0a30a97a3905685043a0ab9f38b15b7b8a5a814a97921e37029b9d0beac7ba7085a -EBUILD clang-runtime-20.0.0_pre20240801.ebuild 1339 BLAKE2B 4a5ee8a332faf2da21256df048867b1458a5ccb2d733d00ee3788bfbc28b3daf4ce2ae2455ab03c9ebb192d964feae2cd5806b5fef23eaa9401d57b35386aa57 SHA512 fac3e259b5a7b5e105b3d5fd2f8e9a9b6236642867e4c4a67106ec999dfaf0a30a97a3905685043a0ab9f38b15b7b8a5a814a97921e37029b9d0beac7ba7085a EBUILD clang-runtime-20.0.0_pre20240808.ebuild 1339 BLAKE2B 4a5ee8a332faf2da21256df048867b1458a5ccb2d733d00ee3788bfbc28b3daf4ce2ae2455ab03c9ebb192d964feae2cd5806b5fef23eaa9401d57b35386aa57 SHA512 fac3e259b5a7b5e105b3d5fd2f8e9a9b6236642867e4c4a67106ec999dfaf0a30a97a3905685043a0ab9f38b15b7b8a5a814a97921e37029b9d0beac7ba7085a MISC metadata.xml 661 BLAKE2B 24688c511713ea102b83c71d226d519981b3aee0e05ef7a56d6a80be829efd843194e45cb4fd801f0bb976b6f1976386d6a2b05d2bc907fe2aa42b22b85b7d1f SHA512 2b5ab8783c90795f2e7d1673d876048ed9745f4911fb7a860df56deac13a6dfeba4581a84562eae54eff757c45042ca3fab75c7800313ae61df9ce69780a9294 diff --git a/sys-devel/clang-runtime/clang-runtime-19.1.0_rc1.ebuild b/sys-devel/clang-runtime/clang-runtime-19.1.0_rc1.ebuild deleted file mode 100644 index 323c0b62c062..000000000000 --- a/sys-devel/clang-runtime/clang-runtime-19.1.0_rc1.ebuild +++ /dev/null @@ -1,39 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit multilib-build toolchain-funcs - -DESCRIPTION="Meta-ebuild for clang runtime libraries" -HOMEPAGE="https://clang.llvm.org/" - -LICENSE="metapackage" -SLOT="${PV%%.*}" -IUSE="+compiler-rt libcxx openmp +sanitize" -REQUIRED_USE="sanitize? ( compiler-rt )" - -RDEPEND=" - compiler-rt? ( - ~sys-libs/compiler-rt-${PV}:${SLOT}[abi_x86_32(+)?,abi_x86_64(+)?] - sanitize? ( - ~sys-libs/compiler-rt-sanitizers-${PV}:${SLOT}[abi_x86_32(+)?,abi_x86_64(+)?] - ) - ) - libcxx? ( >=sys-libs/libcxx-${PV}[${MULTILIB_USEDEP}] ) - openmp? ( >=sys-libs/libomp-${PV}[${MULTILIB_USEDEP}] ) -" - -pkg_pretend() { - if tc-is-clang; then - ewarn "You seem to be using clang as a system compiler. As of clang-16," - ewarn "upstream has turned a few warnings that commonly occur during" - ewarn "configure script runs into errors by default. This causes some" - ewarn "configure tests to start failing, sometimes resulting in silent" - ewarn "breakage, missing functionality or runtime misbehavior. It is" - ewarn "not yet clear whether the change will remain or be reverted." - ewarn - ewarn "For more information, please see:" - ewarn "https://discourse.llvm.org/t/configure-script-breakage-with-the-new-werror-implicit-function-declaration/65213" - fi -} diff --git a/sys-devel/clang-runtime/clang-runtime-20.0.0_pre20240801.ebuild b/sys-devel/clang-runtime/clang-runtime-20.0.0_pre20240801.ebuild deleted file mode 100644 index 323c0b62c062..000000000000 --- a/sys-devel/clang-runtime/clang-runtime-20.0.0_pre20240801.ebuild +++ /dev/null @@ -1,39 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit multilib-build toolchain-funcs - -DESCRIPTION="Meta-ebuild for clang runtime libraries" -HOMEPAGE="https://clang.llvm.org/" - -LICENSE="metapackage" -SLOT="${PV%%.*}" -IUSE="+compiler-rt libcxx openmp +sanitize" -REQUIRED_USE="sanitize? ( compiler-rt )" - -RDEPEND=" - compiler-rt? ( - ~sys-libs/compiler-rt-${PV}:${SLOT}[abi_x86_32(+)?,abi_x86_64(+)?] - sanitize? ( - ~sys-libs/compiler-rt-sanitizers-${PV}:${SLOT}[abi_x86_32(+)?,abi_x86_64(+)?] - ) - ) - libcxx? ( >=sys-libs/libcxx-${PV}[${MULTILIB_USEDEP}] ) - openmp? ( >=sys-libs/libomp-${PV}[${MULTILIB_USEDEP}] ) -" - -pkg_pretend() { - if tc-is-clang; then - ewarn "You seem to be using clang as a system compiler. As of clang-16," - ewarn "upstream has turned a few warnings that commonly occur during" - ewarn "configure script runs into errors by default. This causes some" - ewarn "configure tests to start failing, sometimes resulting in silent" - ewarn "breakage, missing functionality or runtime misbehavior. It is" - ewarn "not yet clear whether the change will remain or be reverted." - ewarn - ewarn "For more information, please see:" - ewarn "https://discourse.llvm.org/t/configure-script-breakage-with-the-new-werror-implicit-function-declaration/65213" - fi -} diff --git a/sys-devel/clang/Manifest b/sys-devel/clang/Manifest index d7b8675ab7f9..c4cfda573760 100644 --- a/sys-devel/clang/Manifest +++ b/sys-devel/clang/Manifest @@ -5,7 +5,6 @@ DIST llvm-18.1.0-manpages.tar.bz2 270429 BLAKE2B d85d6e23197184dc512019c25805af0 DIST llvm-gentoo-patchset-15.0.7-r3.tar.xz 24268 BLAKE2B 6531ae385ecea87bc26dba8ce19b4cde8ff224c80fd81f04c6ded131e305ecfdeb8d29ebd3b68a641d240805dc83eb0ebc7cc85124f02ad0ee66e0f201b91d7e SHA512 66cb33f8b423736b990fb75d4f2d1e5f14c0b03308f403297204dd1a352d72f85f34220fd66d3de5d6df328cdf2ffce03c2a111cb0bb57791cf68a88069ac7df DIST llvm-gentoo-patchset-16.0.6.tar.xz 17340 BLAKE2B 37cdf4b38367b4256d4f7a25d1b4f41758e5f81be8e20a1c94a10d6c5e36642e9672121b455e73a0bac2eb40467ef2db4b43789b2912a6790593d97b8b5c27e3 SHA512 2c02b9d8a4c5af9fddcd26c95dc66fffae32cb5b7f85c65a1aa4ed00dd8cd5b01cc1975a711aee63c0b8b11e9dc20f2bc05ea753904eb516892b820f02aff825 DIST llvm-gentoo-patchset-17.0.6-r1.tar.xz 2792 BLAKE2B b4e9014179edd96add0c932b16d3a95a5d7a905298052164ff668590108c83cd4f938d42b6d801efedae28a959b03b2bc3c7cd2a4cad20ef2b3c7aa9a3d0c15d SHA512 73a46aa9f6f2ac6334a073733aa082a12f97fb6a2750d5930af4eb1639cd192f3a17ea87c2f17947f04c68a5f60e37d9bc27ede8bab75531599edfb4c3aa8ffe -DIST llvm-project-130c135689ec12ab78c53645808524a8d28f7cae.tar.gz 217788932 BLAKE2B 9ba8ad82597780f24e750272f9439d1e8d464813a607efec4920a13473103975bc181506dcc15c76a6e4ca83622284b77a7903e36aff6145719529630121cf0b SHA512 d9c67155f462e53968ec448e325b35a80c0d207039dd7155568fa366aa1894bc8dfaa2d5c03a67320bdefb1934720a1d23bc4b972c9fae3ff09c7a79d885c53d DIST llvm-project-15.0.7.src.tar.xz 110936452 BLAKE2B f3d277e2029157329e5be78b78af36b0826a1dfd9a337992499bf701e33149665bfc47d5e14978e38f342559629a559f8b2ce328705ba34fdf6830f5ae9721a5 SHA512 4836d3603f32e8e54434cbfa8ef33d9d473ac5dc20ebf9c67132653c73f4524931abd1084655eaee5f20bcfcb91bcc4bbc5c4a0b603ad0c9029c556e14dc4c52 DIST llvm-project-15.0.7.src.tar.xz.sig 566 BLAKE2B 47dc8c82d86237b80c6d85f83a6c9a6e9e174cf8e7f367b071e0cd9481d7cd408e991337c5624e07f3f370f26387c814f212808575ed1c1b58404d3e3836b7df SHA512 fc6891b440dd1175eb8df3790590af8d36bc92301660f84744ae15123475aeb900a151e6a8e7998ded27ec4d86871903ad0b89cd61164943054c2e3bc8d8beb2 DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db365965f1c00bfea6c2d653b3996bd2acef8a2b37e37f6fc8a9d2b65711ad72657e0ef52c42f733053cf65051e7822f27396c30406d SHA512 89a67ebfbbc764cc456e8825ecfa90707741f8835b1b2adffae0b227ab1fe5ca9cce75b0efaffc9ca8431cae528dc54fd838867a56a2b645344d9e82d19ab1b7 @@ -14,8 +13,6 @@ DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e06541 DIST llvm-project-17.0.6.src.tar.xz.sig 438 BLAKE2B 186e75b6a0fbfe1e85408589c149e1800fcc47d685b74e4260018e05cd08bc793d1d1197c9c50e177eea941a3d0c65cb0c583ce6dae449099b920adf8a508ef7 SHA512 f78c55053a6450625f3e95f52c305110b4468a9854fec75831b65b8d6ceee3c9206ab9e63c4b5fda8be9bd344f72cfbdaae0520ed240abd505e08ebeaa25d340 DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffef86468169ba2f211a9733ec2d4cf30040f7f277ef00f048bb44dee9f97d7d762f0f241f19e5a2a7b0b49217d3821ddfc8c354f SHA512 25eeee9984c8b4d0fbc240df90f33cbb000d3b0414baff5c8982beafcc5e59e7ef18f6f85d95b3a5f60cb3d4cd4f877c80487b5768bc21bc833f107698ad93db DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b -DIST llvm-project-19.1.0-rc1.src.tar.xz 141259912 BLAKE2B e882ff54a96900b4948e572cf073c897df6b4ce159869a42c56a4c830187d83b8d9d9b3940dad22346f142f9674575191cc9d079312f0d9aa1105390c07f504f SHA512 9f43dbe8d5f1322f73fb1c638ce4fc7a8179c9ca33fdbfbb6d72632a3d6bf4bc4993f8f5ec827510af55f4f013fba8fe3d7d9e45f262eec16ecf9ab39296b4b8 -DIST llvm-project-19.1.0-rc1.src.tar.xz.sig 438 BLAKE2B cc1acbd33440bb14f78c19cc3061a5c0cb3d9dbcd6f0d1516fe118ac02c500ba4df129f870ddf3fe1a52519feab4b631866413fce9c726272d52c3865a9eea27 SHA512 a3361992b55be13aeff5d91bb90a15e3a2ab89e486328fa4d9abc9efa3925aee70bea48449b003ae1926909d389bf71afcf6dc56d800ed2e0e3dbc65da6e4e92 DIST llvm-project-19.1.0-rc2.src.tar.xz 141264388 BLAKE2B 690b4912d9e4a8019b7990934dd6486362337ccb303dca119c0e75aa1063ad452222be1ee965e43b160dfcea20e491a20c289344152666b618712a1d76dc4780 SHA512 508a401e8433b1ac9a399246eb1a3c18faed7c3d41d8c118e77cefbb64cc6d6e171bd41a3e5584f6c84df141ba6819f1a1cce75b5c1ef33e3d2ac239e662d07c DIST llvm-project-19.1.0-rc2.src.tar.xz.sig 438 BLAKE2B 1eaf10a1419ecf009c033a8f6ecb6eec86107d81621d5b4665c8d929b05f4845ce0c432017343d7b06f33e6ff6384df9e1d8fc7b9c6efe7f10ef69798891b7e5 SHA512 b46e9a1d40f891c5f3544d8cc6295900bff5dda9a4a526b8db55a42a37ae90deb216b316d2117984e82f4e918d15343e75b3b9e6d6c773866707c3398e032826 DIST llvm-project-fd7d7882e7fa5a38d4bfde426120d4663718beb4.tar.gz 218217769 BLAKE2B a6c2aa012c342e31527b7e9f85e8fea3549d52530d8f87cd699e094a0aa768d099f9fd2631161ff7f53b4a5011937ed6d1f52b8fa1d23aa34183be1f487d4277 SHA512 c4863fab1a3c03f7f9c42f3501d3a75cebb491343515d77d30b26e5cbd720fc3fd628052099d87ed638e8c424bcbe7a1d066ed857f73da6f243d3d5a76b0e6c5 @@ -23,9 +20,7 @@ EBUILD clang-15.0.7-r3.ebuild 12523 BLAKE2B 0e3f9d4506a1b98e96ff98ea52f8bb10f8ab EBUILD clang-16.0.6.ebuild 12452 BLAKE2B 446a354b58fc0535b81596a9a3785a4cd5d7b7ad52a461baa3b6b7beacdc12161f62da588cd837b8b9c8f35307b1a2c885b9d01bf8edc4af1b551efaab09ebe8 SHA512 58b5694a7d28a03edd4a71e3a99b0b2678285e616cdaab82bb196f092a8726e9cd3787ab07d724680113b4f6683e89103cab2478e49a85e7b5c75a633fb1ca51 EBUILD clang-17.0.6.ebuild 12151 BLAKE2B 665280844db218824bec2add033e13e14b958ac510fb1b0b7193130a55041a5c802c57aa022a35d65a689c611ca9ed119eaf39c47f581d24f38d9c8655c5f062 SHA512 482ae07e36fb3c593d2051b2034f501fc0c94bdcaeb2a6a0701473d00f16f691c8a1584d4b1773dfd236297a12a42cb4f9443eb5c381dcb10d36f749a432ff1d EBUILD clang-18.1.8.ebuild 12218 BLAKE2B a8508146967a2807d4bd95734fe52da8194c9038055c086626a014c1684b40f41bf8a51c771549f8a538d83354e5ad5c4478a70f5864deab94cc014e641ea33b SHA512 24e0711766e69ed58726396aba57fc9cc539fcc15831402bfd22ca2727c0233f8cad8ffbbfde02046e47ad127391da97045d2096a58b73391c760bfb31751226 -EBUILD clang-19.1.0_rc1.ebuild 11899 BLAKE2B 4ec92be5b4185157408680503931e7bc4c50cb99320a11e2d16598cad5bf8c1f6b30a020e395d652cb2489b9252885ab5fd18672bbfd6adbb84c69a5800be6ce SHA512 a1f20ed323af7a93a9c6d277789f53cc17c9faf60e81bdee8e4e754a52da46cbfa79fde093aea023b83b4f4d3c93add7b170e4af32e65e869e04e4d48204f898 EBUILD clang-19.1.0_rc2.ebuild 11899 BLAKE2B 4ec92be5b4185157408680503931e7bc4c50cb99320a11e2d16598cad5bf8c1f6b30a020e395d652cb2489b9252885ab5fd18672bbfd6adbb84c69a5800be6ce SHA512 a1f20ed323af7a93a9c6d277789f53cc17c9faf60e81bdee8e4e754a52da46cbfa79fde093aea023b83b4f4d3c93add7b170e4af32e65e869e04e4d48204f898 EBUILD clang-20.0.0.9999.ebuild 11943 BLAKE2B a186ad2e553c9fe1f76a659a1bb8d015f777ef76f100d0400b18c755ebfa80380cad8426c27c69255531b2a321b1bd62ea7a22301616133442604398c92c136c SHA512 2f2a4f0dd70bbeffc174a1213733dddfaaf34b5ef247fde9bd4248361d3561227a66ff10aa87ff0a627ac472bea36455ddba50387ebd5d3fdd7e50d4fd751995 -EBUILD clang-20.0.0_pre20240801.ebuild 11943 BLAKE2B a186ad2e553c9fe1f76a659a1bb8d015f777ef76f100d0400b18c755ebfa80380cad8426c27c69255531b2a321b1bd62ea7a22301616133442604398c92c136c SHA512 2f2a4f0dd70bbeffc174a1213733dddfaaf34b5ef247fde9bd4248361d3561227a66ff10aa87ff0a627ac472bea36455ddba50387ebd5d3fdd7e50d4fd751995 EBUILD clang-20.0.0_pre20240808.ebuild 11943 BLAKE2B a186ad2e553c9fe1f76a659a1bb8d015f777ef76f100d0400b18c755ebfa80380cad8426c27c69255531b2a321b1bd62ea7a22301616133442604398c92c136c SHA512 2f2a4f0dd70bbeffc174a1213733dddfaaf34b5ef247fde9bd4248361d3561227a66ff10aa87ff0a627ac472bea36455ddba50387ebd5d3fdd7e50d4fd751995 MISC metadata.xml 1318 BLAKE2B 704c1a64297b25da1b2e0eec23cbdf4791273da1babf23292160b6163d43438e62fe214df7afa09232893599951918440954c17a9bfa0c6f829a7d706f564192 SHA512 4677ad146739dd41e025a2335eec353a3d35ac8db7482948fee611566d84b41c4e6bdd75bc3d78f8933d4d9818a36bf222e1aa89e52f945501ff918479fea3b6 diff --git a/sys-devel/clang/clang-19.1.0_rc1.ebuild b/sys-devel/clang/clang-19.1.0_rc1.ebuild deleted file mode 100644 index e97008f8ad7a..000000000000 --- a/sys-devel/clang/clang-19.1.0_rc1.ebuild +++ /dev/null @@ -1,470 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..13} ) - -inherit cmake llvm.org llvm-utils multilib multilib-minimal -inherit prefix python-single-r1 toolchain-funcs - -DESCRIPTION="C language family frontend for LLVM" -HOMEPAGE="https://llvm.org/" - -# MSVCSetupApi.h: MIT -# sorttable.js: MIT - -LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA MIT" -SLOT="${LLVM_MAJOR}/${LLVM_SOABI}" -IUSE="+debug doc +extra ieee-long-double +pie +static-analyzer test xml" -REQUIRED_USE="${PYTHON_REQUIRED_USE}" -RESTRICT="!test? ( test )" - -DEPEND=" - ~sys-devel/llvm-${PV}:${LLVM_MAJOR}=[debug=,${MULTILIB_USEDEP}] - static-analyzer? ( dev-lang/perl:* ) - xml? ( dev-libs/libxml2:2=[${MULTILIB_USEDEP}] ) -" - -RDEPEND=" - ${PYTHON_DEPS} - ${DEPEND} - >=sys-devel/clang-common-${PV} -" -BDEPEND=" - ${PYTHON_DEPS} - test? ( ~sys-devel/lld-${PV} ) - xml? ( virtual/pkgconfig ) -" -PDEPEND=" - ~sys-devel/clang-runtime-${PV} - sys-devel/clang-toolchain-symlinks:${LLVM_MAJOR} -" - -LLVM_COMPONENTS=( - clang clang-tools-extra cmake -) -LLVM_MANPAGES=1 -LLVM_TEST_COMPONENTS=( - llvm/utils -) -LLVM_USE_TARGETS=llvm -llvm.org_set_globals - -[[ -n ${LLVM_MANPAGE_DIST} ]] && BDEPEND+=" doc? ( " -BDEPEND+=" - $(python_gen_cond_dep ' - dev-python/myst-parser[${PYTHON_USEDEP}] - dev-python/sphinx[${PYTHON_USEDEP}] - ') -" -[[ -n ${LLVM_MANPAGE_DIST} ]] && BDEPEND+=" ) " - -# Multilib notes: -# 1. ABI_* flags control ABIs libclang* is built for only. -# 2. clang is always capable of compiling code for all ABIs for enabled -# target. However, you will need appropriate crt* files (installed -# e.g. by sys-devel/gcc and sys-libs/glibc). -# 3. ${CHOST}-clang wrappers are always installed for all ABIs included -# in the current profile (i.e. alike supported by sys-devel/gcc). -# -# Therefore: use sys-devel/clang[${MULTILIB_USEDEP}] only if you need -# multilib clang* libraries (not runtime, not wrappers). - -src_prepare() { - # create extra parent dir for relative CLANG_RESOURCE_DIR access - mkdir -p x/y || die - BUILD_DIR=${WORKDIR}/x/y/clang - - llvm.org_src_prepare - - # add Gentoo Portage Prefix for Darwin (see prefix-dirs.patch) - eprefixify \ - lib/Lex/InitHeaderSearch.cpp \ - lib/Driver/ToolChains/Darwin.cpp || die - - if ! use prefix-guest && [[ -n ${EPREFIX} ]]; then - sed -i "/LibDir.*Loader/s@return \"\/\"@return \"${EPREFIX}/\"@" lib/Driver/ToolChains/Linux.cpp || die - fi -} - -check_distribution_components() { - if [[ ${CMAKE_MAKEFILE_GENERATOR} == ninja ]]; then - local all_targets=() my_targets=() l - cd "${BUILD_DIR}" || die - - while read -r l; do - if [[ ${l} == install-*-stripped:* ]]; then - l=${l#install-} - l=${l%%-stripped*} - - case ${l} in - # meta-targets - clang-libraries|distribution) - continue - ;; - # tools - clang|clangd|clang-*) - ;; - # static libraries - clang*|findAllSymbols) - continue - ;; - # conditional to USE=doc - docs-clang-html|docs-clang-tools-html) - use doc || continue - ;; - esac - - all_targets+=( "${l}" ) - fi - done < <(${NINJA} -t targets all) - - while read -r l; do - my_targets+=( "${l}" ) - done < <(get_distribution_components $"\n") - - local add=() remove=() - for l in "${all_targets[@]}"; do - if ! has "${l}" "${my_targets[@]}"; then - add+=( "${l}" ) - fi - done - for l in "${my_targets[@]}"; do - if ! has "${l}" "${all_targets[@]}"; then - remove+=( "${l}" ) - fi - done - - if [[ ${#add[@]} -gt 0 || ${#remove[@]} -gt 0 ]]; then - eqawarn "get_distribution_components() is outdated!" - eqawarn " Add: ${add[*]}" - eqawarn "Remove: ${remove[*]}" - fi - cd - >/dev/null || die - fi -} - -get_distribution_components() { - local sep=${1-;} - - local out=( - # common stuff - clang-cmake-exports - clang-headers - clang-resource-headers - libclang-headers - - aarch64-resource-headers - arm-common-resource-headers - arm-resource-headers - core-resource-headers - cuda-resource-headers - hexagon-resource-headers - hip-resource-headers - hlsl-resource-headers - mips-resource-headers - opencl-resource-headers - openmp-resource-headers - ppc-htm-resource-headers - ppc-resource-headers - riscv-resource-headers - systemz-resource-headers - utility-resource-headers - ve-resource-headers - webassembly-resource-headers - windows-resource-headers - x86-resource-headers - - # libs - clang-cpp - libclang - ) - - if multilib_is_native_abi; then - out+=( - # common stuff - bash-autocomplete - libclang-python-bindings - - # tools - amdgpu-arch - c-index-test - clang - clang-format - clang-installapi - clang-linker-wrapper - clang-nvlink-wrapper - clang-offload-bundler - clang-offload-packager - clang-refactor - clang-repl - clang-rename - clang-scan-deps - diagtool - hmaptool - nvptx-arch - - # needed for cross-compiling Clang - clang-tblgen - ) - - if use extra; then - out+=( - # extra tools - clang-apply-replacements - clang-change-namespace - clang-doc - clang-include-cleaner - clang-include-fixer - clang-move - clang-pseudo - clang-query - clang-reorder-fields - clang-tidy - clang-tidy-headers - clangd - find-all-symbols - modularize - pp-trace - ) - fi - - if llvm_are_manpages_built; then - out+=( docs-clang-man ) - use extra && out+=( docs-clang-tools-man ) - fi - - if use doc; then - out+=( docs-clang-html ) - use extra && out+=( docs-clang-tools-html ) - fi - - use static-analyzer && out+=( - clang-check - clang-extdef-mapping - scan-build - scan-build-py - scan-view - ) - fi - - printf "%s${sep}" "${out[@]}" -} - -multilib_src_configure() { - llvm_prepend_path "${LLVM_MAJOR}" - - local mycmakeargs=( - -DDEFAULT_SYSROOT=$(usex prefix-guest "" "${EPREFIX}") - -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}" - -DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man" - -DCLANG_CONFIG_FILE_SYSTEM_DIR="${EPREFIX}/etc/clang" - # relative to bindir - -DCLANG_RESOURCE_DIR="../../../../lib/clang/${LLVM_MAJOR}" - - -DBUILD_SHARED_LIBS=OFF - -DCLANG_LINK_CLANG_DYLIB=ON - -DLLVM_DISTRIBUTION_COMPONENTS=$(get_distribution_components) - -DCLANG_INCLUDE_TESTS=$(usex test) - - -DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}" - - # these are not propagated reliably, so redefine them - -DLLVM_ENABLE_EH=ON - -DLLVM_ENABLE_RTTI=ON - - # libgomp support fails to find headers without explicit -I - # furthermore, it provides only syntax checking - -DCLANG_DEFAULT_OPENMP_RUNTIME=libomp - - -DCLANG_DEFAULT_PIE_ON_LINUX=$(usex pie) - - -DCLANG_ENABLE_LIBXML2=$(usex xml) - -DCLANG_ENABLE_ARCMT=$(usex static-analyzer) - -DCLANG_ENABLE_STATIC_ANALYZER=$(usex static-analyzer) - # TODO: CLANG_ENABLE_HLSL? - - -DPython3_EXECUTABLE="${PYTHON}" - ) - - if ! use elibc_musl; then - mycmakeargs+=( - -DPPC_LINUX_DEFAULT_IEEELONGDOUBLE=$(usex ieee-long-double) - ) - fi - - use test && mycmakeargs+=( - -DLLVM_BUILD_TESTS=ON - -DLLVM_LIT_ARGS="$(get_lit_flags)" - ) - - if multilib_is_native_abi; then - local build_docs=OFF - if llvm_are_manpages_built; then - build_docs=ON - mycmakeargs+=( - -DLLVM_BUILD_DOCS=ON - -DLLVM_ENABLE_SPHINX=ON - -DCLANG_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/html" - -DSPHINX_WARNINGS_AS_ERRORS=OFF - ) - if use extra; then - mycmakeargs+=( - -DCLANG-TOOLS_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/tools-extra" - ) - fi - fi - mycmakeargs+=( - -DCLANG_INCLUDE_DOCS=${build_docs} - ) - fi - if multilib_native_use extra; then - mycmakeargs+=( - -DLLVM_EXTERNAL_CLANG_TOOLS_EXTRA_SOURCE_DIR="${WORKDIR}"/clang-tools-extra - -DCLANG_TOOLS_EXTRA_INCLUDE_DOCS=${build_docs} - ) - else - mycmakeargs+=( - -DLLVM_TOOL_CLANG_TOOLS_EXTRA_BUILD=OFF - ) - fi - - if [[ -n ${EPREFIX} ]]; then - mycmakeargs+=( - -DGCC_INSTALL_PREFIX="${EPREFIX}/usr" - ) - fi - - if tc-is-cross-compiler; then - has_version -b sys-devel/clang:${LLVM_MAJOR} || - die "sys-devel/clang:${LLVM_MAJOR} is required on the build host." - local tools_bin=${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/bin - mycmakeargs+=( - -DLLVM_TOOLS_BINARY_DIR="${tools_bin}" - -DCLANG_TABLEGEN="${tools_bin}"/clang-tblgen - ) - fi - - # LLVM can have very high memory consumption while linking, - # exhausting the limit on 32-bit linker executable - use x86 && local -x LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory" - - # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 - use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" - cmake_src_configure - - multilib_is_native_abi && check_distribution_components -} - -multilib_src_compile() { - cmake_build distribution -} - -multilib_src_test() { - # respect TMPDIR! - local -x LIT_PRESERVES_TMP=1 - local test_targets=( check-clang ) - if multilib_native_use extra; then - test_targets+=( - check-clang-tools - check-clangd - ) - fi - cmake_build "${test_targets[@]}" -} - -src_install() { - MULTILIB_WRAPPED_HEADERS=( - /usr/include/clang/Config/config.h - ) - - multilib-minimal_src_install - - # Move runtime headers to /usr/lib/clang, where they belong - mv "${ED}"/usr/include/clangrt "${ED}"/usr/lib/clang || die - # move (remaining) wrapped headers back - if use extra; then - mv "${T}"/clang-tidy "${ED}"/usr/include/ || die - fi - mv "${ED}"/usr/include "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include || die - - # Apply CHOST and version suffix to clang tools - local clang_tools=( clang clang++ clang-cl clang-cpp ) - local abi i - - # cmake gives us: - # - clang-X - # - clang -> clang-X - # - clang++, clang-cl, clang-cpp -> clang - # we want to have: - # - clang-X - # - clang++-X, clang-cl-X, clang-cpp-X -> clang-X - # - clang, clang++, clang-cl, clang-cpp -> clang*-X - # also in CHOST variant - for i in "${clang_tools[@]:1}"; do - rm "${ED}/usr/lib/llvm/${LLVM_MAJOR}/bin/${i}" || die - dosym "clang-${LLVM_MAJOR}" "/usr/lib/llvm/${LLVM_MAJOR}/bin/${i}-${LLVM_MAJOR}" - dosym "${i}-${LLVM_MAJOR}" "/usr/lib/llvm/${LLVM_MAJOR}/bin/${i}" - done - - # now create target symlinks for all supported ABIs - for abi in $(get_all_abis); do - local abi_chost=$(get_abi_CHOST "${abi}") - for i in "${clang_tools[@]}"; do - dosym "${i}-${LLVM_MAJOR}" \ - "/usr/lib/llvm/${LLVM_MAJOR}/bin/${abi_chost}-${i}-${LLVM_MAJOR}" - dosym "${abi_chost}-${i}-${LLVM_MAJOR}" \ - "/usr/lib/llvm/${LLVM_MAJOR}/bin/${abi_chost}-${i}" - done - done -} - -multilib_src_install() { - DESTDIR=${D} cmake_build install-distribution - - # move headers to /usr/include for wrapping & ABI mismatch checks - # (also drop the version suffix from runtime headers) - rm -rf "${ED}"/usr/include || die - mv "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include "${ED}"/usr/include || die - mv "${ED}"/usr/lib/clang "${ED}"/usr/include/clangrt || die - if multilib_native_use extra; then - # don't wrap clang-tidy headers, the list is too long - # (they're fine for non-native ABI but enabling the targets is problematic) - mv "${ED}"/usr/include/clang-tidy "${T}/" || die - fi -} - -multilib_src_install_all() { - python_fix_shebang "${ED}" - if use static-analyzer; then - python_optimize "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/share/scan-view - fi - - docompress "/usr/lib/llvm/${LLVM_MAJOR}/share/man" - llvm_install_manpages - # match 'html' non-compression - use doc && docompress -x "/usr/share/doc/${PF}/tools-extra" - # +x for some reason; TODO: investigate - use static-analyzer && fperms a-x "/usr/lib/llvm/${LLVM_MAJOR}/share/man/man1/scan-build.1" -} - -pkg_postinst() { - if [[ -z ${ROOT} && -f ${EPREFIX}/usr/share/eselect/modules/compiler-shadow.eselect ]] ; then - eselect compiler-shadow update all - fi - - elog "You can find additional utility scripts in:" - elog " ${EROOT}/usr/lib/llvm/${LLVM_MAJOR}/share/clang" - if use extra; then - elog "Some of them are vim integration scripts (with instructions inside)." - elog "The run-clang-tidy.py script requires the following additional package:" - elog " dev-python/pyyaml" - fi -} - -pkg_postrm() { - if [[ -z ${ROOT} && -f ${EPREFIX}/usr/share/eselect/modules/compiler-shadow.eselect ]] ; then - eselect compiler-shadow clean all - fi -} diff --git a/sys-devel/clang/clang-20.0.0_pre20240801.ebuild b/sys-devel/clang/clang-20.0.0_pre20240801.ebuild deleted file mode 100644 index 857f7b1ed5a2..000000000000 --- a/sys-devel/clang/clang-20.0.0_pre20240801.ebuild +++ /dev/null @@ -1,471 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..13} ) - -inherit cmake llvm.org llvm-utils multilib multilib-minimal -inherit prefix python-single-r1 toolchain-funcs - -DESCRIPTION="C language family frontend for LLVM" -HOMEPAGE="https://llvm.org/" - -# MSVCSetupApi.h: MIT -# sorttable.js: MIT - -LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA MIT" -SLOT="${LLVM_MAJOR}/${LLVM_SOABI}" -IUSE="+debug doc +extra ieee-long-double +pie +static-analyzer test xml" -REQUIRED_USE="${PYTHON_REQUIRED_USE}" -RESTRICT="!test? ( test )" - -DEPEND=" - ~sys-devel/llvm-${PV}:${LLVM_MAJOR}=[debug=,${MULTILIB_USEDEP}] - static-analyzer? ( dev-lang/perl:* ) - xml? ( dev-libs/libxml2:2=[${MULTILIB_USEDEP}] ) -" - -RDEPEND=" - ${PYTHON_DEPS} - ${DEPEND} - >=sys-devel/clang-common-${PV} -" -BDEPEND=" - ${PYTHON_DEPS} - test? ( ~sys-devel/lld-${PV} ) - xml? ( virtual/pkgconfig ) -" -PDEPEND=" - ~sys-devel/clang-runtime-${PV} - sys-devel/clang-toolchain-symlinks:${LLVM_MAJOR} -" - -LLVM_COMPONENTS=( - clang clang-tools-extra cmake -) -LLVM_MANPAGES=1 -LLVM_TEST_COMPONENTS=( - llvm/utils -) -LLVM_USE_TARGETS=llvm -llvm.org_set_globals - -[[ -n ${LLVM_MANPAGE_DIST} ]] && BDEPEND+=" doc? ( " -BDEPEND+=" - $(python_gen_cond_dep ' - dev-python/myst-parser[${PYTHON_USEDEP}] - dev-python/sphinx[${PYTHON_USEDEP}] - ') -" -[[ -n ${LLVM_MANPAGE_DIST} ]] && BDEPEND+=" ) " - -# Multilib notes: -# 1. ABI_* flags control ABIs libclang* is built for only. -# 2. clang is always capable of compiling code for all ABIs for enabled -# target. However, you will need appropriate crt* files (installed -# e.g. by sys-devel/gcc and sys-libs/glibc). -# 3. ${CHOST}-clang wrappers are always installed for all ABIs included -# in the current profile (i.e. alike supported by sys-devel/gcc). -# -# Therefore: use sys-devel/clang[${MULTILIB_USEDEP}] only if you need -# multilib clang* libraries (not runtime, not wrappers). - -src_prepare() { - # create extra parent dir for relative CLANG_RESOURCE_DIR access - mkdir -p x/y || die - BUILD_DIR=${WORKDIR}/x/y/clang - - llvm.org_src_prepare - - # add Gentoo Portage Prefix for Darwin (see prefix-dirs.patch) - eprefixify \ - lib/Lex/InitHeaderSearch.cpp \ - lib/Driver/ToolChains/Darwin.cpp || die - - if ! use prefix-guest && [[ -n ${EPREFIX} ]]; then - sed -i "/LibDir.*Loader/s@return \"\/\"@return \"${EPREFIX}/\"@" lib/Driver/ToolChains/Linux.cpp || die - fi -} - -check_distribution_components() { - if [[ ${CMAKE_MAKEFILE_GENERATOR} == ninja ]]; then - local all_targets=() my_targets=() l - cd "${BUILD_DIR}" || die - - while read -r l; do - if [[ ${l} == install-*-stripped:* ]]; then - l=${l#install-} - l=${l%%-stripped*} - - case ${l} in - # meta-targets - clang-libraries|distribution) - continue - ;; - # tools - clang|clangd|clang-*) - ;; - # static libraries - clang*|findAllSymbols) - continue - ;; - # conditional to USE=doc - docs-clang-html|docs-clang-tools-html) - use doc || continue - ;; - esac - - all_targets+=( "${l}" ) - fi - done < <(${NINJA} -t targets all) - - while read -r l; do - my_targets+=( "${l}" ) - done < <(get_distribution_components $"\n") - - local add=() remove=() - for l in "${all_targets[@]}"; do - if ! has "${l}" "${my_targets[@]}"; then - add+=( "${l}" ) - fi - done - for l in "${my_targets[@]}"; do - if ! has "${l}" "${all_targets[@]}"; then - remove+=( "${l}" ) - fi - done - - if [[ ${#add[@]} -gt 0 || ${#remove[@]} -gt 0 ]]; then - eerror "get_distribution_components() is outdated!" - eerror " Add: ${add[*]}" - eerror "Remove: ${remove[*]}" - die "Update get_distribution_components()!" - fi - cd - >/dev/null || die - fi -} - -get_distribution_components() { - local sep=${1-;} - - local out=( - # common stuff - clang-cmake-exports - clang-headers - clang-resource-headers - libclang-headers - - aarch64-resource-headers - arm-common-resource-headers - arm-resource-headers - core-resource-headers - cuda-resource-headers - hexagon-resource-headers - hip-resource-headers - hlsl-resource-headers - mips-resource-headers - opencl-resource-headers - openmp-resource-headers - ppc-htm-resource-headers - ppc-resource-headers - riscv-resource-headers - systemz-resource-headers - utility-resource-headers - ve-resource-headers - webassembly-resource-headers - windows-resource-headers - x86-resource-headers - - # libs - clang-cpp - libclang - ) - - if multilib_is_native_abi; then - out+=( - # common stuff - bash-autocomplete - libclang-python-bindings - - # tools - amdgpu-arch - c-index-test - clang - clang-format - clang-installapi - clang-linker-wrapper - clang-nvlink-wrapper - clang-offload-bundler - clang-offload-packager - clang-refactor - clang-repl - clang-rename - clang-scan-deps - diagtool - hmaptool - nvptx-arch - - # needed for cross-compiling Clang - clang-tblgen - ) - - if use extra; then - out+=( - # extra tools - clang-apply-replacements - clang-change-namespace - clang-doc - clang-include-cleaner - clang-include-fixer - clang-move - clang-pseudo - clang-query - clang-reorder-fields - clang-tidy - clang-tidy-headers - clangd - find-all-symbols - modularize - pp-trace - ) - fi - - if llvm_are_manpages_built; then - out+=( docs-clang-man ) - use extra && out+=( docs-clang-tools-man ) - fi - - if use doc; then - out+=( docs-clang-html ) - use extra && out+=( docs-clang-tools-html ) - fi - - use static-analyzer && out+=( - clang-check - clang-extdef-mapping - scan-build - scan-build-py - scan-view - ) - fi - - printf "%s${sep}" "${out[@]}" -} - -multilib_src_configure() { - llvm_prepend_path "${LLVM_MAJOR}" - - local mycmakeargs=( - -DDEFAULT_SYSROOT=$(usex prefix-guest "" "${EPREFIX}") - -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}" - -DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man" - -DCLANG_CONFIG_FILE_SYSTEM_DIR="${EPREFIX}/etc/clang" - # relative to bindir - -DCLANG_RESOURCE_DIR="../../../../lib/clang/${LLVM_MAJOR}" - - -DBUILD_SHARED_LIBS=OFF - -DCLANG_LINK_CLANG_DYLIB=ON - -DLLVM_DISTRIBUTION_COMPONENTS=$(get_distribution_components) - -DCLANG_INCLUDE_TESTS=$(usex test) - - -DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}" - - # these are not propagated reliably, so redefine them - -DLLVM_ENABLE_EH=ON - -DLLVM_ENABLE_RTTI=ON - - # libgomp support fails to find headers without explicit -I - # furthermore, it provides only syntax checking - -DCLANG_DEFAULT_OPENMP_RUNTIME=libomp - - -DCLANG_DEFAULT_PIE_ON_LINUX=$(usex pie) - - -DCLANG_ENABLE_LIBXML2=$(usex xml) - -DCLANG_ENABLE_ARCMT=$(usex static-analyzer) - -DCLANG_ENABLE_STATIC_ANALYZER=$(usex static-analyzer) - # TODO: CLANG_ENABLE_HLSL? - - -DPython3_EXECUTABLE="${PYTHON}" - ) - - if ! use elibc_musl; then - mycmakeargs+=( - -DPPC_LINUX_DEFAULT_IEEELONGDOUBLE=$(usex ieee-long-double) - ) - fi - - use test && mycmakeargs+=( - -DLLVM_BUILD_TESTS=ON - -DLLVM_LIT_ARGS="$(get_lit_flags)" - ) - - if multilib_is_native_abi; then - local build_docs=OFF - if llvm_are_manpages_built; then - build_docs=ON - mycmakeargs+=( - -DLLVM_BUILD_DOCS=ON - -DLLVM_ENABLE_SPHINX=ON - -DCLANG_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/html" - -DSPHINX_WARNINGS_AS_ERRORS=OFF - ) - if use extra; then - mycmakeargs+=( - -DCLANG-TOOLS_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/tools-extra" - ) - fi - fi - mycmakeargs+=( - -DCLANG_INCLUDE_DOCS=${build_docs} - ) - fi - if multilib_native_use extra; then - mycmakeargs+=( - -DLLVM_EXTERNAL_CLANG_TOOLS_EXTRA_SOURCE_DIR="${WORKDIR}"/clang-tools-extra - -DCLANG_TOOLS_EXTRA_INCLUDE_DOCS=${build_docs} - ) - else - mycmakeargs+=( - -DLLVM_TOOL_CLANG_TOOLS_EXTRA_BUILD=OFF - ) - fi - - if [[ -n ${EPREFIX} ]]; then - mycmakeargs+=( - -DGCC_INSTALL_PREFIX="${EPREFIX}/usr" - ) - fi - - if tc-is-cross-compiler; then - has_version -b sys-devel/clang:${LLVM_MAJOR} || - die "sys-devel/clang:${LLVM_MAJOR} is required on the build host." - local tools_bin=${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/bin - mycmakeargs+=( - -DLLVM_TOOLS_BINARY_DIR="${tools_bin}" - -DCLANG_TABLEGEN="${tools_bin}"/clang-tblgen - ) - fi - - # LLVM can have very high memory consumption while linking, - # exhausting the limit on 32-bit linker executable - use x86 && local -x LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory" - - # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 - use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" - cmake_src_configure - - multilib_is_native_abi && check_distribution_components -} - -multilib_src_compile() { - cmake_build distribution -} - -multilib_src_test() { - # respect TMPDIR! - local -x LIT_PRESERVES_TMP=1 - local test_targets=( check-clang ) - if multilib_native_use extra; then - test_targets+=( - check-clang-tools - check-clangd - ) - fi - cmake_build "${test_targets[@]}" -} - -src_install() { - MULTILIB_WRAPPED_HEADERS=( - /usr/include/clang/Config/config.h - ) - - multilib-minimal_src_install - - # Move runtime headers to /usr/lib/clang, where they belong - mv "${ED}"/usr/include/clangrt "${ED}"/usr/lib/clang || die - # move (remaining) wrapped headers back - if use extra; then - mv "${T}"/clang-tidy "${ED}"/usr/include/ || die - fi - mv "${ED}"/usr/include "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include || die - - # Apply CHOST and version suffix to clang tools - local clang_tools=( clang clang++ clang-cl clang-cpp ) - local abi i - - # cmake gives us: - # - clang-X - # - clang -> clang-X - # - clang++, clang-cl, clang-cpp -> clang - # we want to have: - # - clang-X - # - clang++-X, clang-cl-X, clang-cpp-X -> clang-X - # - clang, clang++, clang-cl, clang-cpp -> clang*-X - # also in CHOST variant - for i in "${clang_tools[@]:1}"; do - rm "${ED}/usr/lib/llvm/${LLVM_MAJOR}/bin/${i}" || die - dosym "clang-${LLVM_MAJOR}" "/usr/lib/llvm/${LLVM_MAJOR}/bin/${i}-${LLVM_MAJOR}" - dosym "${i}-${LLVM_MAJOR}" "/usr/lib/llvm/${LLVM_MAJOR}/bin/${i}" - done - - # now create target symlinks for all supported ABIs - for abi in $(get_all_abis); do - local abi_chost=$(get_abi_CHOST "${abi}") - for i in "${clang_tools[@]}"; do - dosym "${i}-${LLVM_MAJOR}" \ - "/usr/lib/llvm/${LLVM_MAJOR}/bin/${abi_chost}-${i}-${LLVM_MAJOR}" - dosym "${abi_chost}-${i}-${LLVM_MAJOR}" \ - "/usr/lib/llvm/${LLVM_MAJOR}/bin/${abi_chost}-${i}" - done - done -} - -multilib_src_install() { - DESTDIR=${D} cmake_build install-distribution - - # move headers to /usr/include for wrapping & ABI mismatch checks - # (also drop the version suffix from runtime headers) - rm -rf "${ED}"/usr/include || die - mv "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include "${ED}"/usr/include || die - mv "${ED}"/usr/lib/clang "${ED}"/usr/include/clangrt || die - if multilib_native_use extra; then - # don't wrap clang-tidy headers, the list is too long - # (they're fine for non-native ABI but enabling the targets is problematic) - mv "${ED}"/usr/include/clang-tidy "${T}/" || die - fi -} - -multilib_src_install_all() { - python_fix_shebang "${ED}" - if use static-analyzer; then - python_optimize "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/share/scan-view - fi - - docompress "/usr/lib/llvm/${LLVM_MAJOR}/share/man" - llvm_install_manpages - # match 'html' non-compression - use doc && docompress -x "/usr/share/doc/${PF}/tools-extra" - # +x for some reason; TODO: investigate - use static-analyzer && fperms a-x "/usr/lib/llvm/${LLVM_MAJOR}/share/man/man1/scan-build.1" -} - -pkg_postinst() { - if [[ -z ${ROOT} && -f ${EPREFIX}/usr/share/eselect/modules/compiler-shadow.eselect ]] ; then - eselect compiler-shadow update all - fi - - elog "You can find additional utility scripts in:" - elog " ${EROOT}/usr/lib/llvm/${LLVM_MAJOR}/share/clang" - if use extra; then - elog "Some of them are vim integration scripts (with instructions inside)." - elog "The run-clang-tidy.py script requires the following additional package:" - elog " dev-python/pyyaml" - fi -} - -pkg_postrm() { - if [[ -z ${ROOT} && -f ${EPREFIX}/usr/share/eselect/modules/compiler-shadow.eselect ]] ; then - eselect compiler-shadow clean all - fi -} diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest index 822b66c66e3d..e6cbf269f1e8 100644 --- a/sys-devel/gcc/Manifest +++ b/sys-devel/gcc/Manifest @@ -46,12 +46,14 @@ DIST gcc-15-20240714.tar.xz 88493908 BLAKE2B d11436fcbdf3c106e3de706514d4a48a332 DIST gcc-15-20240721.tar.xz 88534600 BLAKE2B c057709e193fafa22cc753805e48cf092e0e3c29b656265b1f51e1e84d3d1b5bc07e0633b87e952199d3a885ce981bbecf07a9f00355c43aaad71c6f62250f54 SHA512 c689893f16ec88643854b53e3cc6e8ff49d44d7a4840f95b31aa5f82567c70a080651cc9e5cbaa19b7b099ea52687cfbd88fc1771e52f3c3cd1fe84048060955 DIST gcc-15-20240728.tar.xz 88642832 BLAKE2B 388c921b90ff71c0aa3313479bef9c39e53ba4a4b772ef21975c60451fe9beb7d49cb8ff9c3b14aace2976b528bf70e98c6af71c1cd9f6d6c8c8a4820159a6de SHA512 a8ae49eb8a831e0e3fd01b6933318a7c44002cc3cf8b3b157b39ea9a3db933b5feed183ead02181425540294c08d5e36a7bf1e012011fe1b9289f3cb03e75811 DIST gcc-15-20240804.tar.xz 89247584 BLAKE2B b49c828234a0b4cb35b0dcb7c2bfdc8d7c3d311f86f3db0acaefa81e57c3537d1ba9d32cd7fe2c7c53e2a019644fe2893aa9f69fa34c8c7af9053ba5c675ac26 SHA512 3db9bedd42fab2022532490acb7f3931976e500b7c4a3e93c226b68b7df0228d8489b80268273c9216c4bda12991bb07339c646982499761a39ba3fa54b45f29 +DIST gcc-15-20240811.tar.xz 89363444 BLAKE2B eaa29844fe0fb62f3772904a5e2598541dcc78959006400f7fca5663f0ee3b6452e4aa77d46e627182b827da0a4e0e57b659db7a2a23f63219cf75785b73b3c9 SHA512 a8e169ba90168a481ea865f340b6f165dc538022b0ac814f43b80fca33eb7772001f6dd22fcb8a3f056cfacd023a21581bec5da71626860fcbc858ad573d5c39 DIST gcc-15.0.0-musl-patches-2.tar.xz 3076 BLAKE2B 0073248fe4f7dd827980559017b5aa1fb5c4c46acc9ad5c410dc152fd1e44966d3066bf7152338573cb45b1c36027de5f0c519abd414d97a37bccef07f6a5281 SHA512 295f1a669020bbe2874e9b03afd46b5d083073b276fca3543f3767a2d74f35df81cf0a67abad50c200cf7a3af36ec98ff9977cb7d5c19f334af7d3bb1926a3de DIST gcc-15.0.0-patches-4.tar.xz 11440 BLAKE2B 8b7379f91ac14dd1e496de744d221cb0ba1802c14ce32cb90e6311ca7a60cbaf488a57060673e2e9d407eed6d3c5b092c1ba6da27036d35e0c78a7ac8a5f5ec4 SHA512 92e8895ec1c6054b46581867f3e49bd2d574043ae82ca441e2b48d9ed0e2dd5c58baa53ba605ce59a5c1d59473ac0d79c0287e5b47d06f0a661c655a19a4a5df DIST gcc-15.0.0-patches-5.tar.xz 11840 BLAKE2B 9af335f7e1795e600eae742ac32f5ff737f157aaa35902227ba29b28013c95bcf5b2b1345a21c433bc10f4cfbfc267a595b6ca90ec2723f7f24fccac3f7c0355 SHA512 8cc8ec574640470780711bb5f6163f382c23999152c229d86e1143e03275a3147bd1fc0cd9bf3642a2402333ec565d30b90a6e367284b78ccc580c6721aeac23 DIST gcc-15.0.0-patches-6.tar.xz 11588 BLAKE2B 7846d77859b297a892a23b995c9aa06410c484a8f6e11fa9c9692de0f1b0a03aa1f35c4b88f164623a600bf2012fff25567075203c57fdbcb26bbc95f94d1cf9 SHA512 837ed8b5f6901715862951726e85eea043aec192f854db23201326fd6bedb7552c95527d253736c0164153b75ec487b4644fd269f9f6815b4489416602ebfe78 DIST gcc-15.0.0-patches-7.tar.xz 12928 BLAKE2B 4f46a2c2fbdd714bebfce85bad8e80fa7d3939f83ddbc279f20f448bfe17c33c6fe94a21a82a5c9efae619ceaf50dc5ac339850373e05c6556cc65c72cef812c SHA512 c3e756cefd205c818856cb4c17d15194267c566d4758f2f4a2bf3ccb1cf00151286c10a7b2c36bede7a5f27d5a482f9489545078bcf45d55d28e3e67a694f6d6 DIST gcc-15.0.0-patches-8.tar.xz 12816 BLAKE2B 65ff806b649efd50f679a921fe3d71ae9a4cabf73a997e50a4923edd7305e1f89b5951e7a34452778697e7e12274e044640684bab45533ec5b6fe0d44057da4a SHA512 240a6cf1852ec24f3cc2281a467448d0a72dd497ee9f636f36d00b264be53f616efb3e9786aff201d38551f0b05e9abd8198fccb3b0a8af31de6743c96b2d9a8 +DIST gcc-15.0.0-patches-9.tar.xz 11976 BLAKE2B 736ceeaf473d9004087bfd686588744af1cee40fdadf89358f2ff7caff623de7bfc5c95863af9dd23d2e2bb80e94f9f4a8cbc389f954e1d63e9cac0e747a59bd SHA512 64d528c5d1c5dc45ba8ecb7f9ed5e8a0a7f8344535de11489402ee766595b2e9f4b7192bb0f96ce4c9318635893101d4f5699351fca4121c65708626bfa0867b DIST gcc-8.5.0-patches-4.tar.xz 18616 BLAKE2B 7594cbaea5daecf1a0b3d526c06aeba0a84c6da66aee2e105a51fda6be8d30a37ccc3814281b284a4582d892a1d556bca063551584edfc2525bed8ea5b6888e7 SHA512 1aa5742c361186637e7855f06feb1a4547e7d4d5de6e51f3d049e0ef3c19e2eff179465f52781739f59422035b7f8e4c0efa3844849f920f3c96acfdc37ca6a6 DIST gcc-8.5.0.tar.xz 63841008 BLAKE2B aa81a1a730fd7371360f6abed6ba78b5843fd18c58d5de5687acc320741b9e430e85df3535a1ef7a26051409be8d2f0945f503e5968480d919103123a99d4b12 SHA512 92f599680e6b7fbce88bcdda810f468777d541e5fddfbb287f7977d51093de2a5178bd0e6a08dfe37090ea10a0508a43ccd00220041abbbec33f1179bfc174d8 DIST gcc-9.5.0-patches-2.tar.xz 14324 BLAKE2B 1d3bf3e673108ad2fcdcb86daefb4603d1c9f6aa815e34d1591054d466b76d6f50cce124ab4760528c4951ea16eb00888a3e6485417f81ebf250548732df4a8e SHA512 a6d6f650aaf0bd193a17ac279649f0544a282cea295824384c59341c3000eac4b574b60e00dd427585d928f9768166abf85168b47772132790ad98854acacbbf @@ -91,6 +93,7 @@ EBUILD gcc-15.0.0_pre20240714.ebuild 1343 BLAKE2B 19a9d4f8770afaa4b96760f9524b62 EBUILD gcc-15.0.0_pre20240721.ebuild 1343 BLAKE2B f9942d0889ec9abb351bb2ef1665caf66106335961418f4b2b327c57e04e008e543c4f7a04cf82e50a30625eef9276775e89020e5c422a79efab0b06bdcc3454 SHA512 c23e2c833d5fcef9ff63139b7aa862512127d4f2e96a42ebaf6f9be7cdd69a44292f1c9b4ffae1afbb6d36bd96804e772eb16b62126f465bee72c45d605c3537 EBUILD gcc-15.0.0_pre20240728.ebuild 1343 BLAKE2B a0f114cef4cee11970132fd7aac303971fc47ba2674d31263f25a4dfdd6129c6389e7f326add637b53ce1d31239deae96880af523295d4d55a58f4545b437366 SHA512 4a87942342828e6643bc1c9beaad13243c8e4ef19ee4bb8a6612cfbf53d23d9688c539114d1527099173dbfad37d9ad601ab12ad08da9b2f440adc769f9228ac EBUILD gcc-15.0.0_pre20240804.ebuild 1343 BLAKE2B 483497c21a5ca1e2ae7c7e8aaf8646791fa9ac740fd2860c16e575ac33289f68f2ef6dab6c0ebbd783b2e662c4942115470de02b272fac2a434e702c56d8785c SHA512 0d004f454ec21a8642d7f2d2207992dc2385c622c2f797e63fe3e6acfd0b390444f482c96eb5cf12d3180540e02a96c2745d7913b033696ca6f03a874c1bb532 +EBUILD gcc-15.0.0_pre20240811.ebuild 1343 BLAKE2B 8d033e3cb958dccb3bb4575a425df8b06ab63091201860db4d4331d478c42fc9424e45b6ddf58786ae378c536be67b387a01b5234878016a87ffcc1bfad1ee41 SHA512 d4cc91295169abdbedf1c98e17c0e684b7176fd9f223af1009d535d624ce4427ed09f337c63882eae0d7ec8738831362f8e9c15a33c4aea3cdd28407629062f4 EBUILD gcc-15.0.9999.ebuild 1316 BLAKE2B c1c75602d7c6033c7a1083e57c28285780f20e8349a754d72ae1a306e978816b42be4234e3080c8b8ed1474845f7bc90014d920a9dc3d55c92a822db2739583b SHA512 7153a3ff4bca00aea9e1b61c972f549adc1e09adac36b02181cc53c381eb092471b07480348664140cbb2b01e91abe2605ae5d44f7aa854d972f3e2370c6f87f EBUILD gcc-8.5.0-r1.ebuild 533 BLAKE2B ef3368f7236352e8ddd5b56919cd2145794b0385f35e4efa50808aeafd98687eba5d32264a3fb2a34d85b5d913697e93af58eb03ce35b6b5ba45d78bb8f33d25 SHA512 528e4b7389f4053aa177b8405469963358c5d595fa257115fa94e5e26a54a6c3b1c15bb847bb97864dd387fd2681f16907aecf052fad9315dd91863ac419d10d EBUILD gcc-9.5.0.ebuild 1241 BLAKE2B bd30abe9c99e317edcf7ae6ce8626a4c27322deaaadd510f02d0f36422d892eed896cb0ede817c1ee5bd2f5b913f2c426ed2ebb5bb8c2d455a1bbb3531f49eed SHA512 905224e69370a065c1f6b72b568418a231fa47f76085291b4eb3bdab741a64d1e454b02064d2afb4a91c1d935c58e8d299485b33fcc4fef8db3531967f6fb457 diff --git a/sys-devel/gcc/gcc-15.0.0_pre20240811.ebuild b/sys-devel/gcc/gcc-15.0.0_pre20240811.ebuild new file mode 100644 index 000000000000..42d11e2113e4 --- /dev/null +++ b/sys-devel/gcc/gcc-15.0.0_pre20240811.ebuild @@ -0,0 +1,52 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="15.0.0" +PATCH_VER="9" +MUSL_VER="2" +MUSL_GCC_VER="15.0.0" +PYTHON_COMPAT=( python3_{10..12} ) + +if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=master +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply_user +} diff --git a/sys-devel/lld/Manifest b/sys-devel/lld/Manifest index 6083ae7a0f21..455fc757086a 100644 --- a/sys-devel/lld/Manifest +++ b/sys-devel/lld/Manifest @@ -1,5 +1,4 @@ DIST llvm-gentoo-patchset-16.0.6-r1.tar.xz 17780 BLAKE2B e7c97916df463ff6d3d6374290bad86b3f2a7189fd9da3c6c808cb84160f904f4de1dffa7e98b32d7cacf904beea2df74116384960b0619ff30b7125839fc950 SHA512 74f86aa11614dd86a4af0cba514e98006d6df8ff15effc0c3598c291c7c6139f9310dc2e3ee25e8a3fa960e8a51986a4c48412a8e7269064197102fd9bbeac7c -DIST llvm-project-130c135689ec12ab78c53645808524a8d28f7cae.tar.gz 217788932 BLAKE2B 9ba8ad82597780f24e750272f9439d1e8d464813a607efec4920a13473103975bc181506dcc15c76a6e4ca83622284b77a7903e36aff6145719529630121cf0b SHA512 d9c67155f462e53968ec448e325b35a80c0d207039dd7155568fa366aa1894bc8dfaa2d5c03a67320bdefb1934720a1d23bc4b972c9fae3ff09c7a79d885c53d DIST llvm-project-15.0.7.src.tar.xz 110936452 BLAKE2B f3d277e2029157329e5be78b78af36b0826a1dfd9a337992499bf701e33149665bfc47d5e14978e38f342559629a559f8b2ce328705ba34fdf6830f5ae9721a5 SHA512 4836d3603f32e8e54434cbfa8ef33d9d473ac5dc20ebf9c67132653c73f4524931abd1084655eaee5f20bcfcb91bcc4bbc5c4a0b603ad0c9029c556e14dc4c52 DIST llvm-project-15.0.7.src.tar.xz.sig 566 BLAKE2B 47dc8c82d86237b80c6d85f83a6c9a6e9e174cf8e7f367b071e0cd9481d7cd408e991337c5624e07f3f370f26387c814f212808575ed1c1b58404d3e3836b7df SHA512 fc6891b440dd1175eb8df3790590af8d36bc92301660f84744ae15123475aeb900a151e6a8e7998ded27ec4d86871903ad0b89cd61164943054c2e3bc8d8beb2 DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db365965f1c00bfea6c2d653b3996bd2acef8a2b37e37f6fc8a9d2b65711ad72657e0ef52c42f733053cf65051e7822f27396c30406d SHA512 89a67ebfbbc764cc456e8825ecfa90707741f8835b1b2adffae0b227ab1fe5ca9cce75b0efaffc9ca8431cae528dc54fd838867a56a2b645344d9e82d19ab1b7 @@ -8,8 +7,6 @@ DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e06541 DIST llvm-project-17.0.6.src.tar.xz.sig 438 BLAKE2B 186e75b6a0fbfe1e85408589c149e1800fcc47d685b74e4260018e05cd08bc793d1d1197c9c50e177eea941a3d0c65cb0c583ce6dae449099b920adf8a508ef7 SHA512 f78c55053a6450625f3e95f52c305110b4468a9854fec75831b65b8d6ceee3c9206ab9e63c4b5fda8be9bd344f72cfbdaae0520ed240abd505e08ebeaa25d340 DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffef86468169ba2f211a9733ec2d4cf30040f7f277ef00f048bb44dee9f97d7d762f0f241f19e5a2a7b0b49217d3821ddfc8c354f SHA512 25eeee9984c8b4d0fbc240df90f33cbb000d3b0414baff5c8982beafcc5e59e7ef18f6f85d95b3a5f60cb3d4cd4f877c80487b5768bc21bc833f107698ad93db DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b -DIST llvm-project-19.1.0-rc1.src.tar.xz 141259912 BLAKE2B e882ff54a96900b4948e572cf073c897df6b4ce159869a42c56a4c830187d83b8d9d9b3940dad22346f142f9674575191cc9d079312f0d9aa1105390c07f504f SHA512 9f43dbe8d5f1322f73fb1c638ce4fc7a8179c9ca33fdbfbb6d72632a3d6bf4bc4993f8f5ec827510af55f4f013fba8fe3d7d9e45f262eec16ecf9ab39296b4b8 -DIST llvm-project-19.1.0-rc1.src.tar.xz.sig 438 BLAKE2B cc1acbd33440bb14f78c19cc3061a5c0cb3d9dbcd6f0d1516fe118ac02c500ba4df129f870ddf3fe1a52519feab4b631866413fce9c726272d52c3865a9eea27 SHA512 a3361992b55be13aeff5d91bb90a15e3a2ab89e486328fa4d9abc9efa3925aee70bea48449b003ae1926909d389bf71afcf6dc56d800ed2e0e3dbc65da6e4e92 DIST llvm-project-19.1.0-rc2.src.tar.xz 141264388 BLAKE2B 690b4912d9e4a8019b7990934dd6486362337ccb303dca119c0e75aa1063ad452222be1ee965e43b160dfcea20e491a20c289344152666b618712a1d76dc4780 SHA512 508a401e8433b1ac9a399246eb1a3c18faed7c3d41d8c118e77cefbb64cc6d6e171bd41a3e5584f6c84df141ba6819f1a1cce75b5c1ef33e3d2ac239e662d07c DIST llvm-project-19.1.0-rc2.src.tar.xz.sig 438 BLAKE2B 1eaf10a1419ecf009c033a8f6ecb6eec86107d81621d5b4665c8d929b05f4845ce0c432017343d7b06f33e6ff6384df9e1d8fc7b9c6efe7f10ef69798891b7e5 SHA512 b46e9a1d40f891c5f3544d8cc6295900bff5dda9a4a526b8db55a42a37ae90deb216b316d2117984e82f4e918d15343e75b3b9e6d6c773866707c3398e032826 DIST llvm-project-fd7d7882e7fa5a38d4bfde426120d4663718beb4.tar.gz 218217769 BLAKE2B a6c2aa012c342e31527b7e9f85e8fea3549d52530d8f87cd699e094a0aa768d099f9fd2631161ff7f53b4a5011937ed6d1f52b8fa1d23aa34183be1f487d4277 SHA512 c4863fab1a3c03f7f9c42f3501d3a75cebb491343515d77d30b26e5cbd720fc3fd628052099d87ed638e8c424bcbe7a1d066ed857f73da6f243d3d5a76b0e6c5 @@ -17,9 +14,7 @@ EBUILD lld-15.0.7.ebuild 2269 BLAKE2B 322d5608e3acfb87bfb720646404ed405a3113c4fa EBUILD lld-16.0.6.ebuild 2324 BLAKE2B 9b849aea16a8188e4da4cfcf0c85fb3e997007e1287ec062aee182c7955c7bc78132e761c2611198c7207283fbe930fbee6bdc9a39b922d6d5387bedadaf1b76 SHA512 a7c3d4c1508e5435ba9f6250c6b2fd3157fb4f2c205a6888736f79fa739c59eec3e901927b53af81de3a3c6d4fa5d576be3eaa6ad45c60e5d952ed4ad9706c2f EBUILD lld-17.0.6.ebuild 2363 BLAKE2B 8ebe513b67f3fb8efd981b97c1f77fe5de2065c363c2b9e99b8836983539fe5637b231e8be2a87713d47b48a49bfde77471ad65fa5166b606df476eca6f94fc1 SHA512 fd63e8600e393ecd95a05a28c8ac0d71b12f5aedcf273f432bea1904165b874ee913afff4aab91c2049aa1eb95c239bca217b84150133b2060f95ea66ce1944e EBUILD lld-18.1.8.ebuild 2366 BLAKE2B ad9fa5a3af2791ba8f4d976a9f132d1546d75ea8a158c7612f84505e381ae057578abe715f8c3784654b4eda22e0865a2c2324bdef866ed5ae234a0fda034862 SHA512 5b91209cbee538f60357f6a8ff023c256307692ed81c18e87b714f9cf951a378fa999ca4a8a1ffbe0b32555e52683f18093972a05587168faa62d182d673826c -EBUILD lld-19.1.0_rc1.ebuild 2293 BLAKE2B 5825f0a471a50ec1d9e7775a82736f6369fa1e99904b30cf068f0092dce44d4e0c2e76fcb21d70b9ecb1756d19e8482a5ac940bdc25c5a1d58c9aee0c21b5d7b SHA512 86226e5f9aea8a87b022b2def7cef707fc7db0f1e026f4965ec64390708f7e2355c3e1ee991487bd0c6f9f17dc2f129a6b7a2b8abbf1e14fe48dd0e4cd73b1fa EBUILD lld-19.1.0_rc2.ebuild 2293 BLAKE2B 5825f0a471a50ec1d9e7775a82736f6369fa1e99904b30cf068f0092dce44d4e0c2e76fcb21d70b9ecb1756d19e8482a5ac940bdc25c5a1d58c9aee0c21b5d7b SHA512 86226e5f9aea8a87b022b2def7cef707fc7db0f1e026f4965ec64390708f7e2355c3e1ee991487bd0c6f9f17dc2f129a6b7a2b8abbf1e14fe48dd0e4cd73b1fa EBUILD lld-20.0.0.9999.ebuild 2293 BLAKE2B 5825f0a471a50ec1d9e7775a82736f6369fa1e99904b30cf068f0092dce44d4e0c2e76fcb21d70b9ecb1756d19e8482a5ac940bdc25c5a1d58c9aee0c21b5d7b SHA512 86226e5f9aea8a87b022b2def7cef707fc7db0f1e026f4965ec64390708f7e2355c3e1ee991487bd0c6f9f17dc2f129a6b7a2b8abbf1e14fe48dd0e4cd73b1fa -EBUILD lld-20.0.0_pre20240801.ebuild 2293 BLAKE2B 5825f0a471a50ec1d9e7775a82736f6369fa1e99904b30cf068f0092dce44d4e0c2e76fcb21d70b9ecb1756d19e8482a5ac940bdc25c5a1d58c9aee0c21b5d7b SHA512 86226e5f9aea8a87b022b2def7cef707fc7db0f1e026f4965ec64390708f7e2355c3e1ee991487bd0c6f9f17dc2f129a6b7a2b8abbf1e14fe48dd0e4cd73b1fa EBUILD lld-20.0.0_pre20240808.ebuild 2293 BLAKE2B 5825f0a471a50ec1d9e7775a82736f6369fa1e99904b30cf068f0092dce44d4e0c2e76fcb21d70b9ecb1756d19e8482a5ac940bdc25c5a1d58c9aee0c21b5d7b SHA512 86226e5f9aea8a87b022b2def7cef707fc7db0f1e026f4965ec64390708f7e2355c3e1ee991487bd0c6f9f17dc2f129a6b7a2b8abbf1e14fe48dd0e4cd73b1fa MISC metadata.xml 299 BLAKE2B 2feead2cd1b35b3a43335ddd7711f8181b52bc63ee7166608914260c67528add5251349063afbef4f8cf0ec09b2cd4c3ffdd90f2c14ed60bb69ebc03888f6333 SHA512 cd745c54ab18d25bdaff18582105072574103a36cfe7c175ef740f266d00e9fc6f44c332904d23b911c939cf5bdf52973b388923099d8dd5dfef3c283b5cb685 diff --git a/sys-devel/lld/lld-19.1.0_rc1.ebuild b/sys-devel/lld/lld-19.1.0_rc1.ebuild deleted file mode 100644 index 79558afa1abe..000000000000 --- a/sys-devel/lld/lld-19.1.0_rc1.ebuild +++ /dev/null @@ -1,93 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..13} ) -inherit cmake flag-o-matic llvm.org llvm-utils python-any-r1 toolchain-funcs - -DESCRIPTION="The LLVM linker (link editor)" -HOMEPAGE="https://llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" -SLOT="${LLVM_MAJOR}/${LLVM_SOABI}" -IUSE="+debug test zstd" -RESTRICT="!test? ( test )" - -DEPEND=" - ~sys-devel/llvm-${PV}[debug=,zstd=] - sys-libs/zlib:= - zstd? ( app-arch/zstd:= ) -" -RDEPEND=" - ${DEPEND} - !sys-devel/lld:0 -" -BDEPEND=" - sys-devel/llvm:${LLVM_MAJOR} - test? ( - $(python_gen_any_dep ">=dev-python/lit-${PV}[\${PYTHON_USEDEP}]") - ) -" -PDEPEND=" - >=sys-devel/lld-toolchain-symlinks-16-r2:${LLVM_MAJOR} -" - -LLVM_COMPONENTS=( lld cmake libunwind/include/mach-o ) -llvm.org_set_globals - -python_check_deps() { - python_has_version ">=dev-python/lit-${PV}[${PYTHON_USEDEP}]" -} - -pkg_setup() { - use test && python-any-r1_pkg_setup -} - -src_unpack() { - llvm.org_src_unpack - - # Directory ${WORKDIR}/llvm does not exist with USE="-test", - # but LLVM_MAIN_SRC_DIR="${WORKDIR}/llvm" is set below, - # and ${LLVM_MAIN_SRC_DIR}/../libunwind/include is used by build system - # (lld/MachO/CMakeLists.txt) and is expected to be resolvable - # to existent directory ${WORKDIR}/libunwind/include. - mkdir -p "${WORKDIR}/llvm" || die -} - -src_configure() { - llvm_prepend_path "${LLVM_MAJOR}" - - # ODR violations (https://github.com/llvm/llvm-project/issues/83529, bug #922353) - filter-lto - - # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 - use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" - - use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152 - - local mycmakeargs=( - -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}" - -DBUILD_SHARED_LIBS=ON - -DLLVM_INCLUDE_TESTS=$(usex test) - -DLLVM_ENABLE_ZLIB=FORCE_ON - -DLLVM_ENABLE_ZSTD=$(usex zstd FORCE_ON OFF) - ) - - use test && mycmakeargs+=( - -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" - -DLLVM_LIT_ARGS="$(get_lit_flags)" - -DPython3_EXECUTABLE="${PYTHON}" - ) - - tc-is-cross-compiler && mycmakeargs+=( - -DLLVM_TABLEGEN_EXE="${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-tblgen" - ) - - cmake_src_configure -} - -src_test() { - local -x LIT_PRESERVES_TMP=1 - cmake_build check-lld -} diff --git a/sys-devel/lld/lld-20.0.0_pre20240801.ebuild b/sys-devel/lld/lld-20.0.0_pre20240801.ebuild deleted file mode 100644 index 79558afa1abe..000000000000 --- a/sys-devel/lld/lld-20.0.0_pre20240801.ebuild +++ /dev/null @@ -1,93 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..13} ) -inherit cmake flag-o-matic llvm.org llvm-utils python-any-r1 toolchain-funcs - -DESCRIPTION="The LLVM linker (link editor)" -HOMEPAGE="https://llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" -SLOT="${LLVM_MAJOR}/${LLVM_SOABI}" -IUSE="+debug test zstd" -RESTRICT="!test? ( test )" - -DEPEND=" - ~sys-devel/llvm-${PV}[debug=,zstd=] - sys-libs/zlib:= - zstd? ( app-arch/zstd:= ) -" -RDEPEND=" - ${DEPEND} - !sys-devel/lld:0 -" -BDEPEND=" - sys-devel/llvm:${LLVM_MAJOR} - test? ( - $(python_gen_any_dep ">=dev-python/lit-${PV}[\${PYTHON_USEDEP}]") - ) -" -PDEPEND=" - >=sys-devel/lld-toolchain-symlinks-16-r2:${LLVM_MAJOR} -" - -LLVM_COMPONENTS=( lld cmake libunwind/include/mach-o ) -llvm.org_set_globals - -python_check_deps() { - python_has_version ">=dev-python/lit-${PV}[${PYTHON_USEDEP}]" -} - -pkg_setup() { - use test && python-any-r1_pkg_setup -} - -src_unpack() { - llvm.org_src_unpack - - # Directory ${WORKDIR}/llvm does not exist with USE="-test", - # but LLVM_MAIN_SRC_DIR="${WORKDIR}/llvm" is set below, - # and ${LLVM_MAIN_SRC_DIR}/../libunwind/include is used by build system - # (lld/MachO/CMakeLists.txt) and is expected to be resolvable - # to existent directory ${WORKDIR}/libunwind/include. - mkdir -p "${WORKDIR}/llvm" || die -} - -src_configure() { - llvm_prepend_path "${LLVM_MAJOR}" - - # ODR violations (https://github.com/llvm/llvm-project/issues/83529, bug #922353) - filter-lto - - # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 - use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" - - use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152 - - local mycmakeargs=( - -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}" - -DBUILD_SHARED_LIBS=ON - -DLLVM_INCLUDE_TESTS=$(usex test) - -DLLVM_ENABLE_ZLIB=FORCE_ON - -DLLVM_ENABLE_ZSTD=$(usex zstd FORCE_ON OFF) - ) - - use test && mycmakeargs+=( - -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" - -DLLVM_LIT_ARGS="$(get_lit_flags)" - -DPython3_EXECUTABLE="${PYTHON}" - ) - - tc-is-cross-compiler && mycmakeargs+=( - -DLLVM_TABLEGEN_EXE="${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-tblgen" - ) - - cmake_src_configure -} - -src_test() { - local -x LIT_PRESERVES_TMP=1 - cmake_build check-lld -} diff --git a/sys-devel/llvm-common/Manifest b/sys-devel/llvm-common/Manifest index 4053cdfd9373..10d33783ebb8 100644 --- a/sys-devel/llvm-common/Manifest +++ b/sys-devel/llvm-common/Manifest @@ -1,4 +1,3 @@ -DIST llvm-project-130c135689ec12ab78c53645808524a8d28f7cae.tar.gz 217788932 BLAKE2B 9ba8ad82597780f24e750272f9439d1e8d464813a607efec4920a13473103975bc181506dcc15c76a6e4ca83622284b77a7903e36aff6145719529630121cf0b SHA512 d9c67155f462e53968ec448e325b35a80c0d207039dd7155568fa366aa1894bc8dfaa2d5c03a67320bdefb1934720a1d23bc4b972c9fae3ff09c7a79d885c53d DIST llvm-project-15.0.7.src.tar.xz 110936452 BLAKE2B f3d277e2029157329e5be78b78af36b0826a1dfd9a337992499bf701e33149665bfc47d5e14978e38f342559629a559f8b2ce328705ba34fdf6830f5ae9721a5 SHA512 4836d3603f32e8e54434cbfa8ef33d9d473ac5dc20ebf9c67132653c73f4524931abd1084655eaee5f20bcfcb91bcc4bbc5c4a0b603ad0c9029c556e14dc4c52 DIST llvm-project-15.0.7.src.tar.xz.sig 566 BLAKE2B 47dc8c82d86237b80c6d85f83a6c9a6e9e174cf8e7f367b071e0cd9481d7cd408e991337c5624e07f3f370f26387c814f212808575ed1c1b58404d3e3836b7df SHA512 fc6891b440dd1175eb8df3790590af8d36bc92301660f84744ae15123475aeb900a151e6a8e7998ded27ec4d86871903ad0b89cd61164943054c2e3bc8d8beb2 DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db365965f1c00bfea6c2d653b3996bd2acef8a2b37e37f6fc8a9d2b65711ad72657e0ef52c42f733053cf65051e7822f27396c30406d SHA512 89a67ebfbbc764cc456e8825ecfa90707741f8835b1b2adffae0b227ab1fe5ca9cce75b0efaffc9ca8431cae528dc54fd838867a56a2b645344d9e82d19ab1b7 @@ -7,8 +6,6 @@ DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e06541 DIST llvm-project-17.0.6.src.tar.xz.sig 438 BLAKE2B 186e75b6a0fbfe1e85408589c149e1800fcc47d685b74e4260018e05cd08bc793d1d1197c9c50e177eea941a3d0c65cb0c583ce6dae449099b920adf8a508ef7 SHA512 f78c55053a6450625f3e95f52c305110b4468a9854fec75831b65b8d6ceee3c9206ab9e63c4b5fda8be9bd344f72cfbdaae0520ed240abd505e08ebeaa25d340 DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffef86468169ba2f211a9733ec2d4cf30040f7f277ef00f048bb44dee9f97d7d762f0f241f19e5a2a7b0b49217d3821ddfc8c354f SHA512 25eeee9984c8b4d0fbc240df90f33cbb000d3b0414baff5c8982beafcc5e59e7ef18f6f85d95b3a5f60cb3d4cd4f877c80487b5768bc21bc833f107698ad93db DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b -DIST llvm-project-19.1.0-rc1.src.tar.xz 141259912 BLAKE2B e882ff54a96900b4948e572cf073c897df6b4ce159869a42c56a4c830187d83b8d9d9b3940dad22346f142f9674575191cc9d079312f0d9aa1105390c07f504f SHA512 9f43dbe8d5f1322f73fb1c638ce4fc7a8179c9ca33fdbfbb6d72632a3d6bf4bc4993f8f5ec827510af55f4f013fba8fe3d7d9e45f262eec16ecf9ab39296b4b8 -DIST llvm-project-19.1.0-rc1.src.tar.xz.sig 438 BLAKE2B cc1acbd33440bb14f78c19cc3061a5c0cb3d9dbcd6f0d1516fe118ac02c500ba4df129f870ddf3fe1a52519feab4b631866413fce9c726272d52c3865a9eea27 SHA512 a3361992b55be13aeff5d91bb90a15e3a2ab89e486328fa4d9abc9efa3925aee70bea48449b003ae1926909d389bf71afcf6dc56d800ed2e0e3dbc65da6e4e92 DIST llvm-project-19.1.0-rc2.src.tar.xz 141264388 BLAKE2B 690b4912d9e4a8019b7990934dd6486362337ccb303dca119c0e75aa1063ad452222be1ee965e43b160dfcea20e491a20c289344152666b618712a1d76dc4780 SHA512 508a401e8433b1ac9a399246eb1a3c18faed7c3d41d8c118e77cefbb64cc6d6e171bd41a3e5584f6c84df141ba6819f1a1cce75b5c1ef33e3d2ac239e662d07c DIST llvm-project-19.1.0-rc2.src.tar.xz.sig 438 BLAKE2B 1eaf10a1419ecf009c033a8f6ecb6eec86107d81621d5b4665c8d929b05f4845ce0c432017343d7b06f33e6ff6384df9e1d8fc7b9c6efe7f10ef69798891b7e5 SHA512 b46e9a1d40f891c5f3544d8cc6295900bff5dda9a4a526b8db55a42a37ae90deb216b316d2117984e82f4e918d15343e75b3b9e6d6c773866707c3398e032826 DIST llvm-project-fd7d7882e7fa5a38d4bfde426120d4663718beb4.tar.gz 218217769 BLAKE2B a6c2aa012c342e31527b7e9f85e8fea3549d52530d8f87cd699e094a0aa768d099f9fd2631161ff7f53b4a5011937ed6d1f52b8fa1d23aa34183be1f487d4277 SHA512 c4863fab1a3c03f7f9c42f3501d3a75cebb491343515d77d30b26e5cbd720fc3fd628052099d87ed638e8c424bcbe7a1d066ed857f73da6f243d3d5a76b0e6c5 @@ -16,9 +13,7 @@ EBUILD llvm-common-15.0.7.ebuild 1014 BLAKE2B da3b7ec6cd3c1e57758312fb9ea25e6933 EBUILD llvm-common-16.0.6.ebuild 1034 BLAKE2B 1e0a0b6cbb746a7eb45e3f553bc949b69314afc3d913cda004d395e7b322c17f976496eed074cf08718dc2d9efa7f3db81dec4f38394fe6ea2b77793b74f4371 SHA512 8fbb211a6b05d24409642fcb00a4fb798499721cc30c4c5fa2df120ed74d9da7286916cf3788ea26f2cb21e334876417b05a4336fedff99e95d1ebe358f8b311 EBUILD llvm-common-17.0.6.ebuild 1034 BLAKE2B 1e0a0b6cbb746a7eb45e3f553bc949b69314afc3d913cda004d395e7b322c17f976496eed074cf08718dc2d9efa7f3db81dec4f38394fe6ea2b77793b74f4371 SHA512 8fbb211a6b05d24409642fcb00a4fb798499721cc30c4c5fa2df120ed74d9da7286916cf3788ea26f2cb21e334876417b05a4336fedff99e95d1ebe358f8b311 EBUILD llvm-common-18.1.8.ebuild 1040 BLAKE2B e48cc3f1b8cb1672859d620d637023ddce71a4a37827108ba2fd9a8eb66660175069e8d77c84549ec7bf843ecfe1ce3e2c8660c439c7acb08601a36fe72b4218 SHA512 626adbcb09088b70167deb3cc956b41cd1deb0321ff7b937faa6ab4d0a9a1ee219e9ed17a4b4233a47578fad528227b5e3d5e93d88db9610463947317e896e26 -EBUILD llvm-common-19.1.0_rc1.ebuild 925 BLAKE2B 18510f8adb0e892eb63bdbf8a6154f56e23ed026ee6f0bf05bbccbafea843beb228bf57e14b01525fb0b067fdfa897faadbfd61179844a7c397c7f1d3b6fca64 SHA512 0cff75fcbabf14ba1526201d65b79486aefaf559accf5bd479a3643c4351ac997f6d55b2323328fabc4009e887e1cfe70681df5593c62a5b5bbfffb8312ea22d EBUILD llvm-common-19.1.0_rc2.ebuild 925 BLAKE2B 18510f8adb0e892eb63bdbf8a6154f56e23ed026ee6f0bf05bbccbafea843beb228bf57e14b01525fb0b067fdfa897faadbfd61179844a7c397c7f1d3b6fca64 SHA512 0cff75fcbabf14ba1526201d65b79486aefaf559accf5bd479a3643c4351ac997f6d55b2323328fabc4009e887e1cfe70681df5593c62a5b5bbfffb8312ea22d EBUILD llvm-common-20.0.0.9999.ebuild 925 BLAKE2B 18510f8adb0e892eb63bdbf8a6154f56e23ed026ee6f0bf05bbccbafea843beb228bf57e14b01525fb0b067fdfa897faadbfd61179844a7c397c7f1d3b6fca64 SHA512 0cff75fcbabf14ba1526201d65b79486aefaf559accf5bd479a3643c4351ac997f6d55b2323328fabc4009e887e1cfe70681df5593c62a5b5bbfffb8312ea22d -EBUILD llvm-common-20.0.0_pre20240801.ebuild 925 BLAKE2B 18510f8adb0e892eb63bdbf8a6154f56e23ed026ee6f0bf05bbccbafea843beb228bf57e14b01525fb0b067fdfa897faadbfd61179844a7c397c7f1d3b6fca64 SHA512 0cff75fcbabf14ba1526201d65b79486aefaf559accf5bd479a3643c4351ac997f6d55b2323328fabc4009e887e1cfe70681df5593c62a5b5bbfffb8312ea22d EBUILD llvm-common-20.0.0_pre20240808.ebuild 925 BLAKE2B 18510f8adb0e892eb63bdbf8a6154f56e23ed026ee6f0bf05bbccbafea843beb228bf57e14b01525fb0b067fdfa897faadbfd61179844a7c397c7f1d3b6fca64 SHA512 0cff75fcbabf14ba1526201d65b79486aefaf559accf5bd479a3643c4351ac997f6d55b2323328fabc4009e887e1cfe70681df5593c62a5b5bbfffb8312ea22d MISC metadata.xml 299 BLAKE2B 2feead2cd1b35b3a43335ddd7711f8181b52bc63ee7166608914260c67528add5251349063afbef4f8cf0ec09b2cd4c3ffdd90f2c14ed60bb69ebc03888f6333 SHA512 cd745c54ab18d25bdaff18582105072574103a36cfe7c175ef740f266d00e9fc6f44c332904d23b911c939cf5bdf52973b388923099d8dd5dfef3c283b5cb685 diff --git a/sys-devel/llvm-common/llvm-common-19.1.0_rc1.ebuild b/sys-devel/llvm-common/llvm-common-19.1.0_rc1.ebuild deleted file mode 100644 index 2d8f35a84179..000000000000 --- a/sys-devel/llvm-common/llvm-common-19.1.0_rc1.ebuild +++ /dev/null @@ -1,53 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit elisp-common llvm.org - -DESCRIPTION="Common files shared between multiple slots of LLVM" -HOMEPAGE="https://llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" -SLOT="0" -IUSE="emacs" - -RDEPEND=" - !sys-devel/llvm:0 -" -BDEPEND=" - emacs? ( >=app-editors/emacs-23.1:* ) -" - -LLVM_COMPONENTS=( llvm/utils ) -llvm.org_set_globals - -SITEFILE="50llvm-gentoo.el" -BYTECOMPFLAGS="-L emacs" - -src_compile() { - default - - use emacs && elisp-compile emacs/*.el -} - -src_install() { - insinto /usr/share/vim/vimfiles - doins -r vim/*/ - # some users may find it useful - newdoc vim/README README.vim - dodoc vim/vimrc - - if use emacs ; then - elisp-install llvm emacs/*.{el,elc} - elisp-make-site-file "${SITEFILE}" llvm - fi -} - -pkg_postinst() { - use emacs && elisp-site-regen -} - -pkg_postrm() { - use emacs && elisp-site-regen -} diff --git a/sys-devel/llvm-common/llvm-common-20.0.0_pre20240801.ebuild b/sys-devel/llvm-common/llvm-common-20.0.0_pre20240801.ebuild deleted file mode 100644 index 2d8f35a84179..000000000000 --- a/sys-devel/llvm-common/llvm-common-20.0.0_pre20240801.ebuild +++ /dev/null @@ -1,53 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit elisp-common llvm.org - -DESCRIPTION="Common files shared between multiple slots of LLVM" -HOMEPAGE="https://llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" -SLOT="0" -IUSE="emacs" - -RDEPEND=" - !sys-devel/llvm:0 -" -BDEPEND=" - emacs? ( >=app-editors/emacs-23.1:* ) -" - -LLVM_COMPONENTS=( llvm/utils ) -llvm.org_set_globals - -SITEFILE="50llvm-gentoo.el" -BYTECOMPFLAGS="-L emacs" - -src_compile() { - default - - use emacs && elisp-compile emacs/*.el -} - -src_install() { - insinto /usr/share/vim/vimfiles - doins -r vim/*/ - # some users may find it useful - newdoc vim/README README.vim - dodoc vim/vimrc - - if use emacs ; then - elisp-install llvm emacs/*.{el,elc} - elisp-make-site-file "${SITEFILE}" llvm - fi -} - -pkg_postinst() { - use emacs && elisp-site-regen -} - -pkg_postrm() { - use emacs && elisp-site-regen -} diff --git a/sys-devel/llvm/Manifest b/sys-devel/llvm/Manifest index dba9a58dd9de..cb1a5c25ed5f 100644 --- a/sys-devel/llvm/Manifest +++ b/sys-devel/llvm/Manifest @@ -6,11 +6,8 @@ DIST llvm-gentoo-patchset-15.0.7-r3.tar.xz 24268 BLAKE2B 6531ae385ecea87bc26dba8 DIST llvm-gentoo-patchset-16.0.6.tar.xz 17340 BLAKE2B 37cdf4b38367b4256d4f7a25d1b4f41758e5f81be8e20a1c94a10d6c5e36642e9672121b455e73a0bac2eb40467ef2db4b43789b2912a6790593d97b8b5c27e3 SHA512 2c02b9d8a4c5af9fddcd26c95dc66fffae32cb5b7f85c65a1aa4ed00dd8cd5b01cc1975a711aee63c0b8b11e9dc20f2bc05ea753904eb516892b820f02aff825 DIST llvm-gentoo-patchset-17.0.6-r2.tar.xz 3664 BLAKE2B b3d61090bec41469027115f1a7b9c51ff2cd720a5363c755da7c87c120e4c85b5a2b4d65b95e418f15d947e580824d267a5ee86336f2d9272e58ec24fa2acaf7 SHA512 4be3d2fefce3f5b6b8f64632ff47a53d4de8a20b276e538527ba01a1a663c2846e1eba28fdd70364e583884618d94ee774791b1ca03fdda1fef8110b664e506c DIST llvm-gentoo-patchset-17.0.6.tar.xz 1792 BLAKE2B 21b34b436333c0b37522d4340cccc84a572701f6e267cf7c6adfa9be419913f5a6c9ee40a6be5c62d12fbd868912801d30381573c4459c05676e05785cccaefe SHA512 2d90b5e7fcbb950249ef7133fac1ed3dcb758a4d92732119049526cea0b291bd4e9738c4c0d806d70e7d769e1906f8ef3930066c206c00b6ec7d3509ed0fed19 -DIST llvm-gentoo-patchset-18.1.8-r2.tar.xz 12316 BLAKE2B 25736f6f3417e855924c6eda2ee25f362f406793a37239954e16c8cd11a1fe9f387b524acf95fc04cd84d68a9926cd693efd2bbdfea41ad0d03fd41a559066f5 SHA512 7d62b0d4315e1c73b83e9a33a6f3df02ae422115ae71cb24628436ab1641def3a131907be3f1f5a364ed5818436940c72250beeedb7cb3fb4cbe9365361e9ca0 DIST llvm-gentoo-patchset-18.1.8-r4.tar.xz 15912 BLAKE2B 7300128244aafe42fcf5863e3aad2beb0c96c3df527e6d35fe571369bad520ba4aa397a329287da17eb33dca902057da5cd5193ec560ea7f5767ba2d00a45818 SHA512 b32633db387d4adb3bb2d067f824ae4e8e8a24a25aaa4888520f6e61a4bb1f8f70ad5f44057fbc0892c6f93c803e360612b0fc02c4ec068470b546a55f246cba DIST llvm-gentoo-patchset-18.1.8.tar.xz 7444 BLAKE2B ed41325f7e2efc257c03b3500f9ba49a29333f617ff9914705f9df660bbc1e1b3aafada6f2a68a316d2ee47cf628a35f3495f74c9f0ca00c120079e8e93bd4db SHA512 a6bb4313d2635d38f36a3fdb343b2b7f117129ec62f92ead0bbf7010ae73055cb757958975cd9d1677f2c4b1554819a16a918bef9e9e0d982f8025ce49b9a8ef -DIST llvm-gentoo-patchset-19.1.0-rc1.tar.xz 3396 BLAKE2B 5715b1689d9806d499e9b0facb07894b0dfebe19b9c41f3ddfbbcc99cf20fc632effed48acedfe4d4184867c4d4d531f491b8495cd81c60318e9e17ed0547c42 SHA512 a1a0c1b7908898ef3921ab145265a51f80359a06305abf1ecfd2288ceb93d80b63524a6519333120f9c5c8b6a7fdc68f961e819e21dbdca1c47b21f742fd6362 -DIST llvm-project-130c135689ec12ab78c53645808524a8d28f7cae.tar.gz 217788932 BLAKE2B 9ba8ad82597780f24e750272f9439d1e8d464813a607efec4920a13473103975bc181506dcc15c76a6e4ca83622284b77a7903e36aff6145719529630121cf0b SHA512 d9c67155f462e53968ec448e325b35a80c0d207039dd7155568fa366aa1894bc8dfaa2d5c03a67320bdefb1934720a1d23bc4b972c9fae3ff09c7a79d885c53d DIST llvm-project-15.0.7.src.tar.xz 110936452 BLAKE2B f3d277e2029157329e5be78b78af36b0826a1dfd9a337992499bf701e33149665bfc47d5e14978e38f342559629a559f8b2ce328705ba34fdf6830f5ae9721a5 SHA512 4836d3603f32e8e54434cbfa8ef33d9d473ac5dc20ebf9c67132653c73f4524931abd1084655eaee5f20bcfcb91bcc4bbc5c4a0b603ad0c9029c556e14dc4c52 DIST llvm-project-15.0.7.src.tar.xz.sig 566 BLAKE2B 47dc8c82d86237b80c6d85f83a6c9a6e9e174cf8e7f367b071e0cd9481d7cd408e991337c5624e07f3f370f26387c814f212808575ed1c1b58404d3e3836b7df SHA512 fc6891b440dd1175eb8df3790590af8d36bc92301660f84744ae15123475aeb900a151e6a8e7998ded27ec4d86871903ad0b89cd61164943054c2e3bc8d8beb2 DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db365965f1c00bfea6c2d653b3996bd2acef8a2b37e37f6fc8a9d2b65711ad72657e0ef52c42f733053cf65051e7822f27396c30406d SHA512 89a67ebfbbc764cc456e8825ecfa90707741f8835b1b2adffae0b227ab1fe5ca9cce75b0efaffc9ca8431cae528dc54fd838867a56a2b645344d9e82d19ab1b7 @@ -19,8 +16,6 @@ DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e06541 DIST llvm-project-17.0.6.src.tar.xz.sig 438 BLAKE2B 186e75b6a0fbfe1e85408589c149e1800fcc47d685b74e4260018e05cd08bc793d1d1197c9c50e177eea941a3d0c65cb0c583ce6dae449099b920adf8a508ef7 SHA512 f78c55053a6450625f3e95f52c305110b4468a9854fec75831b65b8d6ceee3c9206ab9e63c4b5fda8be9bd344f72cfbdaae0520ed240abd505e08ebeaa25d340 DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffef86468169ba2f211a9733ec2d4cf30040f7f277ef00f048bb44dee9f97d7d762f0f241f19e5a2a7b0b49217d3821ddfc8c354f SHA512 25eeee9984c8b4d0fbc240df90f33cbb000d3b0414baff5c8982beafcc5e59e7ef18f6f85d95b3a5f60cb3d4cd4f877c80487b5768bc21bc833f107698ad93db DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b -DIST llvm-project-19.1.0-rc1.src.tar.xz 141259912 BLAKE2B e882ff54a96900b4948e572cf073c897df6b4ce159869a42c56a4c830187d83b8d9d9b3940dad22346f142f9674575191cc9d079312f0d9aa1105390c07f504f SHA512 9f43dbe8d5f1322f73fb1c638ce4fc7a8179c9ca33fdbfbb6d72632a3d6bf4bc4993f8f5ec827510af55f4f013fba8fe3d7d9e45f262eec16ecf9ab39296b4b8 -DIST llvm-project-19.1.0-rc1.src.tar.xz.sig 438 BLAKE2B cc1acbd33440bb14f78c19cc3061a5c0cb3d9dbcd6f0d1516fe118ac02c500ba4df129f870ddf3fe1a52519feab4b631866413fce9c726272d52c3865a9eea27 SHA512 a3361992b55be13aeff5d91bb90a15e3a2ab89e486328fa4d9abc9efa3925aee70bea48449b003ae1926909d389bf71afcf6dc56d800ed2e0e3dbc65da6e4e92 DIST llvm-project-19.1.0-rc2.src.tar.xz 141264388 BLAKE2B 690b4912d9e4a8019b7990934dd6486362337ccb303dca119c0e75aa1063ad452222be1ee965e43b160dfcea20e491a20c289344152666b618712a1d76dc4780 SHA512 508a401e8433b1ac9a399246eb1a3c18faed7c3d41d8c118e77cefbb64cc6d6e171bd41a3e5584f6c84df141ba6819f1a1cce75b5c1ef33e3d2ac239e662d07c DIST llvm-project-19.1.0-rc2.src.tar.xz.sig 438 BLAKE2B 1eaf10a1419ecf009c033a8f6ecb6eec86107d81621d5b4665c8d929b05f4845ce0c432017343d7b06f33e6ff6384df9e1d8fc7b9c6efe7f10ef69798891b7e5 SHA512 b46e9a1d40f891c5f3544d8cc6295900bff5dda9a4a526b8db55a42a37ae90deb216b316d2117984e82f4e918d15343e75b3b9e6d6c773866707c3398e032826 DIST llvm-project-fd7d7882e7fa5a38d4bfde426120d4663718beb4.tar.gz 218217769 BLAKE2B a6c2aa012c342e31527b7e9f85e8fea3549d52530d8f87cd699e094a0aa768d099f9fd2631161ff7f53b4a5011937ed6d1f52b8fa1d23aa34183be1f487d4277 SHA512 c4863fab1a3c03f7f9c42f3501d3a75cebb491343515d77d30b26e5cbd720fc3fd628052099d87ed638e8c424bcbe7a1d066ed857f73da6f243d3d5a76b0e6c5 @@ -29,11 +24,8 @@ EBUILD llvm-16.0.6.ebuild 12822 BLAKE2B fe0a8bca0506827f09ea9edc18e8574443af6445 EBUILD llvm-17.0.6-r2.ebuild 13303 BLAKE2B 292bff5aa3489c685c2a89ba55a6e4d0c06123cfcf6986c934494b1bc28a93f8768f8cac04f86eca44595167b6ce8b0c84548db45c4e810bdbbfb3f42660048a SHA512 2a7c8fb5a691acc9293c7bd39b2c7e0354420556ae7d9a02df35e550f2668063d690e9f8453da22f76cfe1e39132ba4af8e95112f4de8e8486521d8c5e81dfd6 EBUILD llvm-17.0.6.ebuild 13293 BLAKE2B 50e4212c63f1561f4fc8397a831f83bd3ea370349fa3b6239dfe2f9212757f6e8d5bb1921b8714680fe94d0f02ca523d289447b1396124aa94f91b539aabb17a SHA512 5b2b1d2293cf00d0c547a06111a0af706b2cad1f7cb5f2cc421f54a129c165560adbba4342d9bea486d5b2474a1eed066f1ae955a89133cd94b61a62313980bb EBUILD llvm-18.1.8-r1.ebuild 13372 BLAKE2B cb78f1c21e29ec1987c52edeebdc3d0200ec0b6f5d4b6443b2fd62eda6e3cafcc4bf849cd0bd1112f899904f3816970f5f4672f9c7a51f400bb39ce924d023d4 SHA512 9246e225b934b64e982c3d4399faea476871845616f979fa6d7eed832a75f879d611f85a29e04ca768bd6690945f24a3e7eebdbe8b81f156299b37965944ec91 -EBUILD llvm-18.1.8-r2.ebuild 13382 BLAKE2B d85b411e98047789336ecd973e3b87251d171626ab0de97cea41ad8b5e1345fcc26c67458d3158eb15a6c379dfc72ddd9d9f31497e0a71952dd86e0a561b507f SHA512 6672975ef95fd9f2c8368ee1ddb9a448f993903cc053e5097ae278060752e33b2adcb67097d4062a6c0ae8661dfdfc08814846c5ed46a764fb12a9437483aeb9 EBUILD llvm-18.1.8-r4.ebuild 13382 BLAKE2B 2d52ad708ed578868b700b97cc581ea732147219b9b71d4ced6dbe2553054e2524ba0971e051934b610d5aaa4e6a164e14c56be9961637349b37d9bafa97916b SHA512 4e67d7e9ceb174d8b9135e330ff5371e385d0253f6d8f6c7058840de7dc7819a5711670fa6ca0b487d9f4985de20987c0d69ee1809e131fbea029029643da475 -EBUILD llvm-19.1.0_rc1.ebuild 13080 BLAKE2B 0da2f320c2b93dc378fbc66878488db659091e42f649901d0f6bb6669f1485a5782816a13eca5e5f503c4c0f635dd695f7bf081d56eb57993f71e294d5f607d6 SHA512 799333cc46d55e910f46a2e40ca866797766419e6ed6f34a8044a039bf7799ede52c9e6d0b557567116a22dc0648d9c744f1d69a4f0855759619b9251f1747c8 EBUILD llvm-19.1.0_rc2.ebuild 13056 BLAKE2B 58a31e7b71687262ab0d6a7b194dbd8fdca492af1402f56d6fd638fd2cee7139faa686a08bf1b33b4c1c7721f1312d2aa1d7e0ce5ba452b9bf571ec49c4e127e SHA512 2cf4583ef22f45b7edb666d665b7d06728873ce724fe851d0cd974dd5f3ecc1e473ed6aa16111f5a6382d2f09088595be4b41fa4d5bf2e316048de0ff250cfbc EBUILD llvm-20.0.0.9999.ebuild 13137 BLAKE2B a7e19b19f8caa7fc54e74971f5525c580a9ac93cc26f55eeebe3f77401e588f658c8114549531458ec6f8166918396b77f03180309f2e0406c25a4dcb63c264c SHA512 3e77439099120b69390aca71f834ca60953860496ebc8e31086b3cc4e8b9a84350d1bac16e7cad00a53b68837eb3717c6669ba785d8f607301916f04f390c41d -EBUILD llvm-20.0.0_pre20240801.ebuild 13137 BLAKE2B a7e19b19f8caa7fc54e74971f5525c580a9ac93cc26f55eeebe3f77401e588f658c8114549531458ec6f8166918396b77f03180309f2e0406c25a4dcb63c264c SHA512 3e77439099120b69390aca71f834ca60953860496ebc8e31086b3cc4e8b9a84350d1bac16e7cad00a53b68837eb3717c6669ba785d8f607301916f04f390c41d EBUILD llvm-20.0.0_pre20240808.ebuild 13137 BLAKE2B a7e19b19f8caa7fc54e74971f5525c580a9ac93cc26f55eeebe3f77401e588f658c8114549531458ec6f8166918396b77f03180309f2e0406c25a4dcb63c264c SHA512 3e77439099120b69390aca71f834ca60953860496ebc8e31086b3cc4e8b9a84350d1bac16e7cad00a53b68837eb3717c6669ba785d8f607301916f04f390c41d MISC metadata.xml 2835 BLAKE2B 07816d714509d62c0e0a443cc4af1f1f049497de75431f80a981f662b4f2281a16655be3e733a26099d0d814d5ce26d80cee13aa7a4e8d079168846a8e02670f SHA512 292ccb0a05a0239b5b00c6a84be11b4b385900d6467a6a139af03588c61aff9ac0e4bbcd23e89b2a7d7947f7d8cf8ba9323f2539a6c563a338b73f5ac6ffd00f diff --git a/sys-devel/llvm/llvm-18.1.8-r2.ebuild b/sys-devel/llvm/llvm-18.1.8-r2.ebuild deleted file mode 100644 index 7f8d300a14f2..000000000000 --- a/sys-devel/llvm/llvm-18.1.8-r2.ebuild +++ /dev/null @@ -1,549 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..13} ) - -inherit cmake flag-o-matic llvm.org multilib-minimal pax-utils python-any-r1 -inherit toolchain-funcs - -DESCRIPTION="Low Level Virtual Machine" -HOMEPAGE="https://llvm.org/" - -# Additional licenses: -# 1. OpenBSD regex: Henry Spencer's license ('rc' in Gentoo) + BSD. -# 2. xxhash: BSD. -# 3. MD5 code: public-domain. -# 4. ConvertUTF.h: TODO. - -LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA BSD public-domain rc" -SLOT="${LLVM_MAJOR}/${LLVM_SOABI}" -KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~arm64-macos ~ppc-macos ~x64-macos" -IUSE=" - +binutils-plugin debug debuginfod doc exegesis libedit +libffi - ncurses test xml z3 zstd -" -RESTRICT="!test? ( test )" - -RDEPEND=" - sys-libs/zlib:0=[${MULTILIB_USEDEP}] - debuginfod? ( - net-misc/curl:= - dev-cpp/cpp-httplib:= - ) - exegesis? ( dev-libs/libpfm:= ) - libedit? ( dev-libs/libedit:0=[${MULTILIB_USEDEP}] ) - libffi? ( >=dev-libs/libffi-3.0.13-r1:0=[${MULTILIB_USEDEP}] ) - ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[${MULTILIB_USEDEP}] ) - xml? ( dev-libs/libxml2:2=[${MULTILIB_USEDEP}] ) - z3? ( >=sci-mathematics/z3-4.7.1:0=[${MULTILIB_USEDEP}] ) - zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) -" -DEPEND=" - ${RDEPEND} - binutils-plugin? ( sys-libs/binutils-libs ) -" -BDEPEND=" - ${PYTHON_DEPS} - dev-lang/perl - sys-devel/gnuconfig - kernel_Darwin? ( - <sys-libs/libcxx-${LLVM_VERSION}.9999 - ) - libffi? ( virtual/pkgconfig ) -" -# There are no file collisions between these versions but having :0 -# installed means llvm-config there will take precedence. -RDEPEND=" - ${RDEPEND} - !sys-devel/llvm:0 -" -PDEPEND=" - sys-devel/llvm-common - sys-devel/llvm-toolchain-symlinks:${LLVM_MAJOR} - binutils-plugin? ( >=sys-devel/llvmgold-${LLVM_MAJOR} ) -" - -LLVM_COMPONENTS=( llvm cmake third-party ) -LLVM_MANPAGES=1 -LLVM_PATCHSET=${PV}-r2 -LLVM_USE_TARGETS=provide -llvm.org_set_globals - -[[ -n ${LLVM_MANPAGE_DIST} ]] && BDEPEND+=" doc? ( " -BDEPEND+=" - $(python_gen_any_dep ' - dev-python/myst-parser[${PYTHON_USEDEP}] - dev-python/sphinx[${PYTHON_USEDEP}] - ') -" -[[ -n ${LLVM_MANPAGE_DIST} ]] && BDEPEND+=" ) " - -python_check_deps() { - llvm_are_manpages_built || return 0 - - python_has_version -b "dev-python/myst-parser[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]" -} - -check_uptodate() { - local prod_targets=( - $(sed -n -e '/set(LLVM_ALL_TARGETS/,/)/p' CMakeLists.txt \ - | tail -n +2 | head -n -1) - ) - local all_targets=( - lib/Target/*/ - ) - all_targets=( "${all_targets[@]#lib/Target/}" ) - all_targets=( "${all_targets[@]%/}" ) - - local exp_targets=() i - for i in "${all_targets[@]}"; do - has "${i}" "${prod_targets[@]}" || exp_targets+=( "${i}" ) - done - - if [[ ${exp_targets[*]} != ${ALL_LLVM_EXPERIMENTAL_TARGETS[*]} ]]; then - eqawarn "ALL_LLVM_EXPERIMENTAL_TARGETS is outdated!" - eqawarn " Have: ${ALL_LLVM_EXPERIMENTAL_TARGETS[*]}" - eqawarn "Expected: ${exp_targets[*]}" - eqawarn - fi - - if [[ ${prod_targets[*]} != ${ALL_LLVM_PRODUCTION_TARGETS[*]} ]]; then - eqawarn "ALL_LLVM_PRODUCTION_TARGETS is outdated!" - eqawarn " Have: ${ALL_LLVM_PRODUCTION_TARGETS[*]}" - eqawarn "Expected: ${prod_targets[*]}" - fi -} - -check_distribution_components() { - if [[ ${CMAKE_MAKEFILE_GENERATOR} == ninja ]]; then - local all_targets=() my_targets=() l - cd "${BUILD_DIR}" || die - - while read -r l; do - if [[ ${l} == install-*-stripped:* ]]; then - l=${l#install-} - l=${l%%-stripped*} - - case ${l} in - # shared libs - LLVM|LLVMgold) - ;; - # TableGen lib + deps - LLVMDemangle|LLVMSupport|LLVMTableGen) - ;; - # used by lldb - LLVMDebuginfod) - ;; - # testing libraries - LLVMTestingAnnotations|LLVMTestingSupport) - ;; - # static libs - LLVM*) - continue - ;; - # meta-targets - distribution|llvm-libraries) - continue - ;; - # used only w/ USE=doc - docs-llvm-html) - use doc || continue - ;; - esac - - all_targets+=( "${l}" ) - fi - done < <(${NINJA} -t targets all) - - while read -r l; do - my_targets+=( "${l}" ) - done < <(get_distribution_components $"\n") - - local add=() remove=() - for l in "${all_targets[@]}"; do - if ! has "${l}" "${my_targets[@]}"; then - add+=( "${l}" ) - fi - done - for l in "${my_targets[@]}"; do - if ! has "${l}" "${all_targets[@]}"; then - remove+=( "${l}" ) - fi - done - - if [[ ${#add[@]} -gt 0 || ${#remove[@]} -gt 0 ]]; then - eqawarn "get_distribution_components() is outdated!" - eqawarn " Add: ${add[*]}" - eqawarn "Remove: ${remove[*]}" - fi - cd - >/dev/null || die - fi -} - -src_prepare() { - # disable use of SDK on OSX, bug #568758 - sed -i -e 's/xcrun/false/' utils/lit/lit/util.py || die - - # Update config.guess to support more systems - cp "${BROOT}/usr/share/gnuconfig/config.guess" cmake/ || die - - # Verify that the ebuild is up-to-date - check_uptodate - - llvm.org_src_prepare -} - -get_distribution_components() { - local sep=${1-;} - - local out=( - # shared libs - LLVM - LTO - Remarks - - # tools - llvm-config - - # common stuff - cmake-exports - llvm-headers - - # libraries needed for clang-tblgen - LLVMDemangle - LLVMSupport - LLVMTableGen - - # testing libraries - llvm_gtest - llvm_gtest_main - LLVMTestingAnnotations - LLVMTestingSupport - ) - - if multilib_is_native_abi; then - out+=( - # library used by lldb - LLVMDebuginfod - - # utilities - llvm-tblgen - FileCheck - llvm-PerfectShuffle - count - not - yaml-bench - UnicodeNameMappingGenerator - - # tools - bugpoint - dsymutil - llc - lli - lli-child-target - llvm-addr2line - llvm-ar - llvm-as - llvm-bcanalyzer - llvm-bitcode-strip - llvm-c-test - llvm-cat - llvm-cfi-verify - llvm-config - llvm-cov - llvm-cvtres - llvm-cxxdump - llvm-cxxfilt - llvm-cxxmap - llvm-debuginfo-analyzer - llvm-debuginfod-find - llvm-diff - llvm-dis - llvm-dlltool - llvm-dwarfdump - llvm-dwarfutil - llvm-dwp - llvm-exegesis - llvm-extract - llvm-gsymutil - llvm-ifs - llvm-install-name-tool - llvm-jitlink - llvm-jitlink-executor - llvm-lib - llvm-libtool-darwin - llvm-link - llvm-lipo - llvm-lto - llvm-lto2 - llvm-mc - llvm-mca - llvm-ml - llvm-modextract - llvm-mt - llvm-nm - llvm-objcopy - llvm-objdump - llvm-opt-report - llvm-otool - llvm-pdbutil - llvm-profdata - llvm-profgen - llvm-ranlib - llvm-rc - llvm-readelf - llvm-readobj - llvm-readtapi - llvm-reduce - llvm-remarkutil - llvm-rtdyld - llvm-sim - llvm-size - llvm-split - llvm-stress - llvm-strings - llvm-strip - llvm-symbolizer - llvm-tli-checker - llvm-undname - llvm-windres - llvm-xray - obj2yaml - opt - sancov - sanstats - split-file - verify-uselistorder - yaml2obj - - # python modules - opt-viewer - ) - - if llvm_are_manpages_built; then - out+=( - # manpages - docs-dsymutil-man - docs-llvm-dwarfdump-man - docs-llvm-man - ) - fi - use doc && out+=( - docs-llvm-html - ) - - use binutils-plugin && out+=( - LLVMgold - ) - use debuginfod && out+=( - llvm-debuginfod - ) - fi - - printf "%s${sep}" "${out[@]}" -} - -multilib_src_configure() { - if use ppc && tc-is-gcc && [[ $(gcc-major-version) -lt 14 ]]; then - # Workaround for bug #880677 - append-flags $(test-flags-CXX -fno-ipa-sra -fno-ipa-modref -fno-ipa-icf) - fi - - # ODR violations (bug #917536, bug #926529). Just do it for GCC for now - # to avoid people grumbling. GCC is, anecdotally, more likely to miscompile - # LLVM with LTO anyway (which is not necessarily its fault). - tc-is-gcc && filter-lto - - local ffi_cflags ffi_ldflags - if use libffi; then - ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi) - ffi_ldflags=$($(tc-getPKG_CONFIG) --libs-only-L libffi) - fi - - local libdir=$(get_libdir) - local mycmakeargs=( - # disable appending VCS revision to the version to improve - # direct cache hit ratio - -DLLVM_APPEND_VC_REV=OFF - -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}" - -DLLVM_LIBDIR_SUFFIX=${libdir#lib} - - -DBUILD_SHARED_LIBS=OFF - -DLLVM_BUILD_LLVM_DYLIB=ON - -DLLVM_LINK_LLVM_DYLIB=ON - -DLLVM_DISTRIBUTION_COMPONENTS=$(get_distribution_components) - - # cheap hack: LLVM combines both anyway, and the only difference - # is that the former list is explicitly verified at cmake time - -DLLVM_TARGETS_TO_BUILD="" - -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}" - -DLLVM_INCLUDE_BENCHMARKS=OFF - -DLLVM_INCLUDE_TESTS=ON - -DLLVM_BUILD_TESTS=$(usex test) - -DLLVM_INSTALL_GTEST=ON - - -DLLVM_ENABLE_FFI=$(usex libffi) - -DLLVM_ENABLE_LIBEDIT=$(usex libedit) - -DLLVM_ENABLE_TERMINFO=$(usex ncurses) - -DLLVM_ENABLE_LIBXML2=$(usex xml) - -DLLVM_ENABLE_ASSERTIONS=$(usex debug) - -DLLVM_ENABLE_LIBPFM=$(usex exegesis) - -DLLVM_ENABLE_EH=ON - -DLLVM_ENABLE_RTTI=ON - -DLLVM_ENABLE_Z3_SOLVER=$(usex z3) - -DLLVM_ENABLE_ZLIB=FORCE_ON - -DLLVM_ENABLE_ZSTD=$(usex zstd FORCE_ON OFF) - -DLLVM_ENABLE_CURL=$(usex debuginfod) - -DLLVM_ENABLE_HTTPLIB=$(usex debuginfod) - - -DLLVM_HOST_TRIPLE="${CHOST}" - - -DFFI_INCLUDE_DIR="${ffi_cflags#-I}" - -DFFI_LIBRARY_DIR="${ffi_ldflags#-L}" - - -DPython3_EXECUTABLE="${PYTHON}" - - # disable OCaml bindings (now in dev-ml/llvm-ocaml) - -DOCAMLFIND=NO - ) - - local suffix= - if [[ -n ${EGIT_VERSION} && ${EGIT_BRANCH} != release/* ]]; then - # the ABI of the main branch is not stable, so let's include - # the commit id in the SOVERSION to contain the breakage - suffix+="git${EGIT_VERSION::8}" - fi - if [[ $(tc-get-cxx-stdlib) == libc++ ]]; then - # Smart hack: alter version suffix -> SOVERSION when linking - # against libc++. This way we won't end up mixing LLVM libc++ - # libraries with libstdc++ clang, and the other way around. - suffix+="+libcxx" - mycmakeargs+=( - -DLLVM_ENABLE_LIBCXX=ON - ) - fi - mycmakeargs+=( - -DLLVM_VERSION_SUFFIX="${suffix}" - ) - - use test && mycmakeargs+=( - -DLLVM_LIT_ARGS="$(get_lit_flags)" - ) - - if multilib_is_native_abi; then - local build_docs=OFF - if llvm_are_manpages_built; then - build_docs=ON - mycmakeargs+=( - -DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man" - -DLLVM_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/html" - -DSPHINX_WARNINGS_AS_ERRORS=OFF - ) - fi - - mycmakeargs+=( - -DLLVM_BUILD_DOCS=${build_docs} - -DLLVM_ENABLE_OCAMLDOC=OFF - -DLLVM_ENABLE_SPHINX=${build_docs} - -DLLVM_ENABLE_DOXYGEN=OFF - -DLLVM_INSTALL_UTILS=ON - ) - use binutils-plugin && mycmakeargs+=( - -DLLVM_BINUTILS_INCDIR="${EPREFIX}"/usr/include - ) - fi - - use kernel_Darwin && mycmakeargs+=( - # On Macos prefix, Gentoo doesn't split sys-libs/ncurses to libtinfo and - # libncurses, but llvm tries to use libtinfo before libncurses, and ends up - # using libtinfo (actually, libncurses.dylib) from system instead of prefix - -DTerminfo_LIBRARIES=-lncurses - # Use our libtool instead of looking it up with xcrun - -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool" - ) - - # LLVM can have very high memory consumption while linking, - # exhausting the limit on 32-bit linker executable - use x86 && local -x LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory" - - # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 - use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" - cmake_src_configure - - grep -q -E "^CMAKE_PROJECT_VERSION_MAJOR(:.*)?=${LLVM_MAJOR}$" \ - CMakeCache.txt || - die "Incorrect version, did you update _LLVM_MAIN_MAJOR?" - multilib_is_native_abi && check_distribution_components -} - -multilib_src_compile() { - tc-env_build cmake_build distribution - - pax-mark m "${BUILD_DIR}"/bin/llvm-rtdyld - pax-mark m "${BUILD_DIR}"/bin/lli - pax-mark m "${BUILD_DIR}"/bin/lli-child-target - - if use test; then - pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/Orc/OrcJITTests - pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/MCJIT/MCJITTests - pax-mark m "${BUILD_DIR}"/unittests/Support/SupportTests - fi -} - -multilib_src_test() { - # respect TMPDIR! - local -x LIT_PRESERVES_TMP=1 - cmake_build check -} - -src_install() { - local MULTILIB_CHOST_TOOLS=( - /usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-config - ) - - local MULTILIB_WRAPPED_HEADERS=( - /usr/include/llvm/Config/llvm-config.h - ) - - local LLVM_LDPATHS=() - multilib-minimal_src_install - - # move wrapped headers back - mv "${ED}"/usr/include "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include || die -} - -multilib_src_install() { - DESTDIR=${D} cmake_build install-distribution - - # move headers to /usr/include for wrapping - rm -rf "${ED}"/usr/include || die - mv "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include "${ED}"/usr/include || die - - LLVM_LDPATHS+=( "${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)" ) -} - -multilib_src_install_all() { - local revord=$(( 9999 - ${LLVM_MAJOR} )) - newenvd - "60llvm-${revord}" <<-_EOF_ - PATH="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin" - # we need to duplicate it in ROOTPATH for Portage to respect... - ROOTPATH="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin" - MANPATH="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man" - LDPATH="$( IFS=:; echo "${LLVM_LDPATHS[*]}" )" - _EOF_ - - docompress "/usr/lib/llvm/${LLVM_MAJOR}/share/man" - llvm_install_manpages -} - -pkg_postinst() { - elog "You can find additional opt-viewer utility scripts in:" - elog " ${EROOT}/usr/lib/llvm/${LLVM_MAJOR}/share/opt-viewer" - elog "To use these scripts, you will need Python along with the following" - elog "packages:" - elog " dev-python/pygments (for opt-viewer)" - elog " dev-python/pyyaml (for all of them)" -} diff --git a/sys-devel/llvm/llvm-19.1.0_rc1.ebuild b/sys-devel/llvm/llvm-19.1.0_rc1.ebuild deleted file mode 100644 index 4e698e1a7b88..000000000000 --- a/sys-devel/llvm/llvm-19.1.0_rc1.ebuild +++ /dev/null @@ -1,549 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..13} ) - -inherit cmake flag-o-matic llvm.org multilib-minimal pax-utils python-any-r1 -inherit toolchain-funcs - -DESCRIPTION="Low Level Virtual Machine" -HOMEPAGE="https://llvm.org/" - -# Additional licenses: -# 1. OpenBSD regex: Henry Spencer's license ('rc' in Gentoo) + BSD. -# 2. xxhash: BSD. -# 3. MD5 code: public-domain. -# 4. ConvertUTF.h: TODO. - -LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA BSD public-domain rc" -SLOT="${LLVM_MAJOR}/${LLVM_SOABI}" -IUSE=" - +binutils-plugin +debug debuginfod doc exegesis libedit +libffi - test xml z3 zstd -" -RESTRICT="!test? ( test )" - -RDEPEND=" - sys-libs/zlib:0=[${MULTILIB_USEDEP}] - debuginfod? ( - net-misc/curl:= - dev-cpp/cpp-httplib:= - ) - exegesis? ( dev-libs/libpfm:= ) - libedit? ( dev-libs/libedit:0=[${MULTILIB_USEDEP}] ) - libffi? ( >=dev-libs/libffi-3.0.13-r1:0=[${MULTILIB_USEDEP}] ) - xml? ( dev-libs/libxml2:2=[${MULTILIB_USEDEP}] ) - z3? ( >=sci-mathematics/z3-4.7.1:0=[${MULTILIB_USEDEP}] ) - zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) -" -DEPEND=" - ${RDEPEND} - binutils-plugin? ( sys-libs/binutils-libs ) -" -BDEPEND=" - ${PYTHON_DEPS} - dev-lang/perl - sys-devel/gnuconfig - kernel_Darwin? ( - <sys-libs/libcxx-${LLVM_VERSION}.9999 - ) - libffi? ( virtual/pkgconfig ) -" -# There are no file collisions between these versions but having :0 -# installed means llvm-config there will take precedence. -RDEPEND=" - ${RDEPEND} - !sys-devel/llvm:0 -" -PDEPEND=" - sys-devel/llvm-common - sys-devel/llvm-toolchain-symlinks:${LLVM_MAJOR} - binutils-plugin? ( >=sys-devel/llvmgold-${LLVM_MAJOR} ) -" - -LLVM_COMPONENTS=( llvm cmake third-party ) -LLVM_MANPAGES=1 -LLVM_PATCHSET=${PV/_/-} -LLVM_USE_TARGETS=provide -llvm.org_set_globals - -[[ -n ${LLVM_MANPAGE_DIST} ]] && BDEPEND+=" doc? ( " -BDEPEND+=" - $(python_gen_any_dep ' - dev-python/myst-parser[${PYTHON_USEDEP}] - dev-python/sphinx[${PYTHON_USEDEP}] - ') -" -[[ -n ${LLVM_MANPAGE_DIST} ]] && BDEPEND+=" ) " - -python_check_deps() { - llvm_are_manpages_built || return 0 - - python_has_version -b "dev-python/myst-parser[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]" -} - -check_uptodate() { - local prod_targets=( - $(sed -n -e '/set(LLVM_ALL_TARGETS/,/)/p' CMakeLists.txt \ - | tail -n +2 | head -n -1) - ) - local all_targets=( - lib/Target/*/ - ) - all_targets=( "${all_targets[@]#lib/Target/}" ) - all_targets=( "${all_targets[@]%/}" ) - - local exp_targets=() i - for i in "${all_targets[@]}"; do - has "${i}" "${prod_targets[@]}" || exp_targets+=( "${i}" ) - done - - if [[ ${exp_targets[*]} != ${ALL_LLVM_EXPERIMENTAL_TARGETS[*]} ]]; then - eqawarn "ALL_LLVM_EXPERIMENTAL_TARGETS is outdated!" - eqawarn " Have: ${ALL_LLVM_EXPERIMENTAL_TARGETS[*]}" - eqawarn "Expected: ${exp_targets[*]}" - eqawarn - fi - - if [[ ${prod_targets[*]} != ${ALL_LLVM_PRODUCTION_TARGETS[*]} ]]; then - eqawarn "ALL_LLVM_PRODUCTION_TARGETS is outdated!" - eqawarn " Have: ${ALL_LLVM_PRODUCTION_TARGETS[*]}" - eqawarn "Expected: ${prod_targets[*]}" - fi -} - -check_distribution_components() { - if [[ ${CMAKE_MAKEFILE_GENERATOR} == ninja ]]; then - local all_targets=() my_targets=() l - cd "${BUILD_DIR}" || die - - while read -r l; do - if [[ ${l} == install-*-stripped:* ]]; then - l=${l#install-} - l=${l%%-stripped*} - - case ${l} in - # shared libs - LLVM|LLVMgold) - ;; - # TableGen lib + deps - LLVMDemangle|LLVMSupport|LLVMTableGen) - ;; - # used by lldb - LLVMDebuginfod) - ;; - # testing libraries - LLVMTestingAnnotations|LLVMTestingSupport) - ;; - # static libs - LLVM*) - continue - ;; - # meta-targets - distribution|llvm-libraries) - continue - ;; - # used only w/ USE=doc - docs-llvm-html) - use doc || continue - ;; - esac - - all_targets+=( "${l}" ) - fi - done < <(${NINJA} -t targets all) - - while read -r l; do - my_targets+=( "${l}" ) - done < <(get_distribution_components $"\n") - - local add=() remove=() - for l in "${all_targets[@]}"; do - if ! has "${l}" "${my_targets[@]}"; then - add+=( "${l}" ) - fi - done - for l in "${my_targets[@]}"; do - if ! has "${l}" "${all_targets[@]}"; then - remove+=( "${l}" ) - fi - done - - if [[ ${#add[@]} -gt 0 || ${#remove[@]} -gt 0 ]]; then - eqawarn "get_distribution_components() is outdated!" - eqawarn " Add: ${add[*]}" - eqawarn "Remove: ${remove[*]}" - fi - cd - >/dev/null || die - fi -} - -src_prepare() { - # disable use of SDK on OSX, bug #568758 - sed -i -e 's/xcrun/false/' utils/lit/lit/util.py || die - - # Update config.guess to support more systems - cp "${BROOT}/usr/share/gnuconfig/config.guess" cmake/ || die - - # Verify that the ebuild is up-to-date - check_uptodate - - llvm.org_src_prepare - - if has_version ">=sys-libs/glibc-2.40"; then - # https://github.com/llvm/llvm-project/issues/100791 - rm -r test/tools/llvm-exegesis/X86/latency || die - fi -} - -get_distribution_components() { - local sep=${1-;} - - local out=( - # shared libs - LLVM - LTO - Remarks - - # tools - llvm-config - - # common stuff - cmake-exports - llvm-headers - - # libraries needed for clang-tblgen - LLVMDemangle - LLVMSupport - LLVMTableGen - - # testing libraries - llvm_gtest - llvm_gtest_main - LLVMTestingAnnotations - LLVMTestingSupport - ) - - if multilib_is_native_abi; then - out+=( - # library used by lldb - LLVMDebuginfod - - # utilities - llvm-tblgen - FileCheck - llvm-PerfectShuffle - count - not - yaml-bench - UnicodeNameMappingGenerator - - # tools - bugpoint - dsymutil - llc - lli - lli-child-target - llvm-addr2line - llvm-ar - llvm-as - llvm-bcanalyzer - llvm-bitcode-strip - llvm-c-test - llvm-cat - llvm-cfi-verify - llvm-cgdata - llvm-config - llvm-cov - llvm-cvtres - llvm-cxxdump - llvm-cxxfilt - llvm-cxxmap - llvm-debuginfo-analyzer - llvm-debuginfod-find - llvm-diff - llvm-dis - llvm-dlltool - llvm-dwarfdump - llvm-dwarfutil - llvm-dwp - llvm-exegesis - llvm-extract - llvm-gsymutil - llvm-ifs - llvm-install-name-tool - llvm-jitlink - llvm-jitlink-executor - llvm-lib - llvm-libtool-darwin - llvm-link - llvm-lipo - llvm-lto - llvm-lto2 - llvm-mc - llvm-mca - llvm-ml - llvm-modextract - llvm-mt - llvm-nm - llvm-objcopy - llvm-objdump - llvm-opt-report - llvm-otool - llvm-pdbutil - llvm-profdata - llvm-profgen - llvm-ranlib - llvm-rc - llvm-readelf - llvm-readobj - llvm-readtapi - llvm-reduce - llvm-remarkutil - llvm-rtdyld - llvm-sim - llvm-size - llvm-split - llvm-stress - llvm-strings - llvm-strip - llvm-symbolizer - llvm-tli-checker - llvm-undname - llvm-windres - llvm-xray - obj2yaml - opt - reduce-chunk-list - sancov - sanstats - split-file - verify-uselistorder - yaml2obj - - # python modules - opt-viewer - ) - - if llvm_are_manpages_built; then - out+=( - # manpages - docs-dsymutil-man - docs-llvm-dwarfdump-man - docs-llvm-man - ) - fi - use doc && out+=( - docs-llvm-html - ) - - use binutils-plugin && out+=( - LLVMgold - ) - use debuginfod && out+=( - llvm-debuginfod - ) - fi - - printf "%s${sep}" "${out[@]}" -} - -multilib_src_configure() { - if use ppc && tc-is-gcc && [[ $(gcc-major-version) -lt 14 ]]; then - # Workaround for bug #880677 - append-flags $(test-flags-CXX -fno-ipa-sra -fno-ipa-modref -fno-ipa-icf) - fi - - # ODR violations (bug #917536, bug #926529). Just do it for GCC for now - # to avoid people grumbling. GCC is, anecdotally, more likely to miscompile - # LLVM with LTO anyway (which is not necessarily its fault). - tc-is-gcc && filter-lto - - local ffi_cflags ffi_ldflags - if use libffi; then - ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi) - ffi_ldflags=$($(tc-getPKG_CONFIG) --libs-only-L libffi) - fi - - local libdir=$(get_libdir) - local mycmakeargs=( - # disable appending VCS revision to the version to improve - # direct cache hit ratio - -DLLVM_APPEND_VC_REV=OFF - -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}" - -DLLVM_LIBDIR_SUFFIX=${libdir#lib} - - -DBUILD_SHARED_LIBS=OFF - -DLLVM_BUILD_LLVM_DYLIB=ON - -DLLVM_LINK_LLVM_DYLIB=ON - -DLLVM_DISTRIBUTION_COMPONENTS=$(get_distribution_components) - - # cheap hack: LLVM combines both anyway, and the only difference - # is that the former list is explicitly verified at cmake time - -DLLVM_TARGETS_TO_BUILD="" - -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}" - -DLLVM_INCLUDE_BENCHMARKS=OFF - -DLLVM_INCLUDE_TESTS=ON - -DLLVM_BUILD_TESTS=$(usex test) - -DLLVM_INSTALL_GTEST=ON - - -DLLVM_ENABLE_FFI=$(usex libffi) - -DLLVM_ENABLE_LIBEDIT=$(usex libedit) - -DLLVM_ENABLE_LIBXML2=$(usex xml) - -DLLVM_ENABLE_ASSERTIONS=$(usex debug) - -DLLVM_ENABLE_LIBPFM=$(usex exegesis) - -DLLVM_ENABLE_EH=ON - -DLLVM_ENABLE_RTTI=ON - -DLLVM_ENABLE_Z3_SOLVER=$(usex z3) - -DLLVM_ENABLE_ZLIB=FORCE_ON - -DLLVM_ENABLE_ZSTD=$(usex zstd FORCE_ON OFF) - -DLLVM_ENABLE_CURL=$(usex debuginfod) - -DLLVM_ENABLE_HTTPLIB=$(usex debuginfod) - - -DLLVM_HOST_TRIPLE="${CHOST}" - - -DFFI_INCLUDE_DIR="${ffi_cflags#-I}" - -DFFI_LIBRARY_DIR="${ffi_ldflags#-L}" - - -DPython3_EXECUTABLE="${PYTHON}" - - # disable OCaml bindings (now in dev-ml/llvm-ocaml) - -DOCAMLFIND=NO - ) - - local suffix= - if [[ -n ${EGIT_VERSION} && ${EGIT_BRANCH} != release/* ]]; then - # the ABI of the main branch is not stable, so let's include - # the commit id in the SOVERSION to contain the breakage - suffix+="git${EGIT_VERSION::8}" - fi - if [[ $(tc-get-cxx-stdlib) == libc++ ]]; then - # Smart hack: alter version suffix -> SOVERSION when linking - # against libc++. This way we won't end up mixing LLVM libc++ - # libraries with libstdc++ clang, and the other way around. - suffix+="+libcxx" - mycmakeargs+=( - -DLLVM_ENABLE_LIBCXX=ON - ) - fi - mycmakeargs+=( - -DLLVM_VERSION_SUFFIX="${suffix}" - ) - - use test && mycmakeargs+=( - -DLLVM_LIT_ARGS="$(get_lit_flags)" - ) - - if multilib_is_native_abi; then - local build_docs=OFF - if llvm_are_manpages_built; then - build_docs=ON - mycmakeargs+=( - -DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man" - -DLLVM_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/html" - -DSPHINX_WARNINGS_AS_ERRORS=OFF - ) - fi - - mycmakeargs+=( - -DLLVM_BUILD_DOCS=${build_docs} - -DLLVM_ENABLE_OCAMLDOC=OFF - -DLLVM_ENABLE_SPHINX=${build_docs} - -DLLVM_ENABLE_DOXYGEN=OFF - -DLLVM_INSTALL_UTILS=ON - ) - use binutils-plugin && mycmakeargs+=( - -DLLVM_BINUTILS_INCDIR="${EPREFIX}"/usr/include - ) - fi - - use kernel_Darwin && mycmakeargs+=( - # Use our libtool instead of looking it up with xcrun - -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool" - ) - - # LLVM can have very high memory consumption while linking, - # exhausting the limit on 32-bit linker executable - use x86 && local -x LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory" - - # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 - use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" - cmake_src_configure - - grep -q -E "^CMAKE_PROJECT_VERSION_MAJOR(:.*)?=${LLVM_MAJOR}$" \ - CMakeCache.txt || - die "Incorrect version, did you update _LLVM_MAIN_MAJOR?" - multilib_is_native_abi && check_distribution_components -} - -multilib_src_compile() { - tc-env_build cmake_build distribution - - pax-mark m "${BUILD_DIR}"/bin/llvm-rtdyld - pax-mark m "${BUILD_DIR}"/bin/lli - pax-mark m "${BUILD_DIR}"/bin/lli-child-target - - if use test; then - pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/Orc/OrcJITTests - pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/MCJIT/MCJITTests - pax-mark m "${BUILD_DIR}"/unittests/Support/SupportTests - fi -} - -multilib_src_test() { - # respect TMPDIR! - local -x LIT_PRESERVES_TMP=1 - cmake_build check -} - -src_install() { - local MULTILIB_CHOST_TOOLS=( - /usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-config - ) - - local MULTILIB_WRAPPED_HEADERS=( - /usr/include/llvm/Config/llvm-config.h - ) - - local LLVM_LDPATHS=() - multilib-minimal_src_install - - # move wrapped headers back - mv "${ED}"/usr/include "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include || die -} - -multilib_src_install() { - DESTDIR=${D} cmake_build install-distribution - - # move headers to /usr/include for wrapping - rm -rf "${ED}"/usr/include || die - mv "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include "${ED}"/usr/include || die - - LLVM_LDPATHS+=( "${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)" ) -} - -multilib_src_install_all() { - local revord=$(( 9999 - ${LLVM_MAJOR} )) - newenvd - "60llvm-${revord}" <<-_EOF_ - PATH="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin" - # we need to duplicate it in ROOTPATH for Portage to respect... - ROOTPATH="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin" - MANPATH="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man" - LDPATH="$( IFS=:; echo "${LLVM_LDPATHS[*]}" )" - _EOF_ - - docompress "/usr/lib/llvm/${LLVM_MAJOR}/share/man" - llvm_install_manpages -} - -pkg_postinst() { - elog "You can find additional opt-viewer utility scripts in:" - elog " ${EROOT}/usr/lib/llvm/${LLVM_MAJOR}/share/opt-viewer" - elog "To use these scripts, you will need Python along with the following" - elog "packages:" - elog " dev-python/pygments (for opt-viewer)" - elog " dev-python/pyyaml (for all of them)" -} diff --git a/sys-devel/llvm/llvm-20.0.0_pre20240801.ebuild b/sys-devel/llvm/llvm-20.0.0_pre20240801.ebuild deleted file mode 100644 index 8401f1a55543..000000000000 --- a/sys-devel/llvm/llvm-20.0.0_pre20240801.ebuild +++ /dev/null @@ -1,553 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..13} ) - -inherit cmake flag-o-matic llvm.org multilib-minimal pax-utils python-any-r1 -inherit toolchain-funcs - -DESCRIPTION="Low Level Virtual Machine" -HOMEPAGE="https://llvm.org/" - -# Additional licenses: -# 1. OpenBSD regex: Henry Spencer's license ('rc' in Gentoo) + BSD. -# 2. xxhash: BSD. -# 3. MD5 code: public-domain. -# 4. ConvertUTF.h: TODO. - -LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA BSD public-domain rc" -SLOT="${LLVM_MAJOR}/${LLVM_SOABI}" -IUSE=" - +binutils-plugin +debug debuginfod doc exegesis libedit +libffi - test xml z3 zstd -" -RESTRICT="!test? ( test )" - -RDEPEND=" - sys-libs/zlib:0=[${MULTILIB_USEDEP}] - debuginfod? ( - net-misc/curl:= - dev-cpp/cpp-httplib:= - ) - exegesis? ( dev-libs/libpfm:= ) - libedit? ( dev-libs/libedit:0=[${MULTILIB_USEDEP}] ) - libffi? ( >=dev-libs/libffi-3.0.13-r1:0=[${MULTILIB_USEDEP}] ) - xml? ( dev-libs/libxml2:2=[${MULTILIB_USEDEP}] ) - z3? ( >=sci-mathematics/z3-4.7.1:0=[${MULTILIB_USEDEP}] ) - zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) -" -DEPEND=" - ${RDEPEND} - binutils-plugin? ( sys-libs/binutils-libs ) -" -BDEPEND=" - ${PYTHON_DEPS} - dev-lang/perl - sys-devel/gnuconfig - kernel_Darwin? ( - <sys-libs/libcxx-${LLVM_VERSION}.9999 - ) - libffi? ( virtual/pkgconfig ) -" -# There are no file collisions between these versions but having :0 -# installed means llvm-config there will take precedence. -RDEPEND=" - ${RDEPEND} - !sys-devel/llvm:0 -" -PDEPEND=" - sys-devel/llvm-common - sys-devel/llvm-toolchain-symlinks:${LLVM_MAJOR} - binutils-plugin? ( >=sys-devel/llvmgold-${LLVM_MAJOR} ) -" - -LLVM_COMPONENTS=( llvm cmake third-party ) -LLVM_MANPAGES=1 -LLVM_USE_TARGETS=provide -llvm.org_set_globals - -[[ -n ${LLVM_MANPAGE_DIST} ]] && BDEPEND+=" doc? ( " -BDEPEND+=" - $(python_gen_any_dep ' - dev-python/myst-parser[${PYTHON_USEDEP}] - dev-python/sphinx[${PYTHON_USEDEP}] - ') -" -[[ -n ${LLVM_MANPAGE_DIST} ]] && BDEPEND+=" ) " - -python_check_deps() { - llvm_are_manpages_built || return 0 - - python_has_version -b "dev-python/myst-parser[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]" -} - -check_uptodate() { - local prod_targets=( - $(sed -n -e '/set(LLVM_ALL_TARGETS/,/)/p' CMakeLists.txt \ - | tail -n +2 | head -n -1) - ) - local all_targets=( - lib/Target/*/ - ) - all_targets=( "${all_targets[@]#lib/Target/}" ) - all_targets=( "${all_targets[@]%/}" ) - - local exp_targets=() i - for i in "${all_targets[@]}"; do - has "${i}" "${prod_targets[@]}" || exp_targets+=( "${i}" ) - done - - local outdated - if [[ ${exp_targets[*]} != ${ALL_LLVM_EXPERIMENTAL_TARGETS[*]} ]]; then - eerror "ALL_LLVM_EXPERIMENTAL_TARGETS are outdated!" - eerror " Have: ${ALL_LLVM_EXPERIMENTAL_TARGETS[*]}" - eerror "Expected: ${exp_targets[*]}" - eerror - outdated=1 - fi - - if [[ ${prod_targets[*]} != ${ALL_LLVM_PRODUCTION_TARGETS[*]} ]]; then - eerror "ALL_LLVM_PRODUCTION_TARGETS are outdated!" - eerror " Have: ${ALL_LLVM_PRODUCTION_TARGETS[*]}" - eerror "Expected: ${prod_targets[*]}" - outdated=1 - fi - - [[ ${outdated} ]] && die "Update ALL_LLVM*_TARGETS" -} - -check_distribution_components() { - if [[ ${CMAKE_MAKEFILE_GENERATOR} == ninja ]]; then - local all_targets=() my_targets=() l - cd "${BUILD_DIR}" || die - - while read -r l; do - if [[ ${l} == install-*-stripped:* ]]; then - l=${l#install-} - l=${l%%-stripped*} - - case ${l} in - # shared libs - LLVM|LLVMgold) - ;; - # TableGen lib + deps - LLVMDemangle|LLVMSupport|LLVMTableGen) - ;; - # used by lldb - LLVMDebuginfod) - ;; - # testing libraries - LLVMTestingAnnotations|LLVMTestingSupport) - ;; - # static libs - LLVM*) - continue - ;; - # meta-targets - distribution|llvm-libraries) - continue - ;; - # used only w/ USE=doc - docs-llvm-html) - use doc || continue - ;; - # used only w/ USE=debuginfd - llvm-debuginfod) - use debuginfod || continue - ;; - esac - - all_targets+=( "${l}" ) - fi - done < <(${NINJA} -t targets all) - - while read -r l; do - my_targets+=( "${l}" ) - done < <(get_distribution_components $"\n") - - local add=() remove=() - for l in "${all_targets[@]}"; do - if ! has "${l}" "${my_targets[@]}"; then - add+=( "${l}" ) - fi - done - for l in "${my_targets[@]}"; do - if ! has "${l}" "${all_targets[@]}"; then - remove+=( "${l}" ) - fi - done - - if [[ ${#add[@]} -gt 0 || ${#remove[@]} -gt 0 ]]; then - eerror "get_distribution_components() is outdated!" - eerror " Add: ${add[*]}" - eerror "Remove: ${remove[*]}" - die "Update get_distribution_components()!" - fi - cd - >/dev/null || die - fi -} - -src_prepare() { - # disable use of SDK on OSX, bug #568758 - sed -i -e 's/xcrun/false/' utils/lit/lit/util.py || die - - # Update config.guess to support more systems - cp "${BROOT}/usr/share/gnuconfig/config.guess" cmake/ || die - - # Verify that the ebuild is up-to-date - check_uptodate - - llvm.org_src_prepare -} - -get_distribution_components() { - local sep=${1-;} - - local out=( - # shared libs - LLVM - LTO - Remarks - - # tools - llvm-config - - # common stuff - cmake-exports - llvm-headers - - # libraries needed for clang-tblgen - LLVMDemangle - LLVMSupport - LLVMTableGen - - # testing libraries - llvm_gtest - llvm_gtest_main - LLVMTestingAnnotations - LLVMTestingSupport - ) - - if multilib_is_native_abi; then - out+=( - # library used by lldb - LLVMDebuginfod - - # utilities - llvm-tblgen - FileCheck - llvm-PerfectShuffle - count - not - yaml-bench - UnicodeNameMappingGenerator - - # tools - bugpoint - dsymutil - llc - lli - lli-child-target - llvm-addr2line - llvm-ar - llvm-as - llvm-bcanalyzer - llvm-bitcode-strip - llvm-c-test - llvm-cat - llvm-cfi-verify - llvm-config - llvm-cov - llvm-ctxprof-util - llvm-cvtres - llvm-cxxdump - llvm-cxxfilt - llvm-cxxmap - llvm-debuginfo-analyzer - llvm-debuginfod-find - llvm-diff - llvm-dis - llvm-dlltool - llvm-dwarfdump - llvm-dwarfutil - llvm-dwp - llvm-exegesis - llvm-extract - llvm-gsymutil - llvm-ifs - llvm-install-name-tool - llvm-jitlink - llvm-jitlink-executor - llvm-lib - llvm-libtool-darwin - llvm-link - llvm-lipo - llvm-lto - llvm-lto2 - llvm-mc - llvm-mca - llvm-ml - llvm-modextract - llvm-mt - llvm-nm - llvm-objcopy - llvm-objdump - llvm-opt-report - llvm-otool - llvm-pdbutil - llvm-profdata - llvm-profgen - llvm-ranlib - llvm-rc - llvm-readelf - llvm-readobj - llvm-readtapi - llvm-reduce - llvm-remarkutil - llvm-rtdyld - llvm-sim - llvm-size - llvm-split - llvm-stress - llvm-strings - llvm-strip - llvm-symbolizer - llvm-tli-checker - llvm-undname - llvm-windres - llvm-xray - obj2yaml - opt - reduce-chunk-list - sancov - sanstats - split-file - verify-uselistorder - yaml2obj - - # python modules - opt-viewer - ) - - if llvm_are_manpages_built; then - out+=( - # manpages - docs-dsymutil-man - docs-llvm-dwarfdump-man - docs-llvm-man - ) - fi - use doc && out+=( - docs-llvm-html - ) - - use binutils-plugin && out+=( - LLVMgold - ) - use debuginfod && out+=( - llvm-debuginfod - ) - fi - - printf "%s${sep}" "${out[@]}" -} - -multilib_src_configure() { - if use ppc && tc-is-gcc && [[ $(gcc-major-version) -lt 14 ]]; then - # Workaround for bug #880677 - append-flags $(test-flags-CXX -fno-ipa-sra -fno-ipa-modref -fno-ipa-icf) - fi - - # ODR violations (bug #917536, bug #926529). Just do it for GCC for now - # to avoid people grumbling. GCC is, anecdotally, more likely to miscompile - # LLVM with LTO anyway (which is not necessarily its fault). - tc-is-gcc && filter-lto - - local ffi_cflags ffi_ldflags - if use libffi; then - ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi) - ffi_ldflags=$($(tc-getPKG_CONFIG) --libs-only-L libffi) - fi - - local libdir=$(get_libdir) - local mycmakeargs=( - # disable appending VCS revision to the version to improve - # direct cache hit ratio - -DLLVM_APPEND_VC_REV=OFF - -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}" - -DLLVM_LIBDIR_SUFFIX=${libdir#lib} - - -DBUILD_SHARED_LIBS=OFF - -DLLVM_BUILD_LLVM_DYLIB=ON - -DLLVM_LINK_LLVM_DYLIB=ON - -DLLVM_DISTRIBUTION_COMPONENTS=$(get_distribution_components) - - # cheap hack: LLVM combines both anyway, and the only difference - # is that the former list is explicitly verified at cmake time - -DLLVM_TARGETS_TO_BUILD="" - -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}" - -DLLVM_INCLUDE_BENCHMARKS=OFF - -DLLVM_INCLUDE_TESTS=ON - -DLLVM_BUILD_TESTS=$(usex test) - -DLLVM_INSTALL_GTEST=ON - - -DLLVM_ENABLE_FFI=$(usex libffi) - -DLLVM_ENABLE_LIBEDIT=$(usex libedit) - -DLLVM_ENABLE_LIBXML2=$(usex xml) - -DLLVM_ENABLE_ASSERTIONS=$(usex debug) - -DLLVM_ENABLE_LIBPFM=$(usex exegesis) - -DLLVM_ENABLE_EH=ON - -DLLVM_ENABLE_RTTI=ON - -DLLVM_ENABLE_Z3_SOLVER=$(usex z3) - -DLLVM_ENABLE_ZLIB=FORCE_ON - -DLLVM_ENABLE_ZSTD=$(usex zstd FORCE_ON OFF) - -DLLVM_ENABLE_CURL=$(usex debuginfod) - -DLLVM_ENABLE_HTTPLIB=$(usex debuginfod) - - -DLLVM_HOST_TRIPLE="${CHOST}" - - -DFFI_INCLUDE_DIR="${ffi_cflags#-I}" - -DFFI_LIBRARY_DIR="${ffi_ldflags#-L}" - - -DPython3_EXECUTABLE="${PYTHON}" - - # disable OCaml bindings (now in dev-ml/llvm-ocaml) - -DOCAMLFIND=NO - ) - - local suffix= - if [[ -n ${EGIT_VERSION} && ${EGIT_BRANCH} != release/* ]]; then - # the ABI of the main branch is not stable, so let's include - # the commit id in the SOVERSION to contain the breakage - suffix+="git${EGIT_VERSION::8}" - fi - if [[ $(tc-get-cxx-stdlib) == libc++ ]]; then - # Smart hack: alter version suffix -> SOVERSION when linking - # against libc++. This way we won't end up mixing LLVM libc++ - # libraries with libstdc++ clang, and the other way around. - suffix+="+libcxx" - mycmakeargs+=( - -DLLVM_ENABLE_LIBCXX=ON - ) - fi - mycmakeargs+=( - -DLLVM_VERSION_SUFFIX="${suffix}" - ) - - use test && mycmakeargs+=( - -DLLVM_LIT_ARGS="$(get_lit_flags)" - ) - - if multilib_is_native_abi; then - local build_docs=OFF - if llvm_are_manpages_built; then - build_docs=ON - mycmakeargs+=( - -DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man" - -DLLVM_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/html" - -DSPHINX_WARNINGS_AS_ERRORS=OFF - ) - fi - - mycmakeargs+=( - -DLLVM_BUILD_DOCS=${build_docs} - -DLLVM_ENABLE_OCAMLDOC=OFF - -DLLVM_ENABLE_SPHINX=${build_docs} - -DLLVM_ENABLE_DOXYGEN=OFF - -DLLVM_INSTALL_UTILS=ON - ) - use binutils-plugin && mycmakeargs+=( - -DLLVM_BINUTILS_INCDIR="${EPREFIX}"/usr/include - ) - fi - - use kernel_Darwin && mycmakeargs+=( - # Use our libtool instead of looking it up with xcrun - -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool" - ) - - # LLVM can have very high memory consumption while linking, - # exhausting the limit on 32-bit linker executable - use x86 && local -x LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory" - - # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 - use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" - cmake_src_configure - - grep -q -E "^CMAKE_PROJECT_VERSION_MAJOR(:.*)?=${LLVM_MAJOR}$" \ - CMakeCache.txt || - die "Incorrect version, did you update _LLVM_MAIN_MAJOR?" - multilib_is_native_abi && check_distribution_components -} - -multilib_src_compile() { - tc-env_build cmake_build distribution - - pax-mark m "${BUILD_DIR}"/bin/llvm-rtdyld - pax-mark m "${BUILD_DIR}"/bin/lli - pax-mark m "${BUILD_DIR}"/bin/lli-child-target - - if use test; then - pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/Orc/OrcJITTests - pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/MCJIT/MCJITTests - pax-mark m "${BUILD_DIR}"/unittests/Support/SupportTests - fi -} - -multilib_src_test() { - # respect TMPDIR! - local -x LIT_PRESERVES_TMP=1 - cmake_build check -} - -src_install() { - local MULTILIB_CHOST_TOOLS=( - /usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-config - ) - - local MULTILIB_WRAPPED_HEADERS=( - /usr/include/llvm/Config/llvm-config.h - ) - - local LLVM_LDPATHS=() - multilib-minimal_src_install - - # move wrapped headers back - mv "${ED}"/usr/include "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include || die -} - -multilib_src_install() { - DESTDIR=${D} cmake_build install-distribution - - # move headers to /usr/include for wrapping - rm -rf "${ED}"/usr/include || die - mv "${ED}"/usr/lib/llvm/${LLVM_MAJOR}/include "${ED}"/usr/include || die - - LLVM_LDPATHS+=( "${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)" ) -} - -multilib_src_install_all() { - local revord=$(( 9999 - ${LLVM_MAJOR} )) - newenvd - "60llvm-${revord}" <<-_EOF_ - PATH="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin" - # we need to duplicate it in ROOTPATH for Portage to respect... - ROOTPATH="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin" - MANPATH="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man" - LDPATH="$( IFS=:; echo "${LLVM_LDPATHS[*]}" )" - _EOF_ - - docompress "/usr/lib/llvm/${LLVM_MAJOR}/share/man" - llvm_install_manpages -} - -pkg_postinst() { - elog "You can find additional opt-viewer utility scripts in:" - elog " ${EROOT}/usr/lib/llvm/${LLVM_MAJOR}/share/opt-viewer" - elog "To use these scripts, you will need Python along with the following" - elog "packages:" - elog " dev-python/pygments (for opt-viewer)" - elog " dev-python/pyyaml (for all of them)" -} diff --git a/sys-devel/mold/Manifest b/sys-devel/mold/Manifest index 60ee5fb52ade..926bd0eff674 100644 --- a/sys-devel/mold/Manifest +++ b/sys-devel/mold/Manifest @@ -12,6 +12,6 @@ EBUILD mold-2.30.0.ebuild 2456 BLAKE2B f91748ee6adfab7956209111c5e26711db20ad701 EBUILD mold-2.31.0.ebuild 2366 BLAKE2B 8a846ee78ce57c15d2accd3eafb81579bdac81cd5413f12be3dee97a05d66e026cbf1bf51bc414d52d32785f00babb88437a6adbc52a166e16be9499ca9cbb6c SHA512 68d276a3897dd8ca2a27a1a1f4afc056ab05619d57cc5b8a41367c5550a1d1ac399dfc2ed2c75f34fb1c69cffc5d73a1df998156e3c33309aaca7d0ba3050f0e EBUILD mold-2.32.0.ebuild 2404 BLAKE2B e0dec3ee1e668a31d8e5155f84b60431f8bcc1fec32dbcce73e170c8617faecf2b193b235009cf5dcbeccb4d4396b2ea9a564f8cb2fbc78569ca5c05761145c2 SHA512 780ca7ac4280acf0155c73316dcfdac1dd92316330c0a071ac9ed56367c82af1c9ea07d3d9cd3f6236505912db530a17b39340e1dbe6e6111b813e1c88535260 EBUILD mold-2.32.1.ebuild 2449 BLAKE2B c1450c08670b802103a27f92fe67333437d1cb01b040baf459cbdbb366e6c4e078d07beb9464b9e96e46eef32013d723a0a310abe3abfd07855a159bbeb78695 SHA512 4218400fcb2b2de8c325047708d741158979a3c2655b72b4325485ae2d750ece53c6833a27e4381d7f9bc73990ce50d2dd4079a5400901983d9ea14a7dc30183 -EBUILD mold-2.33.0.ebuild 2404 BLAKE2B e0dec3ee1e668a31d8e5155f84b60431f8bcc1fec32dbcce73e170c8617faecf2b193b235009cf5dcbeccb4d4396b2ea9a564f8cb2fbc78569ca5c05761145c2 SHA512 780ca7ac4280acf0155c73316dcfdac1dd92316330c0a071ac9ed56367c82af1c9ea07d3d9cd3f6236505912db530a17b39340e1dbe6e6111b813e1c88535260 +EBUILD mold-2.33.0.ebuild 2409 BLAKE2B 770982e41dec11dd488e13a581c75744239897bacc5f8742491f19d4fefe6718971e54ef274ce61e6cff9f83df0b97320a15aac26a6d970c11f1d6953ecce4bf SHA512 7f8968d75136cf5c763e5127a5f26cd60ab4bce97dc5048292393053788de2b17858738b67c43fffe9920f28b9694a7f54fc17da95bc6efd30c477b5ae6260f6 EBUILD mold-9999.ebuild 2404 BLAKE2B e0dec3ee1e668a31d8e5155f84b60431f8bcc1fec32dbcce73e170c8617faecf2b193b235009cf5dcbeccb4d4396b2ea9a564f8cb2fbc78569ca5c05761145c2 SHA512 780ca7ac4280acf0155c73316dcfdac1dd92316330c0a071ac9ed56367c82af1c9ea07d3d9cd3f6236505912db530a17b39340e1dbe6e6111b813e1c88535260 MISC metadata.xml 424 BLAKE2B a1c0cbdcb86c323fa1e6143c9665ec548f7713e74002a25b2fc26c51b60dae00922d3448a5aaecd5027a8cb026a681386ca7dea90657a3e10b25fb194dafc0d3 SHA512 1adc934e78ca0210743a1aa7479ebc4b5ea0b66a348c4408423460f02b404b885d3a8eca6e89ea8ac53ac9c76e85116965f1eef79e3f3e1f0451c8cf5ce0dfd6 diff --git a/sys-devel/mold/mold-2.33.0.ebuild b/sys-devel/mold/mold-2.33.0.ebuild index 638c34d50c92..c125e91b311b 100644 --- a/sys-devel/mold/mold-2.33.0.ebuild +++ b/sys-devel/mold/mold-2.33.0.ebuild @@ -12,7 +12,7 @@ if [[ ${PV} == 9999 ]] ; then inherit git-r3 else SRC_URI="https://github.com/rui314/mold/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~sparc ~x86" + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~riscv ~sparc ~x86" fi # mold (MIT) |