summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuli Suominen <ssuominen@gentoo.org>2012-05-31 20:35:29 +0000
committerSamuli Suominen <ssuominen@gentoo.org>2012-05-31 20:35:29 +0000
commite8659f801099b5897aef77f75b1baccc450dcfe1 (patch)
tree6be4370c3f6463c9d1748f8a620b985179ee9fef /sys-libs/libunwind
parentDrop sgml herd. (diff)
downloadgentoo-2-e8659f801099b5897aef77f75b1baccc450dcfe1.tar.gz
gentoo-2-e8659f801099b5897aef77f75b1baccc450dcfe1.tar.bz2
gentoo-2-e8659f801099b5897aef77f75b1baccc450dcfe1.zip
Enable conservative checks with USE="debug", always pass --enable-cxx-exceptions and USE="debug-frame" for DWARF .debug_frame section information support wrt #418253 by Alexis Ballier and Mike Frysinger
(Portage version: 2.2.0_alpha108/cvs/Linux x86_64)
Diffstat (limited to 'sys-libs/libunwind')
-rw-r--r--sys-libs/libunwind/ChangeLog12
-rw-r--r--sys-libs/libunwind/libunwind-1.0.1-r1.ebuild59
-rw-r--r--sys-libs/libunwind/metadata.xml5
3 files changed, 73 insertions, 3 deletions
diff --git a/sys-libs/libunwind/ChangeLog b/sys-libs/libunwind/ChangeLog
index d881eb345255..1995ac13be98 100644
--- a/sys-libs/libunwind/ChangeLog
+++ b/sys-libs/libunwind/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for sys-libs/libunwind
-# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-libs/libunwind/ChangeLog,v 1.17 2011/09/18 05:49:01 vapier Exp $
+# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/libunwind/ChangeLog,v 1.18 2012/05/31 20:35:29 ssuominen Exp $
+
+*libunwind-1.0.1-r1 (31 May 2012)
+
+ 31 May 2012; Samuli Suominen <ssuominen@gentoo.org>
+ +libunwind-1.0.1-r1.ebuild, metadata.xml:
+ Enable conservative checks with USE="debug", always pass
+ --enable-cxx-exceptions and USE="debug-frame" for DWARF .debug_frame section
+ information support wrt #418253 by Alexis Ballier and Mike Frysinger
*libunwind-1.0.1 (18 Sep 2011)
diff --git a/sys-libs/libunwind/libunwind-1.0.1-r1.ebuild b/sys-libs/libunwind/libunwind-1.0.1-r1.ebuild
new file mode 100644
index 000000000000..f543f09a1b19
--- /dev/null
+++ b/sys-libs/libunwind/libunwind-1.0.1-r1.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/libunwind/libunwind-1.0.1-r1.ebuild,v 1.1 2012/05/31 20:35:29 ssuominen Exp $
+
+EAPI="4"
+
+inherit autotools eutils
+
+DESCRIPTION="Portable and efficient API to determine the call-chain of a program"
+HOMEPAGE="http://savannah.nongnu.org/projects/libunwind"
+SRC_URI="http://download.savannah.nongnu.org/releases/libunwind/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="7"
+KEYWORDS="~amd64 ~ia64 ~x86 ~x86-fbsd"
+IUSE="debug debug-frame static-libs"
+
+# https://savannah.nongnu.org/bugs/?22368
+# https://bugs.gentoo.org/273372
+RESTRICT="test"
+
+DOCS=( AUTHORS ChangeLog NEWS README TODO )
+
+QA_DT_NEEDED_x86_fbsd="usr/lib/libunwind.so.7.0.0"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-1.0.1-disable-setjmp.patch
+ eautoreconf
+}
+
+src_configure() {
+ # do not $(use_enable) because the configure.in is broken and parses
+ # --disable-debug the same as --enable-debug.
+ # https://savannah.nongnu.org/bugs/index.php?34324
+ # --enable-cxx-exceptions: always enable it, headers provide the interface
+ # and on some archs it is disabled by default causing a mismatch between the
+ # API and the ABI, bug #418253
+ # conservative-checks: validate memory addresses before use; as of 1.0.1,
+ # only x86_64 supports this, yet may be useful for debugging, couple it with
+ # debug useflag.
+ econf \
+ --enable-cxx-exceptions \
+ $(use_enable debug-frame) \
+ $(use_enable static-libs static) \
+ $(use_enable debug conservative_checks) \
+ $(use debug && echo --enable-debug)
+}
+
+src_test() {
+ # explicitly allow parallel build of tests
+ emake check
+}
+
+src_install() {
+ default
+ # libunwind-ptrace.a (and libunwind-ptrace.h) is separate API and without
+ # shared library, so we keep it in any case
+ use static-libs || rm -f "${ED}"usr/lib*/libunwind{-generic.a,*.la}
+}
diff --git a/sys-libs/libunwind/metadata.xml b/sys-libs/libunwind/metadata.xml
index fb4199eb7afe..4878bd084d1f 100644
--- a/sys-libs/libunwind/metadata.xml
+++ b/sys-libs/libunwind/metadata.xml
@@ -1,5 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<herd>toolchain</herd>
+ <herd>toolchain</herd>
+ <use>
+ <flag name='debug-frame'>Adds support for DWARF .debug_frame section: Use the information from this section if available</flag>
+ </use>
</pkgmetadata>