1 |
ssuominen 10/01/31 12:37:15 |
2 |
|
3 |
Added: libunwind-0.99-disable-setjmp.patch |
4 |
libunwind-0.99-implicit-declaration.patch |
5 |
Log: |
6 |
Disable building of libunwind-setjmp library as imcompatible with GLIBC >= 2.11 wrt #299344 (from Fedora). Fix implicit declaration wrt #289445. |
7 |
(Portage version: 2.2_rc61/cvs/Linux x86_64) |
8 |
|
9 |
Revision Changes Path |
10 |
1.1 sys-libs/libunwind/files/libunwind-0.99-disable-setjmp.patch |
11 |
|
12 |
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-libs/libunwind/files/libunwind-0.99-disable-setjmp.patch?rev=1.1&view=markup |
13 |
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-libs/libunwind/files/libunwind-0.99-disable-setjmp.patch?rev=1.1&content-type=text/plain |
14 |
|
15 |
Index: libunwind-0.99-disable-setjmp.patch |
16 |
=================================================================== |
17 |
http://cvs.fedoraproject.org/viewvc/rpms/libunwind/devel/libunwind-disable-setjmp.patch?revision=1.1&view=markup |
18 |
http://bugs.gentoo.org/show_bug.cgi?id=299344 |
19 |
|
20 |
At least x86_64 version cannot work, src/setjmp/setjmp.c and |
21 |
src/setjmp/sigsetjmp.c are not even compiled, src/x86_64/longjmp.S does not |
22 |
match src/setjmp/setjmp.c + include/tdep-x86_64/jmpbuf.h . |
23 |
|
24 |
--- a/src/Makefile.am |
25 |
+++ b/src/Makefile.am |
26 |
@@ -12,7 +12,7 @@ lib_LTLIBRARIES_cdep_setjmp = |
27 |
else |
28 |
LIBRARIES_cdep = libunwind-ptrace.a |
29 |
lib_LTLIBRARIES_cdep = libunwind.la |
30 |
-lib_LTLIBRARIES_cdep_setjmp = libunwind-setjmp.la |
31 |
+lib_LTLIBRARIES_cdep_setjmp = #libunwind-setjmp.la |
32 |
endif |
33 |
|
34 |
### libunwind-ptrace: |
35 |
@@ -27,21 +27,21 @@ libunwind_ptrace_a_SOURCES = \ |
36 |
ptrace/_UPT_reg_offset.c ptrace/_UPT_resume.c |
37 |
|
38 |
### libunwind-setjmp: |
39 |
-libunwind_setjmp_la_LDFLAGS = $(COMMON_SO_LDFLAGS) \ |
40 |
- -version-info $(SETJMP_SO_VERSION) |
41 |
-libunwind_setjmp_la_LIBADD = libunwind-$(arch).la -lc |
42 |
-libunwind_setjmp_la_SOURCES_common = setjmp/setjmp_i.h \ |
43 |
- setjmp/longjmp.c \ |
44 |
- setjmp/siglongjmp.c |
45 |
-libunwind_setjmp_la_SOURCES_arm = arm/siglongjmp.S |
46 |
-libunwind_setjmp_la_SOURCES_ia64 = ia64/setjmp.S ia64/sigsetjmp.S \ |
47 |
- ia64/longjmp.S ia64/siglongjmp.S |
48 |
-libunwind_setjmp_la_SOURCES_hppa = hppa/siglongjmp.S |
49 |
-libunwind_setjmp_la_SOURCES_mips = mips/siglongjmp.S |
50 |
-libunwind_setjmp_la_SOURCES_x86 = x86/longjmp.S x86/siglongjmp.S |
51 |
-libunwind_setjmp_la_SOURCES_x86_64 = x86_64/longjmp.S x86_64/siglongjmp.S |
52 |
-libunwind_setjmp_la_SOURCES_ppc64 = ppc/longjmp.S ppc/siglongjmp.S |
53 |
-libunwind_setjmp_la_SOURCES_ppc32 = ppc/longjmp.S ppc/siglongjmp.S |
54 |
+#libunwind_setjmp_la_LDFLAGS = $(COMMON_SO_LDFLAGS) \ |
55 |
+# -version-info $(SETJMP_SO_VERSION) |
56 |
+#libunwind_setjmp_la_LIBADD = libunwind-$(arch).la -lc |
57 |
+#libunwind_setjmp_la_SOURCES_common = setjmp/setjmp_i.h \ |
58 |
+# setjmp/longjmp.c \ |
59 |
+# setjmp/siglongjmp.c |
60 |
+#libunwind_setjmp_la_SOURCES_arm = arm/siglongjmp.S |
61 |
+#libunwind_setjmp_la_SOURCES_ia64 = ia64/setjmp.S ia64/sigsetjmp.S \ |
62 |
+# ia64/longjmp.S ia64/siglongjmp.S |
63 |
+#libunwind_setjmp_la_SOURCES_hppa = hppa/siglongjmp.S |
64 |
+#libunwind_setjmp_la_SOURCES_mips = mips/siglongjmp.S |
65 |
+#libunwind_setjmp_la_SOURCES_x86 = x86/longjmp.S x86/siglongjmp.S |
66 |
+#libunwind_setjmp_la_SOURCES_x86_64 = x86_64/longjmp.S x86_64/siglongjmp.S |
67 |
+#libunwind_setjmp_la_SOURCES_ppc64 = ppc/longjmp.S ppc/siglongjmp.S |
68 |
+#libunwind_setjmp_la_SOURCES_ppc32 = ppc/longjmp.S ppc/siglongjmp.S |
69 |
|
70 |
### libunwind: |
71 |
|
72 |
@@ -359,8 +359,8 @@ if ARCH_ARM |
73 |
if !REMOTE_ONLY |
74 |
libunwind_arm_la_LIBADD = libunwind.la -lc |
75 |
endif |
76 |
- libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \ |
77 |
- $(libunwind_setjmp_la_SOURCES_arm) |
78 |
+# libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \ |
79 |
+# $(libunwind_setjmp_la_SOURCES_arm) |
80 |
else |
81 |
if ARCH_IA64 |
82 |
ia64_mk_Gcursor_i_SOURCES = ia64/mk_Gcursor_i.c |
83 |
@@ -378,8 +378,8 @@ Lcursor_i.h: ia64/mk_Lcursor_i |
84 |
if !REMOTE_ONLY |
85 |
libunwind_ia64_la_LIBADD = libunwind.la -lc |
86 |
endif |
87 |
- libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \ |
88 |
- $(libunwind_setjmp_la_SOURCES_ia64) |
89 |
+# libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \ |
90 |
+# $(libunwind_setjmp_la_SOURCES_ia64) |
91 |
else |
92 |
if ARCH_HPPA |
93 |
lib_LTLIBRARIES_arch = libunwind-hppa.la |
94 |
@@ -389,8 +389,8 @@ if ARCH_HPPA |
95 |
if !REMOTE_ONLY |
96 |
libunwind_hppa_la_LIBADD = libunwind.la -lc |
97 |
endif |
98 |
- libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \ |
99 |
- $(libunwind_setjmp_la_SOURCES_hppa) |
100 |
+# libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \ |
101 |
+# $(libunwind_setjmp_la_SOURCES_hppa) |
102 |
else |
103 |
if ARCH_MIPS |
104 |
lib_LTLIBRARIES_arch = libunwind-mips.la |
105 |
@@ -400,8 +400,8 @@ if ARCH_MIPS |
106 |
if !REMOTE_ONLY |
107 |
libunwind_mips_la_LIBADD = libunwind.la -lc |
108 |
endif |
109 |
- libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \ |
110 |
- $(libunwind_setjmp_la_SOURCES_mips) |
111 |
+# libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \ |
112 |
+# $(libunwind_setjmp_la_SOURCES_mips) |
113 |
else |
114 |
if ARCH_X86 |
115 |
lib_LTLIBRARIES_arch = libunwind-x86.la |
116 |
@@ -411,8 +411,8 @@ if ARCH_X86 |
117 |
if !REMOTE_ONLY |
118 |
libunwind_x86_la_LIBADD = libunwind.la -lc |
119 |
endif |
120 |
- libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \ |
121 |
- $(libunwind_setjmp_la_SOURCES_x86) |
122 |
+# libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \ |
123 |
+# $(libunwind_setjmp_la_SOURCES_x86) |
124 |
else |
125 |
if ARCH_X86_64 |
126 |
lib_LTLIBRARIES_arch = libunwind-x86_64.la |
127 |
@@ -422,8 +422,8 @@ if ARCH_X86_64 |
128 |
if !REMOTE_ONLY |
129 |
libunwind_x86_64_la_LIBADD = libunwind.la -lc |
130 |
endif |
131 |
- libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \ |
132 |
- $(libunwind_setjmp_la_SOURCES_x86_64) |
133 |
+# libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \ |
134 |
+# $(libunwind_setjmp_la_SOURCES_x86_64) |
135 |
else |
136 |
if ARCH_PPC32 |
137 |
lib_LTLIBRARIES_arch = libunwind-ppc32.la |
138 |
@@ -433,8 +433,8 @@ if ARCH_PPC32 |
139 |
if !REMOTE_ONLY |
140 |
libunwind_ppc32_la_LIBADD = libunwind.la -lc |
141 |
endif |
142 |
- libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \ |
143 |
- $(libunwind_setjmp_la_SOURCES_ppc32) |
144 |
+# libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \ |
145 |
+# $(libunwind_setjmp_la_SOURCES_ppc32) |
146 |
else |
147 |
if ARCH_PPC64 |
148 |
lib_LTLIBRARIES_arch = libunwind-ppc64.la |
149 |
@@ -444,8 +444,8 @@ if ARCH_PPC64 |
150 |
if !REMOTE_ONLY |
151 |
libunwind_ppc64_la_LIBADD = libunwind.la -lc |
152 |
endif |
153 |
- libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \ |
154 |
- $(libunwind_setjmp_la_SOURCES_ppc64) |
155 |
+# libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \ |
156 |
+# $(libunwind_setjmp_la_SOURCES_ppc64) |
157 |
|
158 |
endif # ARCH_PPC64 |
159 |
endif # ARCH_PPC32 |
160 |
@@ -466,7 +466,7 @@ libunwind_la_LIBADD = -lc $(LIBCRTS) |
161 |
|
162 |
lib_LIBRARIES = $(LIBRARIES_cdep) |
163 |
lib_LTLIBRARIES = $(lib_LTLIBRARIES_cdep) $(lib_LTLIBRARIES_arch) \ |
164 |
- $(lib_LTLIBRARIES_cdep_setjmp) |
165 |
+ # $(lib_LTLIBRARIES_cdep_setjmp) |
166 |
|
167 |
AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/include/tdep-$(arch) -I. |
168 |
AM_CCASFLAGS = $(AM_CPPFLAGS) |
169 |
@@ -488,16 +488,16 @@ EXTRA_DIST = elfxx.h elfxx.c unwind/unwind-internal.h \ |
170 |
$(libunwind_mips_la_SOURCES_mips) \ |
171 |
$(libunwind_x86_la_SOURCES_x86) \ |
172 |
$(libunwind_x86_64_la_SOURCES_x86_64) \ |
173 |
- $(libunwind_ptrace_a_SOURCES) \ |
174 |
- $(libunwind_setjmp_la_SOURCES_common) \ |
175 |
- $(libunwind_setjmp_la_SOURCES_arm) \ |
176 |
- $(libunwind_setjmp_la_SOURCES_hppa) \ |
177 |
- $(libunwind_setjmp_la_SOURCES_ia64) \ |
178 |
- $(libunwind_setjmp_la_SOURCES_mips) \ |
179 |
- $(libunwind_setjmp_la_SOURCES_x86) \ |
180 |
- $(libunwind_setjmp_la_SOURCES_x86_64) \ |
181 |
- $(libunwind_setjmp_la_SOURCES_ppc32) \ |
182 |
- $(libunwind_setjmp_la_SOURCES_ppc64) |
183 |
+ $(libunwind_ptrace_a_SOURCES) |
184 |
+# $(libunwind_setjmp_la_SOURCES_common) \ |
185 |
+# $(libunwind_setjmp_la_SOURCES_arm) \ |
186 |
+# $(libunwind_setjmp_la_SOURCES_hppa) \ |
187 |
+# $(libunwind_setjmp_la_SOURCES_ia64) \ |
188 |
+# $(libunwind_setjmp_la_SOURCES_mips) \ |
189 |
+# $(libunwind_setjmp_la_SOURCES_x86) \ |
190 |
+# $(libunwind_setjmp_la_SOURCES_x86_64) \ |
191 |
+# $(libunwind_setjmp_la_SOURCES_ppc32) \ |
192 |
+# $(libunwind_setjmp_la_SOURCES_ppc64) |
193 |
|
194 |
|
195 |
# The -version-info flag accepts an argument of the form |
196 |
--- a/tests/Makefile.am |
197 |
+++ b/tests/Makefile.am |
198 |
@@ -24,7 +24,8 @@ if ARCH_IA64 |
199 |
Gia64-test-nat Lia64-test-nat \ |
200 |
Gia64-test-rbs Lia64-test-rbs \ |
201 |
Gia64-test-readonly Lia64-test-readonly \ |
202 |
- ia64-test-setjmp ia64-test-sig |
203 |
+ ia64-test-sig |
204 |
+# ia64-test-setjmp |
205 |
else |
206 |
if ARCH_PPC64 |
207 |
if USE_ALTIVEC |
208 |
@@ -40,8 +41,9 @@ endif #ARCH_IA64 |
209 |
Gtest-resume-sig Ltest-resume-sig \ |
210 |
Gtest-dyn1 Ltest-dyn1 \ |
211 |
test-async-sig test-flush-cache test-init-remote \ |
212 |
- test-mem test-setjmp test-ptrace \ |
213 |
+ test-mem test-ptrace \ |
214 |
Ltest-nomalloc |
215 |
+# test-setjmp |
216 |
noinst_PROGRAMS_cdep = forker mapper test-ptrace-misc test-varargs \ |
217 |
Gperf-simple Lperf-simple |
218 |
|
219 |
@@ -93,8 +95,8 @@ test_ptrace_misc_SOURCES = test-ptrace-misc.c ident.c |
220 |
LIBUNWIND = ../src/libunwind-$(arch).la $(LIBUNWIND_local) |
221 |
LDADD = $(LIBUNWIND) |
222 |
|
223 |
-test_setjmp_LDADD = ../src/libunwind-setjmp.la $(LIBUNWIND_local) |
224 |
-ia64_test_setjmp_LDADD = ../src/libunwind-setjmp.la $(LIBUNWIND_local) |
225 |
+# test_setjmp_LDADD = ../src/libunwind-setjmp.la $(LIBUNWIND_local) |
226 |
+# ia64_test_setjmp_LDADD = ../src/libunwind-setjmp.la $(LIBUNWIND_local) |
227 |
test_ptrace_LDADD = ../src/libunwind-ptrace.a $(LIBUNWIND) |
228 |
Ltest_concurrent_LDADD = $(LIBUNWIND) -lpthread |
229 |
Gtest_concurrent_LDADD = $(LIBUNWIND) -lpthread |
230 |
|
231 |
|
232 |
|
233 |
1.1 sys-libs/libunwind/files/libunwind-0.99-implicit-declaration.patch |
234 |
|
235 |
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-libs/libunwind/files/libunwind-0.99-implicit-declaration.patch?rev=1.1&view=markup |
236 |
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-libs/libunwind/files/libunwind-0.99-implicit-declaration.patch?rev=1.1&content-type=text/plain |
237 |
|
238 |
Index: libunwind-0.99-implicit-declaration.patch |
239 |
=================================================================== |
240 |
http://bugs.gentoo.org/show_bug.cgi?id=289445#c2 |
241 |
|
242 |
--- src/x86_64/unwind_i.h |
243 |
+++ src/x86_64/unwind_i.h |
244 |
@@ -65,6 +65,12 @@ |
245 |
extern void x86_64_local_addr_space_init (void); |
246 |
extern int x86_64_local_resume (unw_addr_space_t as, unw_cursor_t *cursor, |
247 |
void *arg); |
248 |
+ |
249 |
+/* implemented in setcontext.S */ |
250 |
+#if defined(__linux) |
251 |
+extern int _Ux86_64_setcontext (const ucontext_t *ucp); |
252 |
+#endif |
253 |
+ |
254 |
#if 0 |
255 |
extern dwarf_loc_t x86_64_scratch_loc (struct cursor *c, unw_regnum_t reg); |
256 |
#endif |