libunwind/libunwind-disable-setjmp.patch

171 lines
5.5 KiB
Diff

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 .
google-perftools link only with libunwind.so.7 .
--- libunwind-1.0.1-orig/src/Makefile.am 2011-09-11 05:06:41.000000000 +0200
+++ libunwind-1.0.1/src/Makefile.am 2011-09-15 13:55:42.000000000 +0200
@@ -1,5 +1,5 @@
SOVERSION=8:0:0 # See comments at end of file.
-SETJMP_SO_VERSION=0:0:0
+#SETJMP_SO_VERSION=0:0:0
#
# Don't link with start-files since we don't use any constructors/destructors:
#
@@ -27,8 +27,8 @@ libunwind_ptrace_a_SOURCES = \
noinst_HEADERS += ptrace/_UPT_internal.h
### libunwind-setjmp:
-libunwind_setjmp_la_LDFLAGS = $(COMMON_SO_LDFLAGS) \
- -version-info $(SETJMP_SO_VERSION)
+#libunwind_setjmp_la_LDFLAGS = $(COMMON_SO_LDFLAGS) \
+# -version-info $(SETJMP_SO_VERSION)
if USE_ELF32
LIBUNWIND_ELF = libunwind-elf32.la
@@ -40,12 +40,12 @@ if USE_ELFXX
LIBUNWIND_ELF = libunwind-elfxx.la
endif
-libunwind_setjmp_la_LIBADD = $(LIBUNWIND_ELF) \
- libunwind-$(arch).la \
- libunwind.la -lc
-libunwind_setjmp_la_SOURCES = setjmp/longjmp.c \
- setjmp/siglongjmp.c
-noinst_HEADERS += setjmp/setjmp_i.h
+#libunwind_setjmp_la_LIBADD = $(LIBUNWIND_ELF) \
+# libunwind-$(arch).la \
+# libunwind.la -lc
+#libunwind_setjmp_la_SOURCES = setjmp/longjmp.c \
+# setjmp/siglongjmp.c
+#noinst_HEADERS += setjmp/setjmp_i.h
### libunwind:
libunwind_la_LIBADD =
@@ -373,7 +373,7 @@ if ARCH_ARM
if !REMOTE_ONLY
libunwind_arm_la_LIBADD += libunwind.la -lc
endif
- libunwind_setjmp_la_SOURCES += arm/siglongjmp.S
+# libunwind_setjmp_la_SOURCES += arm/siglongjmp.S
else
if ARCH_IA64
ia64_mk_Gcursor_i_SOURCES = ia64/mk_Gcursor_i.c
@@ -393,8 +393,8 @@ Lcursor_i.h: ia64/mk_Lcursor_i
if !REMOTE_ONLY
libunwind_ia64_la_LIBADD += libunwind.la -lc
endif
- libunwind_setjmp_la_SOURCES += ia64/setjmp.S ia64/sigsetjmp.S \
- ia64/longjmp.S ia64/siglongjmp.S
+# libunwind_setjmp_la_SOURCES += ia64/setjmp.S ia64/sigsetjmp.S \
+# ia64/longjmp.S ia64/siglongjmp.S
else
if ARCH_HPPA
lib_LTLIBRARIES += libunwind-hppa.la
@@ -406,7 +406,7 @@ if ARCH_HPPA
if !REMOTE_ONLY
libunwind_hppa_la_LIBADD += libunwind.la -lc
endif
- libunwind_setjmp_la_SOURCES += hppa/siglongjmp.S
+# libunwind_setjmp_la_SOURCES += hppa/siglongjmp.S
else
if ARCH_MIPS
lib_LTLIBRARIES += libunwind-mips.la
@@ -418,7 +418,7 @@ if ARCH_MIPS
if !REMOTE_ONLY
libunwind_mips_la_LIBADD += libunwind.la -lc
endif
- libunwind_setjmp_la_SOURCES += mips/siglongjmp.S
+# libunwind_setjmp_la_SOURCES += mips/siglongjmp.S
else
if ARCH_X86
lib_LTLIBRARIES += libunwind-x86.la
@@ -430,7 +430,7 @@ if ARCH_X86
if !REMOTE_ONLY
libunwind_x86_la_LIBADD += libunwind.la -lc
endif
- libunwind_setjmp_la_SOURCES += x86/longjmp.S x86/siglongjmp.S
+# libunwind_setjmp_la_SOURCES += x86/longjmp.S x86/siglongjmp.S
else
if ARCH_X86_64
lib_LTLIBRARIES += libunwind-x86_64.la
@@ -442,7 +442,7 @@ if ARCH_X86_64
if !REMOTE_ONLY
libunwind_x86_64_la_LIBADD += libunwind.la -lc
endif
- libunwind_setjmp_la_SOURCES += x86_64/longjmp.S x86_64/siglongjmp.S
+# libunwind_setjmp_la_SOURCES += x86_64/longjmp.S x86_64/siglongjmp.S
else
if ARCH_PPC32
lib_LTLIBRARIES += libunwind-ppc32.la
@@ -454,7 +454,7 @@ if ARCH_PPC32
if !REMOTE_ONLY
libunwind_ppc32_la_LIBADD += libunwind.la -lc
endif
- libunwind_setjmp_la_SOURCES += ppc/longjmp.S ppc/siglongjmp.S
+# libunwind_setjmp_la_SOURCES += ppc/longjmp.S ppc/siglongjmp.S
else
if ARCH_PPC64
lib_LTLIBRARIES += libunwind-ppc64.la
@@ -466,7 +466,7 @@ if ARCH_PPC64
if !REMOTE_ONLY
libunwind_ppc64_la_LIBADD += libunwind.la -lc
endif
- libunwind_setjmp_la_SOURCES += ppc/longjmp.S ppc/siglongjmp.S
+# libunwind_setjmp_la_SOURCES += ppc/longjmp.S ppc/siglongjmp.S
endif # ARCH_PPC64
endif # ARCH_PPC32
@@ -480,7 +480,7 @@ endif # ARCH_ARM
# libunwind-setjmp depends on libunwind-$(arch). Therefore must be added
# at the end.
if !REMOTE_ONLY
-lib_LTLIBRARIES += libunwind-setjmp.la
+#lib_LTLIBRARIES += libunwind-setjmp.la
endif
#
--- libunwind-1.0.1-orig/tests/Makefile.am 2011-09-11 05:06:41.000000000 +0200
+++ libunwind-1.0.1/tests/Makefile.am 2011-09-15 13:56:16.000000000 +0200
@@ -27,7 +27,7 @@ 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
else
if ARCH_PPC64
if USE_ALTIVEC
@@ -44,8 +44,9 @@ endif #ARCH_IA64
Gtest-dyn1 Ltest-dyn1 \
Gtest-trace Ltest-trace \
test-async-sig test-flush-cache test-init-remote \
- test-mem test-setjmp test-ptrace \
+ test-mem test-ptrace \
Ltest-nomalloc Ltest-nocalloc rs-race
+# test-setjmp
noinst_PROGRAMS_cdep = forker mapper test-ptrace-misc \
Gperf-simple Lperf-simple
@@ -123,8 +124,8 @@ if USE_ELFXX
LIBUNWIND_ELF = $(top_builddir)/src/libunwind-elfxx.la
endif
-LIBUNWIND_setjmp = $(top_builddir)/src/libunwind-setjmp.la \
- $(LIBUNWIND_ELF) $(LIBUNWIND)
+#LIBUNWIND_setjmp = $(top_builddir)/src/libunwind-setjmp.la \
+# $(LIBUNWIND_ELF) $(LIBUNWIND)
test_async_sig_LDADD = $(LIBUNWIND_local) -lpthread
test_flush_cache_LDADD = $(LIBUNWIND_local)
@@ -159,6 +160,6 @@ Lperf_simple_LDADD = $(LIBUNWIND_local)
Ltest_trace_LDADD = $(LIBUNWIND_local)
Lperf_trace_LDADD = $(LIBUNWIND_local)
-test_setjmp_LDADD = $(LIBUNWIND_setjmp)
-ia64_test_setjmp_LDADD = $(LIBUNWIND_setjmp)
+#test_setjmp_LDADD = $(LIBUNWIND_setjmp)
+#ia64_test_setjmp_LDADD = $(LIBUNWIND_setjmp)