summaryrefslogtreecommitdiff
path: root/sys-devel/clang-common
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-10-16 04:04:29 +0100
committerV3n3RiX <venerix@koprulu.sector>2024-10-16 04:04:29 +0100
commit61a1cada8ceb208845fa604b982216b0a7b099cb (patch)
treed91d334e3ed29648631d4c04be64001120d48e44 /sys-devel/clang-common
parent45392c898b8ba163e95028bd98896e77f0c73806 (diff)
gentoo auto-resync : 16:10:2024 - 04:04:29
Diffstat (limited to 'sys-devel/clang-common')
-rw-r--r--sys-devel/clang-common/Manifest6
-rw-r--r--sys-devel/clang-common/clang-common-20.0.0_pre20241004.ebuild304
-rw-r--r--sys-devel/clang-common/clang-common-20.0.0_pre20241015.ebuild (renamed from sys-devel/clang-common/clang-common-20.0.0_pre20240924.ebuild)0
3 files changed, 2 insertions, 308 deletions
diff --git a/sys-devel/clang-common/Manifest b/sys-devel/clang-common/Manifest
index 5cc68b32ad6c..aecf119fb29b 100644
--- a/sys-devel/clang-common/Manifest
+++ b/sys-devel/clang-common/Manifest
@@ -8,8 +8,7 @@ DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffe
DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b
DIST llvm-project-19.1.1.src.tar.xz 141244648 BLAKE2B 7c9250f99c8e5ae2097e89269ebf5bfdfb0fba8f67ab934377d24030c985013fe5475d0c9bd6d60a679e169772ad1723bc6e44ff9e4c7aed5627b9f1f1a2477a SHA512 84adab40ffb9ec236dbf203d86c08a0c2c651f98278a9d0936490c7901159eb26eabd3db9316013886b549426d4acb43b75d866f7dc670ab299bf93ba35b1891
DIST llvm-project-19.1.1.src.tar.xz.sig 438 BLAKE2B 6967194abf6939291abc716f862a46ea7c5e195b98eebc26928a57dbd5034f82a8ecb5b7cc1b7c2428168309308b19df1c7db828703e80d3f7bf578e3542874d SHA512 07bb7bffb2b035417d702ca47be9d5759250f1a2cd57606855027d458ceb972a293b45d3d93bcda195588986acbb5eace60524f4aecdc0da7aeb3a8414c37c31
-DIST llvm-project-b837c9e289dab93c7f8a06876e3f70b6864f40ab.tar.gz 219631219 BLAKE2B d8a5d7de537ad91e94fc85dc0f624eba92f31cab2a345706250a66ad424fff151d5b86c430d993a35fd938095774411080cee4cab47a8258af348743dc145b56 SHA512 fe23f72b73553e3755af335a2a2a2225eafdcf2ed93191c9f4ac7bcf7b5b5391f73c2dccbb082279e0c7389a8f12b889a8d061389785cf9219ca861a8d4b41cc
-DIST llvm-project-cde7b30268a85a3e7900a31534a97e7eb4de9236.tar.gz 219048549 BLAKE2B 53bdfea814b2cdf60bfdd27f6135b9f9d5156bdc78d22a361214399c5101b6fafaaefb9109377c1d977c67ebcb1feed69d6aaee0f2e38881480d68ac8be9b3d9 SHA512 0def6da5c2443753f37ba40a893b41dd5c7676b7be57102a5a6e820fe4fe235cad1da9a1c0eff1abc4c4ed5cc188522cae23afeddeee1876ea8ffde5c4f33b9f
+DIST llvm-project-9aef0fd52a0b2bf31cf3bae8a0693d6df8db6e04.tar.gz 219987707 BLAKE2B a3f0acd0fd3b66c3a826ac6760653fa6ea893ffba7587cf4a14f472026a9d9d8bf6b63c26d8bc39e83936afe6b735496bd88ce6c00d16abe1d0ccd1f9a644302 SHA512 5104669d78930363afeba045dc27a4c36ca8bb7537d432c765e023cbd91155b248c3a60d4768e1f8690c88e82d4ff95a44fb73f26d25d6646dddc857992485ba
DIST llvm-project-fb2960aad93f6c02e0ea8de0568c0aef8896eee8.tar.gz 219704020 BLAKE2B 91f7226d7c6dcfa82c6b892ec0a80b47b5abd435c39996d8a6e0611355d434a86eb42bd5dce849dcc9a2f0ed2ae9844e5672f45283984ad10c7c12c62c82d47b SHA512 f0b56a4ab532aaf4bb841aac4e2faf63f213f3cd71d24555b46805406502805e6cc46cb0aae0fbf5f49ddec99da801ab8e54410a9bd8a7bcb0e9fb13619c30bf
EBUILD clang-common-15.0.7-r10.ebuild 5469 BLAKE2B 3d05e1a5136c75731b5b5ed4f1ad21272f1e224d8b27439e19e6268edb716bf01e789803880bbd9f4e9cf65e036e5dec42ee34914b3cc6e6d4b4b9e64aa70db0 SHA512 03a2e624e1ffe63a2e0d133a9cb2f64c56596a244706b538943e9c008054e967af6e595f8aa4ec53ab5555240bd1871bd5a50561af16adaeb501de83e8791202
EBUILD clang-common-16.0.6-r6.ebuild 5721 BLAKE2B cb0a6256eeeda5c8978f9fce4205429c8252612a64a3b5eb3464f321d70704291cccfff1d1126c56acf4b134be57655380741212a7a4cf968728c913f8653c3f SHA512 274ba0e7bca181d1e593fedbac5129e87e2e04a3e47679a9d37dfc0047de78ef0f0dbd5d116dae56abad95ff4b09cdefacc36e853c6f76ad397cd6155c491ab6
@@ -18,7 +17,6 @@ EBUILD clang-common-17.0.6-r9.ebuild 9005 BLAKE2B 9417c98621ffed85971661a6531bb7
EBUILD clang-common-18.1.8-r3.ebuild 9152 BLAKE2B 6529cf887633dd83826162f7f5e9b38a23a4c9c50b9c55dc265189fd288952d4c316fa1654b7b7f284d74c226dce4fa58e2234fc4c1499ffe2578f4f53dcc1b3 SHA512 91704efb26dfbe464afb5cff8f2a1dddd9127810e28ab2271dc5aba90256cc812a6bab00d12aa0001987e38cab230feacfb7524670f856bae8246b70a6a9b429
EBUILD clang-common-19.1.1.ebuild 9159 BLAKE2B 4dde9c158d1a93163dd7cd298d583daaf29aff94d197566578a136d463acf973116a73dc091d995abf290cefe96699b73f1743a4bfce88fee3d798774413c890 SHA512 0e5ff0e829b2e7b41ef79bdf1c8762944ead076caaead54015cdc7f38f9a6c3509ea1976187ca73d3a2b6762be5bf5a96203ca14d835a22e7228c1f8b15bb561
EBUILD clang-common-20.0.0.9999.ebuild 9090 BLAKE2B 6bcb9a39cd7874428927260be3bb38cea472854c8899227d142a2d23a077476671b400b39c746735093d1a9009e4fb748eec64574573481858f7cd8a3ad3c24f SHA512 036e1f7484aa5490d61615e3e97613dd5f27b44b9aa5e108d35d159b48325c5e38a2bd73f92fb8459bcbf4f691223403fb34e73526c129264c2137a842fe06e1
-EBUILD clang-common-20.0.0_pre20240924.ebuild 9090 BLAKE2B 6bcb9a39cd7874428927260be3bb38cea472854c8899227d142a2d23a077476671b400b39c746735093d1a9009e4fb748eec64574573481858f7cd8a3ad3c24f SHA512 036e1f7484aa5490d61615e3e97613dd5f27b44b9aa5e108d35d159b48325c5e38a2bd73f92fb8459bcbf4f691223403fb34e73526c129264c2137a842fe06e1
-EBUILD clang-common-20.0.0_pre20241004.ebuild 9090 BLAKE2B 6bcb9a39cd7874428927260be3bb38cea472854c8899227d142a2d23a077476671b400b39c746735093d1a9009e4fb748eec64574573481858f7cd8a3ad3c24f SHA512 036e1f7484aa5490d61615e3e97613dd5f27b44b9aa5e108d35d159b48325c5e38a2bd73f92fb8459bcbf4f691223403fb34e73526c129264c2137a842fe06e1
EBUILD clang-common-20.0.0_pre20241009.ebuild 9090 BLAKE2B 6bcb9a39cd7874428927260be3bb38cea472854c8899227d142a2d23a077476671b400b39c746735093d1a9009e4fb748eec64574573481858f7cd8a3ad3c24f SHA512 036e1f7484aa5490d61615e3e97613dd5f27b44b9aa5e108d35d159b48325c5e38a2bd73f92fb8459bcbf4f691223403fb34e73526c129264c2137a842fe06e1
+EBUILD clang-common-20.0.0_pre20241015.ebuild 9090 BLAKE2B 6bcb9a39cd7874428927260be3bb38cea472854c8899227d142a2d23a077476671b400b39c746735093d1a9009e4fb748eec64574573481858f7cd8a3ad3c24f SHA512 036e1f7484aa5490d61615e3e97613dd5f27b44b9aa5e108d35d159b48325c5e38a2bd73f92fb8459bcbf4f691223403fb34e73526c129264c2137a842fe06e1
MISC metadata.xml 1248 BLAKE2B d9c542ec74a08857a87a42927feef909c343b5b672145e471ebc69753a3f93432d2ae93ed2659a67d504e2c5ff4212640e4208b173d96e5a173a1043766b66f8 SHA512 eb6d4be1dfbdf6b70b774d42493f6b3015472d5e4bba9386254f6e4ae92307169fe1ac6f0f613d452a9c21c6d61ed57ab50efb54813146983f4d6809b32ddacb
diff --git a/sys-devel/clang-common/clang-common-20.0.0_pre20241004.ebuild b/sys-devel/clang-common/clang-common-20.0.0_pre20241004.ebuild
deleted file mode 100644
index 6eb8b79a8c99..000000000000
--- a/sys-devel/clang-common/clang-common-20.0.0_pre20241004.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="
- default-compiler-rt? (
- sys-devel/clang-runtime:${LLVM_MAJOR}[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(__OPTIMIZE__) || __OPTIMIZE__ == 0
- # elif !defined(__STDC_HOSTED__) || __STDC_HOSTED__ != 1
- # elif defined(__SANITIZE_ADDRESS__)
- # elif __GENTOO_HAS_FEATURE(address_sanitizer)
- # elif __GENTOO_HAS_FEATURE(hwaddress_sanitizer)
- # elif __GENTOO_HAS_FEATURE(memory_sanitizer)
- # elif __GENTOO_HAS_FEATURE(numerical_stability_sanitizer)
- # elif __GENTOO_HAS_FEATURE(realtime_sanitizer)
- # elif __GENTOO_HAS_FEATURE(thread_sanitizer)
- # else
- # define _FORTIFY_SOURCE ${fortify_level}
- # endif
- #
- # undef __GENTOO_HAS_FEATURE
- #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_pre20240924.ebuild b/sys-devel/clang-common/clang-common-20.0.0_pre20241015.ebuild
index 6eb8b79a8c99..6eb8b79a8c99 100644
--- a/sys-devel/clang-common/clang-common-20.0.0_pre20240924.ebuild
+++ b/sys-devel/clang-common/clang-common-20.0.0_pre20241015.ebuild