summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2019-03-12 14:00:06 +0100
committerMichał Górny <mgorny@gentoo.org>2019-03-12 14:14:06 +0100
commitaac8ffcfda94095c61fb76c9a65da4bed3cf5ef6 (patch)
tree6b92e8b8c4b93ccead043fb624830126a1a531b9 /sys-libs
parentsys-libs/llvm-libunwind: Bump to 8.0.0rc5 (diff)
downloadgentoo-aac8ffcfda94095c61fb76c9a65da4bed3cf5ef6.tar.gz
gentoo-aac8ffcfda94095c61fb76c9a65da4bed3cf5ef6.tar.bz2
gentoo-aac8ffcfda94095c61fb76c9a65da4bed3cf5ef6.zip
sys-libs/libcxxabi: Bump to 8.0.0rc5
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'sys-libs')
-rw-r--r--sys-libs/libcxxabi/Manifest2
-rw-r--r--sys-libs/libcxxabi/libcxxabi-8.0.0_rc5.ebuild119
2 files changed, 121 insertions, 0 deletions
diff --git a/sys-libs/libcxxabi/Manifest b/sys-libs/libcxxabi/Manifest
index d6129c08d96b..2852ec9490dd 100644
--- a/sys-libs/libcxxabi/Manifest
+++ b/sys-libs/libcxxabi/Manifest
@@ -2,7 +2,9 @@ DIST libcxx-6.0.1.src.tar.xz 1552328 BLAKE2B 65a6addd04e530c2a72e8cba207282b9e9f
DIST libcxx-7.0.1.src.tar.xz 1638188 BLAKE2B 541d27c3801895d59ad06b15de5fe9ff0d9b5b3ef393a5fad05a12a52dd6453ecc530b0ce3129624a27e959d3c9c5f7066ebb57fd85caca538ebf4f990aa6967 SHA512 b3ad7ad95bdcf2d902b29de8a0b757d4dbc220bc1a22a813d6bcec15a34b3aa42e85c59f4cecbb318c799ca611550b44c328b37278f4349b984016ad4556c1d8
DIST libcxx-8.0.0rc2.src.tar.xz 1755516 BLAKE2B b6c15d0d50d01e69afb376140052a1d27e2acef45796781497b35dbd8c26db88883e17105fb4e83c50097ab7a4ebf077350754bc1b1d43ef8426b82a7e92b72d SHA512 79ac5a389f5a6bcb145e8e387ae2cbdf0679996a9f66fe38a8e62cd893b6ed68943824d5538e7408b57ecfa4182aec20b837158c9a6f50188c1e9aae176a4f5f
DIST libcxx-8.0.0rc3.src.tar.xz 1755192 BLAKE2B 32d0602a13a273f396f139dd25f67ed0a12881c618eef35e0bb9b6d8d8cb786f130ce3ce7e8027f8f2a2516de5d1f9753bc12e81497a0bc919731866da04dba2 SHA512 f59e6fdd20d18cfb39c426eadcda5a611dc79735fc1fc8c4cebd4106afa35736ceb3500bba7f162bccced1964785fc18c129e9bb68dd6549b205cae14cd46f8b
+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.0rc2.src.tar.xz 539092 BLAKE2B 2e03457c44d45035f18b01f34766d520e44f680ec9c73c8166a081e7311119a1ac17461d7e15f60728f4c1eb5d4a285b29c1b2123059d065eaf7f46c233210cb SHA512 9887da2b1ae4fe821e6e66fd4ce5f134d8600243e64fbac2bc5baaaa08dee689367ab1667522bc91328b18222f9fbe59fe79346b8ef529652b1ac300cf5bc161
DIST libcxxabi-8.0.0rc3.src.tar.xz 538928 BLAKE2B 8babd986626c8ab3b542a2c71172de3cb0ff681225d1876a8903dd77756edeaaffb86c142525323a002dcdb963bb996b7aa77f46564b0a6fa7f1e0b35759ab10 SHA512 f9bbcab81e206f0b5e7306f7f3fd9a8bd934e5877ca6237d53c0380549292a3f64fcdf25cbd95b8effa7c1adfa083584afd029f052f4b24ef9a9a5c6fc0d0305
+DIST libcxxabi-8.0.0rc5.src.tar.xz 539008 BLAKE2B 899a1dd983e0265dd7961e6d9ed23e6f171b0ab195fc7164ab1d94ec82f52bee370296edfd51cc800cc9646feb92bf338075b19c4ef545ad9195f8ce83bddbea SHA512 9bc9bde4787a21febc0b385c22dd20c33876c79aff585dbee6414d9982cce8ee5df05ed2a681eaf40b4d656e177feb4dcff4782663119ede72c4f4907aca2b9f
diff --git a/sys-libs/libcxxabi/libcxxabi-8.0.0_rc5.ebuild b/sys-libs/libcxxabi/libcxxabi-8.0.0_rc5.ebuild
new file mode 100644
index 000000000000..c04f5a34e136
--- /dev/null
+++ b/sys-libs/libcxxabi/libcxxabi-8.0.0_rc5.ebuild
@@ -0,0 +1,119 @@
+# 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=( python2_7 )
+
+inherit cmake-multilib llvm multiprocessing python-any-r1
+
+MY_P=${P/_/}.src
+LIBCXX_P=libcxx-${PV/_/}.src
+
+DESCRIPTION="Low level support for a standard C++ library"
+HOMEPAGE="https://libcxxabi.llvm.org/"
+SRC_URI="https://prereleases.llvm.org/${PV/_//}/${MY_P}.tar.xz
+ https://prereleases.llvm.org/${PV/_//}/${LIBCXX_P}.tar.xz"
+
+LICENSE="|| ( UoI-NCSA MIT )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86 ~amd64-fbsd"
+IUSE="+libunwind +static-libs test elibc_musl"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ libunwind? (
+ || (
+ >=sys-libs/libunwind-1.0.1-r1[static-libs?,${MULTILIB_USEDEP}]
+ >=sys-libs/llvm-libunwind-3.9.0-r1[static-libs?,${MULTILIB_USEDEP}]
+ )
+ )"
+# llvm-6 for new lit options
+DEPEND="${RDEPEND}
+ >=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() {
+ llvm_pkg_setup
+ use test && python-any-r1_pkg_setup
+}
+
+src_unpack() {
+ default
+ mv "${LIBCXX_P}" libcxx || die
+}
+
+multilib_src_configure() {
+ local libdir=$(get_libdir)
+ local mycmakeargs=(
+ -DLIBCXXABI_LIBDIR_SUFFIX=${libdir#lib}
+ -DLIBCXXABI_ENABLE_SHARED=ON
+ -DLIBCXXABI_ENABLE_STATIC=$(usex static-libs)
+ -DLIBCXXABI_USE_LLVM_UNWINDER=$(usex libunwind)
+ -DLIBCXXABI_INCLUDE_TESTS=$(usex test)
+
+ -DLIBCXXABI_LIBCXX_INCLUDES="${WORKDIR}"/libcxx/include
+ # upstream is omitting standard search path for this
+ # probably because gcc & clang are bundling their own unwind.h
+ -DLIBCXXABI_LIBUNWIND_INCLUDES="${EPREFIX}"/usr/include
+ )
+ 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}"
+ )
+ fi
+ cmake-utils_src_configure
+}
+
+build_libcxx() {
+ local -x LDFLAGS="${LDFLAGS} -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
+ -DLIBCXX_CXX_ABI=libcxxabi
+ -DLIBCXX_CXX_ABI_INCLUDE_PATHS="${S}"/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 a local copy of libc++ for testing to avoid circular dep
+ build_libcxx
+ mv "${BUILD_DIR}"/libcxx/lib/libc++* "${BUILD_DIR}/$(get_libdir)/" || die
+
+ cmake-utils_src_make check-libcxxabi
+}
+
+multilib_src_install_all() {
+ insinto /usr/include/libcxxabi
+ doins -r include/.
+}