From f2bdc27fe0f79f8f9a3945eb2b1163ce75c56439 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sun, 16 Feb 2025 00:13:18 +0000 Subject: gentoo auto-resync : 16:02:2025 - 00:13:18 --- llvm-runtimes/compiler-rt/Manifest | 11 +- .../compiler-rt-20.0.0_pre20250125.ebuild | 175 --------------------- .../compiler-rt/compiler-rt-20.1.0_rc1.ebuild | 175 --------------------- .../compiler-rt-21.0.0_pre20250201.ebuild | 175 --------------------- .../compiler-rt-21.0.0_pre20250208.ebuild | 175 --------------------- .../compiler-rt-21.0.0_pre20250215.ebuild | 175 +++++++++++++++++++++ 6 files changed, 177 insertions(+), 709 deletions(-) delete mode 100644 llvm-runtimes/compiler-rt/compiler-rt-20.0.0_pre20250125.ebuild delete mode 100644 llvm-runtimes/compiler-rt/compiler-rt-20.1.0_rc1.ebuild delete mode 100644 llvm-runtimes/compiler-rt/compiler-rt-21.0.0_pre20250201.ebuild delete mode 100644 llvm-runtimes/compiler-rt/compiler-rt-21.0.0_pre20250208.ebuild create mode 100644 llvm-runtimes/compiler-rt/compiler-rt-21.0.0_pre20250215.ebuild (limited to 'llvm-runtimes/compiler-rt') diff --git a/llvm-runtimes/compiler-rt/Manifest b/llvm-runtimes/compiler-rt/Manifest index 5eb5270c1e4e..978da2dece39 100644 --- a/llvm-runtimes/compiler-rt/Manifest +++ b/llvm-runtimes/compiler-rt/Manifest @@ -13,14 +13,10 @@ DIST llvm-project-19.1.4.src.tar.xz 141255156 BLAKE2B b99cd8a96e38dbcfb582ee5d22 DIST llvm-project-19.1.4.src.tar.xz.sig 438 BLAKE2B b0925bdb761046d69779e0b035e29430bc09ef2b81be763aa5c853793631d7b7fdd65eb4dae7a1e3b4daa15d189c24cd1e14f065f79fdbf75429fa34be9b330e SHA512 3fb4a6c7594cb43680860698dac47062dde30de60f515dcecdad63812ea1edfb2cb209d0a7ac2254589c245a95b7c0f571b582e0d4b97a6ae8242563483ea764 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-1f26ac10ca1bef40a80be8f81a6f109713bc586f.tar.gz 226424755 BLAKE2B 642befb8d6923f335d1d68129ebb7357f8ba22e110df494dd956c8097e4e5db4b2a88fcc069ab67184b03558f072c68e002bdaf90eba865e38b1473a0ef29eed SHA512 e9bb4fd31bbad5ec864c662515b5ec2e5511cce975040f9f3cd8f009c92f76077928feae0467fd9519a001a379c857f7539c506953d8d5a9209a9f358f414aac -DIST llvm-project-20.1.0-rc1.src.tar.xz 147144668 BLAKE2B ea4733962f38ea5897c73e91840818921739909c3671749bc8a0b1d2798e5a0815bbe750ade3a2a7414836ab7158754818b2f9370a4ee1bbbd52c96b1e95ef9b SHA512 c23c4b1227b6b0b7c3059358e64a00ee98893236bb1a0a41d7e821bdf2aa8353aea8f9f7b9498899c6807b9b8e2ceb06c3cd62e32fd07a786a319135055541b4 -DIST llvm-project-20.1.0-rc1.src.tar.xz.sig 566 BLAKE2B 32eb278ec4ff1bb9d258b584922b0d227f4126a957ba75af44dcaa63b6a12ef73db56d6a86f24244af47803ddf6a243149d784f08137cbea60b49700be537705 SHA512 d7a334326201f8ca78284b33c325f180538667a0401bc30931e790aacc96dd78f6559c45929b6c335d40ef1dbe772738c0ce55d881ae3d7401733778b485408c DIST llvm-project-20.1.0-rc2.src.tar.xz 147160684 BLAKE2B 6adc1226f022272d78fb0ed361c190d369a2afc53bf868409fe8f4e092d5ffb9894c71870f072bb68162610782f48088468b4a49cdb1bc731d6689c791a5b5e3 SHA512 f303deaec8f25e1b122a7e85df192b6ea10c51472b78a3d14ad9d0b976a533cfbb9164aff0bc99e447e30938cf43363552c5493b4693e1f23291ea7a9b824bbb DIST llvm-project-20.1.0-rc2.src.tar.xz.sig 566 BLAKE2B aa91f7be228e51b0f2234bb5e0df173e3ddc90b6db4350a9008c2f8ba53220da6eef0c69778aecac3caecf918a0c54a0d910177ffe7643ad7fc5624a97262b7f SHA512 e5563a8a79b5e9ef26d62dc6d4385c1c86d12a652b4b1e7fc9ce45a2ea66e5118112746a61b439823bf99d65aea82285eabf5e07714eec77e6e5cd02feab82ce DIST llvm-project-2cd8207b26ea4269630feba661f68554d7ae3c15.tar.gz 227261597 BLAKE2B 51ce992b651fcf08b7fd520420040803b59f1260947953325400c50bec576c418b162d8ae2d2307e70b885b1185c302a97409bcfe48cdb14b8e1384f4e2dfa9e SHA512 a41749943508ea4a18b47c4e947917b5268544e64372c0c3347f9ab8172a2c229d8b1d813d1e842be1b98aedd624524857ed3bb23fe98ad5f36e7a71581abb4b -DIST llvm-project-6f241e36831927e3aea113cfc017c34fdeda340a.tar.gz 227203285 BLAKE2B 8d5e424c1836acc82ea766cd2cef104593c44d197ebeb64f18dbe74b1b5baeb4bc84084f5b68bd87ac36f7df25689dd2522cb6674a97da4f96f4f10f7bae5b06 SHA512 2b6e4bd6445eabfa3ace9b45d20797c7afc23f4553a8938399aeba227e3b8ca6a53a7d7762925a845bfed031c37af692b9c08180fbab80db2f3166940e560077 -DIST llvm-project-bfa7edcc6652bdb37d53e0cec64926aab3f280eb.tar.gz 226735989 BLAKE2B 165837dc526e618b44c49d5fa3dceda373452e010a09746bff248903fe77874637d05ab9f5d2f63de7ebce5c14e3b19a131313a4a557adfd20fe9cb93ab60476 SHA512 e9e19176fcf1302727ee34d69eaa820b94959d64ceaf754d8a93ebd5e262cec7fe35e87b08f705b09e42c3ea26b671318eecf10e9137c635b12f481f80fbac23 +DIST llvm-project-c30a7f459452d5766da244564bc1d5888346c364.tar.gz 227560986 BLAKE2B c1c833aa6d488530826d96db81ca8be2fcf842ccf5b10a65ff18269fdfa32fa2742fb0a547eb315c2a9ee383e1b6b6cce4a78136e1740e04d322c79fb6a66a86 SHA512 0b68d3462e5eac89f50cff5e64603758ab74c701ff2de88c8569dd45b7e702b5d13b26c2745615c0c355d46d13765f47e4d43e61cde735240c6f386c0090becb EBUILD compiler-rt-15.0.7-r1.ebuild 4252 BLAKE2B 39ed1e06453690d129552fcca79b7df77345d0a4f21d477521cd7638f492450abc7fed895471709dc3acc7f7944a2df9d89668c47bf48c6f5e9d9ab27440eea0 SHA512 9fe7a91466b8903d68009d39ce13282f2e661211f4b70bc2830119018bccf3f15c894488734451054f15e64cd258e9f517d5aa01432d5ba253f58660f4f79899 EBUILD compiler-rt-15.0.7-r2.ebuild 4380 BLAKE2B b60b82c22641657d9bc56d1dca2d357757b1512f4f738f5f1c3f31456328350a778951e18ae756d375227f1e6bfff77ce2a8932a0064884b2d2854de0e31b60c SHA512 803c77378d9fc5b40c5ef65b55e9b3fd311bb9ba6473edefe4ffc88bcc6f79fbca656a63fcfd89a8c425b72c0e0683963ae4ff6399720ebdd6f260ccb3b6891e EBUILD compiler-rt-16.0.6-r5.ebuild 5235 BLAKE2B 900d4aa376cdab2444290f20036abc8ff6f71da93ba84b48e3b6a5edc16737fafc92dc9b114b100718ae8599e2754810c6502ce1fbd9061163eeddc3b02fb836 SHA512 5ad35070fdbf7623d1990bb0c53d72e9dce27e57466429785cec41079f26db73220e26e9281625ae9288d4033e863a8e5e6e73110cbf3e2d3e70ef1deb30574a @@ -31,11 +27,8 @@ EBUILD compiler-rt-18.1.8-r1.ebuild 4987 BLAKE2B 022740352a853a3034326531fbf4d6c EBUILD compiler-rt-18.1.8-r2.ebuild 5110 BLAKE2B 2670b127e7ad87d7986aedeb17cb2a815939d563e57884930cce28ab8a26bfbe6f95d8d334cf559eb994c02f163baa2d0c6064096068b3c45776d5887301e54f SHA512 106ca487f05d50942e9ef2424bb5fe91036402d9008993f12a49026bf64149d7fec01df1b65e999dc470d1a66df70a1aaf8e5e1dd6a22116853698f5153ca2a7 EBUILD compiler-rt-19.1.4.ebuild 5204 BLAKE2B ab807058256aa80374f77c5a0141f5a0dc16413535245e729574ad1a6e1cc9e6addc88e217a6fbab725782eb24f6d85ecb6630fb33e384a901e615da56632faf SHA512 c20f1892e378ea88e1fb463227fb798fa58c8f14c3b744794ee50351242ce48b5bd0a81cbb71db1f2eb00508330366cf8f3ede6635544ff051acb022a2f86817 EBUILD compiler-rt-19.1.7.ebuild 5206 BLAKE2B 855b64072fb72f3d87da1f5f808ce47052e6ebe39f495d2f109309479e98314abec78f92aca90067ac1931dc61eb79fd7874026c8b47498226c6ba70725b0d0d SHA512 68447209ebcedef18692081cb406770fbe0501c7f8c5dba86417dbcad06a7c8eee9c809d729014b200c3a43da2b8e5c0ba49b9b488a8a7e084e17725e49aff72 -EBUILD compiler-rt-20.0.0_pre20250125.ebuild 5100 BLAKE2B b2b32ab18b711afadb036dfeca9c482ac709c410f1bd17acc01cdaa86b27575b1f06cd6db08f20c3fb104244ee7e10da78dab5dbcd7e47fd7786d91141334687 SHA512 522852d029b271677f97026d9eab52070b1eb0d24889735e845039a9626e3500cd2df8118c1890b0dad9fe57bdfd77089ce3e8c44293333bf7071d9a39608ee7 -EBUILD compiler-rt-20.1.0_rc1.ebuild 5100 BLAKE2B b2b32ab18b711afadb036dfeca9c482ac709c410f1bd17acc01cdaa86b27575b1f06cd6db08f20c3fb104244ee7e10da78dab5dbcd7e47fd7786d91141334687 SHA512 522852d029b271677f97026d9eab52070b1eb0d24889735e845039a9626e3500cd2df8118c1890b0dad9fe57bdfd77089ce3e8c44293333bf7071d9a39608ee7 EBUILD compiler-rt-20.1.0_rc2.ebuild 5100 BLAKE2B b2b32ab18b711afadb036dfeca9c482ac709c410f1bd17acc01cdaa86b27575b1f06cd6db08f20c3fb104244ee7e10da78dab5dbcd7e47fd7786d91141334687 SHA512 522852d029b271677f97026d9eab52070b1eb0d24889735e845039a9626e3500cd2df8118c1890b0dad9fe57bdfd77089ce3e8c44293333bf7071d9a39608ee7 EBUILD compiler-rt-21.0.0.9999.ebuild 5100 BLAKE2B b2b32ab18b711afadb036dfeca9c482ac709c410f1bd17acc01cdaa86b27575b1f06cd6db08f20c3fb104244ee7e10da78dab5dbcd7e47fd7786d91141334687 SHA512 522852d029b271677f97026d9eab52070b1eb0d24889735e845039a9626e3500cd2df8118c1890b0dad9fe57bdfd77089ce3e8c44293333bf7071d9a39608ee7 -EBUILD compiler-rt-21.0.0_pre20250201.ebuild 5100 BLAKE2B b2b32ab18b711afadb036dfeca9c482ac709c410f1bd17acc01cdaa86b27575b1f06cd6db08f20c3fb104244ee7e10da78dab5dbcd7e47fd7786d91141334687 SHA512 522852d029b271677f97026d9eab52070b1eb0d24889735e845039a9626e3500cd2df8118c1890b0dad9fe57bdfd77089ce3e8c44293333bf7071d9a39608ee7 -EBUILD compiler-rt-21.0.0_pre20250208.ebuild 5100 BLAKE2B b2b32ab18b711afadb036dfeca9c482ac709c410f1bd17acc01cdaa86b27575b1f06cd6db08f20c3fb104244ee7e10da78dab5dbcd7e47fd7786d91141334687 SHA512 522852d029b271677f97026d9eab52070b1eb0d24889735e845039a9626e3500cd2df8118c1890b0dad9fe57bdfd77089ce3e8c44293333bf7071d9a39608ee7 EBUILD compiler-rt-21.0.0_pre20250211.ebuild 5100 BLAKE2B b2b32ab18b711afadb036dfeca9c482ac709c410f1bd17acc01cdaa86b27575b1f06cd6db08f20c3fb104244ee7e10da78dab5dbcd7e47fd7786d91141334687 SHA512 522852d029b271677f97026d9eab52070b1eb0d24889735e845039a9626e3500cd2df8118c1890b0dad9fe57bdfd77089ce3e8c44293333bf7071d9a39608ee7 +EBUILD compiler-rt-21.0.0_pre20250215.ebuild 5100 BLAKE2B b2b32ab18b711afadb036dfeca9c482ac709c410f1bd17acc01cdaa86b27575b1f06cd6db08f20c3fb104244ee7e10da78dab5dbcd7e47fd7786d91141334687 SHA512 522852d029b271677f97026d9eab52070b1eb0d24889735e845039a9626e3500cd2df8118c1890b0dad9fe57bdfd77089ce3e8c44293333bf7071d9a39608ee7 MISC metadata.xml 610 BLAKE2B 2fd2530da10ecae7d8b54b448d0e0ec082b8082e3b5da8ab47dc79058724b368d5f900b1de18e14fe2c2b95257c69d0aceb9bd83b8b6873f65935302461ac263 SHA512 d50a05439376fa985ab1579a592cc6f544552e177132dc8773f172b827dec49ab3f8bcd77d89c25d4f2a1b99492897045b16a75ceb2d14cc76187140c33ccc45 diff --git a/llvm-runtimes/compiler-rt/compiler-rt-20.0.0_pre20250125.ebuild b/llvm-runtimes/compiler-rt/compiler-rt-20.0.0_pre20250125.ebuild deleted file mode 100644 index c3b2eb0428cd..000000000000 --- a/llvm-runtimes/compiler-rt/compiler-rt-20.0.0_pre20250125.ebuild +++ /dev/null @@ -1,175 +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 (built-in part)" -HOMEPAGE="https://llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="${LLVM_MAJOR}" -IUSE="+abi_x86_32 abi_x86_64 +atomic-builtins +clang +debug test" -REQUIRED_USE="atomic-builtins? ( clang )" -RESTRICT="!test? ( test ) !clang? ( test )" - -DEPEND=" - llvm-core/llvm:${LLVM_MAJOR} -" -BDEPEND=" - clang? ( 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_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_pretend() { - if ! use clang && ! tc-is-clang; then - ewarn "Building using a compiler other than clang may result in broken atomics" - ewarn "library. Enable USE=clang unless you have a very good reason not to." - fi -} - -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 -} - -test_compiler() { - target_is_not_host && return - $(tc-getCC) ${CFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c - \ - <<<'int main() { return 0; }' &>/dev/null -} - -src_configure() { - llvm_prepend_path "${LLVM_MAJOR}" - - # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 - use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" - - # pre-set since we need to pass it to cmake - BUILD_DIR=${WORKDIR}/${P}_build - - if use clang && ! is_crosspkg; then - # Only do this conditionally to allow overriding with - # e.g. CC=clang-13 in case of breakage - if ! tc-is-clang ; then - local -x CC=${CHOST}-clang - local -x CXX=${CHOST}-clang++ - fi - - strip-unsupported-flags - fi - - if ! is_crosspkg && ! test_compiler ; then - local nolib_flags=( -nodefaultlibs -lc ) - - if test_compiler "${nolib_flags[@]}"; then - local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" - ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}" - elif test_compiler "${nolib_flags[@]}" -nostartfiles; then - # Avoiding -nostartfiles earlier on for bug #862540, - # and set available entry symbol for bug #862798. - nolib_flags+=( -nostartfiles -e main ) - - local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" - ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}" - fi - fi - - local mycmakeargs=( - -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${LLVM_MAJOR}" - - -DCOMPILER_RT_EXCLUDE_ATOMIC_BUILTIN=$(usex !atomic-builtins) - -DCOMPILER_RT_INCLUDE_TESTS=$(usex test) - -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 - - -DPython3_EXECUTABLE="${PYTHON}" - ) - - if use amd64 && ! target_is_not_host; then - mycmakeargs+=( - -DCAN_TARGET_i386=$(usex abi_x86_32) - -DCAN_TARGET_x86_64=$(usex abi_x86_64) - ) - fi - - if is_crosspkg; then - # Needed to target built libc headers - export CFLAGS="${CFLAGS} -isystem /usr/${CTARGET}/usr/include" - mycmakeargs+=( - # Without this, the compiler will compile a test program - # and fail due to no builtins. - -DCMAKE_C_COMPILER_WORKS=1 - -DCMAKE_CXX_COMPILER_WORKS=1 - - # Without this, compiler-rt install location is not unique - # to target triples, only to architecture. - # Needed if you want to target multiple libcs for one arch. - -DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON - - -DCMAKE_ASM_COMPILER_TARGET="${CTARGET}" - -DCMAKE_C_COMPILER_TARGET="${CTARGET}" - -DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON - ) - fi - - if use prefix && [[ "${CHOST}" == *-darwin* ]] ; then - mycmakeargs+=( - # setting -isysroot is disabled with compiler-rt-prefix-paths.patch - # this allows adding arm64 support using SDK in EPREFIX - -DDARWIN_macosx_CACHED_SYSROOT="${EPREFIX}/MacOSX.sdk" - # Set version based on the SDK in EPREFIX. - # This disables i386 for SDK >= 10.15 - -DDARWIN_macosx_OVERRIDE_SDK_VERSION="$(realpath ${EPREFIX}/MacOSX.sdk | sed -e 's/.*MacOSX\(.*\)\.sdk/\1/')" - # Use our libtool instead of looking it up with xcrun - -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool" - ) - 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 -} - -src_test() { - # respect TMPDIR! - local -x LIT_PRESERVES_TMP=1 - - cmake_build check-builtins -} diff --git a/llvm-runtimes/compiler-rt/compiler-rt-20.1.0_rc1.ebuild b/llvm-runtimes/compiler-rt/compiler-rt-20.1.0_rc1.ebuild deleted file mode 100644 index c3b2eb0428cd..000000000000 --- a/llvm-runtimes/compiler-rt/compiler-rt-20.1.0_rc1.ebuild +++ /dev/null @@ -1,175 +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 (built-in part)" -HOMEPAGE="https://llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="${LLVM_MAJOR}" -IUSE="+abi_x86_32 abi_x86_64 +atomic-builtins +clang +debug test" -REQUIRED_USE="atomic-builtins? ( clang )" -RESTRICT="!test? ( test ) !clang? ( test )" - -DEPEND=" - llvm-core/llvm:${LLVM_MAJOR} -" -BDEPEND=" - clang? ( 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_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_pretend() { - if ! use clang && ! tc-is-clang; then - ewarn "Building using a compiler other than clang may result in broken atomics" - ewarn "library. Enable USE=clang unless you have a very good reason not to." - fi -} - -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 -} - -test_compiler() { - target_is_not_host && return - $(tc-getCC) ${CFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c - \ - <<<'int main() { return 0; }' &>/dev/null -} - -src_configure() { - llvm_prepend_path "${LLVM_MAJOR}" - - # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 - use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" - - # pre-set since we need to pass it to cmake - BUILD_DIR=${WORKDIR}/${P}_build - - if use clang && ! is_crosspkg; then - # Only do this conditionally to allow overriding with - # e.g. CC=clang-13 in case of breakage - if ! tc-is-clang ; then - local -x CC=${CHOST}-clang - local -x CXX=${CHOST}-clang++ - fi - - strip-unsupported-flags - fi - - if ! is_crosspkg && ! test_compiler ; then - local nolib_flags=( -nodefaultlibs -lc ) - - if test_compiler "${nolib_flags[@]}"; then - local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" - ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}" - elif test_compiler "${nolib_flags[@]}" -nostartfiles; then - # Avoiding -nostartfiles earlier on for bug #862540, - # and set available entry symbol for bug #862798. - nolib_flags+=( -nostartfiles -e main ) - - local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" - ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}" - fi - fi - - local mycmakeargs=( - -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${LLVM_MAJOR}" - - -DCOMPILER_RT_EXCLUDE_ATOMIC_BUILTIN=$(usex !atomic-builtins) - -DCOMPILER_RT_INCLUDE_TESTS=$(usex test) - -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 - - -DPython3_EXECUTABLE="${PYTHON}" - ) - - if use amd64 && ! target_is_not_host; then - mycmakeargs+=( - -DCAN_TARGET_i386=$(usex abi_x86_32) - -DCAN_TARGET_x86_64=$(usex abi_x86_64) - ) - fi - - if is_crosspkg; then - # Needed to target built libc headers - export CFLAGS="${CFLAGS} -isystem /usr/${CTARGET}/usr/include" - mycmakeargs+=( - # Without this, the compiler will compile a test program - # and fail due to no builtins. - -DCMAKE_C_COMPILER_WORKS=1 - -DCMAKE_CXX_COMPILER_WORKS=1 - - # Without this, compiler-rt install location is not unique - # to target triples, only to architecture. - # Needed if you want to target multiple libcs for one arch. - -DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON - - -DCMAKE_ASM_COMPILER_TARGET="${CTARGET}" - -DCMAKE_C_COMPILER_TARGET="${CTARGET}" - -DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON - ) - fi - - if use prefix && [[ "${CHOST}" == *-darwin* ]] ; then - mycmakeargs+=( - # setting -isysroot is disabled with compiler-rt-prefix-paths.patch - # this allows adding arm64 support using SDK in EPREFIX - -DDARWIN_macosx_CACHED_SYSROOT="${EPREFIX}/MacOSX.sdk" - # Set version based on the SDK in EPREFIX. - # This disables i386 for SDK >= 10.15 - -DDARWIN_macosx_OVERRIDE_SDK_VERSION="$(realpath ${EPREFIX}/MacOSX.sdk | sed -e 's/.*MacOSX\(.*\)\.sdk/\1/')" - # Use our libtool instead of looking it up with xcrun - -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool" - ) - 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 -} - -src_test() { - # respect TMPDIR! - local -x LIT_PRESERVES_TMP=1 - - cmake_build check-builtins -} diff --git a/llvm-runtimes/compiler-rt/compiler-rt-21.0.0_pre20250201.ebuild b/llvm-runtimes/compiler-rt/compiler-rt-21.0.0_pre20250201.ebuild deleted file mode 100644 index c3b2eb0428cd..000000000000 --- a/llvm-runtimes/compiler-rt/compiler-rt-21.0.0_pre20250201.ebuild +++ /dev/null @@ -1,175 +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 (built-in part)" -HOMEPAGE="https://llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="${LLVM_MAJOR}" -IUSE="+abi_x86_32 abi_x86_64 +atomic-builtins +clang +debug test" -REQUIRED_USE="atomic-builtins? ( clang )" -RESTRICT="!test? ( test ) !clang? ( test )" - -DEPEND=" - llvm-core/llvm:${LLVM_MAJOR} -" -BDEPEND=" - clang? ( 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_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_pretend() { - if ! use clang && ! tc-is-clang; then - ewarn "Building using a compiler other than clang may result in broken atomics" - ewarn "library. Enable USE=clang unless you have a very good reason not to." - fi -} - -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 -} - -test_compiler() { - target_is_not_host && return - $(tc-getCC) ${CFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c - \ - <<<'int main() { return 0; }' &>/dev/null -} - -src_configure() { - llvm_prepend_path "${LLVM_MAJOR}" - - # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 - use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" - - # pre-set since we need to pass it to cmake - BUILD_DIR=${WORKDIR}/${P}_build - - if use clang && ! is_crosspkg; then - # Only do this conditionally to allow overriding with - # e.g. CC=clang-13 in case of breakage - if ! tc-is-clang ; then - local -x CC=${CHOST}-clang - local -x CXX=${CHOST}-clang++ - fi - - strip-unsupported-flags - fi - - if ! is_crosspkg && ! test_compiler ; then - local nolib_flags=( -nodefaultlibs -lc ) - - if test_compiler "${nolib_flags[@]}"; then - local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" - ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}" - elif test_compiler "${nolib_flags[@]}" -nostartfiles; then - # Avoiding -nostartfiles earlier on for bug #862540, - # and set available entry symbol for bug #862798. - nolib_flags+=( -nostartfiles -e main ) - - local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" - ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}" - fi - fi - - local mycmakeargs=( - -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${LLVM_MAJOR}" - - -DCOMPILER_RT_EXCLUDE_ATOMIC_BUILTIN=$(usex !atomic-builtins) - -DCOMPILER_RT_INCLUDE_TESTS=$(usex test) - -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 - - -DPython3_EXECUTABLE="${PYTHON}" - ) - - if use amd64 && ! target_is_not_host; then - mycmakeargs+=( - -DCAN_TARGET_i386=$(usex abi_x86_32) - -DCAN_TARGET_x86_64=$(usex abi_x86_64) - ) - fi - - if is_crosspkg; then - # Needed to target built libc headers - export CFLAGS="${CFLAGS} -isystem /usr/${CTARGET}/usr/include" - mycmakeargs+=( - # Without this, the compiler will compile a test program - # and fail due to no builtins. - -DCMAKE_C_COMPILER_WORKS=1 - -DCMAKE_CXX_COMPILER_WORKS=1 - - # Without this, compiler-rt install location is not unique - # to target triples, only to architecture. - # Needed if you want to target multiple libcs for one arch. - -DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON - - -DCMAKE_ASM_COMPILER_TARGET="${CTARGET}" - -DCMAKE_C_COMPILER_TARGET="${CTARGET}" - -DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON - ) - fi - - if use prefix && [[ "${CHOST}" == *-darwin* ]] ; then - mycmakeargs+=( - # setting -isysroot is disabled with compiler-rt-prefix-paths.patch - # this allows adding arm64 support using SDK in EPREFIX - -DDARWIN_macosx_CACHED_SYSROOT="${EPREFIX}/MacOSX.sdk" - # Set version based on the SDK in EPREFIX. - # This disables i386 for SDK >= 10.15 - -DDARWIN_macosx_OVERRIDE_SDK_VERSION="$(realpath ${EPREFIX}/MacOSX.sdk | sed -e 's/.*MacOSX\(.*\)\.sdk/\1/')" - # Use our libtool instead of looking it up with xcrun - -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool" - ) - 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 -} - -src_test() { - # respect TMPDIR! - local -x LIT_PRESERVES_TMP=1 - - cmake_build check-builtins -} diff --git a/llvm-runtimes/compiler-rt/compiler-rt-21.0.0_pre20250208.ebuild b/llvm-runtimes/compiler-rt/compiler-rt-21.0.0_pre20250208.ebuild deleted file mode 100644 index c3b2eb0428cd..000000000000 --- a/llvm-runtimes/compiler-rt/compiler-rt-21.0.0_pre20250208.ebuild +++ /dev/null @@ -1,175 +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 (built-in part)" -HOMEPAGE="https://llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="${LLVM_MAJOR}" -IUSE="+abi_x86_32 abi_x86_64 +atomic-builtins +clang +debug test" -REQUIRED_USE="atomic-builtins? ( clang )" -RESTRICT="!test? ( test ) !clang? ( test )" - -DEPEND=" - llvm-core/llvm:${LLVM_MAJOR} -" -BDEPEND=" - clang? ( 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_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_pretend() { - if ! use clang && ! tc-is-clang; then - ewarn "Building using a compiler other than clang may result in broken atomics" - ewarn "library. Enable USE=clang unless you have a very good reason not to." - fi -} - -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 -} - -test_compiler() { - target_is_not_host && return - $(tc-getCC) ${CFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c - \ - <<<'int main() { return 0; }' &>/dev/null -} - -src_configure() { - llvm_prepend_path "${LLVM_MAJOR}" - - # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 - use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" - - # pre-set since we need to pass it to cmake - BUILD_DIR=${WORKDIR}/${P}_build - - if use clang && ! is_crosspkg; then - # Only do this conditionally to allow overriding with - # e.g. CC=clang-13 in case of breakage - if ! tc-is-clang ; then - local -x CC=${CHOST}-clang - local -x CXX=${CHOST}-clang++ - fi - - strip-unsupported-flags - fi - - if ! is_crosspkg && ! test_compiler ; then - local nolib_flags=( -nodefaultlibs -lc ) - - if test_compiler "${nolib_flags[@]}"; then - local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" - ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}" - elif test_compiler "${nolib_flags[@]}" -nostartfiles; then - # Avoiding -nostartfiles earlier on for bug #862540, - # and set available entry symbol for bug #862798. - nolib_flags+=( -nostartfiles -e main ) - - local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" - ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}" - fi - fi - - local mycmakeargs=( - -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${LLVM_MAJOR}" - - -DCOMPILER_RT_EXCLUDE_ATOMIC_BUILTIN=$(usex !atomic-builtins) - -DCOMPILER_RT_INCLUDE_TESTS=$(usex test) - -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 - - -DPython3_EXECUTABLE="${PYTHON}" - ) - - if use amd64 && ! target_is_not_host; then - mycmakeargs+=( - -DCAN_TARGET_i386=$(usex abi_x86_32) - -DCAN_TARGET_x86_64=$(usex abi_x86_64) - ) - fi - - if is_crosspkg; then - # Needed to target built libc headers - export CFLAGS="${CFLAGS} -isystem /usr/${CTARGET}/usr/include" - mycmakeargs+=( - # Without this, the compiler will compile a test program - # and fail due to no builtins. - -DCMAKE_C_COMPILER_WORKS=1 - -DCMAKE_CXX_COMPILER_WORKS=1 - - # Without this, compiler-rt install location is not unique - # to target triples, only to architecture. - # Needed if you want to target multiple libcs for one arch. - -DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON - - -DCMAKE_ASM_COMPILER_TARGET="${CTARGET}" - -DCMAKE_C_COMPILER_TARGET="${CTARGET}" - -DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON - ) - fi - - if use prefix && [[ "${CHOST}" == *-darwin* ]] ; then - mycmakeargs+=( - # setting -isysroot is disabled with compiler-rt-prefix-paths.patch - # this allows adding arm64 support using SDK in EPREFIX - -DDARWIN_macosx_CACHED_SYSROOT="${EPREFIX}/MacOSX.sdk" - # Set version based on the SDK in EPREFIX. - # This disables i386 for SDK >= 10.15 - -DDARWIN_macosx_OVERRIDE_SDK_VERSION="$(realpath ${EPREFIX}/MacOSX.sdk | sed -e 's/.*MacOSX\(.*\)\.sdk/\1/')" - # Use our libtool instead of looking it up with xcrun - -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool" - ) - 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 -} - -src_test() { - # respect TMPDIR! - local -x LIT_PRESERVES_TMP=1 - - cmake_build check-builtins -} diff --git a/llvm-runtimes/compiler-rt/compiler-rt-21.0.0_pre20250215.ebuild b/llvm-runtimes/compiler-rt/compiler-rt-21.0.0_pre20250215.ebuild new file mode 100644 index 000000000000..c3b2eb0428cd --- /dev/null +++ b/llvm-runtimes/compiler-rt/compiler-rt-21.0.0_pre20250215.ebuild @@ -0,0 +1,175 @@ +# 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 (built-in part)" +HOMEPAGE="https://llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" +SLOT="${LLVM_MAJOR}" +IUSE="+abi_x86_32 abi_x86_64 +atomic-builtins +clang +debug test" +REQUIRED_USE="atomic-builtins? ( clang )" +RESTRICT="!test? ( test ) !clang? ( test )" + +DEPEND=" + llvm-core/llvm:${LLVM_MAJOR} +" +BDEPEND=" + clang? ( 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_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_pretend() { + if ! use clang && ! tc-is-clang; then + ewarn "Building using a compiler other than clang may result in broken atomics" + ewarn "library. Enable USE=clang unless you have a very good reason not to." + fi +} + +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 +} + +test_compiler() { + target_is_not_host && return + $(tc-getCC) ${CFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c - \ + <<<'int main() { return 0; }' &>/dev/null +} + +src_configure() { + llvm_prepend_path "${LLVM_MAJOR}" + + # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 + use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" + + # pre-set since we need to pass it to cmake + BUILD_DIR=${WORKDIR}/${P}_build + + if use clang && ! is_crosspkg; then + # Only do this conditionally to allow overriding with + # e.g. CC=clang-13 in case of breakage + if ! tc-is-clang ; then + local -x CC=${CHOST}-clang + local -x CXX=${CHOST}-clang++ + fi + + strip-unsupported-flags + fi + + if ! is_crosspkg && ! test_compiler ; then + local nolib_flags=( -nodefaultlibs -lc ) + + if test_compiler "${nolib_flags[@]}"; then + local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" + ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}" + elif test_compiler "${nolib_flags[@]}" -nostartfiles; then + # Avoiding -nostartfiles earlier on for bug #862540, + # and set available entry symbol for bug #862798. + nolib_flags+=( -nostartfiles -e main ) + + local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" + ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}" + fi + fi + + local mycmakeargs=( + -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${LLVM_MAJOR}" + + -DCOMPILER_RT_EXCLUDE_ATOMIC_BUILTIN=$(usex !atomic-builtins) + -DCOMPILER_RT_INCLUDE_TESTS=$(usex test) + -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 + + -DPython3_EXECUTABLE="${PYTHON}" + ) + + if use amd64 && ! target_is_not_host; then + mycmakeargs+=( + -DCAN_TARGET_i386=$(usex abi_x86_32) + -DCAN_TARGET_x86_64=$(usex abi_x86_64) + ) + fi + + if is_crosspkg; then + # Needed to target built libc headers + export CFLAGS="${CFLAGS} -isystem /usr/${CTARGET}/usr/include" + mycmakeargs+=( + # Without this, the compiler will compile a test program + # and fail due to no builtins. + -DCMAKE_C_COMPILER_WORKS=1 + -DCMAKE_CXX_COMPILER_WORKS=1 + + # Without this, compiler-rt install location is not unique + # to target triples, only to architecture. + # Needed if you want to target multiple libcs for one arch. + -DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON + + -DCMAKE_ASM_COMPILER_TARGET="${CTARGET}" + -DCMAKE_C_COMPILER_TARGET="${CTARGET}" + -DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON + ) + fi + + if use prefix && [[ "${CHOST}" == *-darwin* ]] ; then + mycmakeargs+=( + # setting -isysroot is disabled with compiler-rt-prefix-paths.patch + # this allows adding arm64 support using SDK in EPREFIX + -DDARWIN_macosx_CACHED_SYSROOT="${EPREFIX}/MacOSX.sdk" + # Set version based on the SDK in EPREFIX. + # This disables i386 for SDK >= 10.15 + -DDARWIN_macosx_OVERRIDE_SDK_VERSION="$(realpath ${EPREFIX}/MacOSX.sdk | sed -e 's/.*MacOSX\(.*\)\.sdk/\1/')" + # Use our libtool instead of looking it up with xcrun + -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool" + ) + 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 +} + +src_test() { + # respect TMPDIR! + local -x LIT_PRESERVES_TMP=1 + + cmake_build check-builtins +} -- cgit v1.2.3