diff options
Diffstat (limited to 'sys-libs/llvm-libunwind')
-rw-r--r-- | sys-libs/llvm-libunwind/Manifest | 3 | ||||
-rw-r--r-- | sys-libs/llvm-libunwind/llvm-libunwind-19.1.3.ebuild | 129 |
2 files changed, 132 insertions, 0 deletions
diff --git a/sys-libs/llvm-libunwind/Manifest b/sys-libs/llvm-libunwind/Manifest index a39899d71edf..43c2fc68490a 100644 --- a/sys-libs/llvm-libunwind/Manifest +++ b/sys-libs/llvm-libunwind/Manifest @@ -9,6 +9,8 @@ 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.2.src.tar.xz 141241032 BLAKE2B 38a3f528ddae7cd738236a317551fdb94acd8fb736a57def15b75e1ed2f6572e1370fb3f1e4ff261d3cfb87df7d50d4db8fa9e70dc5e3dde617af09eb059fdd3 SHA512 e98ee405f5c30004b39f0de0470400dd2965adf4cda4b47a1d3792ae362ed43eb45e96a9b1689f31e1064e0b39252379270bd95bf8081cf9b92ecb9b371bf43b DIST llvm-project-19.1.2.src.tar.xz.sig 438 BLAKE2B f5bc0cc43bc10ee2438289d62aa8169cbb9e0ea598381b4c744e6a09daf710650fbec0656a9ac7c0e6f84a0ff3541fe223fa9efc61fb3d4c496cad9df7b9edd4 SHA512 307cd88116e68f901229fc2f6db72bad5f964bacee178e2efad3419cec277b5a7e23fb347386fb4e83e1886551bbc78d187259518193cac7654573ee17e3cb63 +DIST llvm-project-19.1.3.src.tar.xz 141247864 BLAKE2B 4ccb30accd632a7d54eb065b724ff81ec8a50380fa527111d58acd728eecb798d42f680119b6d1cbc980523e2f39220921ca1f530daa7afea05ab27436dedb7e SHA512 0abaf158b373892d5afc184158600df17a0797547ad7238ca9018d6fcdd7310b0db803d158daa82a2e04bd42d9daebaa2c3e4b9024c0fa2df72a88596575df5c +DIST llvm-project-19.1.3.src.tar.xz.sig 438 BLAKE2B 44717741ae13bb0c52382647352e52273d8401728dc5cc1cf0c11a8f08cd74b6e3d789e788793aad767030b36fdec62e3a05bdc0b7ff60556cec7ceac17fc239 SHA512 84ef22ee78dbaad4710becbcb02119d06063099f9102bb86f3cd44fbb7e2d87bafe239d8e0cbf22ab5a479f99a11a77125f22394d5006ed86262076ccbf1634d DIST llvm-project-3f4468faaa9525ad615118675c3c68938f4a8d5f.tar.gz 221860252 BLAKE2B 6c531df34163dc0879c79b029a13215d1bef2cd95bbaf4a6d5e10b81a8352236283d40f14b62e23a57cc1cf8edce138fb6e2720ced2397d6469c5863564c626d SHA512 4aa485f4547e210cf8f6f8147c4adab3e75afe77f1e4e1bc4718fe681b64bdcf8937f843964542f8ead90ceef52cc0fd4bd8275824d1a4c6961eddafc7d35115 DIST llvm-project-9aef0fd52a0b2bf31cf3bae8a0693d6df8db6e04.tar.gz 219987707 BLAKE2B a3f0acd0fd3b66c3a826ac6760653fa6ea893ffba7587cf4a14f472026a9d9d8bf6b63c26d8bc39e83936afe6b735496bd88ce6c00d16abe1d0ccd1f9a644302 SHA512 5104669d78930363afeba045dc27a4c36ca8bb7537d432c765e023cbd91155b248c3a60d4768e1f8690c88e82d4ff95a44fb73f26d25d6646dddc857992485ba EBUILD llvm-libunwind-15.0.7.ebuild 3032 BLAKE2B 9b47e894db1a764f3eca3135f4caba68261953f4433af017b7bb53181e345ad26c570733f997022c53c9ef49a0a3b823188d92cfcc16a2113825d767b1ffab2a SHA512 0b68480fb2a8e5a351574e81fbcff824cd324754ed40378f06fec12fedbba94a921043d72db6ecc37f8b0680b7f518bbbd8d63f69ce8d84f86ca522653d293fb @@ -16,6 +18,7 @@ EBUILD llvm-libunwind-16.0.6-r1.ebuild 3440 BLAKE2B eafe21a3de172043ca0039ba27c8 EBUILD llvm-libunwind-17.0.6.ebuild 3440 BLAKE2B eafe21a3de172043ca0039ba27c80c64d32b02cc86bdb5a6d108ded35770e0352216337cbf24ee4fde43b699a68a85c8145be2d17510d525452bfd5a02674998 SHA512 164fdc1c62405e02c035af7997b8522b51f5b9337d2bb66d7fc9b1f45df74ec70d31b26dc5324c59792d32c543fe18abf74ed3b07a64c131e3c1bb4f9f733c5d EBUILD llvm-libunwind-18.1.8.ebuild 3407 BLAKE2B 1f0f6be6cd671b42d97bfa5ffc5fbf0c837f1d97a034db9c88fa15ba381651c6f669aef7e8e6f46091f33950f6fc8dad7a7e45ded1711b8dea2e562ec7174cb9 SHA512 e4db23d628e8d82c48f5dd1f2c29a90acceaabdcdb049d38310cdfe82c3d59b4cb5d80df8b9f5663ab3c86fbf304bffc35fd01d61f9b7dc99cbef879e9157a61 EBUILD llvm-libunwind-19.1.2.ebuild 3413 BLAKE2B 7f510e3b4b415a4178c5783a5252adf00ee264ec8173d459f1ee7df65dcb3c0c9bc8712384d2e4c9a5451a13c7868bef011d990158e4875f5ed8f343866bd228 SHA512 84de24446bb5b2239ef96155327e2c9b35a1a3d1c93c7acb5aaf046299dd8ebab6c89b9b2c6d36bd6adb6265492521c3a6f395f4fdecb37ea4b022e6a840f56f +EBUILD llvm-libunwind-19.1.3.ebuild 3413 BLAKE2B 7f510e3b4b415a4178c5783a5252adf00ee264ec8173d459f1ee7df65dcb3c0c9bc8712384d2e4c9a5451a13c7868bef011d990158e4875f5ed8f343866bd228 SHA512 84de24446bb5b2239ef96155327e2c9b35a1a3d1c93c7acb5aaf046299dd8ebab6c89b9b2c6d36bd6adb6265492521c3a6f395f4fdecb37ea4b022e6a840f56f EBUILD llvm-libunwind-20.0.0.9999.ebuild 3321 BLAKE2B 11e3226e8d8fd4781f2c3b9b4a40068a57fba8b0797726c88f592e69147a99bbfc78d98449daccfd0d30fd378ba8ced48d6dcd4df938fb7604d02dcee3f18f3e SHA512 9c815395dcb606b62f192c978185d88978c4f280a71c69611a1d106dcec1758b901cfd74652e2b4e4adcb944bec318de8f2aa8d32aaea3d471b43870dbf2d562 EBUILD llvm-libunwind-20.0.0_pre20241015.ebuild 3316 BLAKE2B bd35bebb24f85df1df172da2753279735077353c2a2b06df35700ad58b32fecdb29f6045be9d3c51316e764bda2a75295fb879fd635da71747ad0ab11dc5649d SHA512 8211878d4fde53625702b27cce8bf7a09cf97238c52e1078f6895b58675f76c78aa60f8a886a2f25d0cf71becdcefd94e8666b9c8915fecbe5b47accdc9b988a EBUILD llvm-libunwind-20.0.0_pre20241023.ebuild 3321 BLAKE2B 11e3226e8d8fd4781f2c3b9b4a40068a57fba8b0797726c88f592e69147a99bbfc78d98449daccfd0d30fd378ba8ced48d6dcd4df938fb7604d02dcee3f18f3e SHA512 9c815395dcb606b62f192c978185d88978c4f280a71c69611a1d106dcec1758b901cfd74652e2b4e4adcb944bec318de8f2aa8d32aaea3d471b43870dbf2d562 diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-19.1.3.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-19.1.3.ebuild new file mode 100644 index 000000000000..45b7c96819be --- /dev/null +++ b/sys-libs/llvm-libunwind/llvm-libunwind-19.1.3.ebuild @@ -0,0 +1,129 @@ +# 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="C++ runtime stack unwinder from LLVM" +HOMEPAGE="https://llvm.org/docs/ExceptionHandling.html" + +LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~arm64-macos ~x64-macos" +IUSE="+clang debug static-libs test" +REQUIRED_USE="test? ( clang )" +RESTRICT="!test? ( test )" + +RDEPEND=" + !sys-libs/libunwind +" +DEPEND=" + sys-devel/llvm:${LLVM_MAJOR} +" +BDEPEND=" + clang? ( + sys-devel/clang:${LLVM_MAJOR} + ) + !test? ( + ${PYTHON_DEPS} + ) + test? ( + $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') + ) +" + +LLVM_COMPONENTS=( runtimes libunwind libcxx llvm/cmake cmake ) +LLVM_TEST_COMPONENTS=( libcxxabi llvm/utils/llvm-lit ) +llvm.org_set_globals + +python_check_deps() { + use test || return 0 + python_has_version "dev-python/lit[${PYTHON_USEDEP}]" +} + +multilib_src_configure() { + llvm_prepend_path "${LLVM_MAJOR}" + + local libdir=$(get_libdir) + + # https://github.com/llvm/llvm-project/issues/56825 + # also separately bug #863917 + filter-lto + + if use clang; then + local -x CC=${CHOST}-clang + local -x CXX=${CHOST}-clang++ + strip-unsupported-flags + fi + + # link to compiler-rt + # https://github.com/gentoo/gentoo/pull/21516 + local use_compiler_rt=OFF + [[ $(tc-get-c-rtlib) == compiler-rt ]] && use_compiler_rt=ON + + # Respect upstream build type assumptions (bug #910436) where they do: + # -DLIBUNWIND_ENABLE_ASSERTIONS=ON => + # -DCMAKE_BUILD_TYPE=DEBUG => -UNDEBUG + # -DCMAKE_BUILD_TYPE!=debug => -DNDEBUG + # -DLIBUNWIND_ENABLE_ASSERTIONS=OFF => + # -UNDEBUG + # See also https://github.com/llvm/llvm-project/issues/86#issuecomment-1649668826. + use debug || append-cppflags -DNDEBUG + + local mycmakeargs=( + -DCMAKE_CXX_COMPILER_TARGET="${CHOST}" + -DPython3_EXECUTABLE="${PYTHON}" + -DLLVM_ENABLE_RUNTIMES="libunwind" + -DLLVM_LIBDIR_SUFFIX=${libdir#lib} + -DLLVM_INCLUDE_TESTS=OFF + -DLIBUNWIND_ENABLE_ASSERTIONS=$(usex debug) + -DLIBUNWIND_ENABLE_STATIC=$(usex static-libs) + -DLIBUNWIND_INCLUDE_TESTS=$(usex test) + -DLIBUNWIND_INSTALL_HEADERS=ON + + # support non-native unwinding; given it's small enough, + # enable it unconditionally + -DLIBUNWIND_ENABLE_CROSS_UNWINDING=ON + + # avoid dependency on libgcc_s if compiler-rt is used + -DLIBUNWIND_USE_COMPILER_RT=${use_compiler_rt} + ) + if use test; then + mycmakeargs+=( + -DLLVM_ENABLE_RUNTIMES="libunwind;libcxxabi;libcxx" + -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" + -DLLVM_LIT_ARGS="$(get_lit_flags)" + -DLIBUNWIND_LIBCXX_PATH="${WORKDIR}/libcxx" + + -DLIBCXXABI_LIBDIR_SUFFIX= + -DLIBCXXABI_ENABLE_SHARED=OFF + -DLIBCXXABI_ENABLE_STATIC=ON + -DLIBCXXABI_USE_LLVM_UNWINDER=ON + -DLIBCXXABI_INCLUDE_TESTS=OFF + + -DLIBCXX_LIBDIR_SUFFIX= + -DLIBCXX_ENABLE_SHARED=OFF + -DLIBCXX_ENABLE_STATIC=ON + -DLIBCXX_CXX_ABI=libcxxabi + -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF + -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl) + -DLIBCXX_HAS_GCC_S_LIB=OFF + -DLIBCXX_INCLUDE_TESTS=OFF + -DLIBCXX_INCLUDE_BENCHMARKS=OFF + ) + fi + + cmake_src_configure +} + +multilib_src_test() { + local -x LIT_PRESERVES_TMP=1 + cmake_build check-unwind +} + +multilib_src_install() { + DESTDIR=${D} cmake_build install-unwind +} |