commit:     92dd0710b2209b3e64c8f8820adc93dd8d1a84dc
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Mar 20 14:14:56 2019 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed Mar 20 15:01:47 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=92dd0710

sys-libs/llvm-libunwind: Bump to 8.0.0 final

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 sys-libs/llvm-libunwind/Manifest                   |   3 +
 .../llvm-libunwind/llvm-libunwind-8.0.0.ebuild     | 143 +++++++++++++++++++++
 2 files changed, 146 insertions(+)

diff --git a/sys-libs/llvm-libunwind/Manifest b/sys-libs/llvm-libunwind/Manifest
index a84e463edc2..714935d0a97 100644
--- a/sys-libs/llvm-libunwind/Manifest
+++ b/sys-libs/llvm-libunwind/Manifest
@@ -1,9 +1,12 @@
 DIST libcxx-6.0.1.src.tar.xz 1552328 BLAKE2B 
65a6addd04e530c2a72e8cba207282b9e9fafc01a594d7b11f63d10b6f88eca67a3cdf90b8055e410ede358d9be1f63fbe427f308e1337833447c0260d96e1c8
 SHA512 
c04f628b0924d76f035f615b59d19ce42dfc19c9a8eea4fe2b22a95cfe5a037ebdb30943fd741443939df5b4cf692bc1e51c840fefefbd134e3afbe2a75fe875
 DIST libcxx-7.0.1.src.tar.xz 1638188 BLAKE2B 
541d27c3801895d59ad06b15de5fe9ff0d9b5b3ef393a5fad05a12a52dd6453ecc530b0ce3129624a27e959d3c9c5f7066ebb57fd85caca538ebf4f990aa6967
 SHA512 
b3ad7ad95bdcf2d902b29de8a0b757d4dbc220bc1a22a813d6bcec15a34b3aa42e85c59f4cecbb318c799ca611550b44c328b37278f4349b984016ad4556c1d8
+DIST libcxx-8.0.0.src.tar.xz 1752308 BLAKE2B 
1e8cd8c7100f5f8b943ba8f38b0b59a0fd5e5bea834953483a67502f67de3eb51eba4ed4be17cdb54406da4ad7ebc6fef33934c59db982afa55856ce9f1f46ff
 SHA512 
2e0fcd3e78f7e15ea894e52c51351daef8e3a2aaf53b3df7497b11403d28f5269ff49a4674bacea1d565a5faa2b24502caaaeff9cd48518f0d141563d8f9cc03
 DIST libcxx-8.0.0rc5.src.tar.xz 1755168 BLAKE2B 
ec3e77fc15d92d4a2e04b706b52379e2f5fefbdd00e6f1bd63061c42781330b279507e690f2f14185e18893bb7b985251e68b5282b26b4c20afbed671d35073b
 SHA512 
aaf6495ea7ddf68441aa4422ca7d0d02f17875553f34010d1e5061a5180774990b227edc6fe133dd4081de7e4f835228ac286b974800fd396b3650c4f7899b7a
 DIST libcxxabi-6.0.1.src.tar.xz 528356 BLAKE2B 
b301b750b2928864d3fc51e66cf91aab6837636ec2bce706b9a97296ec96af4bd2e80b1bf80c9b4afe449335ee12bbdd1905433c27e1770e16bc306baf206927
 SHA512 
bbb4c7b412e295cb735f637df48a83093eef45ed5444f7766790b4b047f75fd5fd634d8f3a8ac33a5c1407bd16fd450ba113f60a9bcc1d0a911fe0c54e9c81f2
 DIST libcxxabi-7.0.1.src.tar.xz 535096 BLAKE2B 
212330e8dbde98280b1bcd4f36ea3f30b69af9816e6c252bd9640c45501536ce38e8b57f3e82195d2a33cb1286651f7cad82713c71e8012e512e04c4ff7bad64
 SHA512 
92e8d28f329e9a8cce296f0fddd88324198f722db3a748bb2164b28ae8eca6047c89ed1e70af00bbedd93ce4285b2ab1e0307a65b88dc60e581eebfd6cbd2038
+DIST libcxxabi-8.0.0.src.tar.xz 539040 BLAKE2B 
847d848e4ed66212789c50137e9556abed601ab4f30765b8b4453f0bc2609e2d1ef516b2f504ee2331a53706940b814545423da05392aed24bf290e6757b52f6
 SHA512 
9ee2e6d5899529be45b2e5edc395606fa9040d25789b3da1ae0182113626e7624cbb071eae525c478293a7b371876e41614348ee5808f90f3f9c7b08837e1055
 DIST libcxxabi-8.0.0rc5.src.tar.xz 539008 BLAKE2B 
899a1dd983e0265dd7961e6d9ed23e6f171b0ab195fc7164ab1d94ec82f52bee370296edfd51cc800cc9646feb92bf338075b19c4ef545ad9195f8ce83bddbea
 SHA512 
9bc9bde4787a21febc0b385c22dd20c33876c79aff585dbee6414d9982cce8ee5df05ed2a681eaf40b4d656e177feb4dcff4782663119ede72c4f4907aca2b9f
 DIST libunwind-6.0.1.src.tar.xz 77036 BLAKE2B 
b6c293285896c8ff1f64bb56eee5a88b102b7ed9902d46436ee3cb79f204f230fd08a07d39c7fa9aeeddd093036f2bb9af38dd54268099ea9e51e12a71ff4adb
 SHA512 
78568c28720abdd1f8471c462421df9965e05e1db048689d16ac85378716c4080ec1723af78e9f61d133b0ff82ac8c1f0dde7fd42d194485f62c1a17c02db37f
 DIST libunwind-7.0.1.src.tar.xz 79784 BLAKE2B 
c426ef661d1c5ba8abfdb7c155b44d8c9301e2254031cff9fcb0634f61d7374779095be3118c0a29c69e60c63a32405334242413625ece8c5c9130d58bedd865
 SHA512 
e6203e77691c7039496da09e55d27a994a0e273ab0ef10df2f0b9345fead11d855413342a7ccc7b641c3f06053210a8822ba39e9f5b8624384bf1fa456deb969
+DIST libunwind-8.0.0.src.tar.xz 86484 BLAKE2B 
74f52fbda056b98cb8a2af652270dc4404177be4fd24a3d030f43e908ef912b875f6471819d364d2ee00c6edbec78d25647f023830c6ddc1c032added1059582
 SHA512 
8c10e986b4123b6db9f010f053d9c67786fd739d0990146c481f7eaf69ae44fdbcb99dfad9b240b369c3f93be05dfeaf0bd977685360be94e2872ddb04019380
 DIST libunwind-8.0.0rc5.src.tar.xz 86516 BLAKE2B 
0ac17d2ae1dd79f8b8bd5ee746d31a864ece20538bc283d8cb75be7ed40ddecb03e4b7c7ecd0214e34e85a299b925f374a07c0218b7c8c7df30db79c2dd8bac6
 SHA512 
994cc5db4d250cadb2b8e71842f4d1c937fbb102b71980054b641bbedf64b7867ac9f380ed0ca2b557b9c5ab2cd2d911398d4b8545bfefd5cd3d250ced9bd170

diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-8.0.0.ebuild 
b/sys-libs/llvm-libunwind/llvm-libunwind-8.0.0.ebuild
new file mode 100644
index 00000000000..352989d548d
--- /dev/null
+++ b/sys-libs/llvm-libunwind/llvm-libunwind-8.0.0.ebuild
@@ -0,0 +1,143 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+: ${CMAKE_MAKEFILE_GENERATOR:=ninja}
+# (needed due to CMAKE_BUILD_TYPE != Gentoo)
+CMAKE_MIN_VERSION=3.7.0-r1
+PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
+inherit cmake-multilib llvm multiprocessing python-any-r1
+
+MY_P=libunwind-${PV/_/}.src
+LIBCXX_P=libcxx-${PV/_/}.src
+LIBCXXABI_P=libcxxabi-${PV/_/}.src
+
+DESCRIPTION="C++ runtime stack unwinder from LLVM"
+HOMEPAGE="https://github.com/llvm-mirror/libunwind";
+SRC_URI="https://releases.llvm.org/${PV/_//}/${MY_P}.tar.xz
+       test? (
+               https://releases.llvm.org/${PV/_//}/${LIBCXX_P}.tar.xz
+               https://releases.llvm.org/${PV/_//}/${LIBCXXABI_P}.tar.xz )"
+
+LICENSE="|| ( UoI-NCSA MIT )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86 ~amd64-fbsd"
+IUSE="debug +static-libs test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="!sys-libs/libunwind"
+# llvm-6 for new lit options
+DEPEND="
+       >=sys-devel/llvm-6
+       test? ( >=sys-devel/clang-3.9.0
+               $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') )"
+
+S=${WORKDIR}/${MY_P}
+
+# least intrusive of all
+CMAKE_BUILD_TYPE=RelWithDebInfo
+
+python_check_deps() {
+       has_version "dev-python/lit[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+       use test && python-any-r1_pkg_setup
+}
+
+src_unpack() {
+       default
+
+       if use test; then
+               mv "${LIBCXX_P}" libcxx || die
+               mv "${LIBCXXABI_P}" libcxxabi || die
+       fi
+}
+
+multilib_src_configure() {
+       local libdir=$(get_libdir)
+
+       local mycmakeargs=(
+               -DLLVM_LIBDIR_SUFFIX=${libdir#lib}
+               -DLIBUNWIND_ENABLE_ASSERTIONS=$(usex debug)
+               -DLIBUNWIND_ENABLE_STATIC=$(usex static-libs)
+               -DLLVM_INCLUDE_TESTS=$(usex test)
+
+               # support non-native unwinding; given it's small enough,
+               # enable it unconditionally
+               -DLIBUNWIND_ENABLE_CROSS_UNWINDING=ON
+       )
+       if use test; then
+               local clang_path=$(type -P "${CHOST:+${CHOST}-}clang" 
2>/dev/null)
+               local jobs=${LIT_JOBS:-$(makeopts_jobs "${MAKEOPTS}" 
"$(get_nproc)")}
+
+               [[ -n ${clang_path} ]] || die "Unable to find ${CHOST}-clang 
for tests"
+
+               mycmakeargs+=(
+                       -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit"
+                       
-DLLVM_LIT_ARGS="-vv;-j;${jobs};--param=cxx_under_test=${clang_path}"
+                       -DLIBUNWIND_LIBCXX_PATH="${WORKDIR}"/libcxx
+               )
+       fi
+
+       cmake-utils_src_configure
+}
+
+build_libcxxabi() {
+       local -x LDFLAGS="${LDFLAGS} -L${BUILD_DIR}/$(get_libdir)"
+       local CMAKE_USE_DIR=${WORKDIR}/libcxxabi
+       local BUILD_DIR=${BUILD_DIR}/libcxxabi
+       local mycmakeargs=(
+               -DLIBCXXABI_LIBDIR_SUFFIX=
+               -DLIBCXXABI_ENABLE_SHARED=ON
+               -DLIBCXXABI_ENABLE_STATIC=OFF
+               -DLIBCXXABI_USE_LLVM_UNWINDER=ON
+               -DLIBCXXABI_INCLUDE_TESTS=OFF
+
+               -DLIBCXXABI_LIBCXX_INCLUDES="${WORKDIR}"/libcxx/include
+               -DLIBCXXABI_LIBUNWIND_INCLUDES="${S}"/include
+       )
+
+       cmake-utils_src_configure
+       cmake-utils_src_compile
+}
+
+build_libcxx() {
+       local -x LDFLAGS="${LDFLAGS} -L${BUILD_DIR}/libcxxabi/lib 
-L${BUILD_DIR}/$(get_libdir)"
+       local CMAKE_USE_DIR=${WORKDIR}/libcxx
+       local BUILD_DIR=${BUILD_DIR}/libcxx
+       local mycmakeargs=(
+               -DLIBCXX_LIBDIR_SUFFIX=
+               -DLIBCXX_ENABLE_SHARED=ON
+               -DLIBCXX_ENABLE_STATIC=OFF
+               -DLIBCXX_ENABLE_EXPERIMENTAL_LIBRARY=OFF
+               -DLIBCXXABI_USE_LLVM_UNWINDER=ON
+               -DLIBCXX_CXX_ABI=libcxxabi
+               -DLIBCXX_CXX_ABI_INCLUDE_PATHS="${WORKDIR}"/libcxxabi/include
+               -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF
+               -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl)
+               -DLIBCXX_HAS_GCC_S_LIB=OFF
+               -DLIBCXX_INCLUDE_TESTS=OFF
+       )
+
+       cmake-utils_src_configure
+       cmake-utils_src_compile
+}
+
+multilib_src_test() {
+       # build local copies of libc++ & libc++abi for testing to avoid
+       # circular deps
+       build_libcxxabi
+       build_libcxx
+       mv "${BUILD_DIR}"/libcxx*/lib/libc++* "${BUILD_DIR}/$(get_libdir)/" || 
die
+
+       cmake-utils_src_make check-unwind
+}
+
+multilib_src_install() {
+       cmake-utils_src_install
+
+       # install headers like sys-libs/libunwind
+       doheader "${S}"/include/*.h
+}

Reply via email to