From: "Michał Górny" <mgorny@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: llvm-runtimes/libgcc/
Date: Sat, 17 May 2025 05:31:05 +0000 (UTC) [thread overview]
Message-ID: <1747459666.24b5f49e4f3a4218bd16e0e059b5a96e931aa7ed.mgorny@gentoo> (raw)
commit: 24b5f49e4f3a4218bd16e0e059b5a96e931aa7ed
Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat May 17 05:27:46 2025 +0000
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat May 17 05:27:46 2025 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=24b5f49e
llvm-runtimes/libgcc: Remove old
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
llvm-runtimes/libgcc/Manifest | 7 -
llvm-runtimes/libgcc/libgcc-20.1.3.ebuild | 173 ---------------------
llvm-runtimes/libgcc/libgcc-20.1.4.ebuild | 173 ---------------------
.../libgcc/libgcc-21.0.0_pre20250420.ebuild | 172 --------------------
.../libgcc/libgcc-21.0.0_pre20250426.ebuild | 172 --------------------
.../libgcc/libgcc-21.0.0_pre20250503.ebuild | 172 --------------------
6 files changed, 869 deletions(-)
diff --git a/llvm-runtimes/libgcc/Manifest b/llvm-runtimes/libgcc/Manifest
index 5fa009052bd6..2557709ab03b 100644
--- a/llvm-runtimes/libgcc/Manifest
+++ b/llvm-runtimes/libgcc/Manifest
@@ -1,12 +1,5 @@
DIST llvm-project-19.1.7.src.tar.xz 141249332 BLAKE2B 1259ed7f9aca7b35e89d818befdee20fd8bed4d2dc2c2c6f6f56451fd43d35ac03a0a5a406e142d22b25137999dc5b17471c196f8fcf79f20a8296832d900f6d SHA512 c7d63286d662707a9cd54758c9e3aaf52794a91900c484c4a6efa62d90bc719d5e7a345e4192feeb0c9fd11c82570d64677c781e5be1d645556b6aa018e47ec8
DIST llvm-project-19.1.7.src.tar.xz.sig 438 BLAKE2B 4015140f4ba77de45039bdbdfbaf6f30e75705123d067ea97175d91d7a5b6a75008df01d99ae7aa16aaa3b101f3f41e38d01f04158f95a261d617b3ede0254cd SHA512 195797b06ac80a742e0ccbc03a50dc06dd2e04377d783d5474e3e72c5a75203b60292b047929312a411d22b137a239943fba414a4d136a2be14cbff978eb6bda
-DIST llvm-project-20.1.3.src.tar.xz 147212776 BLAKE2B c738abb66dc82580a8f511829bcf87dd8deb8381bd073cd547e4eb02097c0190fa06488e5500cefce95953315432ee6ae3c103c491d08eca4b019e043691fc12 SHA512 79d6cfd10075ec9d05b9a359c09579e07a2caff9167518519457daee3e37a818100da6712804916880797ecb0b4891b18dc52a03b534e1b9d1d4bb5ba8d5ad1e
-DIST llvm-project-20.1.3.src.tar.xz.sig 566 BLAKE2B 1b584b61f773013f3964dbd0ee026c00e702cfe758acdacc7bffb6793c42eea638cc812bd1a3cddf210a9ad7d98f707d4f1e748d360b66427fded79f24d8610b SHA512 4fd3815cd94113234e66083f955993a95c888cbb89d5baf611b76765511e102af9f1e880cbacc709f0be8785abd5abbfb0ce391793308dfec3c248a9b348e492
-DIST llvm-project-20.1.4.src.tar.xz 147228104 BLAKE2B 756799d104f94931a6bdca182c4b23983aad9c7ea5acf77f2f5519540137a8dc9a4ec227293c6ba7ddc7fb0fa10cc92e65808f1c07f04bea34a304bb0e2df612 SHA512 acace8175a5468c7e84a89d1564e147e81fe92b6d910f22b058edf72094b27176677c06dbe141fccfbabdad77165f957bbf1ec8aff7bffc85f0757c0103f7e59
-DIST llvm-project-20.1.4.src.tar.xz.sig 566 BLAKE2B 1f0f057dedf938190554ca1a51d9837da9faa38851edb7fe6f305769f3048b5507b010cb81b97550a13c9141e03480009602ff092ddd65b42483b0f79c1523e8 SHA512 634414ea877724ebdeeabe3bb1079d78938aa05dba2243d5458cf211c35444124dc01fa73a593548290196f8c0e40e1e6a4a72571dba4b716b5781c656c6f9b2
DIST llvm-project-20.1.5.src.tar.xz 147239812 BLAKE2B 992ebec16a11f32f234ba8b9f228f27939cdaeaaba474a08da2564ba3075bb10ab92a44be704666bdd77f8294321d43da40bb9245c411a86cd53cff88223a91f SHA512 3b7e657714fa9b943c75ec9eeb903018ab4713b1c3370746ba68893220729f178dabb971515741519f24e7ad0fa1dbce1345572bcf1d1fc1e5de97e4d2900a6b
DIST llvm-project-20.1.5.src.tar.xz.sig 566 BLAKE2B c8be202b475726817893e1fe5fe2d3ab02ea1d3130ccfdf4c2c29b46e6aef79091de78e8a9aef59416ac1120bb3af6fdf47464db9b27b8fb4cb4194b0444e571 SHA512 c1bd30af5f7bfa6cac73994e9068d2791d9d27e86375fb15ad426422ad00cb43ade226c1b91ecc7daa950efae62c86300e4290d59649310f4e8fab5bdcb264fe
-DIST llvm-project-ac8fc09688e10e983b99224b5dc5cbbeeedb1879.tar.gz 231567089 BLAKE2B f7878f114c908b21d179854bc693716b34b963612c6b5172789a37cd21fa316720d4e9498bc7679058db3e822ed240bfdafd85bfd00154914d747d0c0ed1cb48 SHA512 4c39db8b22fa087ca96c3b4541ec77ba8a826a126b4e93b0650e59b3622b22b329f60fa3780dd4572fdece409fd5833eda473046d7547f6ee3ac8aadb8f2fc34
-DIST llvm-project-b9e32749d273a957e60170d6e7ef205fd1fb1834.tar.gz 232146799 BLAKE2B f7c02bf1e6b9958114f07827ff00264774a7ad54b51c6867d7e66d7c9a94a36fb84f371d7d30c2f094a0d539b565fb651786ed9e0641f2bea8d982073f1a8ac0 SHA512 2d81ead79c606e00549d5205584f1bd272e4d7adf4b376fdba19e7fb719710e80b00b22ee3500ab2b990178fa044ca9fcf45bd2063e62e6a217b11775bb3b163
-DIST llvm-project-d1e38eab95b07b422194427474521623916bbf29.tar.gz 232705423 BLAKE2B bf5200c2223d8cdf7c34c84876d8cfeb9429cb6535ced226b1bf9ab468b6401fe3da8759f0fc1ab3112927304c5f74db29b18be60fa961ce99471caa2c6a1f33 SHA512 8fae137725ad4eb0f5bab73895c65b34d1e36ea039c9fb3978c908ecc6023094d84919b97dc405b86e2dd32f585d87b29cee02293c8156d10a8371b516ca5e7a
DIST llvm-project-fcb4bda9dcfcdb64d8b069e8416c75d7a1a62e52.tar.gz 233149231 BLAKE2B 95a7a012a1e747afcf83ace3785c8ef6a3e10f6075e59eb1c5b077cc9edae244b648f341bc0ac6a45b2afc8f7ffe130a90a741a04465523f30f8322566386703 SHA512 b46f0c90a1c56750cada24183ca382b267a2d2faa0db7d77a8bdd4e94e6303e57d565cf85447b3c0e0efdd3750efef1e10e8ce6f1fe8f1ae10ee31d25ddf3fb7
diff --git a/llvm-runtimes/libgcc/libgcc-20.1.3.ebuild b/llvm-runtimes/libgcc/libgcc-20.1.3.ebuild
deleted file mode 100644
index d0a3126ebcf1..000000000000
--- a/llvm-runtimes/libgcc/libgcc-20.1.3.ebuild
+++ /dev/null
@@ -1,173 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..13} )
-
-inherit cmake crossdev flag-o-matic llvm.org llvm-utils python-any-r1
-inherit toolchain-funcs
-
-DESCRIPTION="Compiler runtime library for clang, compatible with libgcc_s"
-HOMEPAGE="https://llvm.org/"
-
-LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="debug test"
-
-DEPEND="
- ~llvm-runtimes/libunwind-${PV}[static-libs]
-"
-RDEPEND="
- ${DEPEND}
- !sys-devel/gcc
-"
-BDEPEND="
- llvm-core/clang:${LLVM_MAJOR}
- test? (
- $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
- =llvm-core/clang-${LLVM_VERSION}*:${LLVM_MAJOR}
- )
- !test? (
- ${PYTHON_DEPS}
- )
-"
-
-LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake llvm-libgcc )
-LLVM_TEST_COMPONENTS=( llvm/include/llvm/TargetParser )
-llvm.org_set_globals
-
-python_check_deps() {
- use test || return 0
- python_has_version ">=dev-python/lit-15[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- if target_is_not_host || tc-is-cross-compiler ; then
- # strips vars like CFLAGS="-march=x86_64-v3" for non-x86 architectures
- CHOST=${CTARGET} strip-unsupported-flags
- # overrides host docs otherwise
- DOCS=()
- fi
- python-any-r1_pkg_setup
-}
-
-src_configure() {
- # We need to build a separate copy of compiler-rt, because we need to disable the
- # COMPILER_RT_BUILTINS_HIDE_SYMBOLS option - compatibility with libgcc requires
- # visibility of all symbols.
-
- llvm_prepend_path "${LLVM_MAJOR}"
-
- # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
- use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
-
- export CC=${CTARGET}-clang CXX=${CTARGET}-clang++
- strip-unsupported-flags
-
- local mycmakeargs=(
- -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${LLVM_MAJOR}"
-
- -DCOMPILER_RT_INCLUDE_TESTS=$(usex test)
- -DCOMPILER_RT_BUILD_CRT=OFF
- -DCOMPILER_RT_BUILD_CTX_PROFILE=OFF
- -DCOMPILER_RT_BUILD_LIBFUZZER=OFF
- -DCOMPILER_RT_BUILD_MEMPROF=OFF
- -DCOMPILER_RT_BUILD_ORC=OFF
- -DCOMPILER_RT_BUILD_PROFILE=OFF
- -DCOMPILER_RT_BUILD_SANITIZERS=OFF
- -DCOMPILER_RT_BUILD_XRAY=OFF
-
- -DCOMPILER_RT_BUILTINS_HIDE_SYMBOLS=OFF
-
- -DPython3_EXECUTABLE="${PYTHON}"
- )
-
- # disable building non-native runtimes since we don't do multilib
- if use amd64; then
- mycmakeargs+=(
- -DCAN_TARGET_i386=OFF
- )
- fi
-
- if use test; then
- mycmakeargs+=(
- -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit"
- -DLLVM_LIT_ARGS="$(get_lit_flags)"
-
- -DCOMPILER_RT_TEST_COMPILER="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang"
- -DCOMPILER_RT_TEST_CXX_COMPILER="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang++"
- )
- fi
-
- cmake_src_configure
-}
-
-# Usage: deps
-gen_ldscript() {
- local output_format
- output_format=$($(tc-getCC) ${CFLAGS} ${LDFLAGS} -Wl,--verbose 2>&1 | sed -n 's/^OUTPUT_FORMAT("\([^"]*\)",.*/\1/p')
- [[ -n ${output_format} ]] && output_format="OUTPUT_FORMAT ( ${output_format} )"
-
- cat <<-END_LDSCRIPT
-/* GNU ld script
- Include missing dependencies
-*/
-${output_format}
-GROUP ( $@ )
-END_LDSCRIPT
-}
-
-src_compile() {
- cmake_src_compile
-
- local rtlib=$(
- "${CC}" -rtlib=compiler-rt -resource-dir="${BUILD_DIR}" \
- -print-libgcc-file-name || die
- )
-
- # Use the llvm-libgcc's version script to produce libgcc.{a,so}, which
- # combines compiler-rt and libunwind into a libgcc replacement.
- #
- # What we do here is similar to what upstream does[0], with the following
- # differences:
- #
- # * We build the local copy of compiler-rt manually, to have a full control
- # over CMake options.
- # * Upstream links the locally built copy of libunwind statically. We link the
- # system-wide libunwind dynamically.
- #
- # [0] https://github.com/llvm/llvm-project/blob/llvmorg-19.1.7/llvm-libgcc/CMakeLists.txt#L102-L120
- "${CC}" -E -xc \
- "${WORKDIR}/llvm-libgcc/gcc_s.ver.in" \
- -o gcc_s.ver || die
- "${CC}" -nostdlib \
- ${LDFLAGS} \
- -Wl,--version-script,gcc_s.ver \
- -Wl,--undefined-version \
- -Wl,--whole-archive \
- "${rtlib}" \
- -Wl,-soname,libgcc_s.so.1.0 \
- -lc -lunwind -shared \
- -o libgcc_s.so.1.0 || die
- # Generate libgcc_s.so ldscript for inclusion of libunwind as a
- # dependency so that `clang -lgcc_s` works out of the box.
- gen_ldscript libgcc_s.so.1.0 libunwind.so.1.0 > libgcc_s.so || die
- cp "${rtlib}" libgcc.a || die
-}
-
-src_test() {
- # respect TMPDIR!
- local -x LIT_PRESERVES_TMP=1
-
- cmake_build check-builtins
-}
-
-src_install() {
- local libdir=$(get_libdir)
- dolib.so libgcc_s.so.1.0 libgcc_s.so
- dolib.a libgcc.a
- dosym libgcc_s.so.1.0 "/usr/${libdir}/libgcc_s.so.1"
- dosym libunwind.a "/usr/${libdir}/libgcc_eh.a"
-}
diff --git a/llvm-runtimes/libgcc/libgcc-20.1.4.ebuild b/llvm-runtimes/libgcc/libgcc-20.1.4.ebuild
deleted file mode 100644
index d0a3126ebcf1..000000000000
--- a/llvm-runtimes/libgcc/libgcc-20.1.4.ebuild
+++ /dev/null
@@ -1,173 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..13} )
-
-inherit cmake crossdev flag-o-matic llvm.org llvm-utils python-any-r1
-inherit toolchain-funcs
-
-DESCRIPTION="Compiler runtime library for clang, compatible with libgcc_s"
-HOMEPAGE="https://llvm.org/"
-
-LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="debug test"
-
-DEPEND="
- ~llvm-runtimes/libunwind-${PV}[static-libs]
-"
-RDEPEND="
- ${DEPEND}
- !sys-devel/gcc
-"
-BDEPEND="
- llvm-core/clang:${LLVM_MAJOR}
- test? (
- $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
- =llvm-core/clang-${LLVM_VERSION}*:${LLVM_MAJOR}
- )
- !test? (
- ${PYTHON_DEPS}
- )
-"
-
-LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake llvm-libgcc )
-LLVM_TEST_COMPONENTS=( llvm/include/llvm/TargetParser )
-llvm.org_set_globals
-
-python_check_deps() {
- use test || return 0
- python_has_version ">=dev-python/lit-15[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- if target_is_not_host || tc-is-cross-compiler ; then
- # strips vars like CFLAGS="-march=x86_64-v3" for non-x86 architectures
- CHOST=${CTARGET} strip-unsupported-flags
- # overrides host docs otherwise
- DOCS=()
- fi
- python-any-r1_pkg_setup
-}
-
-src_configure() {
- # We need to build a separate copy of compiler-rt, because we need to disable the
- # COMPILER_RT_BUILTINS_HIDE_SYMBOLS option - compatibility with libgcc requires
- # visibility of all symbols.
-
- llvm_prepend_path "${LLVM_MAJOR}"
-
- # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
- use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
-
- export CC=${CTARGET}-clang CXX=${CTARGET}-clang++
- strip-unsupported-flags
-
- local mycmakeargs=(
- -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${LLVM_MAJOR}"
-
- -DCOMPILER_RT_INCLUDE_TESTS=$(usex test)
- -DCOMPILER_RT_BUILD_CRT=OFF
- -DCOMPILER_RT_BUILD_CTX_PROFILE=OFF
- -DCOMPILER_RT_BUILD_LIBFUZZER=OFF
- -DCOMPILER_RT_BUILD_MEMPROF=OFF
- -DCOMPILER_RT_BUILD_ORC=OFF
- -DCOMPILER_RT_BUILD_PROFILE=OFF
- -DCOMPILER_RT_BUILD_SANITIZERS=OFF
- -DCOMPILER_RT_BUILD_XRAY=OFF
-
- -DCOMPILER_RT_BUILTINS_HIDE_SYMBOLS=OFF
-
- -DPython3_EXECUTABLE="${PYTHON}"
- )
-
- # disable building non-native runtimes since we don't do multilib
- if use amd64; then
- mycmakeargs+=(
- -DCAN_TARGET_i386=OFF
- )
- fi
-
- if use test; then
- mycmakeargs+=(
- -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit"
- -DLLVM_LIT_ARGS="$(get_lit_flags)"
-
- -DCOMPILER_RT_TEST_COMPILER="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang"
- -DCOMPILER_RT_TEST_CXX_COMPILER="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang++"
- )
- fi
-
- cmake_src_configure
-}
-
-# Usage: deps
-gen_ldscript() {
- local output_format
- output_format=$($(tc-getCC) ${CFLAGS} ${LDFLAGS} -Wl,--verbose 2>&1 | sed -n 's/^OUTPUT_FORMAT("\([^"]*\)",.*/\1/p')
- [[ -n ${output_format} ]] && output_format="OUTPUT_FORMAT ( ${output_format} )"
-
- cat <<-END_LDSCRIPT
-/* GNU ld script
- Include missing dependencies
-*/
-${output_format}
-GROUP ( $@ )
-END_LDSCRIPT
-}
-
-src_compile() {
- cmake_src_compile
-
- local rtlib=$(
- "${CC}" -rtlib=compiler-rt -resource-dir="${BUILD_DIR}" \
- -print-libgcc-file-name || die
- )
-
- # Use the llvm-libgcc's version script to produce libgcc.{a,so}, which
- # combines compiler-rt and libunwind into a libgcc replacement.
- #
- # What we do here is similar to what upstream does[0], with the following
- # differences:
- #
- # * We build the local copy of compiler-rt manually, to have a full control
- # over CMake options.
- # * Upstream links the locally built copy of libunwind statically. We link the
- # system-wide libunwind dynamically.
- #
- # [0] https://github.com/llvm/llvm-project/blob/llvmorg-19.1.7/llvm-libgcc/CMakeLists.txt#L102-L120
- "${CC}" -E -xc \
- "${WORKDIR}/llvm-libgcc/gcc_s.ver.in" \
- -o gcc_s.ver || die
- "${CC}" -nostdlib \
- ${LDFLAGS} \
- -Wl,--version-script,gcc_s.ver \
- -Wl,--undefined-version \
- -Wl,--whole-archive \
- "${rtlib}" \
- -Wl,-soname,libgcc_s.so.1.0 \
- -lc -lunwind -shared \
- -o libgcc_s.so.1.0 || die
- # Generate libgcc_s.so ldscript for inclusion of libunwind as a
- # dependency so that `clang -lgcc_s` works out of the box.
- gen_ldscript libgcc_s.so.1.0 libunwind.so.1.0 > libgcc_s.so || die
- cp "${rtlib}" libgcc.a || die
-}
-
-src_test() {
- # respect TMPDIR!
- local -x LIT_PRESERVES_TMP=1
-
- cmake_build check-builtins
-}
-
-src_install() {
- local libdir=$(get_libdir)
- dolib.so libgcc_s.so.1.0 libgcc_s.so
- dolib.a libgcc.a
- dosym libgcc_s.so.1.0 "/usr/${libdir}/libgcc_s.so.1"
- dosym libunwind.a "/usr/${libdir}/libgcc_eh.a"
-}
diff --git a/llvm-runtimes/libgcc/libgcc-21.0.0_pre20250420.ebuild b/llvm-runtimes/libgcc/libgcc-21.0.0_pre20250420.ebuild
deleted file mode 100644
index 2c2ae9d40376..000000000000
--- a/llvm-runtimes/libgcc/libgcc-21.0.0_pre20250420.ebuild
+++ /dev/null
@@ -1,172 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..13} )
-
-inherit cmake crossdev flag-o-matic llvm.org llvm-utils python-any-r1
-inherit toolchain-funcs
-
-DESCRIPTION="Compiler runtime library for clang, compatible with libgcc_s"
-HOMEPAGE="https://llvm.org/"
-
-LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
-SLOT="0"
-IUSE="debug test"
-
-DEPEND="
- ~llvm-runtimes/libunwind-${PV}[static-libs]
-"
-RDEPEND="
- ${DEPEND}
- !sys-devel/gcc
-"
-BDEPEND="
- llvm-core/clang:${LLVM_MAJOR}
- test? (
- $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
- =llvm-core/clang-${LLVM_VERSION}*:${LLVM_MAJOR}
- )
- !test? (
- ${PYTHON_DEPS}
- )
-"
-
-LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake llvm-libgcc )
-LLVM_TEST_COMPONENTS=( llvm/include/llvm/TargetParser )
-llvm.org_set_globals
-
-python_check_deps() {
- use test || return 0
- python_has_version ">=dev-python/lit-15[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- if target_is_not_host || tc-is-cross-compiler ; then
- # strips vars like CFLAGS="-march=x86_64-v3" for non-x86 architectures
- CHOST=${CTARGET} strip-unsupported-flags
- # overrides host docs otherwise
- DOCS=()
- fi
- python-any-r1_pkg_setup
-}
-
-src_configure() {
- # We need to build a separate copy of compiler-rt, because we need to disable the
- # COMPILER_RT_BUILTINS_HIDE_SYMBOLS option - compatibility with libgcc requires
- # visibility of all symbols.
-
- llvm_prepend_path "${LLVM_MAJOR}"
-
- # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
- use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
-
- export CC=${CTARGET}-clang CXX=${CTARGET}-clang++
- strip-unsupported-flags
-
- local mycmakeargs=(
- -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${LLVM_MAJOR}"
-
- -DCOMPILER_RT_INCLUDE_TESTS=$(usex test)
- -DCOMPILER_RT_BUILD_CRT=OFF
- -DCOMPILER_RT_BUILD_CTX_PROFILE=OFF
- -DCOMPILER_RT_BUILD_LIBFUZZER=OFF
- -DCOMPILER_RT_BUILD_MEMPROF=OFF
- -DCOMPILER_RT_BUILD_ORC=OFF
- -DCOMPILER_RT_BUILD_PROFILE=OFF
- -DCOMPILER_RT_BUILD_SANITIZERS=OFF
- -DCOMPILER_RT_BUILD_XRAY=OFF
-
- -DCOMPILER_RT_BUILTINS_HIDE_SYMBOLS=OFF
-
- -DPython3_EXECUTABLE="${PYTHON}"
- )
-
- # disable building non-native runtimes since we don't do multilib
- if use amd64; then
- mycmakeargs+=(
- -DCAN_TARGET_i386=OFF
- )
- fi
-
- if use test; then
- mycmakeargs+=(
- -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit"
- -DLLVM_LIT_ARGS="$(get_lit_flags)"
-
- -DCOMPILER_RT_TEST_COMPILER="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang"
- -DCOMPILER_RT_TEST_CXX_COMPILER="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang++"
- )
- fi
-
- cmake_src_configure
-}
-
-# Usage: deps
-gen_ldscript() {
- local output_format
- output_format=$($(tc-getCC) ${CFLAGS} ${LDFLAGS} -Wl,--verbose 2>&1 | sed -n 's/^OUTPUT_FORMAT("\([^"]*\)",.*/\1/p')
- [[ -n ${output_format} ]] && output_format="OUTPUT_FORMAT ( ${output_format} )"
-
- cat <<-END_LDSCRIPT
-/* GNU ld script
- Include missing dependencies
-*/
-${output_format}
-GROUP ( $@ )
-END_LDSCRIPT
-}
-
-src_compile() {
- cmake_src_compile
-
- local rtlib=$(
- "${CC}" -rtlib=compiler-rt -resource-dir="${BUILD_DIR}" \
- -print-libgcc-file-name || die
- )
-
- # Use the llvm-libgcc's version script to produce libgcc.{a,so}, which
- # combines compiler-rt and libunwind into a libgcc replacement.
- #
- # What we do here is similar to what upstream does[0], with the following
- # differences:
- #
- # * We build the local copy of compiler-rt manually, to have a full control
- # over CMake options.
- # * Upstream links the locally built copy of libunwind statically. We link the
- # system-wide libunwind dynamically.
- #
- # [0] https://github.com/llvm/llvm-project/blob/llvmorg-19.1.7/llvm-libgcc/CMakeLists.txt#L102-L120
- "${CC}" -E -xc \
- "${WORKDIR}/llvm-libgcc/gcc_s.ver.in" \
- -o gcc_s.ver || die
- "${CC}" -nostdlib \
- ${LDFLAGS} \
- -Wl,--version-script,gcc_s.ver \
- -Wl,--undefined-version \
- -Wl,--whole-archive \
- "${rtlib}" \
- -Wl,-soname,libgcc_s.so.1.0 \
- -lc -lunwind -shared \
- -o libgcc_s.so.1.0 || die
- # Generate libgcc_s.so ldscript for inclusion of libunwind as a
- # dependency so that `clang -lgcc_s` works out of the box.
- gen_ldscript libgcc_s.so.1.0 libunwind.so.1.0 > libgcc_s.so || die
- cp "${rtlib}" libgcc.a || die
-}
-
-src_test() {
- # respect TMPDIR!
- local -x LIT_PRESERVES_TMP=1
-
- cmake_build check-builtins
-}
-
-src_install() {
- local libdir=$(get_libdir)
- dolib.so libgcc_s.so.1.0 libgcc_s.so
- dolib.a libgcc.a
- dosym libgcc_s.so.1.0 "/usr/${libdir}/libgcc_s.so.1"
- dosym libunwind.a "/usr/${libdir}/libgcc_eh.a"
-}
diff --git a/llvm-runtimes/libgcc/libgcc-21.0.0_pre20250426.ebuild b/llvm-runtimes/libgcc/libgcc-21.0.0_pre20250426.ebuild
deleted file mode 100644
index 2c2ae9d40376..000000000000
--- a/llvm-runtimes/libgcc/libgcc-21.0.0_pre20250426.ebuild
+++ /dev/null
@@ -1,172 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..13} )
-
-inherit cmake crossdev flag-o-matic llvm.org llvm-utils python-any-r1
-inherit toolchain-funcs
-
-DESCRIPTION="Compiler runtime library for clang, compatible with libgcc_s"
-HOMEPAGE="https://llvm.org/"
-
-LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
-SLOT="0"
-IUSE="debug test"
-
-DEPEND="
- ~llvm-runtimes/libunwind-${PV}[static-libs]
-"
-RDEPEND="
- ${DEPEND}
- !sys-devel/gcc
-"
-BDEPEND="
- llvm-core/clang:${LLVM_MAJOR}
- test? (
- $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
- =llvm-core/clang-${LLVM_VERSION}*:${LLVM_MAJOR}
- )
- !test? (
- ${PYTHON_DEPS}
- )
-"
-
-LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake llvm-libgcc )
-LLVM_TEST_COMPONENTS=( llvm/include/llvm/TargetParser )
-llvm.org_set_globals
-
-python_check_deps() {
- use test || return 0
- python_has_version ">=dev-python/lit-15[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- if target_is_not_host || tc-is-cross-compiler ; then
- # strips vars like CFLAGS="-march=x86_64-v3" for non-x86 architectures
- CHOST=${CTARGET} strip-unsupported-flags
- # overrides host docs otherwise
- DOCS=()
- fi
- python-any-r1_pkg_setup
-}
-
-src_configure() {
- # We need to build a separate copy of compiler-rt, because we need to disable the
- # COMPILER_RT_BUILTINS_HIDE_SYMBOLS option - compatibility with libgcc requires
- # visibility of all symbols.
-
- llvm_prepend_path "${LLVM_MAJOR}"
-
- # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
- use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
-
- export CC=${CTARGET}-clang CXX=${CTARGET}-clang++
- strip-unsupported-flags
-
- local mycmakeargs=(
- -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${LLVM_MAJOR}"
-
- -DCOMPILER_RT_INCLUDE_TESTS=$(usex test)
- -DCOMPILER_RT_BUILD_CRT=OFF
- -DCOMPILER_RT_BUILD_CTX_PROFILE=OFF
- -DCOMPILER_RT_BUILD_LIBFUZZER=OFF
- -DCOMPILER_RT_BUILD_MEMPROF=OFF
- -DCOMPILER_RT_BUILD_ORC=OFF
- -DCOMPILER_RT_BUILD_PROFILE=OFF
- -DCOMPILER_RT_BUILD_SANITIZERS=OFF
- -DCOMPILER_RT_BUILD_XRAY=OFF
-
- -DCOMPILER_RT_BUILTINS_HIDE_SYMBOLS=OFF
-
- -DPython3_EXECUTABLE="${PYTHON}"
- )
-
- # disable building non-native runtimes since we don't do multilib
- if use amd64; then
- mycmakeargs+=(
- -DCAN_TARGET_i386=OFF
- )
- fi
-
- if use test; then
- mycmakeargs+=(
- -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit"
- -DLLVM_LIT_ARGS="$(get_lit_flags)"
-
- -DCOMPILER_RT_TEST_COMPILER="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang"
- -DCOMPILER_RT_TEST_CXX_COMPILER="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang++"
- )
- fi
-
- cmake_src_configure
-}
-
-# Usage: deps
-gen_ldscript() {
- local output_format
- output_format=$($(tc-getCC) ${CFLAGS} ${LDFLAGS} -Wl,--verbose 2>&1 | sed -n 's/^OUTPUT_FORMAT("\([^"]*\)",.*/\1/p')
- [[ -n ${output_format} ]] && output_format="OUTPUT_FORMAT ( ${output_format} )"
-
- cat <<-END_LDSCRIPT
-/* GNU ld script
- Include missing dependencies
-*/
-${output_format}
-GROUP ( $@ )
-END_LDSCRIPT
-}
-
-src_compile() {
- cmake_src_compile
-
- local rtlib=$(
- "${CC}" -rtlib=compiler-rt -resource-dir="${BUILD_DIR}" \
- -print-libgcc-file-name || die
- )
-
- # Use the llvm-libgcc's version script to produce libgcc.{a,so}, which
- # combines compiler-rt and libunwind into a libgcc replacement.
- #
- # What we do here is similar to what upstream does[0], with the following
- # differences:
- #
- # * We build the local copy of compiler-rt manually, to have a full control
- # over CMake options.
- # * Upstream links the locally built copy of libunwind statically. We link the
- # system-wide libunwind dynamically.
- #
- # [0] https://github.com/llvm/llvm-project/blob/llvmorg-19.1.7/llvm-libgcc/CMakeLists.txt#L102-L120
- "${CC}" -E -xc \
- "${WORKDIR}/llvm-libgcc/gcc_s.ver.in" \
- -o gcc_s.ver || die
- "${CC}" -nostdlib \
- ${LDFLAGS} \
- -Wl,--version-script,gcc_s.ver \
- -Wl,--undefined-version \
- -Wl,--whole-archive \
- "${rtlib}" \
- -Wl,-soname,libgcc_s.so.1.0 \
- -lc -lunwind -shared \
- -o libgcc_s.so.1.0 || die
- # Generate libgcc_s.so ldscript for inclusion of libunwind as a
- # dependency so that `clang -lgcc_s` works out of the box.
- gen_ldscript libgcc_s.so.1.0 libunwind.so.1.0 > libgcc_s.so || die
- cp "${rtlib}" libgcc.a || die
-}
-
-src_test() {
- # respect TMPDIR!
- local -x LIT_PRESERVES_TMP=1
-
- cmake_build check-builtins
-}
-
-src_install() {
- local libdir=$(get_libdir)
- dolib.so libgcc_s.so.1.0 libgcc_s.so
- dolib.a libgcc.a
- dosym libgcc_s.so.1.0 "/usr/${libdir}/libgcc_s.so.1"
- dosym libunwind.a "/usr/${libdir}/libgcc_eh.a"
-}
diff --git a/llvm-runtimes/libgcc/libgcc-21.0.0_pre20250503.ebuild b/llvm-runtimes/libgcc/libgcc-21.0.0_pre20250503.ebuild
deleted file mode 100644
index 2c2ae9d40376..000000000000
--- a/llvm-runtimes/libgcc/libgcc-21.0.0_pre20250503.ebuild
+++ /dev/null
@@ -1,172 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..13} )
-
-inherit cmake crossdev flag-o-matic llvm.org llvm-utils python-any-r1
-inherit toolchain-funcs
-
-DESCRIPTION="Compiler runtime library for clang, compatible with libgcc_s"
-HOMEPAGE="https://llvm.org/"
-
-LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
-SLOT="0"
-IUSE="debug test"
-
-DEPEND="
- ~llvm-runtimes/libunwind-${PV}[static-libs]
-"
-RDEPEND="
- ${DEPEND}
- !sys-devel/gcc
-"
-BDEPEND="
- llvm-core/clang:${LLVM_MAJOR}
- test? (
- $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
- =llvm-core/clang-${LLVM_VERSION}*:${LLVM_MAJOR}
- )
- !test? (
- ${PYTHON_DEPS}
- )
-"
-
-LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake llvm-libgcc )
-LLVM_TEST_COMPONENTS=( llvm/include/llvm/TargetParser )
-llvm.org_set_globals
-
-python_check_deps() {
- use test || return 0
- python_has_version ">=dev-python/lit-15[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- if target_is_not_host || tc-is-cross-compiler ; then
- # strips vars like CFLAGS="-march=x86_64-v3" for non-x86 architectures
- CHOST=${CTARGET} strip-unsupported-flags
- # overrides host docs otherwise
- DOCS=()
- fi
- python-any-r1_pkg_setup
-}
-
-src_configure() {
- # We need to build a separate copy of compiler-rt, because we need to disable the
- # COMPILER_RT_BUILTINS_HIDE_SYMBOLS option - compatibility with libgcc requires
- # visibility of all symbols.
-
- llvm_prepend_path "${LLVM_MAJOR}"
-
- # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
- use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
-
- export CC=${CTARGET}-clang CXX=${CTARGET}-clang++
- strip-unsupported-flags
-
- local mycmakeargs=(
- -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${LLVM_MAJOR}"
-
- -DCOMPILER_RT_INCLUDE_TESTS=$(usex test)
- -DCOMPILER_RT_BUILD_CRT=OFF
- -DCOMPILER_RT_BUILD_CTX_PROFILE=OFF
- -DCOMPILER_RT_BUILD_LIBFUZZER=OFF
- -DCOMPILER_RT_BUILD_MEMPROF=OFF
- -DCOMPILER_RT_BUILD_ORC=OFF
- -DCOMPILER_RT_BUILD_PROFILE=OFF
- -DCOMPILER_RT_BUILD_SANITIZERS=OFF
- -DCOMPILER_RT_BUILD_XRAY=OFF
-
- -DCOMPILER_RT_BUILTINS_HIDE_SYMBOLS=OFF
-
- -DPython3_EXECUTABLE="${PYTHON}"
- )
-
- # disable building non-native runtimes since we don't do multilib
- if use amd64; then
- mycmakeargs+=(
- -DCAN_TARGET_i386=OFF
- )
- fi
-
- if use test; then
- mycmakeargs+=(
- -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit"
- -DLLVM_LIT_ARGS="$(get_lit_flags)"
-
- -DCOMPILER_RT_TEST_COMPILER="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang"
- -DCOMPILER_RT_TEST_CXX_COMPILER="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang++"
- )
- fi
-
- cmake_src_configure
-}
-
-# Usage: deps
-gen_ldscript() {
- local output_format
- output_format=$($(tc-getCC) ${CFLAGS} ${LDFLAGS} -Wl,--verbose 2>&1 | sed -n 's/^OUTPUT_FORMAT("\([^"]*\)",.*/\1/p')
- [[ -n ${output_format} ]] && output_format="OUTPUT_FORMAT ( ${output_format} )"
-
- cat <<-END_LDSCRIPT
-/* GNU ld script
- Include missing dependencies
-*/
-${output_format}
-GROUP ( $@ )
-END_LDSCRIPT
-}
-
-src_compile() {
- cmake_src_compile
-
- local rtlib=$(
- "${CC}" -rtlib=compiler-rt -resource-dir="${BUILD_DIR}" \
- -print-libgcc-file-name || die
- )
-
- # Use the llvm-libgcc's version script to produce libgcc.{a,so}, which
- # combines compiler-rt and libunwind into a libgcc replacement.
- #
- # What we do here is similar to what upstream does[0], with the following
- # differences:
- #
- # * We build the local copy of compiler-rt manually, to have a full control
- # over CMake options.
- # * Upstream links the locally built copy of libunwind statically. We link the
- # system-wide libunwind dynamically.
- #
- # [0] https://github.com/llvm/llvm-project/blob/llvmorg-19.1.7/llvm-libgcc/CMakeLists.txt#L102-L120
- "${CC}" -E -xc \
- "${WORKDIR}/llvm-libgcc/gcc_s.ver.in" \
- -o gcc_s.ver || die
- "${CC}" -nostdlib \
- ${LDFLAGS} \
- -Wl,--version-script,gcc_s.ver \
- -Wl,--undefined-version \
- -Wl,--whole-archive \
- "${rtlib}" \
- -Wl,-soname,libgcc_s.so.1.0 \
- -lc -lunwind -shared \
- -o libgcc_s.so.1.0 || die
- # Generate libgcc_s.so ldscript for inclusion of libunwind as a
- # dependency so that `clang -lgcc_s` works out of the box.
- gen_ldscript libgcc_s.so.1.0 libunwind.so.1.0 > libgcc_s.so || die
- cp "${rtlib}" libgcc.a || die
-}
-
-src_test() {
- # respect TMPDIR!
- local -x LIT_PRESERVES_TMP=1
-
- cmake_build check-builtins
-}
-
-src_install() {
- local libdir=$(get_libdir)
- dolib.so libgcc_s.so.1.0 libgcc_s.so
- dolib.a libgcc.a
- dosym libgcc_s.so.1.0 "/usr/${libdir}/libgcc_s.so.1"
- dosym libunwind.a "/usr/${libdir}/libgcc_eh.a"
-}
next reply other threads:[~2025-05-17 5:31 UTC|newest]
Thread overview: 74+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-05-17 5:31 Michał Górny [this message]
-- strict thread matches above, loose matches on Subject: below --
2025-10-11 19:54 [gentoo-commits] repo/gentoo:master commit in: llvm-runtimes/libgcc/ Michał Górny
2025-10-08 17:29 Michał Górny
2025-10-04 9:16 Michał Górny
2025-10-03 11:43 Michał Górny
2025-10-01 6:35 Michał Górny
2025-09-24 16:18 Michał Górny
2025-09-24 2:27 Michał Górny
2025-09-10 11:47 Michał Górny
2025-09-07 19:47 Michał Górny
2025-08-31 13:28 Michał Górny
2025-08-30 14:59 Sam James
2025-08-27 12:28 Michał Górny
2025-08-26 19:38 Michał Górny
2025-08-21 8:22 Michał Górny
2025-08-21 8:18 Michał Górny
2025-08-16 13:51 Michał Górny
2025-08-12 17:09 Michał Górny
2025-08-09 9:47 Michał Górny
2025-08-06 12:29 Michał Górny
2025-08-03 19:04 Michał Górny
2025-08-02 10:29 Michał Górny
2025-07-29 19:04 Michał Górny
2025-07-26 19:53 Michał Górny
2025-07-22 9:20 Michał Górny
2025-07-20 14:15 Michał Górny
2025-07-19 6:50 Michał Górny
2025-07-13 20:03 Michał Górny
2025-07-09 18:49 Michał Górny
2025-06-28 15:03 Michał Górny
2025-06-28 14:55 Michał Górny
2025-06-14 7:15 Michał Górny
2025-06-07 18:05 Michał Górny
2025-05-29 20:22 Michał Górny
2025-05-29 4:22 Michał Górny
2025-05-28 11:54 Michał Górny
2025-05-28 10:50 Michał Górny
2025-05-24 11:56 Michał Górny
2025-05-17 12:59 Michał Górny
2025-05-16 9:31 Michał Górny
2025-05-10 13:03 Michał Górny
2025-05-03 19:42 Michał Górny
2025-05-03 10:07 Michał Górny
2025-04-26 15:59 Michał Górny
2025-04-20 11:50 Michał Górny
2025-04-19 6:29 Michał Górny
2025-04-16 18:34 Michał Górny
2025-04-15 10:15 Michał Górny
2025-04-12 8:59 Michał Górny
2025-04-12 4:57 Michał Górny
2025-04-05 12:24 Michał Górny
2025-04-03 11:29 Michał Górny
2025-03-29 10:27 Michał Górny
2025-03-22 10:43 Michał Górny
2025-03-20 16:50 Michał Górny
2025-03-17 20:13 Michał Górny
2025-03-16 17:41 Michał Górny
2025-03-11 14:56 Michał Górny
2025-03-05 10:13 Michał Górny
2025-03-05 6:25 Michał Górny
2025-03-01 12:58 Michał Górny
2025-03-01 8:34 Michał Górny
2025-02-26 18:55 Michał Górny
2025-02-25 14:03 Michał Górny
2025-02-22 15:19 Michał Górny
2025-02-20 11:54 Michał Górny
2025-02-15 7:19 Michał Górny
2025-02-13 7:53 Michał Górny
2025-02-11 11:29 Michał Górny
2025-02-08 11:51 Michał Górny
2025-02-02 18:25 Michał Górny
2025-02-01 13:15 Michał Górny
2025-02-01 8:05 Michał Górny
2025-01-26 20:01 Michał Górny
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1747459666.24b5f49e4f3a4218bd16e0e059b5a96e931aa7ed.mgorny@gentoo \
--to=mgorny@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox