| 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 |