diff options
author | V3n3RiX <venerix@koprulu.sector> | 2024-12-29 06:30:44 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2024-12-29 06:30:44 +0000 |
commit | 0e12f8e53cdddba84b0eb27dca59153e2cf52309 (patch) | |
tree | 8dec970370295a71970b82457ae1db36dbbbd07c /llvm-runtimes/libcxx | |
parent | 72fd2b48b7154274a1d2009cdaab54e7f49fb3aa (diff) |
gentoo auto-resync : 29:12:2024 - 06:30:44
Diffstat (limited to 'llvm-runtimes/libcxx')
-rw-r--r-- | llvm-runtimes/libcxx/Manifest | 9 | ||||
-rw-r--r-- | llvm-runtimes/libcxx/libcxx-19.1.5.ebuild | 202 | ||||
-rw-r--r-- | llvm-runtimes/libcxx/libcxx-20.0.0_pre20241207.ebuild | 208 | ||||
-rw-r--r-- | llvm-runtimes/libcxx/libcxx-20.0.0_pre20241215.ebuild | 208 | ||||
-rw-r--r-- | llvm-runtimes/libcxx/libcxx-20.0.0_pre20241221.ebuild | 208 |
5 files changed, 0 insertions, 835 deletions
diff --git a/llvm-runtimes/libcxx/Manifest b/llvm-runtimes/libcxx/Manifest index 18e04f11e94d..b29a92ba1919 100644 --- a/llvm-runtimes/libcxx/Manifest +++ b/llvm-runtimes/libcxx/Manifest @@ -10,24 +10,15 @@ 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.4.src.tar.xz 141255156 BLAKE2B b99cd8a96e38dbcfb582ee5d2250268df36fb94fa0fd5b3611484094fbd7962051978334d2c623d2ff5a0209dbb2c6c6492be0146507ae982a7d3e9705a689c5 SHA512 a586f8a41dde5e0d9ca6d8c58e9ef2a2e59b70a86d2e2c46106dc31b5c096bb80af0cdbdb486179e9cc676a540099f49a1c2db9e5e84c50362db1f72e9af6906 DIST llvm-project-19.1.4.src.tar.xz.sig 438 BLAKE2B b0925bdb761046d69779e0b035e29430bc09ef2b81be763aa5c853793631d7b7fdd65eb4dae7a1e3b4daa15d189c24cd1e14f065f79fdbf75429fa34be9b330e SHA512 3fb4a6c7594cb43680860698dac47062dde30de60f515dcecdad63812ea1edfb2cb209d0a7ac2254589c245a95b7c0f571b582e0d4b97a6ae8242563483ea764 -DIST llvm-project-19.1.5.src.tar.xz 141243716 BLAKE2B 228fc66ab688abfc16f31b2cd83163b81ef61604ace21eab69a1776f0dc88cbe8fa831162205849e5be3975a214136399572b4ad1b908986e37b2d38a1a7fa5d SHA512 648854e9c91fdcc5c677ce3800e046f2060b998a45cf9f7eebe02898431b3924f9348b6fc366102cd4fdda72dcb8f32076f98aa69927e0e20b3f1007fba10b22 -DIST llvm-project-19.1.5.src.tar.xz.sig 438 BLAKE2B 1d40a5c5405f99ef86e3360f9ea153afd1ae4001697210fd799a988113e8a3cef39e2c4794edd9332f384d8490f4ce2ab6bee6d98f794f84775807f833b81c0a SHA512 a438c86ce882eb1ac3e50842937068794ed162bb1b7ded68a2fe3ec2ab4f57cc38aee667cfb46afe6da22eef7ed1cb65820a473f63bd5a0dc6aad41df7bfad54 DIST llvm-project-19.1.6.src.tar.xz 141248428 BLAKE2B b35ab0c754f28c850ac6fd4ee584e963b1d5cf06885c59827ee4ac11f93cde5b8e0268fbed560839137de2c495c9da2b889331cd12a8a02958d8e0cbdbed2607 SHA512 d411a6d913d6a1e1f3c16cfc1ce81c1e6292ea370703f55fb67c7af62f02193d53f5ef7823c8679d6f25cbe47b40236fcaf37044ad7cdfada8166efe7eb106b3 DIST llvm-project-19.1.6.src.tar.xz.sig 438 BLAKE2B 1791e98252ab78a9a762ef601ff9edee115385181781c8100f14ec80061d7888ee4c4c519297a0e89b9c7ab2203aa9d5bb3084ea1d0f0024c2acf84826fd370b SHA512 8e79a39a4f54da3579794f9b5a009ea8ee56c7bc1805187274794ce56e81aa492ea93f5c7839a59beedcf7d657acded5ecb75d5803658cce1f9e8f753439c6c4 -DIST llvm-project-32f7f0010bca99ee4bd917f57272733fb2bf3bd9.tar.gz 223983502 BLAKE2B fd3e6b0b795abc42568ef98fa774d927029c18838a5d0f34eaa66c37976444a63f2fc5d883f3bf3a98533f51e387936f1c659230f31c757d26153425696a16cd SHA512 65a345ad5b77c627008f759947e5e9f28a62c8992d7146113e0446e5849feaf9088c15c8b22ca0824af5b927d6a417f5326258b489fb8ccea78ec9e0e0fe8fba -DIST llvm-project-49a5ad8e5714fd404210279303acc97b495d66d0.tar.gz 224456065 BLAKE2B 0077b9d37c479ac6190cc4b897cc35d6f1f3e6a772cd0620bcb1006afc19377e9968e38fb9d9adffe316e85290c9045deecbf9bf62b440c55968634b442edb31 SHA512 45d779eb27c230f656fda47c85127381cab8c8f7f75d77411c6960269f8aad5fa3c99c024a98ab8a349da1c88ad9d892cc82f91a6f344b791b281449031ae49a -DIST llvm-project-665d79f2e967a5eee6fff93685e45f50cf24cab2.tar.gz 224186302 BLAKE2B 6d4a02b6cfaf53324161c43ed02024f0fea0e7de25a9150cc0168602d7dff3f618026fa8318aa6e03904a9424afa1f12c5eb33bfdfa82e72210f34e5829a7804 SHA512 7482e176b1e2389b0dd0e67271cdb0489e9db0595874408156a034b40d336ecd960c63b89c237ca22eee3650880b0f08a97de14f8a17c918245915d422e568c9 DIST llvm-project-ccfe0de0e1e37ed369c9bf89dd0188ba0afb2e9a.tar.gz 224396427 BLAKE2B 6e13c65d2ba83fdaf2db20a58b878106568406f07f9c2ceb47e4d2572fb041211384ed67c43801764060101ec4a1b04c18bf4097f37512d2751aa5860c1a8dc3 SHA512 ef4512b735568aaa627a7f4e9bac3fc4722db7a2b8bd1610faaf066856be9474fb297fd75b3c0dcc76f60ab35c3110fd329faad3e8d9b75e93844d56f41c03d1 EBUILD libcxx-15.0.7-r1.ebuild 5288 BLAKE2B 5c619de6d028fbce7abc50adec16c5c825ef39d7d7477b09aa02150e089b963928a54dcb5a9b7f02ddfa7827e1cccea35cfef7640561214bc16d0b81ea0d8e72 SHA512 410ae6f3ece045192cd6eb589c06f11a5b71d3e6fcfe882793d6a910ea0fa10ce5904874c7488280c5383b36954189255799a745be7aa98cfd27af6338dcfd66 EBUILD libcxx-16.0.6.ebuild 5305 BLAKE2B 0a625868cac2747c0cae6cd722d238ad6f9ec80a4cfbaa1e927990975f6f40a509af4e227baa0b7c562123fc04f7059a6fe71f19061727cf68b22c789741e470 SHA512 f337115153389372c38d2fece3642f707fd0516b913626cb71b111850e853a4dafdcad98e852de01fb62e99044e197958319ef1179ffa248805eb1f27efc09ae EBUILD libcxx-17.0.6.ebuild 5285 BLAKE2B b435edac66c052e8d26b3d55dce6027d876c33b3c14c20198f96c2264e4eee06da924b158beaeab6a4013f0f5dcfb8bec70ef507e022c14f320c60995f613c87 SHA512 e9b50cad8732ef95ae36f212d1eeafe6e266a7f65f31f6d436f3e04dabaa4753989f787c4b2d4e35524f817090becacacf95619bbaaf2731762fec078e3d3693 EBUILD libcxx-18.1.8.ebuild 5447 BLAKE2B 4c284f19f8bb907f2d91e8c98dca9f072e167c8a23787ffff3c3b006d40be2a5f45baa9c6b87b73929362d91007cbf2e8c46064abd3da9331f5ad0915eadbe41 SHA512 6cdf090d8a748318824c9604aa6ec89f3c8d1b741afc63dd202b7477885f0b3fe6fa2ffd52a1e13224ac23b72116d7e30ffafc6b4da1b4a4773e30e3cf04060c EBUILD libcxx-19.1.4.ebuild 5181 BLAKE2B 6a1dd56caaa53fd38d9ee3d10baf655f391470a5405d92717fbb20ba4ce52991fed5a535b5ace58745ed976a784e06d6c99d53245066579822ff704337e45dae SHA512 3b8071c5d4c010bac7a8417d0e06c3c1e8051a6512b3e276338dd4f840b6ae95ee36507a0c4d87d08d200ba6b8ec26806cfe66975538e6029528f094a3a310e8 -EBUILD libcxx-19.1.5.ebuild 5186 BLAKE2B 932ffaac4d36b23bcf60f83601a1d4d969c828d3ca6bb53fcc930aa912d2264bb6d052c6da6343c2e894e697754d6fb7b04d3256b6b48888008d5e14927441e5 SHA512 a0f9ed34330ea4057e21ec663e30cf0e98efbeb09c6993f8316789dc47750dc3d5d29b147c09aebdb38f057c3ff727938c1a5b36ecedd9048a7371e272a408a6 EBUILD libcxx-19.1.6.ebuild 5186 BLAKE2B 932ffaac4d36b23bcf60f83601a1d4d969c828d3ca6bb53fcc930aa912d2264bb6d052c6da6343c2e894e697754d6fb7b04d3256b6b48888008d5e14927441e5 SHA512 a0f9ed34330ea4057e21ec663e30cf0e98efbeb09c6993f8316789dc47750dc3d5d29b147c09aebdb38f057c3ff727938c1a5b36ecedd9048a7371e272a408a6 EBUILD libcxx-20.0.0.9999.ebuild 5363 BLAKE2B 5b31c35a16136e3d0459d5c3d2a0c2bf7fb1e20527442c0492b4731eff382d5f0e3f49eff8b561e39f0a86122762c481002fd64d1dcb415126d49759a4b0798c SHA512 f3c0c44fe38d292a2cddf1b901d40bee9fdb41627fa395d107a04ac55be04c86b2389e18c33cdab649eaa8db30f78c998da159393599fdf7b517984c332088f6 -EBUILD libcxx-20.0.0_pre20241207.ebuild 5363 BLAKE2B 5b31c35a16136e3d0459d5c3d2a0c2bf7fb1e20527442c0492b4731eff382d5f0e3f49eff8b561e39f0a86122762c481002fd64d1dcb415126d49759a4b0798c SHA512 f3c0c44fe38d292a2cddf1b901d40bee9fdb41627fa395d107a04ac55be04c86b2389e18c33cdab649eaa8db30f78c998da159393599fdf7b517984c332088f6 -EBUILD libcxx-20.0.0_pre20241215.ebuild 5363 BLAKE2B 5b31c35a16136e3d0459d5c3d2a0c2bf7fb1e20527442c0492b4731eff382d5f0e3f49eff8b561e39f0a86122762c481002fd64d1dcb415126d49759a4b0798c SHA512 f3c0c44fe38d292a2cddf1b901d40bee9fdb41627fa395d107a04ac55be04c86b2389e18c33cdab649eaa8db30f78c998da159393599fdf7b517984c332088f6 -EBUILD libcxx-20.0.0_pre20241221.ebuild 5363 BLAKE2B 5b31c35a16136e3d0459d5c3d2a0c2bf7fb1e20527442c0492b4731eff382d5f0e3f49eff8b561e39f0a86122762c481002fd64d1dcb415126d49759a4b0798c SHA512 f3c0c44fe38d292a2cddf1b901d40bee9fdb41627fa395d107a04ac55be04c86b2389e18c33cdab649eaa8db30f78c998da159393599fdf7b517984c332088f6 EBUILD libcxx-20.0.0_pre20241227.ebuild 5363 BLAKE2B 5b31c35a16136e3d0459d5c3d2a0c2bf7fb1e20527442c0492b4731eff382d5f0e3f49eff8b561e39f0a86122762c481002fd64d1dcb415126d49759a4b0798c SHA512 f3c0c44fe38d292a2cddf1b901d40bee9fdb41627fa395d107a04ac55be04c86b2389e18c33cdab649eaa8db30f78c998da159393599fdf7b517984c332088f6 MISC metadata.xml 603 BLAKE2B ed0b70336793f05ecd2c3412ccc5d25800d7aab1ed5a10223c1b181858174f87c3f87be6785cb6323b3c6413e88787d1d28347965255cd214a8ff2f0ac534de9 SHA512 34bfa522496f4c220a44f09d76562680d1a0465ee10ece62f2e96a383f70e7284549e60cbbba52c8dee37f743ee17b11777008d59f169d31555edce2261cf063 diff --git a/llvm-runtimes/libcxx/libcxx-19.1.5.ebuild b/llvm-runtimes/libcxx/libcxx-19.1.5.ebuild deleted file mode 100644 index ee2f2e316112..000000000000 --- a/llvm-runtimes/libcxx/libcxx-19.1.5.ebuild +++ /dev/null @@ -1,202 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..13} ) -inherit cmake-multilib flag-o-matic llvm.org llvm-utils python-any-r1 -inherit toolchain-funcs - -DESCRIPTION="New implementation of the C++ standard library, targeting C++11" -HOMEPAGE="https://libcxx.llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~sparc ~x86 ~arm64-macos ~x64-macos" -IUSE="+clang +libcxxabi +static-libs test" -REQUIRED_USE="test? ( clang )" -RESTRICT="!test? ( test )" - -RDEPEND=" - libcxxabi? ( - ~llvm-runtimes/libcxxabi-${PV}[static-libs?,${MULTILIB_USEDEP}] - ) - !libcxxabi? ( >=sys-devel/gcc-4.7:=[cxx] ) -" -DEPEND=" - ${RDEPEND} - llvm-core/llvm:${LLVM_MAJOR} -" -BDEPEND=" - clang? ( - llvm-core/clang:${LLVM_MAJOR} - ) - !test? ( - ${PYTHON_DEPS} - ) - test? ( - dev-debug/gdb[python] - $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') - ) -" - -LLVM_COMPONENTS=( runtimes libcxx{,abi} llvm/{cmake,utils/llvm-lit} cmake ) -llvm.org_set_globals - -python_check_deps() { - use test || return 0 - python_has_version "dev-python/lit[${PYTHON_USEDEP}]" -} - -pkg_setup() { - python-any-r1_pkg_setup - - if ! use libcxxabi && ! tc-is-gcc ; then - eerror "To build ${PN} against libsupc++, you have to use gcc. Other" - eerror "compilers are not supported. Please set CC=gcc and CXX=g++" - eerror "and try again." - die - fi -} - -test_compiler() { - $(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c++ - \ - <<<'int main() { return 0; }' &>/dev/null -} - -src_configure() { - llvm_prepend_path "${LLVM_MAJOR}" - - # note: we need to do this before multilib kicks in since it will - # alter the CHOST - local cxxabi cxxabi_incs - if use libcxxabi; then - cxxabi=system-libcxxabi - cxxabi_incs="${EPREFIX}/usr/include/c++/v1" - else - local gcc_inc="${EPREFIX}/usr/lib/gcc/${CHOST}/$(gcc-fullversion)/include/g++-v$(gcc-major-version)" - cxxabi=libsupc++ - cxxabi_incs="${gcc_inc};${gcc_inc}/${CHOST}" - fi - - multilib-minimal_src_configure -} - -multilib_src_configure() { - if use clang; then - local -x CC=${CHOST}-clang - local -x CXX=${CHOST}-clang++ - strip-unsupported-flags - fi - - # link to compiler-rt - local use_compiler_rt=OFF - [[ $(tc-get-c-rtlib) == compiler-rt ]] && use_compiler_rt=ON - - # bootstrap: cmake is unhappy if compiler can't link to stdlib - local nolib_flags=( -nodefaultlibs -lc ) - if ! test_compiler; then - if test_compiler "${nolib_flags[@]}"; then - local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" - ewarn "${CXX} seems to lack runtime, trying with ${nolib_flags[*]}" - fi - fi - - local libdir=$(get_libdir) - local mycmakeargs=( - -DCMAKE_CXX_COMPILER_TARGET="${CHOST}" - -DPython3_EXECUTABLE="${PYTHON}" - -DLLVM_ENABLE_RUNTIMES=libcxx - -DLLVM_INCLUDE_TESTS=OFF - -DLLVM_LIBDIR_SUFFIX=${libdir#lib} - - -DLIBCXX_ENABLE_SHARED=ON - -DLIBCXX_ENABLE_STATIC=$(usex static-libs) - -DLIBCXX_CXX_ABI=${cxxabi} - -DLIBCXX_CXX_ABI_INCLUDE_PATHS=${cxxabi_incs} - # we're using our own mechanism for generating linker scripts - -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF - -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl) - -DLIBCXX_INCLUDE_BENCHMARKS=OFF - -DLIBCXX_INCLUDE_TESTS=$(usex test) - -DLIBCXX_INSTALL_MODULES=ON - -DLIBCXX_USE_COMPILER_RT=${use_compiler_rt} - # this is broken with standalone builds, and also meaningless - -DLIBCXXABI_USE_LLVM_UNWINDER=OFF - ) - - if use test; then - mycmakeargs+=( - -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" - -DLLVM_LIT_ARGS="$(get_lit_flags)" - -DPython3_EXECUTABLE="${PYTHON}" - ) - fi - cmake_src_configure -} - -multilib_src_compile() { - cmake_src_compile - if [[ ${CHOST} != *-darwin* ]] ; then - gen_shared_ldscript - use static-libs && gen_static_ldscript - fi -} - -multilib_src_test() { - local -x LIT_PRESERVES_TMP=1 - cmake_build check-cxx -} - -multilib_src_install() { - cmake_src_install - # since we've replaced libc++.{a,so} with ldscripts, now we have to - # install the extra symlinks - if [[ ${CHOST} != *-darwin* ]] ; then - dolib.so lib/libc++_shared.so - use static-libs && dolib.a lib/libc++_static.a - fi -} - -# 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 -} - -gen_static_ldscript() { - # Move it first. - mv lib/libc++{,_static}.a || die - # Generate libc++.a ldscript for inclusion of its dependencies so that - # clang++ -stdlib=libc++ -static works out of the box. - local deps=( - libc++_static.a - $(usex libcxxabi libc++abi.a libsupc++.a) - ) - # On Linux/glibc it does not link without libpthread or libdl. It is - # fine on FreeBSD. - use elibc_glibc && deps+=( libpthread.a libdl.a ) - - gen_ldscript "${deps[*]}" > lib/libc++.a || die -} - -gen_shared_ldscript() { - # Move it first. - mv lib/libc++{,_shared}.so || die - local deps=( - libc++_shared.so - # libsupc++ doesn't have a shared version - $(usex libcxxabi libc++abi.so libsupc++.a) - ) - - gen_ldscript "${deps[*]}" > lib/libc++.so || die -} diff --git a/llvm-runtimes/libcxx/libcxx-20.0.0_pre20241207.ebuild b/llvm-runtimes/libcxx/libcxx-20.0.0_pre20241207.ebuild deleted file mode 100644 index 9c07b6d01774..000000000000 --- a/llvm-runtimes/libcxx/libcxx-20.0.0_pre20241207.ebuild +++ /dev/null @@ -1,208 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..13} ) -inherit cmake-multilib flag-o-matic llvm.org llvm-utils python-any-r1 -inherit toolchain-funcs - -DESCRIPTION="New implementation of the C++ standard library, targeting C++11" -HOMEPAGE="https://libcxx.llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="0" -IUSE="+clang +libcxxabi +static-libs test" -REQUIRED_USE="test? ( clang )" -RESTRICT="!test? ( test )" - -RDEPEND=" - libcxxabi? ( - ~llvm-runtimes/libcxxabi-${PV}[static-libs?,${MULTILIB_USEDEP}] - ) - !libcxxabi? ( >=sys-devel/gcc-4.7:=[cxx] ) -" -DEPEND=" - ${RDEPEND} - llvm-core/llvm:${LLVM_MAJOR} -" -BDEPEND=" - clang? ( - llvm-core/clang:${LLVM_MAJOR} - ) - !test? ( - ${PYTHON_DEPS} - ) - test? ( - dev-debug/gdb[python] - $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') - ) -" - -LLVM_COMPONENTS=( - runtimes libcxx{,abi} libc llvm/{cmake,utils/llvm-lit} cmake -) -llvm.org_set_globals - -python_check_deps() { - use test || return 0 - python_has_version "dev-python/lit[${PYTHON_USEDEP}]" -} - -pkg_setup() { - python-any-r1_pkg_setup - - if ! use libcxxabi && ! tc-is-gcc ; then - eerror "To build ${PN} against libsupc++, you have to use gcc. Other" - eerror "compilers are not supported. Please set CC=gcc and CXX=g++" - eerror "and try again." - die - fi -} - -test_compiler() { - $(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c++ - \ - <<<'int main() { return 0; }' &>/dev/null -} - -src_configure() { - llvm_prepend_path "${LLVM_MAJOR}" - - # note: we need to do this before multilib kicks in since it will - # alter the CHOST - local cxxabi cxxabi_incs - if use libcxxabi; then - cxxabi=system-libcxxabi - cxxabi_incs="${EPREFIX}/usr/include/c++/v1" - else - local gcc_inc="${EPREFIX}/usr/lib/gcc/${CHOST}/$(gcc-fullversion)/include/g++-v$(gcc-major-version)" - cxxabi=libsupc++ - cxxabi_incs="${gcc_inc};${gcc_inc}/${CHOST}" - fi - - multilib-minimal_src_configure -} - -multilib_src_configure() { - if use clang; then - local -x CC=${CHOST}-clang - local -x CXX=${CHOST}-clang++ - strip-unsupported-flags - fi - - # link to compiler-rt - local use_compiler_rt=OFF - [[ $(tc-get-c-rtlib) == compiler-rt ]] && use_compiler_rt=ON - - # bootstrap: cmake is unhappy if compiler can't link to stdlib - local nolib_flags=( -nodefaultlibs -lc ) - if ! test_compiler; then - if test_compiler "${nolib_flags[@]}"; then - local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" - ewarn "${CXX} seems to lack runtime, trying with ${nolib_flags[*]}" - fi - fi - - local libdir=$(get_libdir) - local mycmakeargs=( - -DCMAKE_CXX_COMPILER_TARGET="${CHOST}" - -DPython3_EXECUTABLE="${PYTHON}" - -DLLVM_ENABLE_RUNTIMES=libcxx - -DLLVM_INCLUDE_TESTS=OFF - -DLLVM_LIBDIR_SUFFIX=${libdir#lib} - - -DLIBCXX_ENABLE_SHARED=ON - -DLIBCXX_ENABLE_STATIC=$(usex static-libs) - -DLIBCXX_CXX_ABI=${cxxabi} - -DLIBCXX_CXX_ABI_INCLUDE_PATHS=${cxxabi_incs} - # we're using our own mechanism for generating linker scripts - -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF - -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl) - -DLIBCXX_INCLUDE_BENCHMARKS=OFF - -DLIBCXX_INCLUDE_TESTS=$(usex test) - -DLIBCXX_INSTALL_MODULES=ON - -DLIBCXX_USE_COMPILER_RT=${use_compiler_rt} - # this is broken with standalone builds, and also meaningless - -DLIBCXXABI_USE_LLVM_UNWINDER=OFF - ) - - if use test; then - mycmakeargs+=( - -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" - -DLLVM_LIT_ARGS="$(get_lit_flags)" - -DPython3_EXECUTABLE="${PYTHON}" - ) - fi - cmake_src_configure -} - -multilib_src_compile() { - cmake_src_compile - if [[ ${CHOST} != *-darwin* ]] ; then - gen_shared_ldscript - use static-libs && gen_static_ldscript - fi -} - -multilib_src_test() { - local -x LIT_PRESERVES_TMP=1 - cmake_build install-cxx-test-suite-prefix - cp "${BUILD_DIR}"/{lib,libcxx/test-suite-install/$(get_libdir)}/libc++_shared.so || die - if use static-libs; then - cp "${BUILD_DIR}"/{lib,libcxx/test-suite-install/$(get_libdir)}/libc++_static.a || die - fi - cmake_build check-cxx -} - -multilib_src_install() { - cmake_src_install - # since we've replaced libc++.{a,so} with ldscripts, now we have to - # install the extra symlinks - if [[ ${CHOST} != *-darwin* ]] ; then - dolib.so lib/libc++_shared.so - use static-libs && dolib.a lib/libc++_static.a - fi -} - -# 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 -} - -gen_static_ldscript() { - # Move it first. - mv lib/libc++{,_static}.a || die - # Generate libc++.a ldscript for inclusion of its dependencies so that - # clang++ -stdlib=libc++ -static works out of the box. - local deps=( - libc++_static.a - $(usex libcxxabi libc++abi.a libsupc++.a) - ) - # On Linux/glibc it does not link without libpthread or libdl. It is - # fine on FreeBSD. - use elibc_glibc && deps+=( libpthread.a libdl.a ) - - gen_ldscript "${deps[*]}" > lib/libc++.a || die -} - -gen_shared_ldscript() { - # Move it first. - mv lib/libc++{,_shared}.so || die - local deps=( - libc++_shared.so - # libsupc++ doesn't have a shared version - $(usex libcxxabi libc++abi.so libsupc++.a) - ) - - gen_ldscript "${deps[*]}" > lib/libc++.so || die -} diff --git a/llvm-runtimes/libcxx/libcxx-20.0.0_pre20241215.ebuild b/llvm-runtimes/libcxx/libcxx-20.0.0_pre20241215.ebuild deleted file mode 100644 index 9c07b6d01774..000000000000 --- a/llvm-runtimes/libcxx/libcxx-20.0.0_pre20241215.ebuild +++ /dev/null @@ -1,208 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..13} ) -inherit cmake-multilib flag-o-matic llvm.org llvm-utils python-any-r1 -inherit toolchain-funcs - -DESCRIPTION="New implementation of the C++ standard library, targeting C++11" -HOMEPAGE="https://libcxx.llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="0" -IUSE="+clang +libcxxabi +static-libs test" -REQUIRED_USE="test? ( clang )" -RESTRICT="!test? ( test )" - -RDEPEND=" - libcxxabi? ( - ~llvm-runtimes/libcxxabi-${PV}[static-libs?,${MULTILIB_USEDEP}] - ) - !libcxxabi? ( >=sys-devel/gcc-4.7:=[cxx] ) -" -DEPEND=" - ${RDEPEND} - llvm-core/llvm:${LLVM_MAJOR} -" -BDEPEND=" - clang? ( - llvm-core/clang:${LLVM_MAJOR} - ) - !test? ( - ${PYTHON_DEPS} - ) - test? ( - dev-debug/gdb[python] - $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') - ) -" - -LLVM_COMPONENTS=( - runtimes libcxx{,abi} libc llvm/{cmake,utils/llvm-lit} cmake -) -llvm.org_set_globals - -python_check_deps() { - use test || return 0 - python_has_version "dev-python/lit[${PYTHON_USEDEP}]" -} - -pkg_setup() { - python-any-r1_pkg_setup - - if ! use libcxxabi && ! tc-is-gcc ; then - eerror "To build ${PN} against libsupc++, you have to use gcc. Other" - eerror "compilers are not supported. Please set CC=gcc and CXX=g++" - eerror "and try again." - die - fi -} - -test_compiler() { - $(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c++ - \ - <<<'int main() { return 0; }' &>/dev/null -} - -src_configure() { - llvm_prepend_path "${LLVM_MAJOR}" - - # note: we need to do this before multilib kicks in since it will - # alter the CHOST - local cxxabi cxxabi_incs - if use libcxxabi; then - cxxabi=system-libcxxabi - cxxabi_incs="${EPREFIX}/usr/include/c++/v1" - else - local gcc_inc="${EPREFIX}/usr/lib/gcc/${CHOST}/$(gcc-fullversion)/include/g++-v$(gcc-major-version)" - cxxabi=libsupc++ - cxxabi_incs="${gcc_inc};${gcc_inc}/${CHOST}" - fi - - multilib-minimal_src_configure -} - -multilib_src_configure() { - if use clang; then - local -x CC=${CHOST}-clang - local -x CXX=${CHOST}-clang++ - strip-unsupported-flags - fi - - # link to compiler-rt - local use_compiler_rt=OFF - [[ $(tc-get-c-rtlib) == compiler-rt ]] && use_compiler_rt=ON - - # bootstrap: cmake is unhappy if compiler can't link to stdlib - local nolib_flags=( -nodefaultlibs -lc ) - if ! test_compiler; then - if test_compiler "${nolib_flags[@]}"; then - local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" - ewarn "${CXX} seems to lack runtime, trying with ${nolib_flags[*]}" - fi - fi - - local libdir=$(get_libdir) - local mycmakeargs=( - -DCMAKE_CXX_COMPILER_TARGET="${CHOST}" - -DPython3_EXECUTABLE="${PYTHON}" - -DLLVM_ENABLE_RUNTIMES=libcxx - -DLLVM_INCLUDE_TESTS=OFF - -DLLVM_LIBDIR_SUFFIX=${libdir#lib} - - -DLIBCXX_ENABLE_SHARED=ON - -DLIBCXX_ENABLE_STATIC=$(usex static-libs) - -DLIBCXX_CXX_ABI=${cxxabi} - -DLIBCXX_CXX_ABI_INCLUDE_PATHS=${cxxabi_incs} - # we're using our own mechanism for generating linker scripts - -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF - -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl) - -DLIBCXX_INCLUDE_BENCHMARKS=OFF - -DLIBCXX_INCLUDE_TESTS=$(usex test) - -DLIBCXX_INSTALL_MODULES=ON - -DLIBCXX_USE_COMPILER_RT=${use_compiler_rt} - # this is broken with standalone builds, and also meaningless - -DLIBCXXABI_USE_LLVM_UNWINDER=OFF - ) - - if use test; then - mycmakeargs+=( - -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" - -DLLVM_LIT_ARGS="$(get_lit_flags)" - -DPython3_EXECUTABLE="${PYTHON}" - ) - fi - cmake_src_configure -} - -multilib_src_compile() { - cmake_src_compile - if [[ ${CHOST} != *-darwin* ]] ; then - gen_shared_ldscript - use static-libs && gen_static_ldscript - fi -} - -multilib_src_test() { - local -x LIT_PRESERVES_TMP=1 - cmake_build install-cxx-test-suite-prefix - cp "${BUILD_DIR}"/{lib,libcxx/test-suite-install/$(get_libdir)}/libc++_shared.so || die - if use static-libs; then - cp "${BUILD_DIR}"/{lib,libcxx/test-suite-install/$(get_libdir)}/libc++_static.a || die - fi - cmake_build check-cxx -} - -multilib_src_install() { - cmake_src_install - # since we've replaced libc++.{a,so} with ldscripts, now we have to - # install the extra symlinks - if [[ ${CHOST} != *-darwin* ]] ; then - dolib.so lib/libc++_shared.so - use static-libs && dolib.a lib/libc++_static.a - fi -} - -# 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 -} - -gen_static_ldscript() { - # Move it first. - mv lib/libc++{,_static}.a || die - # Generate libc++.a ldscript for inclusion of its dependencies so that - # clang++ -stdlib=libc++ -static works out of the box. - local deps=( - libc++_static.a - $(usex libcxxabi libc++abi.a libsupc++.a) - ) - # On Linux/glibc it does not link without libpthread or libdl. It is - # fine on FreeBSD. - use elibc_glibc && deps+=( libpthread.a libdl.a ) - - gen_ldscript "${deps[*]}" > lib/libc++.a || die -} - -gen_shared_ldscript() { - # Move it first. - mv lib/libc++{,_shared}.so || die - local deps=( - libc++_shared.so - # libsupc++ doesn't have a shared version - $(usex libcxxabi libc++abi.so libsupc++.a) - ) - - gen_ldscript "${deps[*]}" > lib/libc++.so || die -} diff --git a/llvm-runtimes/libcxx/libcxx-20.0.0_pre20241221.ebuild b/llvm-runtimes/libcxx/libcxx-20.0.0_pre20241221.ebuild deleted file mode 100644 index 9c07b6d01774..000000000000 --- a/llvm-runtimes/libcxx/libcxx-20.0.0_pre20241221.ebuild +++ /dev/null @@ -1,208 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..13} ) -inherit cmake-multilib flag-o-matic llvm.org llvm-utils python-any-r1 -inherit toolchain-funcs - -DESCRIPTION="New implementation of the C++ standard library, targeting C++11" -HOMEPAGE="https://libcxx.llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="0" -IUSE="+clang +libcxxabi +static-libs test" -REQUIRED_USE="test? ( clang )" -RESTRICT="!test? ( test )" - -RDEPEND=" - libcxxabi? ( - ~llvm-runtimes/libcxxabi-${PV}[static-libs?,${MULTILIB_USEDEP}] - ) - !libcxxabi? ( >=sys-devel/gcc-4.7:=[cxx] ) -" -DEPEND=" - ${RDEPEND} - llvm-core/llvm:${LLVM_MAJOR} -" -BDEPEND=" - clang? ( - llvm-core/clang:${LLVM_MAJOR} - ) - !test? ( - ${PYTHON_DEPS} - ) - test? ( - dev-debug/gdb[python] - $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') - ) -" - -LLVM_COMPONENTS=( - runtimes libcxx{,abi} libc llvm/{cmake,utils/llvm-lit} cmake -) -llvm.org_set_globals - -python_check_deps() { - use test || return 0 - python_has_version "dev-python/lit[${PYTHON_USEDEP}]" -} - -pkg_setup() { - python-any-r1_pkg_setup - - if ! use libcxxabi && ! tc-is-gcc ; then - eerror "To build ${PN} against libsupc++, you have to use gcc. Other" - eerror "compilers are not supported. Please set CC=gcc and CXX=g++" - eerror "and try again." - die - fi -} - -test_compiler() { - $(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c++ - \ - <<<'int main() { return 0; }' &>/dev/null -} - -src_configure() { - llvm_prepend_path "${LLVM_MAJOR}" - - # note: we need to do this before multilib kicks in since it will - # alter the CHOST - local cxxabi cxxabi_incs - if use libcxxabi; then - cxxabi=system-libcxxabi - cxxabi_incs="${EPREFIX}/usr/include/c++/v1" - else - local gcc_inc="${EPREFIX}/usr/lib/gcc/${CHOST}/$(gcc-fullversion)/include/g++-v$(gcc-major-version)" - cxxabi=libsupc++ - cxxabi_incs="${gcc_inc};${gcc_inc}/${CHOST}" - fi - - multilib-minimal_src_configure -} - -multilib_src_configure() { - if use clang; then - local -x CC=${CHOST}-clang - local -x CXX=${CHOST}-clang++ - strip-unsupported-flags - fi - - # link to compiler-rt - local use_compiler_rt=OFF - [[ $(tc-get-c-rtlib) == compiler-rt ]] && use_compiler_rt=ON - - # bootstrap: cmake is unhappy if compiler can't link to stdlib - local nolib_flags=( -nodefaultlibs -lc ) - if ! test_compiler; then - if test_compiler "${nolib_flags[@]}"; then - local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" - ewarn "${CXX} seems to lack runtime, trying with ${nolib_flags[*]}" - fi - fi - - local libdir=$(get_libdir) - local mycmakeargs=( - -DCMAKE_CXX_COMPILER_TARGET="${CHOST}" - -DPython3_EXECUTABLE="${PYTHON}" - -DLLVM_ENABLE_RUNTIMES=libcxx - -DLLVM_INCLUDE_TESTS=OFF - -DLLVM_LIBDIR_SUFFIX=${libdir#lib} - - -DLIBCXX_ENABLE_SHARED=ON - -DLIBCXX_ENABLE_STATIC=$(usex static-libs) - -DLIBCXX_CXX_ABI=${cxxabi} - -DLIBCXX_CXX_ABI_INCLUDE_PATHS=${cxxabi_incs} - # we're using our own mechanism for generating linker scripts - -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF - -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl) - -DLIBCXX_INCLUDE_BENCHMARKS=OFF - -DLIBCXX_INCLUDE_TESTS=$(usex test) - -DLIBCXX_INSTALL_MODULES=ON - -DLIBCXX_USE_COMPILER_RT=${use_compiler_rt} - # this is broken with standalone builds, and also meaningless - -DLIBCXXABI_USE_LLVM_UNWINDER=OFF - ) - - if use test; then - mycmakeargs+=( - -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" - -DLLVM_LIT_ARGS="$(get_lit_flags)" - -DPython3_EXECUTABLE="${PYTHON}" - ) - fi - cmake_src_configure -} - -multilib_src_compile() { - cmake_src_compile - if [[ ${CHOST} != *-darwin* ]] ; then - gen_shared_ldscript - use static-libs && gen_static_ldscript - fi -} - -multilib_src_test() { - local -x LIT_PRESERVES_TMP=1 - cmake_build install-cxx-test-suite-prefix - cp "${BUILD_DIR}"/{lib,libcxx/test-suite-install/$(get_libdir)}/libc++_shared.so || die - if use static-libs; then - cp "${BUILD_DIR}"/{lib,libcxx/test-suite-install/$(get_libdir)}/libc++_static.a || die - fi - cmake_build check-cxx -} - -multilib_src_install() { - cmake_src_install - # since we've replaced libc++.{a,so} with ldscripts, now we have to - # install the extra symlinks - if [[ ${CHOST} != *-darwin* ]] ; then - dolib.so lib/libc++_shared.so - use static-libs && dolib.a lib/libc++_static.a - fi -} - -# 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 -} - -gen_static_ldscript() { - # Move it first. - mv lib/libc++{,_static}.a || die - # Generate libc++.a ldscript for inclusion of its dependencies so that - # clang++ -stdlib=libc++ -static works out of the box. - local deps=( - libc++_static.a - $(usex libcxxabi libc++abi.a libsupc++.a) - ) - # On Linux/glibc it does not link without libpthread or libdl. It is - # fine on FreeBSD. - use elibc_glibc && deps+=( libpthread.a libdl.a ) - - gen_ldscript "${deps[*]}" > lib/libc++.a || die -} - -gen_shared_ldscript() { - # Move it first. - mv lib/libc++{,_shared}.so || die - local deps=( - libc++_shared.so - # libsupc++ doesn't have a shared version - $(usex libcxxabi libc++abi.so libsupc++.a) - ) - - gen_ldscript "${deps[*]}" > lib/libc++.so || die -} |