diff options
Diffstat (limited to 'llvm-runtimes/libunwind')
-rw-r--r-- | llvm-runtimes/libunwind/Manifest | 3 | ||||
-rw-r--r-- | llvm-runtimes/libunwind/libunwind-19.1.6.ebuild | 129 |
2 files changed, 132 insertions, 0 deletions
diff --git a/llvm-runtimes/libunwind/Manifest b/llvm-runtimes/libunwind/Manifest index 70577e7d4d55..3a665403dd37 100644 --- a/llvm-runtimes/libunwind/Manifest +++ b/llvm-runtimes/libunwind/Manifest @@ -10,6 +10,8 @@ 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.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 EBUILD libunwind-15.0.7.ebuild 3033 BLAKE2B 6e08d31003b5fc913e2110be4fe5a66bb91a89d48b26e570576cb804d6dbc23ea94b5b34ab9aea9c6ad9aacb5420b7a52ab8d6832b57ee24f02b98daae835166 SHA512 e156a322ae7f657ba3634ae07c6332e06ea033deb9235de8f36595dba1823c67fe1bb035f99de51f454e8c036239ea4835fd25719d199231c635ce4fd71dff16 @@ -18,6 +20,7 @@ EBUILD libunwind-17.0.6.ebuild 3440 BLAKE2B 046d1ad89188255e9d0622620b58e0255af6 EBUILD libunwind-18.1.8.ebuild 3407 BLAKE2B 40f56d7c9bd204e22a936897c7a5694b25d763c40c63e4e353a370e5b3df8c90205d8ef522717d9cdd5db43968e79e8a07582b7bfb18469a02c06781c1c0f717 SHA512 3fd748d13224f30d36c4607a042bcd49887c6b38305f2a97736385b3fb3a72846dc28101df55945ba7f1a7cba96ad887df9dfdc14c12d2d09756e37ed668b4fc EBUILD libunwind-19.1.4.ebuild 3407 BLAKE2B 3c1a8dcdb1c6c7e1bcc9103ede0994537dc9d7587b37d06425f14d7e6b5c9f26e8b822c85a0d87a3c113753897fb35ce1dee6525a683450ab66aabf040910a54 SHA512 55056789f1ebc3c6e688e6f01d4ce9445523461afcb642b20debf8341cce2fdc1e68b74eb90130428f2d82f1c283814f6fba6c8fd261a8d67e9fe81cd9747e2a EBUILD libunwind-19.1.5.ebuild 3413 BLAKE2B c164a16a0468fb8d33bbc4040a39c343e9799c5642afd88408c5c5e079cbf56654c3648f5591002d60f49533df3a879a0e18f8c2f74449f0fadf8eb0142a22b6 SHA512 b022e18a49c90a3041109df0f7547a044830907742afaef0fb35c4d4285a79a34e800f926dd11e86e03d3b94e62bcf7c9f88f41e44574bb95ab7c60564224911 +EBUILD libunwind-19.1.6.ebuild 3413 BLAKE2B c164a16a0468fb8d33bbc4040a39c343e9799c5642afd88408c5c5e079cbf56654c3648f5591002d60f49533df3a879a0e18f8c2f74449f0fadf8eb0142a22b6 SHA512 b022e18a49c90a3041109df0f7547a044830907742afaef0fb35c4d4285a79a34e800f926dd11e86e03d3b94e62bcf7c9f88f41e44574bb95ab7c60564224911 EBUILD libunwind-20.0.0.9999.ebuild 3321 BLAKE2B f3fda113e68697815263dd9a53b6ac13a5573fee3f06a6b90e880902a5c099b560a39b2063db67e4ef8a8032231fc00b3ff5b07ec142b32f13481a5e16a8aabc SHA512 a13eab7ce217afbe629fd5324e9e450603bc59321f51c8b02082e28cf7b8ac918d43a1bd60b3db990a59b34f434dfd0e53ba3054b9baff3aa27670df8083f0b4 EBUILD libunwind-20.0.0_pre20241207.ebuild 3321 BLAKE2B f3fda113e68697815263dd9a53b6ac13a5573fee3f06a6b90e880902a5c099b560a39b2063db67e4ef8a8032231fc00b3ff5b07ec142b32f13481a5e16a8aabc SHA512 a13eab7ce217afbe629fd5324e9e450603bc59321f51c8b02082e28cf7b8ac918d43a1bd60b3db990a59b34f434dfd0e53ba3054b9baff3aa27670df8083f0b4 EBUILD libunwind-20.0.0_pre20241215.ebuild 3321 BLAKE2B f3fda113e68697815263dd9a53b6ac13a5573fee3f06a6b90e880902a5c099b560a39b2063db67e4ef8a8032231fc00b3ff5b07ec142b32f13481a5e16a8aabc SHA512 a13eab7ce217afbe629fd5324e9e450603bc59321f51c8b02082e28cf7b8ac918d43a1bd60b3db990a59b34f434dfd0e53ba3054b9baff3aa27670df8083f0b4 diff --git a/llvm-runtimes/libunwind/libunwind-19.1.6.ebuild b/llvm-runtimes/libunwind/libunwind-19.1.6.ebuild new file mode 100644 index 000000000000..27793031ecbb --- /dev/null +++ b/llvm-runtimes/libunwind/libunwind-19.1.6.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=" + llvm-core/llvm:${LLVM_MAJOR} +" +BDEPEND=" + clang? ( + llvm-core/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 +} |