diff options
author | 2018-01-02 17:15:31 +0100 | |
---|---|---|
committer | 2018-01-02 17:15:31 +0100 | |
commit | 68b93b4e5c261672b8d053a5adfe10510fa3dde8 (patch) | |
tree | af7f6a34c2249af65beb73abd5bf2d857fde9240 | |
parent | dev-util/pkgconfig: sync (diff) | |
download | prefix-68b93b4e5c261672b8d053a5adfe10510fa3dde8.tar.gz prefix-68b93b4e5c261672b8d053a5adfe10510fa3dde8.tar.bz2 prefix-68b93b4e5c261672b8d053a5adfe10510fa3dde8.zip |
sys-libs/libcxxabi: bump to 5.0.1 by Michael Weiser, bug #538364
Bug: https://bugs.gentoo.org/538364
Package-Manager: Portage-2.3.18-prefix, Repoman-2.3.6
-rw-r--r-- | sys-libs/libcxxabi/Manifest | 2 | ||||
-rw-r--r-- | sys-libs/libcxxabi/libcxxabi-5.0.1.ebuild | 103 |
2 files changed, 105 insertions, 0 deletions
diff --git a/sys-libs/libcxxabi/Manifest b/sys-libs/libcxxabi/Manifest index 4396674d43..af6d59af57 100644 --- a/sys-libs/libcxxabi/Manifest +++ b/sys-libs/libcxxabi/Manifest @@ -1,6 +1,8 @@ DIST libcxx-3.9.1.src.tar.xz 1209020 BLAKE2B 510e77c2c1163babbba904933f441e8720b0d366b9f0cfa2cdde2401368c224e00efd66afc1403b0087c40549cda4ebbc4d0c4b2d0906178324fa6158502d5ad SHA512 a5976e4096624a7307b3e43f4a22ac2dc74572226e0f57af9f3ef537a14c3cff1601b7042aef9dc40a0ee53ca76b08d72eb9c253dcf34f115d3153c302db7070 +DIST libcxx-5.0.1.src.tar.xz 1527852 BLAKE2B 9454fbca8228ee456feb79b65a63ce5daa27bf2e47e457d79592f4974dceeace19fe6cdeee51cc51f94e9072d7ce3c03e5acb617507670153647b9c435feadbd SHA512 994681d3c79047fc2d618c5584b08e9b5c925dab48f8812fc0adc81a575b49a637e9481bb9a0f7ae6f7f352b2b33f40056c347c27123cd6c96c6c226febd002c DIST libcxxabi-3.5.1.src.tar.xz 551148 BLAKE2B 58a4d487dceff8772ce921addcbf836c5b80cf6eb29600b4789140164fb768e8d9bbde127ebceb757d47ef6dd458c6294af37001078430e2e4eddaa3b32e15da SHA512 1fa9215aba2228d0bc5547febea69d0497785289d1972103ffb24b202a0a4df06ea1f7d6311ec85fc344414b69e590640b547c66ef1f9b9ea73762cc4f4a83fa DIST libcxxabi-3.7.1.src.tar.xz 507428 BLAKE2B 7c458a7ac2720f30f80a3644047f19bd39c46141cf4997912ea42d97bad7d365e90e385fb0996f16048ba199f42fb6e3f95f608a44976ddd336e0f3bf3cc7df1 SHA512 d697d1b35a8cc1f27dd0f7d06d3f6e067e4c7ae613af982a8c91d4702a03aedfbdad1d4bd3c213f38db3d58473ad7fc6b4b8d1ffcfc6de04d1eb4e17e151c73a DIST libcxxabi-3.8.1.src.tar.xz 508392 BLAKE2B 38de3ea6f3b38a112ffd134572e2ebfa9e5f558d3ac7fabceaaf86ed826123515e283f64a1767689bb7b0f72ad31e523c1d947c049225888d7f7dd54ff1b4e65 SHA512 c401fe984f44c4f7a0b0fa10099d7a203c1552b89881b8b248645ac4fb3cd7e399c3d07841432cca069e816042ad6629f9cc068b278196fa6bd4c129d95d35be DIST libcxxabi-3.9.0.src.tar.xz 511324 BLAKE2B 75c35b2b30cb04db35db93378d1cc541f194071564c5c8d4c577f076153fc34c7aae793527566cc912437e0f255fbc0520533037b5376105e8e9e4f80a71ba6b SHA512 500207bfd59664bd42d920741d6b467c4b88569453742db6470af081c77be04894e097a14b8419e333b51abce484566366e35cbc3ed2607cd86dfc0ec0ddd0c5 DIST libcxxabi-3.9.1.src.tar.xz 510964 BLAKE2B a6abda1b92473781ea3029169c43547f15c1aa6e0ec6f9692ae633d109e050a6ff82ce8bceb0455375991b85c99784a4f06a568b8c77a4cf2865b9b2861e9595 SHA512 4f5603f1476b759c86d4784728fbdd212c59b30dc56d787c1834bf68a9cd83071fa22658d24e5a58beb94c0c656b0e4457d7da6e3048715dd36bd68380fc336e +DIST libcxxabi-5.0.1.src.tar.xz 521504 BLAKE2B e8263f458545ffb8ec27234e554427696644dcde3b46bea4fa0ee14b2b174d0c6c8dcc7905477140afaf567347e91815827aa6700c92ccfbfbea5364f591fc2a SHA512 a8d448653772690a19f68c1270f9cf18f27d7225847825f29c6ea21846c1074aa61c31b81bc2ae4007067985d389071c32e69b2560282ddb85864a99e9bdd884 diff --git a/sys-libs/libcxxabi/libcxxabi-5.0.1.ebuild b/sys-libs/libcxxabi/libcxxabi-5.0.1.ebuild new file mode 100644 index 0000000000..47a199dbfc --- /dev/null +++ b/sys-libs/libcxxabi/libcxxabi-5.0.1.ebuild @@ -0,0 +1,103 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 + +: ${CMAKE_MAKEFILE_GENERATOR:=ninja} +PYTHON_COMPAT=( python2_7 ) + +inherit cmake-multilib python-any-r1 flag-o-matic + +DESCRIPTION="Low level support for a standard C++ library" +HOMEPAGE="http://libcxxabi.llvm.org/" +# also needs libcxx sources for headers +SRC_URI="http://llvm.org/releases/${PV}/${P}.src.tar.xz + http://llvm.org/releases/${PV}/${P/abi/}.src.tar.xz" +LICENSE="|| ( UoI-NCSA MIT )" +SLOT="0" +KEYWORDS="~x64-macos ~x86-macos" +IUSE="elibc_Darwin elibc_musl libunwind +static-libs 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}] + ) + )" +DEPEND="${RDEPEND} + >=sys-devel/llvm-3.9.0 + test? ( >=sys-devel/clang-3.9.0 + ~sys-libs/libcxx-${PV}[libcxxabi(-)] + $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') )" + +S=${WORKDIR}/${P}.src + +python_check_deps() { + has_version "dev-python/lit[${PYTHON_USEDEP}]" +} + +pkg_setup() { + use test && python-any-r1_pkg_setup +} + +src_configure() { + NATIVE_LIBDIR=$(get_libdir) + cmake-multilib_src_configure +} + +multilib_src_configure() { + local libdir=$(get_libdir) + local mycmakeargs=( + -DLLVM_LIBDIR_SUFFIX=${NATIVE_LIBDIR#lib} + -DLIBCXXABI_LIBDIR_SUFFIX=${libdir#lib} + -DLIBCXXABI_ENABLE_SHARED=ON + -DLIBCXXABI_ENABLE_STATIC=$(usex static-libs) + -DLIBCXXABI_USE_LLVM_UNWINDER=$(usex libunwind) + -DLLVM_INCLUDE_TESTS=$(usex test) + + -DLIBCXXABI_LIBCXX_INCLUDES="${WORKDIR}"/libcxx-${PV}.src/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 + # this only needs to exist, it does not have to make sense + -DLIBCXXABI_LIBUNWIND_SOURCES="${T}" + ) + if use test; then + mycmakeargs+=( + -DLIT_COMMAND="${EPREFIX}"/usr/bin/lit + ) + fi + if use elibc_musl; then + local -x CPPFLAGS="${CPPFLAGS} -D_LIBCPP_HAS_MUSL_LIBC=1" + fi + + # make sure we build multilib on OSX, because llvm insists on + # building multilib too + if [[ ${CHOST} == *86*-darwin* ]] ; then + append-flags -arch i386 -arch x86_64 + append-cxxflags -std=c++11 + local mycmakeargs+=( + # disable test for libstdc++ leaking in from LLVM cmake module - + # apart from libcxx headers, libcxxabi is self-contained + -DLLVM_ENABLE_LIBCXX=ON + ) + fi + + cmake-utils_src_configure +} + +multilib_src_test() { + local clang_path=$(type -P "${CHOST:+${CHOST}-}clang" 2>/dev/null) + + [[ -n ${clang_path} ]] || die "Unable to find ${CHOST}-clang for tests" + sed -i -e "/cxx_under_test/s^\".*\"^\"${clang_path}\"^" test/lit.site.cfg || die + + cmake-utils_src_make check-libcxxabi +} + +multilib_src_install_all() { + insinto /usr/include/libcxxabi + doins -r include/. +} |