diff options
author | V3n3RiX <venerix@koprulu.sector> | 2023-01-03 02:25:09 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2023-01-03 02:25:09 +0000 |
commit | 384d032fe7e048bb10cc9bc9881835c92d7e104c (patch) | |
tree | 59b969fdecd674b649820312bfa0b0f6043c25a0 /sys-devel | |
parent | 7a13078cb414752df1133d1767cc29260dc60fda (diff) |
gentoo auto-resync : 03:01:2023 - 02:25:09
Diffstat (limited to 'sys-devel')
19 files changed, 461 insertions, 28 deletions
diff --git a/sys-devel/Manifest.gz b/sys-devel/Manifest.gz Binary files differindex 9525e0dde1e2..4a76995882a4 100644 --- a/sys-devel/Manifest.gz +++ b/sys-devel/Manifest.gz diff --git a/sys-devel/binutils-config/Manifest b/sys-devel/binutils-config/Manifest index 801481bcec79..9bbbd21d7da8 100644 --- a/sys-devel/binutils-config/Manifest +++ b/sys-devel/binutils-config/Manifest @@ -1,4 +1,6 @@ DIST binutils-config-5.4.1.tar.xz 7328 BLAKE2B 51f0ca625abfd964cc1b6c902017edc9790da1d33a44b3da64e3b2c68ed245fc1c0eb8b3fb999f6acb88e614f47e2f53e19b456b03c069bb61cd0f39e85d786d SHA512 af12644d591152f45d573bee0499b21c293b68a9b81626e9e1d46d5a7dc40e9a24642364bdb2bce52d61cbe3d2e045f4ab6e50a9827648a820bac885f20239cd +DIST binutils-config-5.5.tar.xz 7344 BLAKE2B decef43013ca2f7c6d36c12d08d55f499d866b6b1b55ed58f8b2df3761077b5e2c4d09d1f2c40762d42c2d3b9827575833a502b79180ef13b845f1a39a5f2feb SHA512 6f6e21799b47e38cd61621e4ec018dc0db4811f363c0817025c3e3be651d3790b30a0cab233f35fe40b1d57c88daa246037f24a7488187f4e47cca589d87d45b EBUILD binutils-config-5.4.1.ebuild 1126 BLAKE2B 6da0f53323a2c0755b2f8d141987fe36e0111a5c0ad9521d0d44e732b99acd9e77fa02ed4acfaf7c8fc316766413a45dcbad35b8b3eda9cff7652e6ec8bffc99 SHA512 0a212654204abb57213262d805ee9dbc43a31a680d0fa2b0dd2d2a6c61d4a11c640b55182059c2a5e87d5b99a288859ff534921a865783c7d29d2b80b26b8400 -EBUILD binutils-config-9999.ebuild 1062 BLAKE2B 871d73773d58fb6daa77032d44a1cec845db2d17150182440a41f76c1cf8f9fbb28b66dc3d0455f0f5eff18ff4f9e27c91907d6e0c5a6258ef6a9211ee25d7d7 SHA512 5ee3b41b923e06e03b3e77cf329e83da6b22a4cce8a38375caf1aaf2965216a013df4de5ddc880235c1cebd3a03735e6bbdf9890763d32242c70e05a2d06bc28 +EBUILD binutils-config-5.5.ebuild 1069 BLAKE2B 3b46ec51c9c3515a0a01f0bdfbc2728b5f8337bf034b48746b0db7339454019e04c5c0a259a94e3f9eabbb1758ff2e64cf248abad31174652f7c571cca5660a0 SHA512 75edeb0cacc3546068cd57050cb08089aba3f4a8dbd7cfef4205a6ff1dd5b36350351a385a1d4ee381afae09829fc9a460473ff67158bfdd009511cf5dff1f41 +EBUILD binutils-config-9999.ebuild 1069 BLAKE2B 3b46ec51c9c3515a0a01f0bdfbc2728b5f8337bf034b48746b0db7339454019e04c5c0a259a94e3f9eabbb1758ff2e64cf248abad31174652f7c571cca5660a0 SHA512 75edeb0cacc3546068cd57050cb08089aba3f4a8dbd7cfef4205a6ff1dd5b36350351a385a1d4ee381afae09829fc9a460473ff67158bfdd009511cf5dff1f41 MISC metadata.xml 417 BLAKE2B f165e42734eb89e8c79fcd95bdbaef4ce0e80380867998cb649a669fea3ded3ce7326cca436cd6a5509b7a8948b3c7f01aea05b344f71ea5262517e67719448c SHA512 ed23d5be8b16265068b32816b4984e8cd07e62da7ab6a0adbcea1a826366f2844ad06b087c7b753d1b3a145b761608b83794133c0f84dfbe24b5703fb93344ac diff --git a/sys-devel/binutils-config/binutils-config-5.5.ebuild b/sys-devel/binutils-config/binutils-config-5.5.ebuild new file mode 100644 index 000000000000..4a85f28d4cdb --- /dev/null +++ b/sys-devel/binutils-config/binutils-config-5.5.ebuild @@ -0,0 +1,39 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +if [[ ${PV} == 9999 ]]; then + EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/binutils-config.git" + inherit git-r3 +else + SRC_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}.tar.xz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi + +DESCRIPTION="Utility to change the binutils version being used" +HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Toolchain" + +LICENSE="GPL-2" +SLOT="0" +IUSE="+native-symlinks" + +# We also RDEPEND on sys-apps/findutils which is in base @system +RDEPEND="sys-apps/gentoo-functions" + +src_compile() { + emake PV="${PV}" USE_NATIVE_LINKS="$(usex native-symlinks)" +} + +src_install() { + emake DESTDIR="${D}" PV="${PV}" install +} + +pkg_postinst() { + # Re-register all targets. USE flags or new versions can change + # installed symlinks. + local x + for x in $(binutils-config -C -l 2>/dev/null | awk '$NF == "*" { print $2 }') ; do + binutils-config ${x} + done +} diff --git a/sys-devel/binutils-config/binutils-config-9999.ebuild b/sys-devel/binutils-config/binutils-config-9999.ebuild index 0282c67448af..4a85f28d4cdb 100644 --- a/sys-devel/binutils-config/binutils-config-9999.ebuild +++ b/sys-devel/binutils-config/binutils-config-9999.ebuild @@ -1,14 +1,14 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 if [[ ${PV} == 9999 ]]; then EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/binutils-config.git" inherit git-r3 else SRC_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" fi DESCRIPTION="Utility to change the binutils version being used" diff --git a/sys-devel/clang-common/Manifest b/sys-devel/clang-common/Manifest index 416c16d13574..bd73e12558ad 100644 --- a/sys-devel/clang-common/Manifest +++ b/sys-devel/clang-common/Manifest @@ -11,10 +11,12 @@ DIST llvmorg-13.0.1.tar.gz 147290251 BLAKE2B 2a44b012a672501761d0c27c6b3a315b69b EBUILD clang-common-13.0.1.ebuild 593 BLAKE2B f7d78facc226d949240f31d10bb01f6a2bbe3c806d7f7c22a78d715d29de74723bedccdeefd029d309b090afe63821e10a1bd27662ff156640820fbca1896bab SHA512 48e5c5f3d4716c15018aa246cf61fbf898c4c459b1f04710da155084a8cf5b8a6df7697c300d297ac48ee1a8a8cff9bc9b4fca712455032f78cb26e9f77ef955 EBUILD clang-common-14.0.6.ebuild 541 BLAKE2B 87b158e874cf600e23591a8095e0edb4d30d4482600ef8fe38984e9ba9559e6e2226107cd482f355d950392a6a452e1a8ae79d297d5afc3951a7f1c8f6227b5f SHA512 1bd0481468c278f131ec9f87243927b60a59752f4229450559bf8016e9599155a52593810fcdc1cf0aecd4aa1529e8df300d95123a53de18eb326152caafbbef EBUILD clang-common-15.0.5.ebuild 3509 BLAKE2B be227d48c3e032de6029d5030eca900d53d2cc0a3fd46323130449a99888f4ab5ccaf73aa14b461b5300ceca70b8c52281bd20a1f71357027f9adc8f638820f2 SHA512 bd511cea98bb9477abbb379bab1bdd2afd2c6f5c255be79792289e11f789322490ec45dbfb76e644179a2fcd2e7ea0314a4abedce111d4f35bc1c51548834e7b -EBUILD clang-common-15.0.6.9999.ebuild 3432 BLAKE2B 92679a03e3a45df587198ce70dfaebbc674c47229b14040c93353dd4c384636df7ff6591138c8aedf00fcee0f75edef3fc9f3257058f1d8fcdcade0c2be8c244 SHA512 e33fd7582bbe2d3ad4ed3405a92db98d7365d040df39f7e32d2f75b093e346ec88230813c607983398f9c310bc0925b61d9b438905e8177665db123e1b7d064c +EBUILD clang-common-15.0.6-r1.ebuild 4466 BLAKE2B 7abd03df2be81d2d63631facd99c92c40f9adbc265ea0da860c4dd31ba74fd1bedce28152534a1216f5001702d133840b6aceeaac04e28f417a6ab2bc37bb81c SHA512 c7965d4f162fc7e6ab79afca3c15faabccc7cf783e96cef61caab7cb7bc11a4d5a207dd84829ff04206c99bcceb7a29e225db760134e9d95e437da9e498f1af0 +EBUILD clang-common-15.0.6.9999.ebuild 4382 BLAKE2B f1f02175915bab974fd00560a2f5d2e15c2eddfe73734d98690fbbf9fef8690fdd86aa645e2d9d46818cdf5ad8b20e4466735fc5386c2bc798b610531cb483ff SHA512 486b642fcbe56d28964b4682c9e236d95cf8ea4769c2db6c6c57102a3f7b02a4466e89f4e5a8ca5b0b229d5d458d3fb306bdf92cc08c2dd7f7b973502461b855 EBUILD clang-common-15.0.6.ebuild 3514 BLAKE2B cf083c79b37a0fb37ccfada41de423024732e7ab6e3b84cd771db1f7665376bf8432c787e298cd9d964d30df46e1e360a10970c8bdb1031fecce4b3776c13845 SHA512 5eeaf65d577ee9569787e98bddee4837ef9cef9e9c0a917a23cb13eb92b6275bd556f3bb9802d4934c311f6fae4a5d3de8939aac1d6de676b5eab1359b77f13e -EBUILD clang-common-16.0.0.9999.ebuild 3569 BLAKE2B fa58a81a826ae45c5287dcd49ba78ad5a5da4cbcdf7f28def7d8691fef5d622ac3dfb116e21b642f143a541d8cb4cdd136056f3d488dc3d4d8fed6383ed55c04 SHA512 3032daff6a584f1b3490738c967e38f26d860841d606e649c394c18237de3cf71c4ae91ce33ac6ca8f8c991e670b750023c10210626f9cdf7e7e3961405885b7 +EBUILD clang-common-16.0.0.9999.ebuild 4519 BLAKE2B 4e300b5e2f17d1d0dcb77ba9f45eb49c7cbc0f2616d5ffb6be31b3a131c3364921850330ff44e52b8adc0e009a66504ce06c08c223d0e99a1a5b8e12b8757195 SHA512 e353f1e6b69c695d23f85f0c0b542658d3cdb37bb102ab0cf106c81545f03eafaa8d720d31535e37523e276bbdeb31e9c0fd8d9b0754b64404eb8ba15bbe380e EBUILD clang-common-16.0.0_pre20221217.ebuild 3575 BLAKE2B 1c2007779af34e1fcb365371e266e0dc86e675792c28a02f53615e207239ab259ee7a71ac2d971a7833a1872409ceb8f8fe95a50e45ef3b8c948af3184dabc38 SHA512 97568c6737ac321f46782ce784a30c31a3d1ce6d2839e38cabfdde9becf56a1b44f2c05ab108fe18681ca021ad8f4d8d6161c5afce773f6b137d2d11f21177ad EBUILD clang-common-16.0.0_pre20221226.ebuild 3575 BLAKE2B 1c2007779af34e1fcb365371e266e0dc86e675792c28a02f53615e207239ab259ee7a71ac2d971a7833a1872409ceb8f8fe95a50e45ef3b8c948af3184dabc38 SHA512 97568c6737ac321f46782ce784a30c31a3d1ce6d2839e38cabfdde9becf56a1b44f2c05ab108fe18681ca021ad8f4d8d6161c5afce773f6b137d2d11f21177ad +EBUILD clang-common-16.0.0_pre20230101-r1.ebuild 4519 BLAKE2B 89425906fde3374711d4ef9a7086b8514c75dc012bcd311a043f3fe2e414f5337999c1ea9cc972a44a582d2646d1dbda4cc8304a007ff19e501a99b6e935ec11 SHA512 29fecb142fc834923adad828c62e8d049d54f349021a012e2fce1efd30af3b666dc77b23d06f343b39e29aca2244a1192c777e4a48950c79e362fc250020855d EBUILD clang-common-16.0.0_pre20230101.ebuild 3569 BLAKE2B 5aaee932ed1421cb5dc595d2a236eb84e8df04922625e05c24d8e07f7d00589c9251b0eebaab0dc47858cc1e4206fe26487e9708e824c376b607ab8de09f871d SHA512 f05d7cd43849c81fce6f31c6a97c8122351e87f9a98950edfd6ae9fa32097036be52e31444000e9a1fecd3cf761bfd3d9999842a4f941883dafaedfb657cd946 MISC metadata.xml 735 BLAKE2B 12ea133df3d7eb9367a65e572ef91893e654d5b77caa27c66e4b5b41ba90ebc5e619eb78dfff2a67183d2c1cbfcf35fa903b2bb75604ce153d5cedfce5346e3c SHA512 8ed6b12d4f2aa1985897a8d81ce898dbc0d14ac222f3d0f259cbe80fbb8b2349dff7677627daeaf39a422f290200da4fac6348abc81c9e35da0ca73a11cfdd83 diff --git a/sys-devel/clang-common/clang-common-15.0.6-r1.ebuild b/sys-devel/clang-common/clang-common-15.0.6-r1.ebuild new file mode 100644 index 000000000000..7ec66f0dd663 --- /dev/null +++ b/sys-devel/clang-common/clang-common-15.0.6-r1.ebuild @@ -0,0 +1,159 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit bash-completion-r1 llvm.org + +DESCRIPTION="Common files shared between multiple slots of clang" +HOMEPAGE="https://llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos" +IUSE=" + default-compiler-rt default-libcxx default-lld llvm-libunwind + hardened stricter +" + +PDEPEND=" + sys-devel/clang:* + default-compiler-rt? ( + sys-devel/clang-runtime[compiler-rt] + llvm-libunwind? ( sys-libs/llvm-libunwind ) + !llvm-libunwind? ( sys-libs/libunwind ) + ) + !default-compiler-rt? ( sys-devel/gcc ) + default-libcxx? ( >=sys-libs/libcxx-${PV} ) + !default-libcxx? ( sys-devel/gcc ) + default-lld? ( sys-devel/lld ) + !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 +} + +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 + EOF + + # Baseline hardening (bug #851111) + newins - gentoo-hardened.cfg <<-EOF + -fstack-clash-protection + -fstack-protector-strong + -fPIE + -include "${ESYSROOT}/usr/include/gentoo/fortify.h" + EOF + + dodir /usr/include/gentoo + + 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 + #ifndef _FORTIFY_SOURCE + #if defined(__OPTIMIZE__) && __OPTIMIZE__ > 0 + #define _FORTIFY_SOURCE ${fortify_level} + #endif + #endif + EOF + + if use hardened ; then + cat >> "${ED}/etc/clang/gentoo-hardened.cfg" <<-EOF || die + -D_GLIBCXX_ASSERTIONS + + # Analogue to GLIBCXX_ASSERTIONS + # https://libcxx.llvm.org/UsingLibcxx.html#assertions-mode + -D_LIBCPP_ENABLE_ASSERTIONS=1 + EOF + fi + + if use stricter; then + newins - gentoo-stricter.cfg <<-EOF + # This file increases the strictness of older clang versions + # to match the newest upstream version. + + # clang-16 defaults + -Werror=implicit-function-declaration + -Werror=implicit-int + -Werror=incompatible-function-pointer-types + EOF + + cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die + @gentoo-stricter.cfg + EOF + fi + + local tool + for tool in clang{,++,-cpp}; do + newins - "${tool}.cfg" <<-EOF + # This configuration file is used by ${tool} driver. + @gentoo-common.cfg + EOF + done +} + +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-15.0.6.9999.ebuild b/sys-devel/clang-common/clang-common-15.0.6.9999.ebuild index 3e43f51a0aab..709c93681448 100644 --- a/sys-devel/clang-common/clang-common-15.0.6.9999.ebuild +++ b/sys-devel/clang-common/clang-common-15.0.6.9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -13,7 +13,7 @@ SLOT="0" KEYWORDS="" IUSE=" default-compiler-rt default-libcxx default-lld llvm-libunwind - stricter + hardened stricter " PDEPEND=" @@ -86,8 +86,41 @@ src_install() { # This file contains flags common to clang, clang++ and clang-cpp. @gentoo-runtimes.cfg @gentoo-gcc-install.cfg + @gentoo-hardened.cfg EOF + # Baseline hardening (bug #851111) + newins - gentoo-hardened.cfg <<-EOF + -fstack-clash-protection + -fstack-protector-strong + -fPIE + -include "${ESYSROOT}/usr/include/gentoo/fortify.h" + EOF + + dodir /usr/include/gentoo + + 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 + #ifndef _FORTIFY_SOURCE + #if defined(__OPTIMIZE__) && __OPTIMIZE__ > 0 + #define _FORTIFY_SOURCE ${fortify_level} + #endif + #endif + EOF + + if use hardened ; then + cat >> "${ED}/etc/clang/gentoo-hardened.cfg" <<-EOF || die + -D_GLIBCXX_ASSERTIONS + + # Analogue to GLIBCXX_ASSERTIONS + # https://libcxx.llvm.org/UsingLibcxx.html#assertions-mode + -D_LIBCPP_ENABLE_ASSERTIONS=1 + EOF + fi + if use stricter; then newins - gentoo-stricter.cfg <<-EOF # This file increases the strictness of older clang versions diff --git a/sys-devel/clang-common/clang-common-16.0.0.9999.ebuild b/sys-devel/clang-common/clang-common-16.0.0.9999.ebuild index e9669ee1adcc..1b9640fcebe0 100644 --- a/sys-devel/clang-common/clang-common-16.0.0.9999.ebuild +++ b/sys-devel/clang-common/clang-common-16.0.0.9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -13,7 +13,7 @@ SLOT="0" KEYWORDS="" IUSE=" default-compiler-rt default-libcxx default-lld llvm-libunwind - stricter + hardened stricter " PDEPEND=" @@ -86,8 +86,41 @@ src_install() { # This file contains flags common to clang, clang++ and clang-cpp. @gentoo-runtimes.cfg @gentoo-gcc-install.cfg + @gentoo-hardened.cfg EOF + # Baseline hardening (bug #851111) + newins - gentoo-hardened.cfg <<-EOF + -fstack-clash-protection + -fstack-protector-strong + -fPIE + -include "${ESYSROOT}/usr/include/gentoo/fortify.h" + EOF + + dodir /usr/include/gentoo + + 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 + #ifndef _FORTIFY_SOURCE + #if defined(__OPTIMIZE__) && __OPTIMIZE__ > 0 + #define _FORTIFY_SOURCE ${fortify_level} + #endif + #endif + EOF + + if use hardened ; then + cat >> "${ED}/etc/clang/gentoo-hardened.cfg" <<-EOF || die + -D_GLIBCXX_ASSERTIONS + + # Analogue to GLIBCXX_ASSERTIONS + # https://libcxx.llvm.org/UsingLibcxx.html#assertions-mode + -D_LIBCPP_ENABLE_ASSERTIONS=1 + EOF + fi + if use stricter; then newins - gentoo-stricter.cfg <<-EOF # This file increases the strictness of older clang versions diff --git a/sys-devel/clang-common/clang-common-16.0.0_pre20230101-r1.ebuild b/sys-devel/clang-common/clang-common-16.0.0_pre20230101-r1.ebuild new file mode 100644 index 000000000000..350245ab982e --- /dev/null +++ b/sys-devel/clang-common/clang-common-16.0.0_pre20230101-r1.ebuild @@ -0,0 +1,165 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit bash-completion-r1 llvm.org + +DESCRIPTION="Common files shared between multiple slots of clang" +HOMEPAGE="https://llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" +SLOT="0" +KEYWORDS="" +IUSE=" + default-compiler-rt default-libcxx default-lld llvm-libunwind + hardened stricter +" + +PDEPEND=" + sys-devel/clang:* + default-compiler-rt? ( + sys-devel/clang-runtime[compiler-rt] + llvm-libunwind? ( sys-libs/llvm-libunwind ) + !llvm-libunwind? ( sys-libs/libunwind ) + ) + !default-compiler-rt? ( sys-devel/gcc ) + default-libcxx? ( >=sys-libs/libcxx-${PV} ) + !default-libcxx? ( sys-devel/gcc ) + default-lld? ( sys-devel/lld ) + !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 +} + +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 + EOF + + # Baseline hardening (bug #851111) + newins - gentoo-hardened.cfg <<-EOF + -fstack-clash-protection + -fstack-protector-strong + -fPIE + -include "${ESYSROOT}/usr/include/gentoo/fortify.h" + EOF + + dodir /usr/include/gentoo + + 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 + #ifndef _FORTIFY_SOURCE + #if defined(__OPTIMIZE__) && __OPTIMIZE__ > 0 + #define _FORTIFY_SOURCE ${fortify_level} + #endif + #endif + EOF + + if use hardened ; then + cat >> "${ED}/etc/clang/gentoo-hardened.cfg" <<-EOF || die + -D_GLIBCXX_ASSERTIONS + + # Analogue to GLIBCXX_ASSERTIONS + # https://libcxx.llvm.org/UsingLibcxx.html#assertions-mode + -D_LIBCPP_ENABLE_ASSERTIONS=1 + EOF + fi + + if use stricter; then + newins - gentoo-stricter.cfg <<-EOF + # This file increases the strictness of older clang versions + # to match the newest upstream version. + + # clang-16 defaults + -Werror=implicit-function-declaration + -Werror=implicit-int + -Werror=incompatible-function-pointer-types + + # constructs banned by C2x + -Werror=deprecated-non-prototype + + # deprecated but large blast radius + #-Werror=strict-prototypes + EOF + + cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die + @gentoo-stricter.cfg + EOF + fi + + local tool + for tool in clang{,++,-cpp}; do + newins - "${tool}.cfg" <<-EOF + # This configuration file is used by ${tool} driver. + @gentoo-common.cfg + EOF + done +} + +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/llvm/Manifest b/sys-devel/llvm/Manifest index 09f4075ad4bb..65c74fa7ae66 100644 --- a/sys-devel/llvm/Manifest +++ b/sys-devel/llvm/Manifest @@ -17,13 +17,13 @@ DIST llvm-project-b20dd2b186fdc76828219b705a2b58f5830f4b9d.tar.gz 175044630 BLAK DIST llvm-project-dfc20708bcdf7b4c4bea8595fc4ac8674634d5e6.tar.gz 174878013 BLAKE2B 9c37423ae2a85a9d4a17fba97733cf808ebc98fa1488fb02e8c3e23039511154a220184af1bc6950c857b7d3c528d01e3dde5441c18903f25a7d7b7781e08f9b SHA512 146d6ab53cce257c21ae202b887bbb77b017f883cf26337bd3af29289cd828aabf95c528c6c192473c3cafb7e803940261f32a8fab6130deca01ccd5576c78eb DIST llvm-project-fb792ebaf2114ad11d673cf891ae560e2e604711.tar.gz 174312496 BLAKE2B dd7f30b911ef5049e9e2bff7b2768e31b48b1f4c7acaf159f535fe3deb5aa6630fdf7857c83fffcda1119a38a52101490d2b6cb41cb295bb7dd85cde0445b7ee SHA512 bef15e7d82a2faf8be24f784d3d34ff9b21c8f17256879587ea5471011a32a1eb885e1b020da55aa096f2e0b5fe4bcf9fe8f0f5b5d34f5f386c48899c68fb7d1 DIST llvmorg-13.0.1.tar.gz 147290251 BLAKE2B 2a44b012a672501761d0c27c6b3a315b69bfef0cd13b078a7e7d2fccc4a9c8c0f2bee0f164c4271c9106b0a99cb06e8b64986f66253b613336719fb86b82541b SHA512 9a8cb5d11964ba88b7624f19ec861fb28701f23956ea3c92f6ac644332d5f41fde97bd8933dd3ee70ed378058c252fa3a3887c8d1af90d219970c2b27691166f -EBUILD llvm-13.0.1.ebuild 12006 BLAKE2B 06535b1c0f568959b526a1e198361a8db46bea1ec37bf694438b0c0721741f61b340460d383f0693bcc45a27004c2ae6342c5fb97a2f276e9f7b2a160dbf90f1 SHA512 9c3f6c38f672bb1d8edba76e689fc567c797fa8d2410d7924b6121527e85709bf66f8ef5f475f9d0632b06b4da211c3ba6a9825c92fb6914b76bb06e93f19a5c -EBUILD llvm-14.0.6-r2.ebuild 12381 BLAKE2B 736afa7fbf7321ce4370e892075e716e6efb23981b4e9d235d60784c7548c6b62590527753e2752f80b4a4eafc04096fbd6ec5b8efbba88de08f322262361eda SHA512 1c800cea06768c48fe7c0944e4b4c9227f11ffbf9605ca52e487646385eeeaab5acca8aaba0e66b21b2939505533f562fe40ac5b23533adf0e42898e163a9620 -EBUILD llvm-15.0.5.ebuild 12536 BLAKE2B 857d7c1fbf7ed1963aff58933f8370c4f8d927c123be5b23943e7330f4b28057904caec9991043411e76a63926282fbd907aa112fbd8adf7f352c5a2434e3206 SHA512 3b054ea539972bdb8757fb6c63c2a6ed5d3bd4ca6236d2670483dd67d6158edb6d03bce390f5ed88bfff121de9b354146f5dd34f13f7ce1e39c281a7951c2d02 -EBUILD llvm-15.0.6.9999.ebuild 12457 BLAKE2B 52496ac8ef1cb0d61f1f7c6dc5b3db0a0778d841ad67c983c140b0c7858125bd34bdbab31fd1862e5b6c6eca4554764dd1dd2422268ef485c6ee8ecf8fcf3c57 SHA512 0e4e356633dc5d9660e0d440f74ef709ebf88919cec1cb2f317c3744000e8db25e0036be3404a01dd8817ff8e77c64f95c38a27c8cd8e9445e7f037a0a8a5f7b -EBUILD llvm-15.0.6.ebuild 12541 BLAKE2B c2db6e18e43722ae466e91cd2336fff3cb3c9d4fe9e7bc4d558e561407f11501ef5c7888c14858406aa8bec0625bc7b47a4d5e523161d8569f4bae0a55be1ef2 SHA512 163ee968338010e7c7eaa335a8aa1ab3a659a721206e56675283f2531b106886bc9767327269db017bf942d4d25c22bb8fa396925a16077f7c02e2a70b4f1dbd -EBUILD llvm-16.0.0.9999.ebuild 12584 BLAKE2B 54adab5484a93dcea378220dbeea3cc461be770e5a6484bfae3c5bef0866ebb42c1c3996244a02789fa76ecd7fd9dcb81b6c186389cba34b6be584af47a4f98d SHA512 cb1d3a09c4d3745b18a718e3d497f72b563726db4badeaf24a87972c3ac8be5021a00be98ec1f49cac33ac0e4915386e2c62c614c37665d0d7109bed510a7cba -EBUILD llvm-16.0.0_pre20221217.ebuild 12590 BLAKE2B 16512fc7c4eb6c9aa1997883e9ebc637f443339b4bf742dc1e802b84d47dc833d9f63c15bb7be7eb835f869d8f5cdb99390953be8e7bcf468b8e118f354a3a77 SHA512 3ef9826bad76a4439bc65bdbdba5c37de8ab6b49f4451b7a2c146fadb56fccd3bf2885bfb065616b422504ee0b05098083db0f30e38ef2ea4b43539b7347b545 -EBUILD llvm-16.0.0_pre20221226.ebuild 12590 BLAKE2B 16512fc7c4eb6c9aa1997883e9ebc637f443339b4bf742dc1e802b84d47dc833d9f63c15bb7be7eb835f869d8f5cdb99390953be8e7bcf468b8e118f354a3a77 SHA512 3ef9826bad76a4439bc65bdbdba5c37de8ab6b49f4451b7a2c146fadb56fccd3bf2885bfb065616b422504ee0b05098083db0f30e38ef2ea4b43539b7347b545 -EBUILD llvm-16.0.0_pre20230101.ebuild 12584 BLAKE2B 65d81875bbb3d9b562bb719bc48efb40e672cb2c85d3be93e2e51ba7545c416d5c5818021aa9654215b8067ec40bba7ed6775cb7534c310eff6e22eb86c4be5a SHA512 03113d290778d1cd7ad93254f1ef1480e42ab202f715d471bcbed295a084d2db773f8e669ec0792c607da43afdf6e51b88406932a76049c4b38c58bf1606cfcd +EBUILD llvm-13.0.1.ebuild 12004 BLAKE2B 18e03c138b0626e20f853d747a9198b4e7a075d463ebe430970a7d22b358c0904956a7caf3c6493a8bff33023c8bc6839abdf4e76183e6e1192ad291953be070 SHA512 026c908326d756b1832721443cfc364b0f913ffc4fa28c75ed9a36960fa46773d00aa9399a4dfe9027a4b5d5d4375a31d332319e99c22ee44dc678216825cb96 +EBUILD llvm-14.0.6-r2.ebuild 12379 BLAKE2B 4bd06fdd9b1d80271b1a4f9d15e1490366ba93552b27869dbc44102ca83aad332b342842d1336ee7c8cda6be59bad5ddde94786da366aa54526e8d12d830bf79 SHA512 51f33f6bea4c485aac87493fc9ba3653c0b53cec9381d09af1903aba53aa0989018fa1837f4ff90e76cc0650051c7bfe1dcf41478bed034ca472d767c1747b3f +EBUILD llvm-15.0.5.ebuild 12534 BLAKE2B 6fdd46644c5af6d66df29d3cbb0c0a6cbabe18c2f835933ac6f18fc9927cda59fafd666bb2e6cb78faf3cfa59a04138a7d4ee6550ed949a02ce8fec0ce091fea SHA512 0b1c4f8ab1ebf96caee0cdf45422c88a62717fe1fa63b04469fc31ba019240677ddbf300d38e920d070e08c2cdc6b643bb6d47f1a79e5e5d16f95944c3b99142 +EBUILD llvm-15.0.6.9999.ebuild 12455 BLAKE2B 6328d88b87424a7aa5907921f172b5fe41a8f786566e608e4e22d434736d9077b3887d2faaabf7e2534622666dfb583fca083c724e24a4e1654a5d610099f709 SHA512 03c3ecd569376654514d257ab4dbfad9ab4c308ebfc6af412f6182a8cd9fa6e9ae861bf75a01f62c4a00122343f4c8eb8d56200fb4b3d512bc3bd7e9a0da1e4f +EBUILD llvm-15.0.6.ebuild 12539 BLAKE2B db4440b301621d4ce5f95fca7fffcd6954d369775afd97db88e47fd44618d5ebf0c5ca940defc6da0f03a3e2ec9aab9968c1bb3a3bd98fde70f1f60b807cdad7 SHA512 bd73698c9f7011973b93dc5771b7c8077cbe962ea3293e4ca6343e75b882d267cb2ebe4976f363b3d6b9905aa2ff6a8f22d7a2fe5f88154bc56e15a7a5c54472 +EBUILD llvm-16.0.0.9999.ebuild 12582 BLAKE2B 8d8b29cc556a6d66479978901d1fe822626a8a76a40ed490efc6169b187fbecaf311c416c5dc5411bea984c1331f54e7f20d6ea9d94ad7cdbc704cc8eed2b010 SHA512 5f16bc579e100124af6e103d2163af5ee86258b02d971a35e2fc7cf6e04acae91b36575168c088847e461ffd643350932020a7194d7e0b4abd0838e7489dded8 +EBUILD llvm-16.0.0_pre20221217.ebuild 12588 BLAKE2B 87e839a23314cb8a8e14a7a9f05bc6f0f2337910110da5744d2b4e3686471111e15d3cacb17ab3e0ceaa1e725a0f4886b3d2e1f097ca705d2b8567127274c5d0 SHA512 207084825039fbff5989ae2c23cab978be1cc13c2c6a956edf5874f59818fedc937f246bab94802b3cd82520470d8be94d2db765cd2781b7a334df7cd9846901 +EBUILD llvm-16.0.0_pre20221226.ebuild 12588 BLAKE2B 87e839a23314cb8a8e14a7a9f05bc6f0f2337910110da5744d2b4e3686471111e15d3cacb17ab3e0ceaa1e725a0f4886b3d2e1f097ca705d2b8567127274c5d0 SHA512 207084825039fbff5989ae2c23cab978be1cc13c2c6a956edf5874f59818fedc937f246bab94802b3cd82520470d8be94d2db765cd2781b7a334df7cd9846901 +EBUILD llvm-16.0.0_pre20230101.ebuild 12582 BLAKE2B dce852432f5a4cca7772f665f0eb94d906eefd56d445ede624a52c15e1515bd63190097c1a066c76b0a5cf44758c47c7e13585ada04e12dbecaf7c1c72741d79 SHA512 8041786516cdbfaca1879392402fd5a6d9623e61e6694b1e48b8e965b0767ad60b19c522d58e945218cfb6a0e0d0270d5f210ab823cc32420bdc4b517ca6ecb0 MISC metadata.xml 2654 BLAKE2B c27983265b6c9b33200ee42565648f30a6cc9c51be53a1cb82a3353d7c1f7aa9c9501c58254280c2880ff2d4992b4834e4b5e2f1c9b1c60e9b21945f234b9973 SHA512 b331d9186908762907f5713b00e357785b62afbee83afefac8701beb1a20f7ebd68df4a030bb82c6f9164719d4ccfcaf16c189833ad40e9f5900c36247d9cff2 diff --git a/sys-devel/llvm/llvm-13.0.1.ebuild b/sys-devel/llvm/llvm-13.0.1.ebuild index cf405c121646..dbaae29ecdd4 100644 --- a/sys-devel/llvm/llvm-13.0.1.ebuild +++ b/sys-devel/llvm/llvm-13.0.1.ebuild @@ -401,7 +401,7 @@ multilib_src_configure() { fi if tc-is-cross-compiler; then - local tblgen="${EPREFIX}/usr/lib/llvm/${SLOT}/bin/llvm-tblgen" + local tblgen="${BROOT}/usr/lib/llvm/${SLOT}/bin/llvm-tblgen" [[ -x "${tblgen}" ]] \ || die "${tblgen} not found or usable" mycmakeargs+=( diff --git a/sys-devel/llvm/llvm-14.0.6-r2.ebuild b/sys-devel/llvm/llvm-14.0.6-r2.ebuild index 0f53397cf7ae..619870533d1b 100644 --- a/sys-devel/llvm/llvm-14.0.6-r2.ebuild +++ b/sys-devel/llvm/llvm-14.0.6-r2.ebuild @@ -415,7 +415,7 @@ multilib_src_configure() { fi if tc-is-cross-compiler; then - local tblgen="${EPREFIX}/usr/lib/llvm/${SLOT}/bin/llvm-tblgen" + local tblgen="${BROOT}/usr/lib/llvm/${SLOT}/bin/llvm-tblgen" [[ -x "${tblgen}" ]] \ || die "${tblgen} not found or usable" mycmakeargs+=( diff --git a/sys-devel/llvm/llvm-15.0.5.ebuild b/sys-devel/llvm/llvm-15.0.5.ebuild index 86b72d9c66b4..f48a8da1f701 100644 --- a/sys-devel/llvm/llvm-15.0.5.ebuild +++ b/sys-devel/llvm/llvm-15.0.5.ebuild @@ -418,7 +418,7 @@ multilib_src_configure() { fi if tc-is-cross-compiler; then - local tblgen="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-tblgen" + local tblgen="${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-tblgen" [[ -x "${tblgen}" ]] \ || die "${tblgen} not found or usable" mycmakeargs+=( diff --git a/sys-devel/llvm/llvm-15.0.6.9999.ebuild b/sys-devel/llvm/llvm-15.0.6.9999.ebuild index ab36cada7cfb..8f078936032b 100644 --- a/sys-devel/llvm/llvm-15.0.6.9999.ebuild +++ b/sys-devel/llvm/llvm-15.0.6.9999.ebuild @@ -418,7 +418,7 @@ multilib_src_configure() { fi if tc-is-cross-compiler; then - local tblgen="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-tblgen" + local tblgen="${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-tblgen" [[ -x "${tblgen}" ]] \ || die "${tblgen} not found or usable" mycmakeargs+=( diff --git a/sys-devel/llvm/llvm-15.0.6.ebuild b/sys-devel/llvm/llvm-15.0.6.ebuild index e48bc7e27f16..a0f90b636940 100644 --- a/sys-devel/llvm/llvm-15.0.6.ebuild +++ b/sys-devel/llvm/llvm-15.0.6.ebuild @@ -418,7 +418,7 @@ multilib_src_configure() { fi if tc-is-cross-compiler; then - local tblgen="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-tblgen" + local tblgen="${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-tblgen" [[ -x "${tblgen}" ]] \ || die "${tblgen} not found or usable" mycmakeargs+=( diff --git a/sys-devel/llvm/llvm-16.0.0.9999.ebuild b/sys-devel/llvm/llvm-16.0.0.9999.ebuild index ce7bb47d6446..5f54f11fe7fe 100644 --- a/sys-devel/llvm/llvm-16.0.0.9999.ebuild +++ b/sys-devel/llvm/llvm-16.0.0.9999.ebuild @@ -421,7 +421,7 @@ multilib_src_configure() { fi if tc-is-cross-compiler; then - local tblgen="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-tblgen" + local tblgen="${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-tblgen" [[ -x "${tblgen}" ]] \ || die "${tblgen} not found or usable" mycmakeargs+=( diff --git a/sys-devel/llvm/llvm-16.0.0_pre20221217.ebuild b/sys-devel/llvm/llvm-16.0.0_pre20221217.ebuild index 5102c71fb739..9b5f96110a1f 100644 --- a/sys-devel/llvm/llvm-16.0.0_pre20221217.ebuild +++ b/sys-devel/llvm/llvm-16.0.0_pre20221217.ebuild @@ -421,7 +421,7 @@ multilib_src_configure() { fi if tc-is-cross-compiler; then - local tblgen="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-tblgen" + local tblgen="${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-tblgen" [[ -x "${tblgen}" ]] \ || die "${tblgen} not found or usable" mycmakeargs+=( diff --git a/sys-devel/llvm/llvm-16.0.0_pre20221226.ebuild b/sys-devel/llvm/llvm-16.0.0_pre20221226.ebuild index 5102c71fb739..9b5f96110a1f 100644 --- a/sys-devel/llvm/llvm-16.0.0_pre20221226.ebuild +++ b/sys-devel/llvm/llvm-16.0.0_pre20221226.ebuild @@ -421,7 +421,7 @@ multilib_src_configure() { fi if tc-is-cross-compiler; then - local tblgen="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-tblgen" + local tblgen="${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-tblgen" [[ -x "${tblgen}" ]] \ || die "${tblgen} not found or usable" mycmakeargs+=( diff --git a/sys-devel/llvm/llvm-16.0.0_pre20230101.ebuild b/sys-devel/llvm/llvm-16.0.0_pre20230101.ebuild index 0e4934164443..a62b3a87d4aa 100644 --- a/sys-devel/llvm/llvm-16.0.0_pre20230101.ebuild +++ b/sys-devel/llvm/llvm-16.0.0_pre20230101.ebuild @@ -421,7 +421,7 @@ multilib_src_configure() { fi if tc-is-cross-compiler; then - local tblgen="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-tblgen" + local tblgen="${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/bin/llvm-tblgen" [[ -x "${tblgen}" ]] \ || die "${tblgen} not found or usable" mycmakeargs+=( |