summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexis Ballier <aballier@gentoo.org>2016-09-22 17:33:38 +0200
committerAlexis Ballier <aballier@gentoo.org>2016-09-22 17:46:31 +0200
commit7a2e0589b95ea6ce11c71cbbade2a2fb1958a539 (patch)
tree2e9e920597c5f96e615ba45ef8f7898fee56abe9 /sys-libs/libcxxrt
parentsys-kernel/hardened-sources: version bump to 4.7.4-r1, remove 4.7.4 (diff)
downloadgentoo-7a2e0589b95ea6ce11c71cbbade2a2fb1958a539.tar.gz
gentoo-7a2e0589b95ea6ce11c71cbbade2a2fb1958a539.tar.bz2
gentoo-7a2e0589b95ea6ce11c71cbbade2a2fb1958a539.zip
sys-libs/libcxxrt: bump a new snapshot
Package-Manager: portage-2.3.1
Diffstat (limited to 'sys-libs/libcxxrt')
-rw-r--r--sys-libs/libcxxrt/Manifest1
-rw-r--r--sys-libs/libcxxrt/libcxxrt-0.0_p20160922.ebuild72
2 files changed, 73 insertions, 0 deletions
diff --git a/sys-libs/libcxxrt/Manifest b/sys-libs/libcxxrt/Manifest
index 34a5c0f9d403..fb191185309b 100644
--- a/sys-libs/libcxxrt/Manifest
+++ b/sys-libs/libcxxrt/Manifest
@@ -1,2 +1,3 @@
DIST libcxxrt-0.0_p20140322.tar.xz 58208 SHA256 39392e1081710d7bf62de1a9723632adbaed5cd516e8b27af764195b8ea9aeb0 SHA512 8cc2f3779a28b8eb215c3dc97e1382651016127ec6b1feb5067de435841c20e6338662172176f003242f1393b8df3ecf91eaa85b54281e1c588dab44d01ca930 WHIRLPOOL 1e6b105cb6650762025f3ce0b6853eff84c94d6fb6c34269b6e3d92984c66308d59c20f2b4311cafea24928f0e3e645527ea6b041b939e941a05f2fea9a2c02e
DIST libcxxrt-0.0_p20150423.tar.xz 58596 SHA256 a633256ffe43261dd873866aa4a0be9aaa8bdd38f8d554f16c209e84be2f1a88 SHA512 67a3b9204cee7b7900228483b8e24898d83f76b3ff2ed94bbbd67ca3fba623021e1b346c91ef46955da78f2e001395dc84a2f496223b52a0e59e97ff2e27e247 WHIRLPOOL bcf34a715b7aafa4169d39f045896be9230d3365dfffc422d91af160c64a254561a7f2e67bcdc35b4e2a2032a9d1c5e87eeebbc5c40607737f5715bbeeb4b530
+DIST libcxxrt-0.0_p20160922.tar.xz 60460 SHA256 be52f2e5a57344bd856e5dd155eaec5e4606edb0118f1ad4cadc2f2bd00d394e SHA512 3ec60ef2127a7e51793f90291ef61c6853d9a7b23201617f9dde0d27d987901db5ad0b142e3adb3eee64884e11793676912f2fb8e8b090d35288277a54d261bd WHIRLPOOL 841f21edaa8fc7aac4636826b7510b7f35cd5c5d580d5f13b1b06b00b101e2f097cec3f073463275fe54fbd337aa3e08f254be4fdacf9155ca8b625c0beb4f0e
diff --git a/sys-libs/libcxxrt/libcxxrt-0.0_p20160922.ebuild b/sys-libs/libcxxrt/libcxxrt-0.0_p20160922.ebuild
new file mode 100644
index 000000000000..bcb21bd8e197
--- /dev/null
+++ b/sys-libs/libcxxrt/libcxxrt-0.0_p20160922.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+EGIT_REPO_URI="git://github.com/pathscale/libcxxrt.git"
+
+[ "${PV%9999}" != "${PV}" ] && SCM="git-2" || SCM=""
+
+inherit flag-o-matic toolchain-funcs portability ${SCM} multilib-minimal
+
+DESCRIPTION="C++ Runtime from PathScale, FreeBSD and NetBSD"
+HOMEPAGE="https://github.com/pathscale/libcxxrt http://www.pathscale.com/node/265"
+if [ "${PV%9999}" = "${PV}" ] ; then
+ SRC_URI="mirror://gentoo/${P}.tar.xz"
+ DEPEND="app-arch/xz-utils"
+else
+ SRC_URI=""
+fi
+
+LICENSE="BSD-2"
+SLOT="0"
+if [ "${PV%9999}" = "${PV}" ] ; then
+ KEYWORDS="~amd64 ~mips ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+else
+ KEYWORDS=""
+fi
+IUSE="libunwind +static-libs"
+
+RDEPEND="libunwind? ( || ( >=sys-libs/libunwind-1.0.1-r1[static-libs?]
+ sys-libs/llvm-libunwind[static-libs?] ) )"
+DEPEND="${RDEPEND}
+ ${DEPEND}"
+
+DOCS=( AUTHORS COPYRIGHT README )
+
+src_prepare() {
+ cp "${FILESDIR}/Makefile" src/ || die
+ cp "${FILESDIR}/Makefile.test" test/Makefile || die
+ multilib_copy_sources
+}
+
+multilib_src_compile() {
+ # Notes: we build -nodefaultlibs to avoid linking to gcc libs.
+ # libcxxrt needs: dladdr (dlopen_lib), libunwind or libgcc_s and the libc.
+ tc-export CC CXX AR
+ append-ldflags "-Wl,-z,defs" # make sure we are not underlinked
+ cd "${BUILD_DIR}/src"
+ LIBS="$(dlopen_lib) -l$(usex libunwind unwind gcc_s) -lc" emake shared
+ use static-libs && emake static
+}
+
+multilib_src_test() {
+ cd "${BUILD_DIR}/test"
+ LD_LIBRARY_PATH="${BUILD_DIR}/src:${LD_LIBRARY_PATH}" \
+ LIBS="-L${BUILD_DIR}/src -lcxxrt -l$(usex libunwind unwind gcc_s) -lc" \
+ emake check
+}
+
+multilib_src_install() {
+ # TODO: See README. Maybe hide it in a subdir and let only libcxx know about
+ # it. FreeBSD head installs it in /lib
+ dolib.so src/${PN}.so*
+ use static-libs && dolib.a src/${PN}.a
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ insinto /usr/include/libcxxrt/
+ doins src/cxxabi.h src/unwind*.h
+}