summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuli Suominen <ssuominen@gentoo.org>2010-01-31 12:37:15 +0000
committerSamuli Suominen <ssuominen@gentoo.org>2010-01-31 12:37:15 +0000
commit860a16b9f20de319cf7fdf8fe45016c6d2a91366 (patch)
tree22b45751f79a141b7062ba61c6c89b4538e08712 /sys-libs
parentAdd prefix keywords, change EAPI to 3. (diff)
downloadhistorical-860a16b9f20de319cf7fdf8fe45016c6d2a91366.tar.gz
historical-860a16b9f20de319cf7fdf8fe45016c6d2a91366.tar.bz2
historical-860a16b9f20de319cf7fdf8fe45016c6d2a91366.zip
Disable building of libunwind-setjmp library as imcompatible with GLIBC >= 2.11 wrt #299344 (from Fedora). Fix implicit declaration wrt #289445.
Package-Manager: portage-2.2_rc61/cvs/Linux x86_64
Diffstat (limited to 'sys-libs')
-rw-r--r--sys-libs/libunwind/ChangeLog12
-rw-r--r--sys-libs/libunwind/Manifest5
-rw-r--r--sys-libs/libunwind/files/libunwind-0.99-disable-setjmp.patch213
-rw-r--r--sys-libs/libunwind/files/libunwind-0.99-implicit-declaration.patch17
-rw-r--r--sys-libs/libunwind/libunwind-0.99-r1.ebuild33
5 files changed, 277 insertions, 3 deletions
diff --git a/sys-libs/libunwind/ChangeLog b/sys-libs/libunwind/ChangeLog
index 221fea5ce03c..086b9e0ec195 100644
--- a/sys-libs/libunwind/ChangeLog
+++ b/sys-libs/libunwind/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for sys-libs/libunwind
-# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-libs/libunwind/ChangeLog,v 1.8 2009/11/24 19:10:14 armin76 Exp $
+# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/libunwind/ChangeLog,v 1.9 2010/01/31 12:37:15 ssuominen Exp $
+
+*libunwind-0.99-r1 (31 Jan 2010)
+
+ 31 Jan 2010; Samuli Suominen <ssuominen@gentoo.org>
+ +libunwind-0.99-r1.ebuild, +files/libunwind-0.99-disable-setjmp.patch,
+ +files/libunwind-0.99-implicit-declaration.patch:
+ Disable building of libunwind-setjmp library as imcompatible with GLIBC >=
+ 2.11 wrt #299344 (from Fedora). Fix implicit declaration wrt #289445.
24 Nov 2009; Raúl Porcel <armin76@gentoo.org> libunwind-0.99.ebuild:
ia64 stable wrt #289445
diff --git a/sys-libs/libunwind/Manifest b/sys-libs/libunwind/Manifest
index 755c1d373da5..4d3818c9f95a 100644
--- a/sys-libs/libunwind/Manifest
+++ b/sys-libs/libunwind/Manifest
@@ -1,7 +1,10 @@
+AUX libunwind-0.99-disable-setjmp.patch 8566 RMD160 56d373ca810a237388f6a7c156a64cc223899a8b SHA1 619744fbc19ac0fac93059e21fb6647f03dc2b7d SHA256 d9cce99c7e53414b7c364c1e1fd14332bc9d2decae26750244af166d6fb820ef
+AUX libunwind-0.99-implicit-declaration.patch 486 RMD160 0e1e3d5f4665bcf3ac049ded1928b17c8ae7f2df SHA1 3bd36046e74524f009dcda5b96ad298262d9ad65 SHA256 f8f72c6160c6741ea2a3d251662fe3d8ecd63bfcf488527838e6d95e4dddd2a1
DIST libunwind-0.98.5.tar.gz 543170 RMD160 f06b290455b18030c6a12d7b9006ed17a3713d07 SHA1 68be10bc8900619a639ae2d635a9549e2ed38a3d SHA256 62c585e7939569b8c1bfb8988a536d0c270a4dfea7aa3a74199a9385c000b918
DIST libunwind-0.99.tar.gz 711817 RMD160 d51876e9db75c5d456a3a2a4651f027a0a0e8930 SHA1 2969f68f27b2ede08ae129178a9b393f92be73d2 SHA256 56083aae17eab3ccb7a36b95f0430f5a5f258755bf193bb5ca4fd4b918356164
EBUILD libunwind-0.98.5-r1.ebuild 691 RMD160 d12e85825d9ed3745bdd31c46dc4d63168aac947 SHA1 e099b3829cceee0d95b35979e9aa8049d1a6705f SHA256 1615acbe2031ad83c55ffba381ea1c516c7485a9f33d504b64d55e3edc14e72c
EBUILD libunwind-0.98.5.ebuild 610 RMD160 47f1173fb58b3bc40f5e26087115671973788bc2 SHA1 681eb266cd74e130ad9f5235f0d7be2e074f5775 SHA256 24da58abbd0f7fe0f48670850d4f378099b8c64800124aab235ad88f4b8ed701
+EBUILD libunwind-0.99-r1.ebuild 905 RMD160 aa557e5bcc00c1c5643599d0770952d5e87d7ba3 SHA1 cf340f4ee53c0fe97f23682dbec1a4c3e370c8cc SHA256 51d7fd2c42945138de11c43a0a75c4183854f515bc35eab7a2c828c712e8aed4
EBUILD libunwind-0.99.ebuild 792 RMD160 3b0a257dfdc1af83907b2cbf91343db2724d7536 SHA1 9da7870302c91974e15836a5e9ddf283b8795ec8 SHA256 da2cc22e66858da94303010dedc8f2d3a71bd5bbd9ea6e48442285980a0bfc64
-MISC ChangeLog 1192 RMD160 7b84e31075fef8984fb695c29a9ad5ee846ebe44 SHA1 e77b06ee99476246cad7dcf4a0df6851594d1557 SHA256 428132595c55ee17fbbf49cbc6c4e4076868639f8aa765d8b8e5a1b4b8bf996d
+MISC ChangeLog 1557 RMD160 9739c300f0f6d230cb28adc9b238e69d2bf81f2a SHA1 0a30d44bfbf612192b80f38112a96e2805dc8ad1 SHA256 aa75efeb15f159165b0de802b2b72b965e89fed6a981a35bac0537942b642d45
MISC metadata.xml 162 RMD160 d002486a43522f2116b1d9d59828c484956d66e2 SHA1 d6b4923897f6ae673b4f93646f5b4ba61d5a2c3c SHA256 65a915d44de1f01d4b7f72d313b4192c38374a9835d24988c00c1e73dca5805a
diff --git a/sys-libs/libunwind/files/libunwind-0.99-disable-setjmp.patch b/sys-libs/libunwind/files/libunwind-0.99-disable-setjmp.patch
new file mode 100644
index 000000000000..698d2acff816
--- /dev/null
+++ b/sys-libs/libunwind/files/libunwind-0.99-disable-setjmp.patch
@@ -0,0 +1,213 @@
+http://cvs.fedoraproject.org/viewvc/rpms/libunwind/devel/libunwind-disable-setjmp.patch?revision=1.1&view=markup
+http://bugs.gentoo.org/show_bug.cgi?id=299344
+
+At least x86_64 version cannot work, src/setjmp/setjmp.c and
+src/setjmp/sigsetjmp.c are not even compiled, src/x86_64/longjmp.S does not
+match src/setjmp/setjmp.c + include/tdep-x86_64/jmpbuf.h .
+
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -12,7 +12,7 @@ lib_LTLIBRARIES_cdep_setjmp =
+ else
+ LIBRARIES_cdep = libunwind-ptrace.a
+ lib_LTLIBRARIES_cdep = libunwind.la
+-lib_LTLIBRARIES_cdep_setjmp = libunwind-setjmp.la
++lib_LTLIBRARIES_cdep_setjmp = #libunwind-setjmp.la
+ endif
+
+ ### libunwind-ptrace:
+@@ -27,21 +27,21 @@ libunwind_ptrace_a_SOURCES = \
+ ptrace/_UPT_reg_offset.c ptrace/_UPT_resume.c
+
+ ### libunwind-setjmp:
+-libunwind_setjmp_la_LDFLAGS = $(COMMON_SO_LDFLAGS) \
+- -version-info $(SETJMP_SO_VERSION)
+-libunwind_setjmp_la_LIBADD = libunwind-$(arch).la -lc
+-libunwind_setjmp_la_SOURCES_common = setjmp/setjmp_i.h \
+- setjmp/longjmp.c \
+- setjmp/siglongjmp.c
+-libunwind_setjmp_la_SOURCES_arm = arm/siglongjmp.S
+-libunwind_setjmp_la_SOURCES_ia64 = ia64/setjmp.S ia64/sigsetjmp.S \
+- ia64/longjmp.S ia64/siglongjmp.S
+-libunwind_setjmp_la_SOURCES_hppa = hppa/siglongjmp.S
+-libunwind_setjmp_la_SOURCES_mips = mips/siglongjmp.S
+-libunwind_setjmp_la_SOURCES_x86 = x86/longjmp.S x86/siglongjmp.S
+-libunwind_setjmp_la_SOURCES_x86_64 = x86_64/longjmp.S x86_64/siglongjmp.S
+-libunwind_setjmp_la_SOURCES_ppc64 = ppc/longjmp.S ppc/siglongjmp.S
+-libunwind_setjmp_la_SOURCES_ppc32 = ppc/longjmp.S ppc/siglongjmp.S
++#libunwind_setjmp_la_LDFLAGS = $(COMMON_SO_LDFLAGS) \
++# -version-info $(SETJMP_SO_VERSION)
++#libunwind_setjmp_la_LIBADD = libunwind-$(arch).la -lc
++#libunwind_setjmp_la_SOURCES_common = setjmp/setjmp_i.h \
++# setjmp/longjmp.c \
++# setjmp/siglongjmp.c
++#libunwind_setjmp_la_SOURCES_arm = arm/siglongjmp.S
++#libunwind_setjmp_la_SOURCES_ia64 = ia64/setjmp.S ia64/sigsetjmp.S \
++# ia64/longjmp.S ia64/siglongjmp.S
++#libunwind_setjmp_la_SOURCES_hppa = hppa/siglongjmp.S
++#libunwind_setjmp_la_SOURCES_mips = mips/siglongjmp.S
++#libunwind_setjmp_la_SOURCES_x86 = x86/longjmp.S x86/siglongjmp.S
++#libunwind_setjmp_la_SOURCES_x86_64 = x86_64/longjmp.S x86_64/siglongjmp.S
++#libunwind_setjmp_la_SOURCES_ppc64 = ppc/longjmp.S ppc/siglongjmp.S
++#libunwind_setjmp_la_SOURCES_ppc32 = ppc/longjmp.S ppc/siglongjmp.S
+
+ ### libunwind:
+
+@@ -359,8 +359,8 @@ if ARCH_ARM
+ if !REMOTE_ONLY
+ libunwind_arm_la_LIBADD = libunwind.la -lc
+ endif
+- libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \
+- $(libunwind_setjmp_la_SOURCES_arm)
++# libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \
++# $(libunwind_setjmp_la_SOURCES_arm)
+ else
+ if ARCH_IA64
+ ia64_mk_Gcursor_i_SOURCES = ia64/mk_Gcursor_i.c
+@@ -378,8 +378,8 @@ Lcursor_i.h: ia64/mk_Lcursor_i
+ if !REMOTE_ONLY
+ libunwind_ia64_la_LIBADD = libunwind.la -lc
+ endif
+- libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \
+- $(libunwind_setjmp_la_SOURCES_ia64)
++# libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \
++# $(libunwind_setjmp_la_SOURCES_ia64)
+ else
+ if ARCH_HPPA
+ lib_LTLIBRARIES_arch = libunwind-hppa.la
+@@ -389,8 +389,8 @@ if ARCH_HPPA
+ if !REMOTE_ONLY
+ libunwind_hppa_la_LIBADD = libunwind.la -lc
+ endif
+- libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \
+- $(libunwind_setjmp_la_SOURCES_hppa)
++# libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \
++# $(libunwind_setjmp_la_SOURCES_hppa)
+ else
+ if ARCH_MIPS
+ lib_LTLIBRARIES_arch = libunwind-mips.la
+@@ -400,8 +400,8 @@ if ARCH_MIPS
+ if !REMOTE_ONLY
+ libunwind_mips_la_LIBADD = libunwind.la -lc
+ endif
+- libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \
+- $(libunwind_setjmp_la_SOURCES_mips)
++# libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \
++# $(libunwind_setjmp_la_SOURCES_mips)
+ else
+ if ARCH_X86
+ lib_LTLIBRARIES_arch = libunwind-x86.la
+@@ -411,8 +411,8 @@ if ARCH_X86
+ if !REMOTE_ONLY
+ libunwind_x86_la_LIBADD = libunwind.la -lc
+ endif
+- libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \
+- $(libunwind_setjmp_la_SOURCES_x86)
++# libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \
++# $(libunwind_setjmp_la_SOURCES_x86)
+ else
+ if ARCH_X86_64
+ lib_LTLIBRARIES_arch = libunwind-x86_64.la
+@@ -422,8 +422,8 @@ if ARCH_X86_64
+ if !REMOTE_ONLY
+ libunwind_x86_64_la_LIBADD = libunwind.la -lc
+ endif
+- libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \
+- $(libunwind_setjmp_la_SOURCES_x86_64)
++# libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \
++# $(libunwind_setjmp_la_SOURCES_x86_64)
+ else
+ if ARCH_PPC32
+ lib_LTLIBRARIES_arch = libunwind-ppc32.la
+@@ -433,8 +433,8 @@ if ARCH_PPC32
+ if !REMOTE_ONLY
+ libunwind_ppc32_la_LIBADD = libunwind.la -lc
+ endif
+- libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \
+- $(libunwind_setjmp_la_SOURCES_ppc32)
++# libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \
++# $(libunwind_setjmp_la_SOURCES_ppc32)
+ else
+ if ARCH_PPC64
+ lib_LTLIBRARIES_arch = libunwind-ppc64.la
+@@ -444,8 +444,8 @@ if ARCH_PPC64
+ if !REMOTE_ONLY
+ libunwind_ppc64_la_LIBADD = libunwind.la -lc
+ endif
+- libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \
+- $(libunwind_setjmp_la_SOURCES_ppc64)
++# libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \
++# $(libunwind_setjmp_la_SOURCES_ppc64)
+
+ endif # ARCH_PPC64
+ endif # ARCH_PPC32
+@@ -466,7 +466,7 @@ libunwind_la_LIBADD = -lc $(LIBCRTS)
+
+ lib_LIBRARIES = $(LIBRARIES_cdep)
+ lib_LTLIBRARIES = $(lib_LTLIBRARIES_cdep) $(lib_LTLIBRARIES_arch) \
+- $(lib_LTLIBRARIES_cdep_setjmp)
++ # $(lib_LTLIBRARIES_cdep_setjmp)
+
+ AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/include/tdep-$(arch) -I.
+ AM_CCASFLAGS = $(AM_CPPFLAGS)
+@@ -488,16 +488,16 @@ EXTRA_DIST = elfxx.h elfxx.c unwind/unwind-internal.h \
+ $(libunwind_mips_la_SOURCES_mips) \
+ $(libunwind_x86_la_SOURCES_x86) \
+ $(libunwind_x86_64_la_SOURCES_x86_64) \
+- $(libunwind_ptrace_a_SOURCES) \
+- $(libunwind_setjmp_la_SOURCES_common) \
+- $(libunwind_setjmp_la_SOURCES_arm) \
+- $(libunwind_setjmp_la_SOURCES_hppa) \
+- $(libunwind_setjmp_la_SOURCES_ia64) \
+- $(libunwind_setjmp_la_SOURCES_mips) \
+- $(libunwind_setjmp_la_SOURCES_x86) \
+- $(libunwind_setjmp_la_SOURCES_x86_64) \
+- $(libunwind_setjmp_la_SOURCES_ppc32) \
+- $(libunwind_setjmp_la_SOURCES_ppc64)
++ $(libunwind_ptrace_a_SOURCES)
++# $(libunwind_setjmp_la_SOURCES_common) \
++# $(libunwind_setjmp_la_SOURCES_arm) \
++# $(libunwind_setjmp_la_SOURCES_hppa) \
++# $(libunwind_setjmp_la_SOURCES_ia64) \
++# $(libunwind_setjmp_la_SOURCES_mips) \
++# $(libunwind_setjmp_la_SOURCES_x86) \
++# $(libunwind_setjmp_la_SOURCES_x86_64) \
++# $(libunwind_setjmp_la_SOURCES_ppc32) \
++# $(libunwind_setjmp_la_SOURCES_ppc64)
+
+
+ # The -version-info flag accepts an argument of the form
+--- a/tests/Makefile.am
++++ b/tests/Makefile.am
+@@ -24,7 +24,8 @@ if ARCH_IA64
+ Gia64-test-nat Lia64-test-nat \
+ Gia64-test-rbs Lia64-test-rbs \
+ Gia64-test-readonly Lia64-test-readonly \
+- ia64-test-setjmp ia64-test-sig
++ ia64-test-sig
++# ia64-test-setjmp
+ else
+ if ARCH_PPC64
+ if USE_ALTIVEC
+@@ -40,8 +41,9 @@ endif #ARCH_IA64
+ Gtest-resume-sig Ltest-resume-sig \
+ Gtest-dyn1 Ltest-dyn1 \
+ test-async-sig test-flush-cache test-init-remote \
+- test-mem test-setjmp test-ptrace \
++ test-mem test-ptrace \
+ Ltest-nomalloc
++# test-setjmp
+ noinst_PROGRAMS_cdep = forker mapper test-ptrace-misc test-varargs \
+ Gperf-simple Lperf-simple
+
+@@ -93,8 +95,8 @@ test_ptrace_misc_SOURCES = test-ptrace-misc.c ident.c
+ LIBUNWIND = ../src/libunwind-$(arch).la $(LIBUNWIND_local)
+ LDADD = $(LIBUNWIND)
+
+-test_setjmp_LDADD = ../src/libunwind-setjmp.la $(LIBUNWIND_local)
+-ia64_test_setjmp_LDADD = ../src/libunwind-setjmp.la $(LIBUNWIND_local)
++# test_setjmp_LDADD = ../src/libunwind-setjmp.la $(LIBUNWIND_local)
++# ia64_test_setjmp_LDADD = ../src/libunwind-setjmp.la $(LIBUNWIND_local)
+ test_ptrace_LDADD = ../src/libunwind-ptrace.a $(LIBUNWIND)
+ Ltest_concurrent_LDADD = $(LIBUNWIND) -lpthread
+ Gtest_concurrent_LDADD = $(LIBUNWIND) -lpthread
diff --git a/sys-libs/libunwind/files/libunwind-0.99-implicit-declaration.patch b/sys-libs/libunwind/files/libunwind-0.99-implicit-declaration.patch
new file mode 100644
index 000000000000..6387f0a889c7
--- /dev/null
+++ b/sys-libs/libunwind/files/libunwind-0.99-implicit-declaration.patch
@@ -0,0 +1,17 @@
+http://bugs.gentoo.org/show_bug.cgi?id=289445#c2
+
+--- src/x86_64/unwind_i.h
++++ src/x86_64/unwind_i.h
+@@ -65,6 +65,12 @@
+ extern void x86_64_local_addr_space_init (void);
+ extern int x86_64_local_resume (unw_addr_space_t as, unw_cursor_t *cursor,
+ void *arg);
++
++/* implemented in setcontext.S */
++#if defined(__linux)
++extern int _Ux86_64_setcontext (const ucontext_t *ucp);
++#endif
++
+ #if 0
+ extern dwarf_loc_t x86_64_scratch_loc (struct cursor *c, unw_regnum_t reg);
+ #endif
diff --git a/sys-libs/libunwind/libunwind-0.99-r1.ebuild b/sys-libs/libunwind/libunwind-0.99-r1.ebuild
new file mode 100644
index 000000000000..5975f23d024d
--- /dev/null
+++ b/sys-libs/libunwind/libunwind-0.99-r1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/libunwind/libunwind-0.99-r1.ebuild,v 1.1 2010/01/31 12:37:15 ssuominen Exp $
+
+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"
+IUSE=""
+
+DEPEND=""
+RDEPEND=""
+
+RESTRICT="test" # https://savannah.nongnu.org/bugs/?22368
+ # https://bugs.gentoo.org/273372
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/${P}-disable-setjmp.patch \
+ "${FILESDIR}"/${P}-implicit-declaration.patch
+ eautoreconf
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die
+ dodoc AUTHORS ChangeLog NEWS README TODO
+}