Contents of /trunk/elfutils/patches/elfutils-0.158-portability.patch
Parent Directory | Revision Log
Revision 2367 -
(show annotations)
(download)
Thu Jan 16 10:39:21 2014 UTC (10 years, 8 months ago) by niro
File size: 61898 byte(s)
Thu Jan 16 10:39:21 2014 UTC (10 years, 8 months ago) by niro
File size: 61898 byte(s)
-upstream patches
1 | --- elfutils/backends/ChangeLog |
2 | +++ elfutils/backends/ChangeLog |
3 | @@ -292,6 +292,10 @@ |
4 | * ppc_attrs.c (ppc_check_object_attribute): Handle tag |
5 | GNU_Power_ABI_Struct_Return. |
6 | |
7 | +2009-01-23 Roland McGrath <roland@redhat.com> |
8 | + |
9 | + * Makefile.am (libebl_%.so): Use $(LD_AS_NEEDED). |
10 | + |
11 | 2008-10-04 Ulrich Drepper <drepper@redhat.com> |
12 | |
13 | * i386_reloc.def: Fix entries for TLS_GOTDESC, TLS_DESC_CALL, and |
14 | @@ -619,6 +623,11 @@ |
15 | * sparc_init.c: Likewise. |
16 | * x86_64_init.c: Likewise. |
17 | |
18 | +2005-11-22 Roland McGrath <roland@redhat.com> |
19 | + |
20 | + * Makefile.am (LD_AS_NEEDED): New variable, substituted by configure. |
21 | + (libebl_%.so rule): Use it in place of -Wl,--as-needed. |
22 | + |
23 | 2005-11-19 Roland McGrath <roland@redhat.com> |
24 | |
25 | * ppc64_reloc.def: REL30 -> ADDR30. |
26 | @@ -641,6 +650,9 @@ |
27 | * Makefile.am (uninstall): Don't try to remove $(pkgincludedir). |
28 | (CLEANFILES): Add libebl_$(m).so. |
29 | |
30 | + * Makefile.am (WEXTRA): New variable, substituted by configure. |
31 | + (AM_CFLAGS): Use it in place of -Wextra. |
32 | + |
33 | * ppc_reloc.def: Update bits per Alan Modra <amodra@bigpond.net.au>. |
34 | * ppc64_reloc.def: Likewise. |
35 | |
36 | --- elfutils/backends/Makefile.am |
37 | +++ elfutils/backends/Makefile.am |
38 | @@ -124,7 +124,7 @@ libebl_%.so libebl_%.map: libebl_%_pic.a |
39 | $(LINK) -shared -o $(@:.map=.so) \ |
40 | -Wl,--whole-archive $< $(cpu_$*) -Wl,--no-whole-archive \ |
41 | -Wl,--version-script,$(@:.so=.map) \ |
42 | - -Wl,-z,defs -Wl,--as-needed $(libelf) $(libdw) $(libmudflap) |
43 | + -Wl,-z,defs $(LD_AS_NEEDED) $(libelf) $(libdw) $(libmudflap) |
44 | $(textrel_check) |
45 | |
46 | libebl_i386.so: $(cpu_i386) |
47 | --- elfutils/backends/Makefile.in |
48 | +++ elfutils/backends/Makefile.in |
49 | @@ -83,7 +83,8 @@ host_triplet = @host@ |
50 | DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ |
51 | $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ |
52 | $(noinst_HEADERS) ChangeLog |
53 | -@MUDFLAP_TRUE@am__append_1 = -fmudflap |
54 | +@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) |
55 | +@MUDFLAP_TRUE@am__append_2 = -fmudflap |
56 | subdir = backends |
57 | ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 |
58 | am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ |
59 | @@ -284,6 +285,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ |
60 | INSTALL_SCRIPT = @INSTALL_SCRIPT@ |
61 | INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ |
62 | LDFLAGS = @LDFLAGS@ |
63 | +LD_AS_NEEDED = @LD_AS_NEEDED@ |
64 | LEX = @LEX@ |
65 | LEXLIB = @LEXLIB@ |
66 | LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ |
67 | @@ -315,6 +317,7 @@ SHELL = @SHELL@ |
68 | STRIP = @STRIP@ |
69 | USE_NLS = @USE_NLS@ |
70 | VERSION = @VERSION@ |
71 | +WEXTRA = @WEXTRA@ |
72 | XGETTEXT = @XGETTEXT@ |
73 | XGETTEXT_015 = @XGETTEXT_015@ |
74 | XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ |
75 | @@ -378,10 +381,9 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr |
76 | -I$(top_srcdir)/libebl -I$(top_srcdir)/libasm \ |
77 | -I$(top_srcdir)/libelf -I$(top_srcdir)/libdw |
78 | AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ |
79 | - $($(*F)_no_Werror),,-Werror) $(if \ |
80 | - $($(*F)_no_Wunused),,-Wunused -Wextra) $(if \ |
81 | + $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ |
82 | $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ |
83 | - $(am__append_1) |
84 | + $(am__append_1) $(am__append_2) |
85 | @MUDFLAP_FALSE@libmudflap = |
86 | @MUDFLAP_TRUE@libmudflap = -lmudflap |
87 | COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage $(no_mudflap.os),\ |
88 | @@ -888,7 +890,7 @@ libebl_%.so libebl_%.map: libebl_%_pic.a |
89 | $(LINK) -shared -o $(@:.map=.so) \ |
90 | -Wl,--whole-archive $< $(cpu_$*) -Wl,--no-whole-archive \ |
91 | -Wl,--version-script,$(@:.so=.map) \ |
92 | - -Wl,-z,defs -Wl,--as-needed $(libelf) $(libdw) $(libmudflap) |
93 | + -Wl,-z,defs $(LD_AS_NEEDED) $(libelf) $(libdw) $(libmudflap) |
94 | $(textrel_check) |
95 | |
96 | libebl_i386.so: $(cpu_i386) |
97 | --- elfutils/ChangeLog |
98 | +++ elfutils/ChangeLog |
99 | @@ -118,6 +118,8 @@ |
100 | |
101 | 2012-01-24 Mark Wielaard <mjw@redhat.com> |
102 | |
103 | + * configure.ac: Wrap AC_COMPILE_IFELSE sources in AC_LANG_SOURCE. |
104 | + |
105 | * COPYING: Fix address. Updated version from gnulib. |
106 | |
107 | 2012-01-23 Mark Wielaard <mjw@redhat.com> |
108 | @@ -136,6 +138,9 @@ |
109 | |
110 | 2011-10-08 Mike Frysinger <vapier@gentoo.org> |
111 | |
112 | + * configure.ac (--disable-werror): Handle it, controlling BUILD_WERROR |
113 | + automake option. |
114 | + |
115 | * configure.ac: Fix use of AC_ARG_ENABLE to handle $enableval correctly. |
116 | |
117 | 2011-10-02 Ulrich Drepper <drepper@gmail.com> |
118 | @@ -157,6 +162,10 @@ |
119 | |
120 | * configure.ac (LOCALEDIR, DATADIRNAME): Removed. |
121 | |
122 | +2009-11-22 Roland McGrath <roland@redhat.com> |
123 | + |
124 | + * configure.ac: Use sed and expr instead of modern bash extensions. |
125 | + |
126 | 2009-09-21 Ulrich Drepper <drepper@redhat.com> |
127 | |
128 | * configure.ac: Update for more modern autoconf. |
129 | @@ -165,6 +174,10 @@ |
130 | |
131 | * configure.ac (zip_LIBS): Check for liblzma too. |
132 | |
133 | +2009-08-17 Roland McGrath <roland@redhat.com> |
134 | + |
135 | + * configure.ac: Check for -fgnu89-inline; add it to WEXTRA if it works. |
136 | + |
137 | 2009-04-19 Roland McGrath <roland@redhat.com> |
138 | |
139 | * configure.ac (eu_version): Round down here, not in version.h macros. |
140 | @@ -176,6 +189,8 @@ |
141 | |
142 | 2009-01-23 Roland McGrath <roland@redhat.com> |
143 | |
144 | + * configure.ac: Check for __builtin_popcount. |
145 | + |
146 | * configure.ac (zlib check): Check for gzdirect, need zlib >= 1.2.2.3. |
147 | |
148 | * configure.ac (__thread check): Use AC_LINK_IFELSE, in case of |
149 | @@ -256,6 +271,10 @@ |
150 | * configure.ac: Add dummy automake conditional to get dependencies |
151 | for non-generic linker right. See src/Makefile.am. |
152 | |
153 | +2005-11-22 Roland McGrath <roland@redhat.com> |
154 | + |
155 | + * configure.ac: Check for --as-needed linker option. |
156 | + |
157 | 2005-11-18 Roland McGrath <roland@redhat.com> |
158 | |
159 | * Makefile.am (DISTCHECK_CONFIGURE_FLAGS): New variable. |
160 | @@ -303,6 +322,17 @@ |
161 | * Makefile.am (all_SUBDIRS): Add libdwfl. |
162 | * configure.ac: Write libdwfl/Makefile. |
163 | |
164 | +2005-05-31 Roland McGrath <roland@redhat.com> |
165 | + |
166 | + * configure.ac (WEXTRA): Check for -Wextra and set this substitution. |
167 | + |
168 | + * configure.ac: Check for struct stat st_?tim members. |
169 | + * src/strip.c (process_file): Use st_?time if st_?tim are not there. |
170 | + |
171 | + * configure.ac: Check for futimes function. |
172 | + * src/strip.c (handle_elf) [! HAVE_FUTIMES]: Use utimes instead. |
173 | + (handle_ar) [! HAVE_FUTIMES]: Likewise. |
174 | + |
175 | 2005-05-19 Roland McGrath <roland@redhat.com> |
176 | |
177 | * configure.ac [AH_BOTTOM] (INTDECL, _INTDECL): New macros. |
178 | --- elfutils/config/ChangeLog |
179 | +++ elfutils/config/ChangeLog |
180 | @@ -44,6 +44,10 @@ |
181 | |
182 | * known-dwarf.awk: Use gawk. |
183 | |
184 | +2011-10-08 Mike Frysinger <vapier@gentoo.org> |
185 | + |
186 | + * eu.am [BUILD_WERROR]: Conditionalize -Werror use on this. |
187 | + |
188 | 2010-07-02 Ulrich Drepper <drepper@redhat.com> |
189 | |
190 | * elfutils.spec.in: Add more BuildRequires. |
191 | --- elfutils/config/eu.am |
192 | +++ elfutils/config/eu.am |
193 | @@ -1,6 +1,6 @@ |
194 | ## Common automake fragments for elfutils subdirectory makefiles. |
195 | ## |
196 | -## Copyright (C) 2010 Red Hat, Inc. |
197 | +## Copyright (C) 2010-2011 Red Hat, Inc. |
198 | ## |
199 | ## This file is part of elfutils. |
200 | ## |
201 | @@ -29,14 +29,20 @@ |
202 | ## not, see <http://www.gnu.org/licenses/>. |
203 | ## |
204 | |
205 | +WEXTRA = @WEXTRA@ |
206 | +LD_AS_NEEDED = @LD_AS_NEEDED@ |
207 | + |
208 | DEFS = -D_GNU_SOURCE -DHAVE_CONFIG_H -DLOCALEDIR='"${localedir}"' |
209 | AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. |
210 | AM_CFLAGS = -std=gnu99 -Wall -Wshadow \ |
211 | - $(if $($(*F)_no_Werror),,-Werror) \ |
212 | - $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ |
213 | + $(if $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) \ |
214 | $(if $($(*F)_no_Wformat),-Wno-format,-Wformat=2) \ |
215 | $($(*F)_CFLAGS) |
216 | |
217 | +if BUILD_WERROR |
218 | +AM_CFLAGS += $(if $($(*F)_no_Werror),,-Werror) |
219 | +endif |
220 | + |
221 | if MUDFLAP |
222 | AM_CFLAGS += -fmudflap |
223 | libmudflap = -lmudflap |
224 | --- elfutils/config/Makefile.in |
225 | +++ elfutils/config/Makefile.in |
226 | @@ -146,6 +146,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ |
227 | INSTALL_SCRIPT = @INSTALL_SCRIPT@ |
228 | INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ |
229 | LDFLAGS = @LDFLAGS@ |
230 | +LD_AS_NEEDED = @LD_AS_NEEDED@ |
231 | LEX = @LEX@ |
232 | LEXLIB = @LEXLIB@ |
233 | LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ |
234 | @@ -177,6 +178,7 @@ SHELL = @SHELL@ |
235 | STRIP = @STRIP@ |
236 | USE_NLS = @USE_NLS@ |
237 | VERSION = @VERSION@ |
238 | +WEXTRA = @WEXTRA@ |
239 | XGETTEXT = @XGETTEXT@ |
240 | XGETTEXT_015 = @XGETTEXT_015@ |
241 | XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ |
242 | --- elfutils/config.h.in |
243 | +++ elfutils/config.h.in |
244 | @@ -6,6 +6,9 @@ |
245 | /* Defined if libdw should support GNU ref_alt FORM, dwz multi files. */ |
246 | #undef ENABLE_DWZ |
247 | |
248 | +/* Have __builtin_popcount. */ |
249 | +#undef HAVE_BUILTIN_POPCOUNT |
250 | + |
251 | /* Define to 1 if you have the <inttypes.h> header file. */ |
252 | #undef HAVE_INTTYPES_H |
253 | |
254 | @@ -102,4 +105,7 @@ |
255 | /* Define for large files, on AIX-style hosts. */ |
256 | #undef _LARGE_FILES |
257 | |
258 | +/* Stubbed out if missing compiler support. */ |
259 | +#undef __thread |
260 | + |
261 | #include <eu-config.h> |
262 | --- elfutils/configure |
263 | +++ elfutils/configure |
264 | @@ -661,6 +661,8 @@ ZLIB_TRUE |
265 | LIBEBL_SUBDIR |
266 | TESTS_RPATH_FALSE |
267 | TESTS_RPATH_TRUE |
268 | +BUILD_WERROR_FALSE |
269 | +BUILD_WERROR_TRUE |
270 | BUILD_STATIC_FALSE |
271 | BUILD_STATIC_TRUE |
272 | USE_VALGRIND_FALSE |
273 | @@ -678,6 +680,8 @@ NEVER_TRUE |
274 | base_cpu |
275 | NATIVE_LD_FALSE |
276 | NATIVE_LD_TRUE |
277 | +LD_AS_NEEDED |
278 | +WEXTRA |
279 | NM |
280 | READELF |
281 | ac_ct_AR |
282 | @@ -802,6 +806,7 @@ enable_debugpred |
283 | enable_gprof |
284 | enable_gcov |
285 | enable_valgrind |
286 | +enable_werror |
287 | enable_tests_rpath |
288 | enable_libebl_subdir |
289 | with_zlib |
290 | @@ -1461,6 +1466,7 @@ Optional Features: |
291 | --enable-gprof build binaries with gprof support |
292 | --enable-gcov build binaries with gcov support |
293 | --enable-valgrind run all tests under valgrind |
294 | + --disable-werror do not build with -Werror |
295 | --enable-tests-rpath build $ORIGIN-using rpath into tests |
296 | --enable-libebl-subdir=DIR |
297 | install libebl_CPU modules in $(libdir)/DIR |
298 | @@ -4709,6 +4715,130 @@ if test "x$ac_cv_c99" != xyes; then : |
299 | as_fn_error $? "gcc with C99 support required" "$LINENO" 5 |
300 | fi |
301 | |
302 | +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for -Wextra option to $CC" >&5 |
303 | +$as_echo_n "checking for -Wextra option to $CC... " >&6; } |
304 | +if ${ac_cv_cc_wextra+:} false; then : |
305 | + $as_echo_n "(cached) " >&6 |
306 | +else |
307 | + old_CFLAGS="$CFLAGS" |
308 | +CFLAGS="$CFLAGS -Wextra" |
309 | +cat confdefs.h - <<_ACEOF >conftest.$ac_ext |
310 | +/* end confdefs.h. */ |
311 | +void foo (void) { } |
312 | +_ACEOF |
313 | +if ac_fn_c_try_compile "$LINENO"; then : |
314 | + ac_cv_cc_wextra=yes |
315 | +else |
316 | + ac_cv_cc_wextra=no |
317 | +fi |
318 | +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext |
319 | +CFLAGS="$old_CFLAGS" |
320 | +fi |
321 | +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cc_wextra" >&5 |
322 | +$as_echo "$ac_cv_cc_wextra" >&6; } |
323 | + |
324 | +if test "x$ac_cv_cc_wextra" = xyes; then : |
325 | + WEXTRA=-Wextra |
326 | +else |
327 | + WEXTRA=-W |
328 | +fi |
329 | + |
330 | +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for -fgnu89-inline option to $CC" >&5 |
331 | +$as_echo_n "checking for -fgnu89-inline option to $CC... " >&6; } |
332 | +if ${ac_cv_cc_gnu89_inline+:} false; then : |
333 | + $as_echo_n "(cached) " >&6 |
334 | +else |
335 | + old_CFLAGS="$CFLAGS" |
336 | +CFLAGS="$CFLAGS -fgnu89-inline -Werror" |
337 | +cat confdefs.h - <<_ACEOF >conftest.$ac_ext |
338 | +/* end confdefs.h. */ |
339 | + |
340 | +void foo (void) |
341 | +{ |
342 | + inline void bar (void) {} |
343 | + bar (); |
344 | +} |
345 | +extern inline void baz (void) {} |
346 | + |
347 | +_ACEOF |
348 | +if ac_fn_c_try_compile "$LINENO"; then : |
349 | + ac_cv_cc_gnu89_inline=yes |
350 | +else |
351 | + ac_cv_cc_gnu89_inline=no |
352 | +fi |
353 | +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext |
354 | +CFLAGS="$old_CFLAGS" |
355 | +fi |
356 | +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cc_gnu89_inline" >&5 |
357 | +$as_echo "$ac_cv_cc_gnu89_inline" >&6; } |
358 | +if test "x$ac_cv_cc_gnu89_inline" = xyes; then : |
359 | + WEXTRA="${WEXTRA:+$WEXTRA }-fgnu89-inline" |
360 | +fi |
361 | + |
362 | +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --as-needed linker option" >&5 |
363 | +$as_echo_n "checking for --as-needed linker option... " >&6; } |
364 | +if ${ac_cv_as_needed+:} false; then : |
365 | + $as_echo_n "(cached) " >&6 |
366 | +else |
367 | + cat > conftest.c <<EOF |
368 | +int main (void) { return 0; } |
369 | +EOF |
370 | +if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS |
371 | + -fPIC -shared -o conftest.so conftest.c |
372 | + -Wl,--as-needed 1>&5' |
373 | + { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 |
374 | + (eval $ac_try) 2>&5 |
375 | + ac_status=$? |
376 | + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 |
377 | + test $ac_status = 0; }; } |
378 | +then |
379 | + ac_cv_as_needed=yes |
380 | +else |
381 | + ac_cv_as_needed=no |
382 | +fi |
383 | +rm -f conftest* |
384 | +fi |
385 | +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_as_needed" >&5 |
386 | +$as_echo "$ac_cv_as_needed" >&6; } |
387 | +if test "x$ac_cv_as_needed" = xyes; then : |
388 | + LD_AS_NEEDED=-Wl,--as-needed |
389 | +else |
390 | + LD_AS_NEEDED= |
391 | +fi |
392 | + |
393 | + |
394 | +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for __builtin_popcount" >&5 |
395 | +$as_echo_n "checking for __builtin_popcount... " >&6; } |
396 | +if ${ac_cv_popcount+:} false; then : |
397 | + $as_echo_n "(cached) " >&6 |
398 | +else |
399 | + cat confdefs.h - <<_ACEOF >conftest.$ac_ext |
400 | +/* end confdefs.h. */ |
401 | + |
402 | +int |
403 | +main () |
404 | +{ |
405 | +exit (__builtin_popcount (127)); |
406 | + ; |
407 | + return 0; |
408 | +} |
409 | +_ACEOF |
410 | +if ac_fn_c_try_link "$LINENO"; then : |
411 | + ac_cv_popcount=yes |
412 | +else |
413 | + ac_cv_popcount=no |
414 | +fi |
415 | +rm -f core conftest.err conftest.$ac_objext \ |
416 | + conftest$ac_exeext conftest.$ac_ext |
417 | +fi |
418 | +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_popcount" >&5 |
419 | +$as_echo "$ac_cv_popcount" >&6; } |
420 | +if test "x$ac_cv_popcount" = xyes; then : |
421 | + |
422 | +$as_echo "#define HAVE_BUILTIN_POPCOUNT 1" >>confdefs.h |
423 | + |
424 | +fi |
425 | + |
426 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for __thread support" >&5 |
427 | $as_echo_n "checking for __thread support... " >&6; } |
428 | if ${ac_cv_tls+:} false; then : |
429 | @@ -4745,7 +4875,13 @@ fi |
430 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_tls" >&5 |
431 | $as_echo "$ac_cv_tls" >&6; } |
432 | if test "x$ac_cv_tls" != xyes; then : |
433 | - as_fn_error $? "__thread support required" "$LINENO" 5 |
434 | + if test "$use_locks" = yes; then : |
435 | + as_fn_error $? "--enable-thread-safety requires __thread support" "$LINENO" 5 |
436 | +else |
437 | + |
438 | +$as_echo "#define __thread /* empty: no multi-thread support */" >>confdefs.h |
439 | + |
440 | +fi |
441 | fi |
442 | |
443 | # Check whether --enable-largefile was given. |
444 | @@ -5155,6 +5291,22 @@ else |
445 | fi |
446 | |
447 | |
448 | +# Check whether --enable-werror was given. |
449 | +if test "${enable_werror+set}" = set; then : |
450 | + enableval=$enable_werror; enable_werror=$enableval |
451 | +else |
452 | + enable_werror=yes |
453 | +fi |
454 | + |
455 | + if test "$enable_werror" = yes; then |
456 | + BUILD_WERROR_TRUE= |
457 | + BUILD_WERROR_FALSE='#' |
458 | +else |
459 | + BUILD_WERROR_TRUE='#' |
460 | + BUILD_WERROR_FALSE= |
461 | +fi |
462 | + |
463 | + |
464 | # Check whether --enable-tests-rpath was given. |
465 | if test "${enable_tests_rpath+set}" = set; then : |
466 | enableval=$enable_tests_rpath; tests_use_rpath=$enableval |
467 | @@ -5875,7 +6027,7 @@ case "$eu_version" in |
468 | esac |
469 | |
470 | # Round up to the next release API (x.y) version. |
471 | -eu_version=$(( (eu_version + 999) / 1000 )) |
472 | +eu_version=`expr \( $eu_version + 999 \) / 1000` |
473 | |
474 | ac_ext=c |
475 | ac_cpp='$CPP $CPPFLAGS' |
476 | @@ -6613,6 +6765,10 @@ if test -z "${BUILD_STATIC_TRUE}" && tes |
477 | as_fn_error $? "conditional \"BUILD_STATIC\" was never defined. |
478 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
479 | fi |
480 | +if test -z "${BUILD_WERROR_TRUE}" && test -z "${BUILD_WERROR_FALSE}"; then |
481 | + as_fn_error $? "conditional \"BUILD_WERROR\" was never defined. |
482 | +Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
483 | +fi |
484 | if test -z "${TESTS_RPATH_TRUE}" && test -z "${TESTS_RPATH_FALSE}"; then |
485 | as_fn_error $? "conditional \"TESTS_RPATH\" was never defined. |
486 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
487 | --- elfutils/configure.ac |
488 | +++ elfutils/configure.ac |
489 | @@ -99,6 +99,54 @@ CFLAGS="$old_CFLAGS"]) |
490 | AS_IF([test "x$ac_cv_c99" != xyes], |
491 | AC_MSG_ERROR([gcc with C99 support required])) |
492 | |
493 | +AC_CACHE_CHECK([for -Wextra option to $CC], ac_cv_cc_wextra, [dnl |
494 | +old_CFLAGS="$CFLAGS" |
495 | +CFLAGS="$CFLAGS -Wextra" |
496 | +AC_COMPILE_IFELSE([AC_LANG_SOURCE([void foo (void) { }])], |
497 | + ac_cv_cc_wextra=yes, ac_cv_cc_wextra=no) |
498 | +CFLAGS="$old_CFLAGS"]) |
499 | +AC_SUBST(WEXTRA) |
500 | +AS_IF([test "x$ac_cv_cc_wextra" = xyes], [WEXTRA=-Wextra], [WEXTRA=-W]) |
501 | + |
502 | +AC_CACHE_CHECK([for -fgnu89-inline option to $CC], ac_cv_cc_gnu89_inline, [dnl |
503 | +old_CFLAGS="$CFLAGS" |
504 | +CFLAGS="$CFLAGS -fgnu89-inline -Werror" |
505 | +AC_COMPILE_IFELSE([AC_LANG_SOURCE([ |
506 | +void foo (void) |
507 | +{ |
508 | + inline void bar (void) {} |
509 | + bar (); |
510 | +} |
511 | +extern inline void baz (void) {} |
512 | +])], ac_cv_cc_gnu89_inline=yes, ac_cv_cc_gnu89_inline=no) |
513 | +CFLAGS="$old_CFLAGS"]) |
514 | +AS_IF([test "x$ac_cv_cc_gnu89_inline" = xyes], |
515 | + [WEXTRA="${WEXTRA:+$WEXTRA }-fgnu89-inline"]) |
516 | + |
517 | +AC_CACHE_CHECK([for --as-needed linker option], |
518 | + ac_cv_as_needed, [dnl |
519 | +cat > conftest.c <<EOF |
520 | +int main (void) { return 0; } |
521 | +EOF |
522 | +if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS |
523 | + -fPIC -shared -o conftest.so conftest.c |
524 | + -Wl,--as-needed 1>&AS_MESSAGE_LOG_FD]) |
525 | +then |
526 | + ac_cv_as_needed=yes |
527 | +else |
528 | + ac_cv_as_needed=no |
529 | +fi |
530 | +rm -f conftest*]) |
531 | +AS_IF([test "x$ac_cv_as_needed" = xyes], |
532 | + [LD_AS_NEEDED=-Wl,--as-needed], [LD_AS_NEEDED=]) |
533 | +AC_SUBST(LD_AS_NEEDED) |
534 | + |
535 | +AC_CACHE_CHECK([for __builtin_popcount], ac_cv_popcount, [dnl |
536 | +AC_LINK_IFELSE([AC_LANG_PROGRAM([], [[exit (__builtin_popcount (127));]])], |
537 | + ac_cv_popcount=yes, ac_cv_popcount=no)]) |
538 | +AS_IF([test "x$ac_cv_popcount" = xyes], |
539 | + [AC_DEFINE([HAVE_BUILTIN_POPCOUNT], [1], [Have __builtin_popcount.])]) |
540 | + |
541 | AC_CACHE_CHECK([for __thread support], ac_cv_tls, [dnl |
542 | # Use the same flags that we use for our DSOs, so the test is representative. |
543 | # Some old compiler/linker/libc combinations fail some ways and not others. |
544 | @@ -114,7 +162,10 @@ static __thread int a; int foo (int b) { |
545 | CFLAGS="$save_CFLAGS" |
546 | LDFLAGS="$save_LDFLAGS"]) |
547 | AS_IF([test "x$ac_cv_tls" != xyes], |
548 | - AC_MSG_ERROR([__thread support required])) |
549 | + [AS_IF([test "$use_locks" = yes], |
550 | + [AC_MSG_ERROR([--enable-thread-safety requires __thread support])], |
551 | + [AC_DEFINE([__thread], [/* empty: no multi-thread support */], |
552 | + [Stubbed out if missing compiler support.])])]) |
553 | |
554 | dnl This test must come as early as possible after the compiler configuration |
555 | dnl tests, because the choice of the file model can (in principle) affect |
556 | @@ -213,6 +264,11 @@ AM_CONDITIONAL(USE_VALGRIND, test "$use_ |
557 | AM_CONDITIONAL(BUILD_STATIC, [dnl |
558 | test "$use_mudflap" = yes -o "$use_gprof" = yes -o "$use_gcov" = yes]) |
559 | |
560 | +AC_ARG_ENABLE([werror], |
561 | +AS_HELP_STRING([--disable-werror],[do not build with -Werror]), |
562 | + [enable_werror=$enableval], [enable_werror=yes]) |
563 | +AM_CONDITIONAL(BUILD_WERROR, test "$enable_werror" = yes) |
564 | + |
565 | AC_ARG_ENABLE([tests-rpath], |
566 | AS_HELP_STRING([--enable-tests-rpath],[build $ORIGIN-using rpath into tests]), |
567 | [tests_use_rpath=$enableval], [tests_use_rpath=no]) |
568 | @@ -324,7 +380,7 @@ case "$eu_version" in |
569 | esac |
570 | |
571 | # Round up to the next release API (x.y) version. |
572 | -eu_version=$(( (eu_version + 999) / 1000 )) |
573 | +eu_version=`expr \( $eu_version + 999 \) / 1000` |
574 | |
575 | AC_CHECK_SIZEOF(long) |
576 | |
577 | --- elfutils/lib/ChangeLog |
578 | +++ elfutils/lib/ChangeLog |
579 | @@ -61,6 +61,9 @@ |
580 | |
581 | 2009-01-23 Roland McGrath <roland@redhat.com> |
582 | |
583 | + * eu-config.h [! HAVE_BUILTIN_POPCOUNT] |
584 | + (__builtin_popcount): New inline function. |
585 | + |
586 | * eu-config.h: Add multiple inclusion protection. |
587 | |
588 | 2009-01-17 Ulrich Drepper <drepper@redhat.com> |
589 | @@ -117,6 +120,11 @@ |
590 | * Makefile.am (libeu_a_SOURCES): Add it. |
591 | * system.h: Declare crc32_file. |
592 | |
593 | +2005-02-07 Roland McGrath <roland@redhat.com> |
594 | + |
595 | + * Makefile.am (WEXTRA): New variable, substituted by configure. |
596 | + (AM_CFLAGS): Use it in place of -Wextra. |
597 | + |
598 | 2005-04-30 Ulrich Drepper <drepper@redhat.com> |
599 | |
600 | * Makefile.am: Use -ffunction-sections for xmalloc.c. |
601 | --- elfutils/lib/eu-config.h |
602 | +++ elfutils/lib/eu-config.h |
603 | @@ -162,6 +162,17 @@ asm (".section predict_data, \"aw\"; .pr |
604 | /* This macro is used by the tests conditionalize for standalone building. */ |
605 | #define ELFUTILS_HEADER(name) <lib##name.h> |
606 | |
607 | +#ifndef HAVE_BUILTIN_POPCOUNT |
608 | +# define __builtin_popcount hakmem_popcount |
609 | +static inline unsigned int __attribute__ ((unused)) |
610 | +hakmem_popcount (unsigned int x) |
611 | +{ |
612 | + /* HAKMEM 169 */ |
613 | + unsigned int n = x - ((x >> 1) & 033333333333) - ((x >> 2) & 011111111111); |
614 | + return ((n + (n >> 3)) & 030707070707) % 63; |
615 | +} |
616 | +#endif /* HAVE_BUILTIN_POPCOUNT */ |
617 | + |
618 | |
619 | #ifdef SHARED |
620 | # define OLD_VERSION(name, version) \ |
621 | --- elfutils/lib/Makefile.in |
622 | +++ elfutils/lib/Makefile.in |
623 | @@ -82,7 +82,8 @@ host_triplet = @host@ |
624 | DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ |
625 | $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ |
626 | $(noinst_HEADERS) ChangeLog |
627 | -@MUDFLAP_TRUE@am__append_1 = -fmudflap |
628 | +@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) |
629 | +@MUDFLAP_TRUE@am__append_2 = -fmudflap |
630 | subdir = lib |
631 | ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 |
632 | am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ |
633 | @@ -198,6 +199,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ |
634 | INSTALL_SCRIPT = @INSTALL_SCRIPT@ |
635 | INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ |
636 | LDFLAGS = @LDFLAGS@ |
637 | +LD_AS_NEEDED = @LD_AS_NEEDED@ |
638 | LEX = @LEX@ |
639 | LEXLIB = @LEXLIB@ |
640 | LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ |
641 | @@ -229,6 +231,7 @@ SHELL = @SHELL@ |
642 | STRIP = @STRIP@ |
643 | USE_NLS = @USE_NLS@ |
644 | VERSION = @VERSION@ |
645 | +WEXTRA = @WEXTRA@ |
646 | XGETTEXT = @XGETTEXT@ |
647 | XGETTEXT_015 = @XGETTEXT_015@ |
648 | XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ |
649 | @@ -291,10 +294,9 @@ zip_LIBS = @zip_LIBS@ |
650 | AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. \ |
651 | -I$(srcdir)/../libelf |
652 | AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ |
653 | - $($(*F)_no_Werror),,-Werror) $(if \ |
654 | - $($(*F)_no_Wunused),,-Wunused -Wextra) $(if \ |
655 | + $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ |
656 | $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ |
657 | - $(am__append_1) -fpic |
658 | + $(am__append_1) $(am__append_2) -fpic |
659 | @MUDFLAP_FALSE@libmudflap = |
660 | @MUDFLAP_TRUE@libmudflap = -lmudflap |
661 | COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage $(no_mudflap.os),\ |
662 | --- elfutils/libasm/ChangeLog |
663 | +++ elfutils/libasm/ChangeLog |
664 | @@ -75,6 +75,11 @@ |
665 | * asm_error.c: Add new error ASM_E_IOERROR. |
666 | * libasmP.h: Add ASM_E_IOERROR definition. |
667 | |
668 | +2005-05-31 Roland McGrath <roland@redhat.com> |
669 | + |
670 | + * Makefile.am (WEXTRA): New variable, substituted by configure. |
671 | + (AM_CFLAGS): Use it in place of -Wextra. |
672 | + |
673 | 2005-02-15 Ulrich Drepper <drepper@redhat.com> |
674 | |
675 | * Makefile.am (AM_CFLAGS): Add -Wunused -Wextra -Wformat=2. |
676 | --- elfutils/libasm/Makefile.in |
677 | +++ elfutils/libasm/Makefile.in |
678 | @@ -83,10 +83,11 @@ host_triplet = @host@ |
679 | DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ |
680 | $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ |
681 | $(noinst_HEADERS) $(pkginclude_HEADERS) ChangeLog |
682 | -@MUDFLAP_TRUE@am__append_1 = -fmudflap |
683 | +@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) |
684 | +@MUDFLAP_TRUE@am__append_2 = -fmudflap |
685 | @MUDFLAP_FALSE@noinst_PROGRAMS = $(am__EXEEXT_1) |
686 | @MUDFLAP_TRUE@am_libasm_pic_a_OBJECTS = |
687 | -@MUDFLAP_FALSE@@USE_LOCKS_TRUE@am__append_2 = -lpthread |
688 | +@MUDFLAP_FALSE@@USE_LOCKS_TRUE@am__append_3 = -lpthread |
689 | subdir = libasm |
690 | ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 |
691 | am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ |
692 | @@ -250,6 +251,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ |
693 | INSTALL_SCRIPT = @INSTALL_SCRIPT@ |
694 | INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ |
695 | LDFLAGS = @LDFLAGS@ |
696 | +LD_AS_NEEDED = @LD_AS_NEEDED@ |
697 | LEX = @LEX@ |
698 | LEXLIB = @LEXLIB@ |
699 | LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ |
700 | @@ -281,6 +283,7 @@ SHELL = @SHELL@ |
701 | STRIP = @STRIP@ |
702 | USE_NLS = @USE_NLS@ |
703 | VERSION = 1 |
704 | +WEXTRA = @WEXTRA@ |
705 | XGETTEXT = @XGETTEXT@ |
706 | XGETTEXT_015 = @XGETTEXT_015@ |
707 | XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ |
708 | @@ -344,10 +347,9 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr |
709 | -I$(top_srcdir)/libelf -I$(top_srcdir)/libebl \ |
710 | -I$(top_srcdir)/libdw |
711 | AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ |
712 | - $($(*F)_no_Werror),,-Werror) $(if \ |
713 | - $($(*F)_no_Wunused),,-Wunused -Wextra) $(if \ |
714 | + $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ |
715 | $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ |
716 | - $(am__append_1) |
717 | + $(am__append_1) $(am__append_2) |
718 | @MUDFLAP_FALSE@libmudflap = |
719 | @MUDFLAP_TRUE@libmudflap = -lmudflap |
720 | COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage $(no_mudflap.os),\ |
721 | @@ -376,7 +378,7 @@ libasm_a_SOURCES = asm_begin.c asm_abort |
722 | |
723 | @MUDFLAP_FALSE@libasm_pic_a_SOURCES = |
724 | @MUDFLAP_FALSE@am_libasm_pic_a_OBJECTS = $(libasm_a_SOURCES:.c=.os) |
725 | -@MUDFLAP_FALSE@libasm_so_LDLIBS = $(am__append_2) |
726 | +@MUDFLAP_FALSE@libasm_so_LDLIBS = $(am__append_3) |
727 | @MUDFLAP_FALSE@libasm_so_SOURCES = |
728 | noinst_HEADERS = libasmP.h symbolhash.h |
729 | EXTRA_DIST = libasm.map |
730 | --- elfutils/libcpu/ChangeLog |
731 | +++ elfutils/libcpu/ChangeLog |
732 | @@ -47,6 +47,9 @@ |
733 | |
734 | 2009-01-23 Roland McGrath <roland@redhat.com> |
735 | |
736 | + * i386_disasm.c (i386_disasm): Add abort after assert-constant for old |
737 | + compilers that don't realize it's noreturn. |
738 | + |
739 | * Makefile.am (i386_parse_CFLAGS): Use quotes around command |
740 | substitution that can produce leading whitespace. |
741 | |
742 | @@ -376,6 +379,11 @@ |
743 | * defs/i386.doc: New file. |
744 | * defs/x86_64: New file. |
745 | |
746 | +2005-04-04 Roland McGrath <roland@redhat.com> |
747 | + |
748 | + * Makefile.am (WEXTRA): New variable, substituted by configure. |
749 | + (AM_CFLAGS): Use it instead of -Wextra. |
750 | + |
751 | 2005-02-15 Ulrich Drepper <drepper@redhat.com> |
752 | |
753 | * Makefile (AM_CFLAGS): Add -Wunused -Wextra -Wformat=2. |
754 | --- elfutils/libcpu/i386_disasm.c |
755 | +++ elfutils/libcpu/i386_disasm.c |
756 | @@ -822,6 +822,7 @@ i386_disasm (const uint8_t **startp, con |
757 | |
758 | default: |
759 | assert (! "INVALID not handled"); |
760 | + abort (); |
761 | } |
762 | } |
763 | else |
764 | --- elfutils/libcpu/Makefile.in |
765 | +++ elfutils/libcpu/Makefile.in |
766 | @@ -84,7 +84,8 @@ DIST_COMMON = $(top_srcdir)/config/eu.am |
767 | $(srcdir)/Makefile.am i386_lex.c i386_parse.c \ |
768 | $(top_srcdir)/config/depcomp $(top_srcdir)/config/ylwrap \ |
769 | $(am__noinst_HEADERS_DIST) ChangeLog |
770 | -@MUDFLAP_TRUE@am__append_1 = -fmudflap |
771 | +@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) |
772 | +@MUDFLAP_TRUE@am__append_2 = -fmudflap |
773 | @MAINTAINER_MODE_TRUE@noinst_PROGRAMS = i386_gendis$(EXEEXT) |
774 | subdir = libcpu |
775 | ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 |
776 | @@ -225,6 +226,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ |
777 | INSTALL_SCRIPT = @INSTALL_SCRIPT@ |
778 | INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ |
779 | LDFLAGS = @LDFLAGS@ |
780 | +LD_AS_NEEDED = @LD_AS_NEEDED@ |
781 | LEX = @LEX@ |
782 | LEXLIB = @LEXLIB@ |
783 | LEX_OUTPUT_ROOT = lex.$(<F:lex.l=) |
784 | @@ -256,6 +258,7 @@ SHELL = @SHELL@ |
785 | STRIP = @STRIP@ |
786 | USE_NLS = @USE_NLS@ |
787 | VERSION = @VERSION@ |
788 | +WEXTRA = @WEXTRA@ |
789 | XGETTEXT = @XGETTEXT@ |
790 | XGETTEXT_015 = @XGETTEXT_015@ |
791 | XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ |
792 | @@ -319,10 +322,9 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr |
793 | -I$(srcdir)/../libelf -I$(srcdir)/../libebl \ |
794 | -I$(srcdir)/../libdw -I$(srcdir)/../libasm |
795 | AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ |
796 | - $($(*F)_no_Werror),,-Werror) $(if \ |
797 | - $($(*F)_no_Wunused),,-Wunused -Wextra) $(if \ |
798 | + $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ |
799 | $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ |
800 | - $(am__append_1) -fpic -fdollars-in-identifiers |
801 | + $(am__append_1) $(am__append_2) -fpic -fdollars-in-identifiers |
802 | @MUDFLAP_FALSE@libmudflap = |
803 | @MUDFLAP_TRUE@libmudflap = -lmudflap |
804 | COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage $(no_mudflap.os),\ |
805 | --- elfutils/libdw/ChangeLog |
806 | +++ elfutils/libdw/ChangeLog |
807 | @@ -346,6 +346,10 @@ |
808 | |
809 | * Makefile.am (known-dwarf.h): Run gawk on config/known-dwarf.awk. |
810 | |
811 | +2011-07-20 Mark Wielaard <mjw@redhat.com> |
812 | + |
813 | + * dwarf_begin_elf.c: Add fallback for be64toh if not defined. |
814 | + |
815 | 2011-07-14 Mark Wielaard <mjw@redhat.com> |
816 | |
817 | * libdw.h (dwarf_offdie): Fix documentation to mention .debug_info. |
818 | @@ -705,6 +709,10 @@ |
819 | |
820 | * dwarf_hasattr_integrate.c: Integrate DW_AT_specification too. |
821 | |
822 | +2009-08-17 Roland McGrath <roland@redhat.com> |
823 | + |
824 | + * libdw.h: Disable extern inlines for GCC 4.2. |
825 | + |
826 | 2009-08-10 Roland McGrath <roland@redhat.com> |
827 | |
828 | * dwarf_getscopevar.c: Use dwarf_diename. |
829 | @@ -1473,6 +1481,11 @@ |
830 | |
831 | 2005-05-31 Roland McGrath <roland@redhat.com> |
832 | |
833 | + * Makefile.am (WEXTRA): New variable, substituted by configure. |
834 | + (AM_CFLAGS): Use it in place of -Wextra. |
835 | + |
836 | +2005-05-31 Roland McGrath <roland@redhat.com> |
837 | + |
838 | * dwarf_formref_die.c (dwarf_formref_die): Add CU header offset to |
839 | formref offset. |
840 | |
841 | --- elfutils/libdw/dwarf_begin_elf.c |
842 | +++ elfutils/libdw/dwarf_begin_elf.c |
843 | @@ -48,6 +48,14 @@ |
844 | #if USE_ZLIB |
845 | # include <endian.h> |
846 | # define crc32 loser_crc32 |
847 | +# ifndef be64toh |
848 | +# include <byteswap.h> |
849 | +# if __BYTE_ORDER == __LITTLE_ENDIAN |
850 | +# define be64toh(x) bswap_64 (x) |
851 | +# else |
852 | +# define be64toh(x) (x) |
853 | +# endif |
854 | +# endif |
855 | # include <zlib.h> |
856 | # undef crc32 |
857 | #endif |
858 | --- elfutils/libdw/libdw.h |
859 | +++ elfutils/libdw/libdw.h |
860 | @@ -879,7 +879,7 @@ extern Dwarf_OOM dwarf_new_oom_handler ( |
861 | |
862 | |
863 | /* Inline optimizations. */ |
864 | -#ifdef __OPTIMIZE__ |
865 | +#if defined __OPTIMIZE__ && !(__GNUC__ == 4 && __GNUC_MINOR__ == 2) |
866 | /* Return attribute code of given attribute. */ |
867 | __libdw_extern_inline unsigned int |
868 | dwarf_whatattr (Dwarf_Attribute *attr) |
869 | --- elfutils/libdw/Makefile.in |
870 | +++ elfutils/libdw/Makefile.in |
871 | @@ -84,8 +84,9 @@ DIST_COMMON = $(top_srcdir)/config/eu.am |
872 | $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ |
873 | $(include_HEADERS) $(noinst_HEADERS) $(pkginclude_HEADERS) \ |
874 | ChangeLog |
875 | -@MUDFLAP_TRUE@am__append_1 = -fmudflap |
876 | -@BUILD_STATIC_TRUE@am__append_2 = -fpic |
877 | +@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) |
878 | +@MUDFLAP_TRUE@am__append_2 = -fmudflap |
879 | +@BUILD_STATIC_TRUE@am__append_3 = -fpic |
880 | @MUDFLAP_FALSE@noinst_PROGRAMS = $(am__EXEEXT_1) |
881 | @MUDFLAP_TRUE@am_libdw_pic_a_OBJECTS = |
882 | subdir = libdw |
883 | @@ -295,6 +296,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ |
884 | INSTALL_SCRIPT = @INSTALL_SCRIPT@ |
885 | INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ |
886 | LDFLAGS = @LDFLAGS@ |
887 | +LD_AS_NEEDED = @LD_AS_NEEDED@ |
888 | LEX = @LEX@ |
889 | LEXLIB = @LEXLIB@ |
890 | LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ |
891 | @@ -326,6 +328,7 @@ SHELL = @SHELL@ |
892 | STRIP = @STRIP@ |
893 | USE_NLS = @USE_NLS@ |
894 | VERSION = 1 |
895 | +WEXTRA = @WEXTRA@ |
896 | XGETTEXT = @XGETTEXT@ |
897 | XGETTEXT_015 = @XGETTEXT_015@ |
898 | XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ |
899 | @@ -388,10 +391,9 @@ zip_LIBS = @zip_LIBS@ |
900 | AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. \ |
901 | -I$(srcdir)/../libelf |
902 | AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ |
903 | - $($(*F)_no_Werror),,-Werror) $(if \ |
904 | - $($(*F)_no_Wunused),,-Wunused -Wextra) $(if \ |
905 | + $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ |
906 | $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ |
907 | - $(am__append_1) $(am__append_2) |
908 | + $(am__append_1) $(am__append_2) $(am__append_3) |
909 | @MUDFLAP_FALSE@libmudflap = |
910 | @MUDFLAP_TRUE@libmudflap = -lmudflap |
911 | COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage $(no_mudflap.os),\ |
912 | --- elfutils/libdwfl/ChangeLog |
913 | +++ elfutils/libdwfl/ChangeLog |
914 | @@ -283,6 +283,21 @@ |
915 | (dwfl_module_addrsym) (i_to_symfile): New function. |
916 | (dwfl_module_addrsym) (search_table): Use it. |
917 | |
918 | +2013-11-09 Jan Kratochvil <jan.kratochvil@redhat.com> |
919 | + |
920 | + Older OS compatibility bits. |
921 | + * linux-core-attach.c (be64toh, le64toh, be32toh, le32toh): Provide |
922 | + fallbacks if not defined by system. |
923 | + |
924 | +2013-11-09 Jan Kratochvil <jan.kratochvil@redhat.com> |
925 | + |
926 | + Handle T-stopped detach for old kernels. |
927 | + * linux-pid-attach.c (struct pid_arg): New field stopped. |
928 | + (ptrace_attach): New parameter stoppedp. Set it appropriately. |
929 | + (pid_set_initial_registers): Pass the new field. |
930 | + (pid_thread_detach): Handle the case of STOPPED for old kernels. |
931 | + (__libdwfl_attach_state_for_pid): Initialize STOPPED. |
932 | + |
933 | 2013-11-07 Jan Kratochvil <jan.kratochvil@redhat.com> |
934 | Mark Wielaard <mjw@redhat.com> |
935 | |
936 | @@ -2048,6 +2063,11 @@ |
937 | |
938 | 2005-07-21 Roland McGrath <roland@redhat.com> |
939 | |
940 | + * Makefile.am (WEXTRA): New variable, substituted by configure. |
941 | + (AM_CFLAGS): Use it in place of -Wextra. |
942 | + |
943 | +2005-07-21 Roland McGrath <roland@redhat.com> |
944 | + |
945 | * Makefile.am (noinst_HEADERS): Add loc2c.c. |
946 | |
947 | * test2.c (main): Check sscanf result to quiet warning. |
948 | --- elfutils/libdwfl/linux-core-attach.c |
949 | +++ elfutils/libdwfl/linux-core-attach.c |
950 | @@ -29,6 +29,35 @@ |
951 | #include "libdwflP.h" |
952 | #include <fcntl.h> |
953 | #include "system.h" |
954 | +#include <endian.h> |
955 | +#include <byteswap.h> |
956 | +#if __BYTE_ORDER == __LITTLE_ENDIAN |
957 | +# ifndef be64toh |
958 | +# define be64toh(x) bswap_64 (x) |
959 | +# endif |
960 | +# ifndef le64toh |
961 | +# define le64toh(x) (x) |
962 | +# endif |
963 | +# ifndef be32toh |
964 | +# define be32toh(x) bswap_32 (x) |
965 | +# endif |
966 | +# ifndef le32toh |
967 | +# define le32toh(x) (x) |
968 | +# endif |
969 | +#else |
970 | +# ifndef be64toh |
971 | +# define be64toh(x) (x) |
972 | +# endif |
973 | +# ifndef le64toh |
974 | +# define le64toh(x) bswap_64 (x) |
975 | +# endif |
976 | +# ifndef be32toh |
977 | +# define be32toh(x) (x) |
978 | +# endif |
979 | +# ifndef le32toh |
980 | +# define le32toh(x) bswap_32 (x) |
981 | +# endif |
982 | +#endif |
983 | |
984 | #ifndef MIN |
985 | # define MIN(a, b) ((a) < (b) ? (a) : (b)) |
986 | --- elfutils/libdwfl/linux-pid-attach.c |
987 | +++ elfutils/libdwfl/linux-pid-attach.c |
988 | @@ -268,13 +268,24 @@ pid_thread_detach (Dwfl_Thread *thread, |
989 | pid_arg->tid_attached = 0; |
990 | if (! pid_arg->assume_ptrace_stopped) |
991 | { |
992 | + // Older kernels (tested kernel-2.6.18-348.12.1.el5.x86_64) need special |
993 | + // handling of the detachment to keep the process State: T (stopped). |
994 | + if (pid_arg->tid_was_stopped) |
995 | + syscall (__NR_tkill, tid, SIGSTOP); |
996 | /* This handling is needed only on older Linux kernels such as |
997 | - 2.6.32-358.23.2.el6.ppc64. Later kernels such as |
998 | - 3.11.7-200.fc19.x86_64 remember the T (stopped) state |
999 | - themselves and no longer need to pass SIGSTOP during |
1000 | - PTRACE_DETACH. */ |
1001 | + 2.6.32-358.23.2.el6.ppc64. Later kernels such as 3.11.7-200.fc19.x86_64 |
1002 | + remember the T (stopped) state themselves and no longer need to pass |
1003 | + SIGSTOP during PTRACE_DETACH. */ |
1004 | ptrace (PTRACE_DETACH, tid, NULL, |
1005 | (void *) (intptr_t) (pid_arg->tid_was_stopped ? SIGSTOP : 0)); |
1006 | + if (pid_arg->tid_was_stopped) |
1007 | + { |
1008 | + // Wait till the SIGSTOP settles down. |
1009 | + int i; |
1010 | + for (i = 0; i < 100000; i++) |
1011 | + if (linux_proc_pid_is_stopped (tid)) |
1012 | + break; |
1013 | + } |
1014 | } |
1015 | } |
1016 | |
1017 | --- elfutils/libdwfl/Makefile.in |
1018 | +++ elfutils/libdwfl/Makefile.in |
1019 | @@ -82,11 +82,12 @@ host_triplet = @host@ |
1020 | DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ |
1021 | $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ |
1022 | $(noinst_HEADERS) $(pkginclude_HEADERS) ChangeLog |
1023 | -@MUDFLAP_TRUE@am__append_1 = -fmudflap |
1024 | -@MUDFLAP_FALSE@am__append_2 = libdwfl_pic.a |
1025 | -@ZLIB_TRUE@am__append_3 = gzip.c |
1026 | -@BZLIB_TRUE@am__append_4 = bzip2.c |
1027 | -@LZMA_TRUE@am__append_5 = lzma.c |
1028 | +@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) |
1029 | +@MUDFLAP_TRUE@am__append_2 = -fmudflap |
1030 | +@MUDFLAP_FALSE@am__append_3 = libdwfl_pic.a |
1031 | +@ZLIB_TRUE@am__append_4 = gzip.c |
1032 | +@BZLIB_TRUE@am__append_5 = bzip2.c |
1033 | +@LZMA_TRUE@am__append_6 = lzma.c |
1034 | @MUDFLAP_TRUE@am_libdwfl_pic_a_OBJECTS = |
1035 | subdir = libdwfl |
1036 | ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 |
1037 | @@ -289,6 +290,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ |
1038 | INSTALL_SCRIPT = @INSTALL_SCRIPT@ |
1039 | INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ |
1040 | LDFLAGS = @LDFLAGS@ |
1041 | +LD_AS_NEEDED = @LD_AS_NEEDED@ |
1042 | LEX = @LEX@ |
1043 | LEXLIB = @LEXLIB@ |
1044 | LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ |
1045 | @@ -320,6 +322,7 @@ SHELL = @SHELL@ |
1046 | STRIP = @STRIP@ |
1047 | USE_NLS = @USE_NLS@ |
1048 | VERSION = 1 |
1049 | +WEXTRA = @WEXTRA@ |
1050 | XGETTEXT = @XGETTEXT@ |
1051 | XGETTEXT_015 = @XGETTEXT_015@ |
1052 | XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ |
1053 | @@ -383,10 +386,9 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr |
1054 | -I$(srcdir)/../libelf -I$(srcdir)/../libebl \ |
1055 | -I$(srcdir)/../libdw |
1056 | AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ |
1057 | - $($(*F)_no_Werror),,-Werror) $(if \ |
1058 | - $($(*F)_no_Wunused),,-Wunused -Wextra) $(if \ |
1059 | + $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ |
1060 | $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ |
1061 | - $(am__append_1) |
1062 | + $(am__append_1) $(am__append_2) |
1063 | @MUDFLAP_FALSE@libmudflap = |
1064 | @MUDFLAP_TRUE@libmudflap = -lmudflap |
1065 | COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage $(no_mudflap.os),\ |
1066 | @@ -394,7 +396,7 @@ COMPILE.os = $(filter-out -fprofile-arcs |
1067 | |
1068 | CLEANFILES = *.gcno *.gcda $(am_libdwfl_pic_a_OBJECTS) |
1069 | textrel_check = if $(READELF) -d $@ | fgrep -q TEXTREL; then exit 1; fi |
1070 | -noinst_LIBRARIES = libdwfl.a $(am__append_2) |
1071 | +noinst_LIBRARIES = libdwfl.a $(am__append_3) |
1072 | pkginclude_HEADERS = libdwfl.h |
1073 | libdwfl_a_SOURCES = dwfl_begin.c dwfl_end.c dwfl_error.c \ |
1074 | dwfl_version.c dwfl_module.c dwfl_report_elf.c relocate.c \ |
1075 | @@ -417,8 +419,8 @@ libdwfl_a_SOURCES = dwfl_begin.c dwfl_en |
1076 | dwfl_module_register_names.c dwfl_segment_report_module.c \ |
1077 | link_map.c core-file.c open.c image-header.c dwfl_frame.c \ |
1078 | frame_unwind.c dwfl_frame_pc.c linux-pid-attach.c \ |
1079 | - linux-core-attach.c dwfl_frame_regs.c $(am__append_3) \ |
1080 | - $(am__append_4) $(am__append_5) |
1081 | + linux-core-attach.c dwfl_frame_regs.c $(am__append_4) \ |
1082 | + $(am__append_5) $(am__append_6) |
1083 | @MUDFLAP_FALSE@libdwfl = $(libdw) |
1084 | @MUDFLAP_TRUE@libdwfl = libdwfl.a $(libdw) $(libebl) $(libelf) $(libeu) |
1085 | @MUDFLAP_FALSE@libdw = ../libdw/libdw.so |
1086 | --- elfutils/libebl/ChangeLog |
1087 | +++ elfutils/libebl/ChangeLog |
1088 | @@ -738,6 +738,11 @@ |
1089 | * Makefile.am (libebl_*_so_SOURCES): Set to $(*_SRCS) so dependency |
1090 | tracking works right. |
1091 | |
1092 | +2005-05-31 Roland McGrath <roland@redhat.com> |
1093 | + |
1094 | + * Makefile.am (WEXTRA): New variable, substituted by configure. |
1095 | + (AM_CFLAGS): Use it in place of -Wextra. |
1096 | + |
1097 | 2005-05-21 Ulrich Drepper <drepper@redhat.com> |
1098 | |
1099 | * libebl_x86_64.map: Add x86_64_core_note. |
1100 | --- elfutils/libebl/Makefile.in |
1101 | +++ elfutils/libebl/Makefile.in |
1102 | @@ -82,7 +82,8 @@ host_triplet = @host@ |
1103 | DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ |
1104 | $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ |
1105 | $(noinst_HEADERS) $(pkginclude_HEADERS) ChangeLog |
1106 | -@MUDFLAP_TRUE@am__append_1 = -fmudflap |
1107 | +@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) |
1108 | +@MUDFLAP_TRUE@am__append_2 = -fmudflap |
1109 | subdir = libebl |
1110 | ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 |
1111 | am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ |
1112 | @@ -249,6 +250,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ |
1113 | INSTALL_SCRIPT = @INSTALL_SCRIPT@ |
1114 | INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ |
1115 | LDFLAGS = @LDFLAGS@ |
1116 | +LD_AS_NEEDED = @LD_AS_NEEDED@ |
1117 | LEX = @LEX@ |
1118 | LEXLIB = @LEXLIB@ |
1119 | LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ |
1120 | @@ -280,6 +282,7 @@ SHELL = @SHELL@ |
1121 | STRIP = @STRIP@ |
1122 | USE_NLS = @USE_NLS@ |
1123 | VERSION = 1 |
1124 | +WEXTRA = @WEXTRA@ |
1125 | XGETTEXT = @XGETTEXT@ |
1126 | XGETTEXT_015 = @XGETTEXT_015@ |
1127 | XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ |
1128 | @@ -343,10 +346,9 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr |
1129 | -I$(srcdir)/../libelf -I$(srcdir)/../libdw \ |
1130 | -I$(srcdir)/../libasm |
1131 | AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ |
1132 | - $($(*F)_no_Werror),,-Werror) $(if \ |
1133 | - $($(*F)_no_Wunused),,-Wunused -Wextra) $(if \ |
1134 | + $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ |
1135 | $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ |
1136 | - $(am__append_1) -fpic |
1137 | + $(am__append_1) $(am__append_2) -fpic |
1138 | @MUDFLAP_FALSE@libmudflap = |
1139 | @MUDFLAP_TRUE@libmudflap = -lmudflap |
1140 | COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage $(no_mudflap.os),\ |
1141 | --- elfutils/libelf/ChangeLog |
1142 | +++ elfutils/libelf/ChangeLog |
1143 | @@ -85,6 +85,11 @@ |
1144 | |
1145 | * elf-knowledge.h (SECTION_STRIP_P): Remove < SHT_NUM check. |
1146 | |
1147 | +2011-03-10 Roland McGrath <roland@redhat.com> |
1148 | + |
1149 | + * gnuhash_xlate.h (elf_cvt_gnuhash): Avoid post-increment in bswap_32 |
1150 | + argument, since some implementations are buggy macros. |
1151 | + |
1152 | 2011-02-26 Mark Wielaard <mjw@redhat.com> |
1153 | |
1154 | * elf_end.c (elf_end): Call rwlock_unlock before rwlock_fini. |
1155 | @@ -762,6 +767,11 @@ |
1156 | |
1157 | * elf.h: Update from glibc. |
1158 | |
1159 | +2005-05-31 Roland McGrath <roland@redhat.com> |
1160 | + |
1161 | + * Makefile.am (WEXTRA): New variable, substituted by configure. |
1162 | + (AM_CFLAGS): Use it in place of -Wextra. |
1163 | + |
1164 | 2005-05-08 Roland McGrath <roland@redhat.com> |
1165 | |
1166 | * elf_begin.c (read_file) [_MUDFLAP]: Don't use mmap for now. |
1167 | --- elfutils/libelf/common.h |
1168 | +++ elfutils/libelf/common.h |
1169 | @@ -139,7 +139,7 @@ libelf_release_all (Elf *elf) |
1170 | (Var) = (sizeof (Var) == 1 \ |
1171 | ? (unsigned char) (Var) \ |
1172 | : (sizeof (Var) == 2 \ |
1173 | - ? bswap_16 (Var) \ |
1174 | + ? (unsigned short int) bswap_16 (Var) \ |
1175 | : (sizeof (Var) == 4 \ |
1176 | ? bswap_32 (Var) \ |
1177 | : bswap_64 (Var)))) |
1178 | @@ -148,7 +148,7 @@ libelf_release_all (Elf *elf) |
1179 | (Dst) = (sizeof (Var) == 1 \ |
1180 | ? (unsigned char) (Var) \ |
1181 | : (sizeof (Var) == 2 \ |
1182 | - ? bswap_16 (Var) \ |
1183 | + ? (unsigned short int) bswap_16 (Var) \ |
1184 | : (sizeof (Var) == 4 \ |
1185 | ? bswap_32 (Var) \ |
1186 | : bswap_64 (Var)))) |
1187 | --- elfutils/libelf/gnuhash_xlate.h |
1188 | +++ elfutils/libelf/gnuhash_xlate.h |
1189 | @@ -1,5 +1,5 @@ |
1190 | /* Conversion functions for versioning information. |
1191 | - Copyright (C) 2006, 2007 Red Hat, Inc. |
1192 | + Copyright (C) 2006-2011 Red Hat, Inc. |
1193 | This file is part of elfutils. |
1194 | Written by Ulrich Drepper <drepper@redhat.com>, 2006. |
1195 | |
1196 | @@ -68,7 +68,9 @@ elf_cvt_gnuhash (void *dest, const void |
1197 | dest32 = (Elf32_Word *) &dest64[bitmask_words]; |
1198 | while (len >= 4) |
1199 | { |
1200 | - *dest32++ = bswap_32 (*src32++); |
1201 | + *dest32 = bswap_32 (*src32); |
1202 | + ++dest32; |
1203 | + ++src32; |
1204 | len -= 4; |
1205 | } |
1206 | } |
1207 | --- elfutils/libelf/Makefile.in |
1208 | +++ elfutils/libelf/Makefile.in |
1209 | @@ -84,11 +84,12 @@ DIST_COMMON = $(top_srcdir)/config/eu.am |
1210 | $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ |
1211 | $(include_HEADERS) $(noinst_HEADERS) $(pkginclude_HEADERS) \ |
1212 | ChangeLog |
1213 | -@MUDFLAP_TRUE@am__append_1 = -fmudflap |
1214 | -@BUILD_STATIC_TRUE@am__append_2 = -fpic |
1215 | +@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) |
1216 | +@MUDFLAP_TRUE@am__append_2 = -fmudflap |
1217 | +@BUILD_STATIC_TRUE@am__append_3 = -fpic |
1218 | @MUDFLAP_FALSE@noinst_PROGRAMS = $(am__EXEEXT_1) |
1219 | @MUDFLAP_TRUE@am_libelf_pic_a_OBJECTS = |
1220 | -@MUDFLAP_FALSE@@USE_LOCKS_TRUE@am__append_3 = -lpthread |
1221 | +@MUDFLAP_FALSE@@USE_LOCKS_TRUE@am__append_4 = -lpthread |
1222 | subdir = libelf |
1223 | ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 |
1224 | am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ |
1225 | @@ -293,6 +294,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ |
1226 | INSTALL_SCRIPT = @INSTALL_SCRIPT@ |
1227 | INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ |
1228 | LDFLAGS = @LDFLAGS@ |
1229 | +LD_AS_NEEDED = @LD_AS_NEEDED@ |
1230 | LEX = @LEX@ |
1231 | LEXLIB = @LEXLIB@ |
1232 | LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ |
1233 | @@ -324,6 +326,7 @@ SHELL = @SHELL@ |
1234 | STRIP = @STRIP@ |
1235 | USE_NLS = @USE_NLS@ |
1236 | VERSION = 1 |
1237 | +WEXTRA = @WEXTRA@ |
1238 | XGETTEXT = @XGETTEXT@ |
1239 | XGETTEXT_015 = @XGETTEXT_015@ |
1240 | XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ |
1241 | @@ -385,10 +388,9 @@ top_srcdir = @top_srcdir@ |
1242 | zip_LIBS = @zip_LIBS@ |
1243 | AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. |
1244 | AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ |
1245 | - $($(*F)_no_Werror),,-Werror) $(if \ |
1246 | - $($(*F)_no_Wunused),,-Wunused -Wextra) $(if \ |
1247 | + $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ |
1248 | $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ |
1249 | - $(am__append_1) $(am__append_2) |
1250 | + $(am__append_1) $(am__append_2) $(am__append_3) |
1251 | @MUDFLAP_FALSE@libmudflap = |
1252 | @MUDFLAP_TRUE@libmudflap = -lmudflap |
1253 | COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage $(no_mudflap.os),\ |
1254 | @@ -453,7 +455,7 @@ libelf_a_SOURCES = elf_version.c elf_has |
1255 | |
1256 | @MUDFLAP_FALSE@libelf_pic_a_SOURCES = |
1257 | @MUDFLAP_FALSE@am_libelf_pic_a_OBJECTS = $(libelf_a_SOURCES:.c=.os) |
1258 | -@MUDFLAP_FALSE@libelf_so_LDLIBS = $(am__append_3) |
1259 | +@MUDFLAP_FALSE@libelf_so_LDLIBS = $(am__append_4) |
1260 | @MUDFLAP_FALSE@libelf_so_SOURCES = |
1261 | noinst_HEADERS = elf.h abstract.h common.h exttypes.h gelf_xlate.h libelfP.h \ |
1262 | version_xlate.h gnuhash_xlate.h note_xlate.h dl-hash.h |
1263 | --- elfutils/m4/Makefile.in |
1264 | +++ elfutils/m4/Makefile.in |
1265 | @@ -145,6 +145,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ |
1266 | INSTALL_SCRIPT = @INSTALL_SCRIPT@ |
1267 | INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ |
1268 | LDFLAGS = @LDFLAGS@ |
1269 | +LD_AS_NEEDED = @LD_AS_NEEDED@ |
1270 | LEX = @LEX@ |
1271 | LEXLIB = @LEXLIB@ |
1272 | LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ |
1273 | @@ -176,6 +177,7 @@ SHELL = @SHELL@ |
1274 | STRIP = @STRIP@ |
1275 | USE_NLS = @USE_NLS@ |
1276 | VERSION = @VERSION@ |
1277 | +WEXTRA = @WEXTRA@ |
1278 | XGETTEXT = @XGETTEXT@ |
1279 | XGETTEXT_015 = @XGETTEXT_015@ |
1280 | XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ |
1281 | --- elfutils/Makefile.in |
1282 | +++ elfutils/Makefile.in |
1283 | @@ -263,6 +263,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ |
1284 | INSTALL_SCRIPT = @INSTALL_SCRIPT@ |
1285 | INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ |
1286 | LDFLAGS = @LDFLAGS@ |
1287 | +LD_AS_NEEDED = @LD_AS_NEEDED@ |
1288 | LEX = @LEX@ |
1289 | LEXLIB = @LEXLIB@ |
1290 | LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ |
1291 | @@ -294,6 +295,7 @@ SHELL = @SHELL@ |
1292 | STRIP = @STRIP@ |
1293 | USE_NLS = @USE_NLS@ |
1294 | VERSION = @VERSION@ |
1295 | +WEXTRA = @WEXTRA@ |
1296 | XGETTEXT = @XGETTEXT@ |
1297 | XGETTEXT_015 = @XGETTEXT_015@ |
1298 | XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ |
1299 | --- elfutils/src/addr2line.c |
1300 | +++ elfutils/src/addr2line.c |
1301 | @@ -540,10 +540,10 @@ handle_address (const char *string, Dwfl |
1302 | bool parsed = false; |
1303 | int i, j; |
1304 | char *name = NULL; |
1305 | - if (sscanf (string, "(%m[^)])%" PRIiMAX "%n", &name, &addr, &i) == 2 |
1306 | + if (sscanf (string, "(%a[^)])%" PRIiMAX "%n", &name, &addr, &i) == 2 |
1307 | && string[i] == '\0') |
1308 | parsed = adjust_to_section (name, &addr, dwfl); |
1309 | - switch (sscanf (string, "%m[^-+]%n%" PRIiMAX "%n", &name, &i, &addr, &j)) |
1310 | + switch (sscanf (string, "%a[^-+]%n%" PRIiMAX "%n", &name, &i, &addr, &j)) |
1311 | { |
1312 | default: |
1313 | break; |
1314 | --- elfutils/src/ChangeLog |
1315 | +++ elfutils/src/ChangeLog |
1316 | @@ -964,8 +964,16 @@ |
1317 | * readelf.c (attr_callback): Use print_block only when we don't use |
1318 | print_ops. |
1319 | |
1320 | +2009-08-17 Roland McGrath <roland@redhat.com> |
1321 | + |
1322 | + * ld.h: Disable extern inlines for GCC 4.2. |
1323 | + |
1324 | 2009-08-14 Roland McGrath <roland@redhat.com> |
1325 | |
1326 | + * strings.c (read_block): Conditionalize posix_fadvise use |
1327 | + on [POSIX_FADV_SEQUENTIAL]. |
1328 | + From Petr Salinger <Petr.Salinger@seznam.cz>. |
1329 | + |
1330 | * ar.c (do_oper_extract): Use pathconf instead of statfs. |
1331 | |
1332 | 2009-08-01 Ulrich Drepper <drepper@redhat.com> |
1333 | @@ -1129,6 +1137,8 @@ |
1334 | * readelf.c (print_debug_frame_section): Use t instead of j formats |
1335 | for ptrdiff_t OFFSET. |
1336 | |
1337 | + * addr2line.c (handle_address): Use %a instead of %m for compatibility. |
1338 | + |
1339 | 2009-01-21 Ulrich Drepper <drepper@redhat.com> |
1340 | |
1341 | * elflint.c (check_program_header): Fix typo in .eh_frame_hdr section |
1342 | @@ -1312,6 +1322,11 @@ |
1343 | that matches its PT_LOAD's p_flags &~ PF_W. On sparc, PF_X really |
1344 | is valid in RELRO. |
1345 | |
1346 | +2008-03-01 Roland McGrath <roland@redhat.com> |
1347 | + |
1348 | + * readelf.c (dump_archive_index): Tweak portability hack |
1349 | + to match [__GNUC__ < 4] too. |
1350 | + |
1351 | 2008-02-29 Roland McGrath <roland@redhat.com> |
1352 | |
1353 | * readelf.c (print_attributes): Add a cast. |
1354 | @@ -1563,6 +1578,8 @@ |
1355 | |
1356 | * readelf.c (hex_dump): Fix rounding error in whitespace calculation. |
1357 | |
1358 | + * Makefile.am (readelf_no_Werror): New variable. |
1359 | + |
1360 | 2007-10-15 Roland McGrath <roland@redhat.com> |
1361 | |
1362 | * make-debug-archive.in: New file. |
1363 | @@ -2002,6 +2019,10 @@ |
1364 | * elflint.c (valid_e_machine): Add EM_ALPHA. |
1365 | Reported by Christian Aichinger <Greek0@gmx.net>. |
1366 | |
1367 | + * strings.c (map_file): Define POSIX_MADV_SEQUENTIAL to |
1368 | + MADV_SEQUENTIAL if undefined. Don't call posix_madvise |
1369 | + if neither is defined. |
1370 | + |
1371 | 2006-08-08 Ulrich Drepper <drepper@redhat.com> |
1372 | |
1373 | * elflint.c (check_dynamic): Don't require DT_HASH for DT_SYMTAB. |
1374 | @@ -2078,6 +2099,10 @@ |
1375 | * Makefile.am: Add hacks to create dependency files for non-generic |
1376 | linker. |
1377 | |
1378 | +2006-04-05 Roland McGrath <roland@redhat.com> |
1379 | + |
1380 | + * strings.c (MAP_POPULATE): Define to 0 if undefined. |
1381 | + |
1382 | 2006-06-12 Ulrich Drepper <drepper@redhat.com> |
1383 | |
1384 | * ldgeneric.c (ld_generic_generate_sections): Don't create .interp |
1385 | @@ -2426,6 +2451,11 @@ |
1386 | * readelf.c (print_debug_loc_section): Fix indentation for larger |
1387 | address size. |
1388 | |
1389 | +2005-05-31 Roland McGrath <roland@redhat.com> |
1390 | + |
1391 | + * Makefile.am (WEXTRA): New variable, substituted by configure. |
1392 | + (AM_CFLAGS): Use it in place of -Wextra. |
1393 | + |
1394 | 2005-05-30 Roland McGrath <roland@redhat.com> |
1395 | |
1396 | * readelf.c (print_debug_line_section): Print section offset of each |
1397 | --- elfutils/src/findtextrel.c |
1398 | +++ elfutils/src/findtextrel.c |
1399 | @@ -496,7 +496,11 @@ ptrcompare (const void *p1, const void * |
1400 | |
1401 | |
1402 | static void |
1403 | -check_rel (size_t nsegments, struct segments segments[nsegments], |
1404 | +check_rel (size_t nsegments, struct segments segments[ |
1405 | +#if __GNUC__ >= 4 |
1406 | + nsegments |
1407 | +#endif |
1408 | + ], |
1409 | GElf_Addr addr, Elf *elf, Elf_Scn *symscn, Dwarf *dw, |
1410 | const char *fname, bool more_than_one, void **knownsrcs) |
1411 | { |
1412 | --- elfutils/src/ld.h |
1413 | +++ elfutils/src/ld.h |
1414 | @@ -1114,6 +1114,7 @@ extern bool dynamically_linked_p (void); |
1415 | |
1416 | /* Checked whether the symbol is undefined and referenced from a DSO. */ |
1417 | extern bool linked_from_dso_p (struct scninfo *scninfo, size_t symidx); |
1418 | +#if defined __OPTIMIZE__ && !(__GNUC__ == 4 && __GNUC_MINOR__ == 2) |
1419 | #ifdef __GNUC_STDC_INLINE__ |
1420 | __attribute__ ((__gnu_inline__)) |
1421 | #endif |
1422 | @@ -1131,5 +1132,6 @@ linked_from_dso_p (struct scninfo *scnin |
1423 | |
1424 | return sym->defined && sym->in_dso; |
1425 | } |
1426 | +#endif /* Optimizing and not GCC 4.2. */ |
1427 | |
1428 | #endif /* ld.h */ |
1429 | --- elfutils/src/Makefile.am |
1430 | +++ elfutils/src/Makefile.am |
1431 | @@ -95,6 +95,9 @@ addr2line_no_Wformat = yes |
1432 | # XXX While the file is not finished, don't warn about this |
1433 | ldgeneric_no_Wunused = yes |
1434 | |
1435 | +# Buggy old compilers. |
1436 | +readelf_no_Werror = yes |
1437 | + |
1438 | readelf_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) $(libmudflap) -ldl |
1439 | nm_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) $(libmudflap) -ldl \ |
1440 | $(demanglelib) |
1441 | --- elfutils/src/Makefile.in |
1442 | +++ elfutils/src/Makefile.in |
1443 | @@ -85,7 +85,8 @@ DIST_COMMON = $(top_srcdir)/config/eu.am |
1444 | $(srcdir)/Makefile.am ldlex.c ldscript.c \ |
1445 | $(top_srcdir)/config/depcomp $(top_srcdir)/config/ylwrap \ |
1446 | $(noinst_HEADERS) ChangeLog |
1447 | -@MUDFLAP_TRUE@am__append_1 = -fmudflap |
1448 | +@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) |
1449 | +@MUDFLAP_TRUE@am__append_2 = -fmudflap |
1450 | bin_PROGRAMS = readelf$(EXEEXT) nm$(EXEEXT) size$(EXEEXT) \ |
1451 | strip$(EXEEXT) ld$(EXEEXT) elflint$(EXEEXT) \ |
1452 | findtextrel$(EXEEXT) addr2line$(EXEEXT) elfcmp$(EXEEXT) \ |
1453 | @@ -94,9 +95,9 @@ bin_PROGRAMS = readelf$(EXEEXT) nm$(EXEE |
1454 | @NATIVE_LD_FALSE@noinst_PROGRAMS = $(am__EXEEXT_1) |
1455 | # We never build this library but we need to get the dependency files |
1456 | # of all the linker backends that might be used in a non-generic linker. |
1457 | -@NEVER_TRUE@am__append_2 = libdummy.a |
1458 | +@NEVER_TRUE@am__append_3 = libdummy.a |
1459 | # -ldl is always needed for libebl. |
1460 | -@NATIVE_LD_TRUE@am__append_3 = libld_elf.a |
1461 | +@NATIVE_LD_TRUE@am__append_4 = libld_elf.a |
1462 | @NATIVE_LD_TRUE@am_libld_elf_i386_pic_a_OBJECTS = |
1463 | subdir = src |
1464 | ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 |
1465 | @@ -164,7 +165,7 @@ am_ld_OBJECTS = ld.$(OBJEXT) ldgeneric.$ |
1466 | versionhash.$(OBJEXT) |
1467 | ld_OBJECTS = $(am_ld_OBJECTS) |
1468 | ld_DEPENDENCIES = $(libebl) $(libelf) $(libeu) $(am__DEPENDENCIES_1) \ |
1469 | - $(am__append_3) |
1470 | + $(am__append_4) |
1471 | ld_LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(ld_LDFLAGS) $(LDFLAGS) -o \ |
1472 | $@ |
1473 | am_libld_elf_i386_so_OBJECTS = |
1474 | @@ -347,6 +348,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ |
1475 | INSTALL_SCRIPT = @INSTALL_SCRIPT@ |
1476 | INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ |
1477 | LDFLAGS = @LDFLAGS@ |
1478 | +LD_AS_NEEDED = @LD_AS_NEEDED@ |
1479 | LEX = @LEX@ |
1480 | LEXLIB = @LEXLIB@ |
1481 | LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ |
1482 | @@ -378,6 +380,7 @@ SHELL = @SHELL@ |
1483 | STRIP = @STRIP@ |
1484 | USE_NLS = @USE_NLS@ |
1485 | VERSION = @VERSION@ |
1486 | +WEXTRA = @WEXTRA@ |
1487 | XGETTEXT = @XGETTEXT@ |
1488 | XGETTEXT_015 = @XGETTEXT_015@ |
1489 | XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ |
1490 | @@ -442,10 +445,9 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr |
1491 | -I$(srcdir)/../libdw -I$(srcdir)/../libdwfl \ |
1492 | -I$(srcdir)/../libasm |
1493 | AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ |
1494 | - $($(*F)_no_Werror),,-Werror) $(if \ |
1495 | - $($(*F)_no_Wunused),,-Wunused -Wextra) $(if \ |
1496 | + $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ |
1497 | $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ |
1498 | - $(am__append_1) |
1499 | + $(am__append_1) $(am__append_2) |
1500 | @MUDFLAP_FALSE@libmudflap = |
1501 | @MUDFLAP_TRUE@libmudflap = -lmudflap |
1502 | COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage $(no_mudflap.os),\ |
1503 | @@ -461,8 +463,8 @@ AM_LFLAGS = -Pld -olex.yy.c |
1504 | native_ld = @native_ld@ |
1505 | ld_dsos = libld_elf_i386_pic.a |
1506 | @NATIVE_LD_FALSE@noinst_LIBRARIES = libld_elf.a libar.a $(ld_dsos) \ |
1507 | -@NATIVE_LD_FALSE@ $(am__append_2) |
1508 | -@NATIVE_LD_TRUE@noinst_LIBRARIES = libld_elf.a libar.a $(am__append_2) |
1509 | +@NATIVE_LD_FALSE@ $(am__append_3) |
1510 | +@NATIVE_LD_TRUE@noinst_LIBRARIES = libld_elf.a libar.a $(am__append_3) |
1511 | @NATIVE_LD_TRUE@native_ld_cflags = -DBASE_ELF_NAME=elf_$(base_cpu) |
1512 | @NEVER_TRUE@libdummy_a_SOURCES = i386_ld.c |
1513 | ld_SOURCES = ld.c ldgeneric.c ldlex.l ldscript.y symbolhash.c sectionhash.c \ |
1514 | @@ -491,6 +493,9 @@ strings_no_Wformat = yes |
1515 | addr2line_no_Wformat = yes |
1516 | # XXX While the file is not finished, don't warn about this |
1517 | ldgeneric_no_Wunused = yes |
1518 | + |
1519 | +# Buggy old compilers. |
1520 | +readelf_no_Werror = yes |
1521 | readelf_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) $(libmudflap) -ldl |
1522 | nm_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) $(libmudflap) -ldl \ |
1523 | $(demanglelib) |
1524 | @@ -498,7 +503,7 @@ nm_LDADD = $(libdw) $(libebl) $(libelf) |
1525 | size_LDADD = $(libelf) $(libeu) $(libmudflap) |
1526 | strip_LDADD = $(libebl) $(libelf) $(libeu) $(libmudflap) -ldl |
1527 | ld_LDADD = $(libebl) $(libelf) $(libeu) $(libmudflap) -ldl \ |
1528 | - $(am__append_3) |
1529 | + $(am__append_4) |
1530 | ld_LDFLAGS = -rdynamic |
1531 | elflint_LDADD = $(libebl) $(libelf) $(libeu) $(libmudflap) -ldl |
1532 | findtextrel_LDADD = $(libdw) $(libelf) $(libmudflap) |
1533 | --- elfutils/src/readelf.c |
1534 | +++ elfutils/src/readelf.c |
1535 | @@ -4171,10 +4171,12 @@ listptr_base (struct listptr *p) |
1536 | return base; |
1537 | } |
1538 | |
1539 | +static const char *listptr_name; |
1540 | + |
1541 | static int |
1542 | -compare_listptr (const void *a, const void *b, void *arg) |
1543 | +compare_listptr (const void *a, const void *b) |
1544 | { |
1545 | - const char *name = arg; |
1546 | + const char *const name = listptr_name; |
1547 | struct listptr *p1 = (void *) a; |
1548 | struct listptr *p2 = (void *) b; |
1549 | |
1550 | @@ -4263,8 +4265,11 @@ static void |
1551 | sort_listptr (struct listptr_table *table, const char *name) |
1552 | { |
1553 | if (table->n > 0) |
1554 | - qsort_r (table->table, table->n, sizeof table->table[0], |
1555 | - &compare_listptr, (void *) name); |
1556 | + { |
1557 | + listptr_name = name; |
1558 | + qsort (table->table, table->n, sizeof table->table[0], |
1559 | + &compare_listptr); |
1560 | + } |
1561 | } |
1562 | |
1563 | static bool |
1564 | @@ -9151,7 +9156,7 @@ dump_archive_index (Elf *elf, const char |
1565 | if (unlikely (elf_rand (elf, as_off) == 0) |
1566 | || unlikely ((subelf = elf_begin (-1, ELF_C_READ_MMAP, elf)) |
1567 | == NULL)) |
1568 | -#if __GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ < 7) |
1569 | +#if __GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ < 7) || __GNUC__ < 4 |
1570 | while (1) |
1571 | #endif |
1572 | error (EXIT_FAILURE, 0, |
1573 | --- elfutils/src/strings.c |
1574 | +++ elfutils/src/strings.c |
1575 | @@ -43,6 +43,10 @@ |
1576 | |
1577 | #include <system.h> |
1578 | |
1579 | +#ifndef MAP_POPULATE |
1580 | +# define MAP_POPULATE 0 |
1581 | +#endif |
1582 | + |
1583 | |
1584 | /* Prototypes of local functions. */ |
1585 | static int read_fd (int fd, const char *fname, off64_t fdlen); |
1586 | @@ -483,8 +487,13 @@ map_file (int fd, off64_t start_off, off |
1587 | fd, start_off); |
1588 | if (mem != MAP_FAILED) |
1589 | { |
1590 | +#if !defined POSIX_MADV_SEQUENTIAL && defined MADV_SEQUENTIAL |
1591 | +# define POSIX_MADV_SEQUENTIAL MADV_SEQUENTIAL |
1592 | +#endif |
1593 | +#ifdef POSIX_MADV_SEQUENTIAL |
1594 | /* We will go through the mapping sequentially. */ |
1595 | (void) posix_madvise (mem, map_size, POSIX_MADV_SEQUENTIAL); |
1596 | +#endif |
1597 | break; |
1598 | } |
1599 | if (errno != EINVAL && errno != ENOMEM) |
1600 | @@ -576,9 +585,11 @@ read_block (int fd, const char *fname, o |
1601 | elfmap_off = from & ~(ps - 1); |
1602 | elfmap_base = elfmap = map_file (fd, elfmap_off, fdlen, &elfmap_size); |
1603 | |
1604 | +#ifdef POSIX_FADV_SEQUENTIAL |
1605 | if (unlikely (elfmap == MAP_FAILED)) |
1606 | /* Let the kernel know we are going to read everything in sequence. */ |
1607 | (void) posix_fadvise (fd, 0, 0, POSIX_FADV_SEQUENTIAL); |
1608 | +#endif |
1609 | } |
1610 | |
1611 | if (unlikely (elfmap == MAP_FAILED)) |
1612 | --- elfutils/src/strip.c |
1613 | +++ elfutils/src/strip.c |
1614 | @@ -45,6 +45,12 @@ |
1615 | #include <libebl.h> |
1616 | #include <system.h> |
1617 | |
1618 | +#ifdef HAVE_FUTIMES |
1619 | +# define FUTIMES(fd, fname, tvp) futimes (fd, tvp) |
1620 | +#else |
1621 | +# define FUTIMES(fd, fname, tvp) utimes (fname, tvp) |
1622 | +#endif |
1623 | + |
1624 | typedef uint8_t GElf_Byte; |
1625 | |
1626 | /* Name and version of program. */ |
1627 | @@ -318,8 +324,18 @@ process_file (const char *fname) |
1628 | |
1629 | /* If we have to preserve the timestamp, we need it in the |
1630 | format utimes() understands. */ |
1631 | +#ifdef HAVE_STRUCT_STAT_ST_ATIM |
1632 | TIMESPEC_TO_TIMEVAL (&tv[0], &pre_st.st_atim); |
1633 | +#else |
1634 | + tv[0].tv_sec = pre_st.st_atime; |
1635 | + tv[0].tv_usec = 0; |
1636 | +#endif |
1637 | +#ifdef HAVE_STRUCT_STAT_ST_MTIM |
1638 | TIMESPEC_TO_TIMEVAL (&tv[1], &pre_st.st_mtim); |
1639 | +#else |
1640 | + tv[1].tv_sec = pre_st.st_atime; |
1641 | + tv[1].tv_usec = 0; |
1642 | +#endif |
1643 | } |
1644 | |
1645 | /* Open the file. */ |
1646 | @@ -2060,7 +2076,7 @@ while computing checksum for debug infor |
1647 | /* If requested, preserve the timestamp. */ |
1648 | if (tvp != NULL) |
1649 | { |
1650 | - if (futimes (fd, tvp) != 0) |
1651 | + if (FUTIMES (fd, output_fname, tvp) != 0) |
1652 | { |
1653 | error (0, errno, gettext ("\ |
1654 | cannot set access and modification date of '%s'"), |
1655 | @@ -2117,7 +2133,7 @@ handle_ar (int fd, Elf *elf, const char |
1656 | |
1657 | if (tvp != NULL) |
1658 | { |
1659 | - if (unlikely (futimes (fd, tvp) != 0)) |
1660 | + if (unlikely (FUTIMES (fd, fname, tvp) != 0)) |
1661 | { |
1662 | error (0, errno, gettext ("\ |
1663 | cannot set access and modification date of '%s'"), fname); |
1664 | --- elfutils/tests/backtrace.c |
1665 | +++ elfutils/tests/backtrace.c |
1666 | @@ -36,6 +36,7 @@ |
1667 | #include <fcntl.h> |
1668 | #include <string.h> |
1669 | #include <argp.h> |
1670 | +#include <sys/syscall.h> |
1671 | #include ELFUTILS_HEADER(dwfl) |
1672 | |
1673 | static int |
1674 | --- elfutils/tests/ChangeLog |
1675 | +++ elfutils/tests/ChangeLog |
1676 | @@ -123,6 +123,13 @@ |
1677 | |
1678 | 2013-12-02 Jan Kratochvil <jan.kratochvil@redhat.com> |
1679 | |
1680 | + Handle T-stopped detach for old kernels. |
1681 | + * backtrace.c: Include sys/syscall.h. |
1682 | + (linux_proc_pid_is_stopped): New function. |
1683 | + (ptrace_detach_stopped): Handle old kernels. |
1684 | + |
1685 | +2013-12-02 Jan Kratochvil <jan.kratochvil@redhat.com> |
1686 | + |
1687 | * Makefile.am (check_PROGRAMS): Add backtrace, backtrace-child, |
1688 | backtrace-data and backtrace-dwarf. |
1689 | (BUILT_SOURCES, clean-local, backtrace-child-biarch): New. |
1690 | @@ -987,6 +994,8 @@ |
1691 | |
1692 | 2008-01-21 Roland McGrath <roland@redhat.com> |
1693 | |
1694 | + * line2addr.c (main): Revert last change. |
1695 | + |
1696 | * testfile45.S.bz2: Add tests for cltq, cqto. |
1697 | * testfile45.expect.bz2: Adjust. |
1698 | |
1699 | @@ -1695,6 +1704,11 @@ |
1700 | * Makefile.am (TESTS): Add run-elflint-test.sh. |
1701 | (EXTRA_DIST): Add run-elflint-test.sh and testfile18.bz2. |
1702 | |
1703 | +2005-05-31 Roland McGrath <roland@redhat.com> |
1704 | + |
1705 | + * Makefile.am (WEXTRA): New variable, substituted by configure. |
1706 | + (AM_CFLAGS): Use it in place of -Wextra. |
1707 | + |
1708 | 2005-05-24 Ulrich Drepper <drepper@redhat.com> |
1709 | |
1710 | * get-files.c (main): Use correct format specifier. |
1711 | --- elfutils/tests/line2addr.c |
1712 | +++ elfutils/tests/line2addr.c |
1713 | @@ -124,7 +124,7 @@ main (int argc, char *argv[]) |
1714 | { |
1715 | struct args a = { .arg = argv[cnt] }; |
1716 | |
1717 | - switch (sscanf (a.arg, "%m[^:]:%d", &a.file, &a.line)) |
1718 | + switch (sscanf (a.arg, "%a[^:]:%d", &a.file, &a.line)) |
1719 | { |
1720 | default: |
1721 | case 0: |
1722 | --- elfutils/tests/Makefile.in |
1723 | +++ elfutils/tests/Makefile.in |
1724 | @@ -80,14 +80,15 @@ host_triplet = @host@ |
1725 | DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ |
1726 | $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ |
1727 | $(top_srcdir)/config/test-driver ChangeLog |
1728 | -@MUDFLAP_TRUE@am__append_1 = -fmudflap |
1729 | -@STANDALONE_FALSE@am__append_2 = -I$(top_srcdir)/libasm -I$(top_srcdir)/libdw \ |
1730 | +@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) |
1731 | +@MUDFLAP_TRUE@am__append_2 = -fmudflap |
1732 | +@STANDALONE_FALSE@am__append_3 = -I$(top_srcdir)/libasm -I$(top_srcdir)/libdw \ |
1733 | @STANDALONE_FALSE@ -I$(top_srcdir)/libdwfl \ |
1734 | @STANDALONE_FALSE@ -I$(top_srcdir)/libebl -I$(top_srcdir)/libelf \ |
1735 | @STANDALONE_FALSE@ -I$(top_srcdir)/lib -I.. |
1736 | |
1737 | -@STANDALONE_FALSE@am__append_3 = -Wl,-rpath-link,../libasm:../libdw:../libelf |
1738 | -@TESTS_RPATH_TRUE@am__append_4 = -Wl,-rpath,$(BUILD_RPATH) |
1739 | +@STANDALONE_FALSE@am__append_4 = -Wl,-rpath-link,../libasm:../libdw:../libelf |
1740 | +@TESTS_RPATH_TRUE@am__append_5 = -Wl,-rpath,$(BUILD_RPATH) |
1741 | check_PROGRAMS = arextract$(EXEEXT) arsymtest$(EXEEXT) \ |
1742 | newfile$(EXEEXT) saridx$(EXEEXT) scnnames$(EXEEXT) \ |
1743 | sectiondump$(EXEEXT) showptable$(EXEEXT) update1$(EXEEXT) \ |
1744 | @@ -111,7 +112,7 @@ check_PROGRAMS = arextract$(EXEEXT) arsy |
1745 | varlocs$(EXEEXT) backtrace$(EXEEXT) backtrace-child$(EXEEXT) \ |
1746 | backtrace-data$(EXEEXT) backtrace-dwarf$(EXEEXT) \ |
1747 | $(am__EXEEXT_1) $(am__EXEEXT_2) $(am__EXEEXT_4) |
1748 | -@BIARCH_TRUE@am__append_5 = backtrace-child-biarch |
1749 | +@BIARCH_TRUE@am__append_6 = backtrace-child-biarch |
1750 | TESTS = run-arextract.sh run-arsymtest.sh newfile$(EXEEXT) \ |
1751 | test-nlist$(EXEEXT) update1$(EXEEXT) update2$(EXEEXT) \ |
1752 | update3$(EXEEXT) update4$(EXEEXT) run-show-die-info.sh \ |
1753 | @@ -151,14 +152,14 @@ TESTS = run-arextract.sh run-arsymtest.s |
1754 | run-backtrace-native-core-biarch.sh \ |
1755 | run-backtrace-core-x86_64.sh run-backtrace-core-i386.sh \ |
1756 | run-backtrace-core-ppc.sh run-backtrace-core-s390x.sh \ |
1757 | - run-backtrace-core-s390.sh $(am__EXEEXT_2) $(am__append_8) \ |
1758 | - $(am__EXEEXT_4) $(am__append_11) |
1759 | -@STANDALONE_FALSE@am__append_6 = msg_tst md5-sha1-test |
1760 | + run-backtrace-core-s390.sh $(am__EXEEXT_2) $(am__append_9) \ |
1761 | + $(am__EXEEXT_4) $(am__append_12) |
1762 | @STANDALONE_FALSE@am__append_7 = msg_tst md5-sha1-test |
1763 | -@LZMA_TRUE@am__append_8 = run-readelf-s.sh run-dwflsyms.sh |
1764 | -@HAVE_LIBASM_TRUE@am__append_9 = $(asm_TESTS) |
1765 | +@STANDALONE_FALSE@am__append_8 = msg_tst md5-sha1-test |
1766 | +@LZMA_TRUE@am__append_9 = run-readelf-s.sh run-dwflsyms.sh |
1767 | @HAVE_LIBASM_TRUE@am__append_10 = $(asm_TESTS) |
1768 | -@ENABLE_DWZ_TRUE@am__append_11 = run-readelf-dwz-multi.sh run-allfcts-multi.sh |
1769 | +@HAVE_LIBASM_TRUE@am__append_11 = $(asm_TESTS) |
1770 | +@ENABLE_DWZ_TRUE@am__append_12 = run-readelf-dwz-multi.sh run-allfcts-multi.sh |
1771 | subdir = tests |
1772 | ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 |
1773 | am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ |
1774 | @@ -780,6 +781,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ |
1775 | INSTALL_SCRIPT = @INSTALL_SCRIPT@ |
1776 | INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ |
1777 | LDFLAGS = @LDFLAGS@ |
1778 | +LD_AS_NEEDED = @LD_AS_NEEDED@ |
1779 | LEX = @LEX@ |
1780 | LEXLIB = @LEXLIB@ |
1781 | LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ |
1782 | @@ -811,6 +813,7 @@ SHELL = @SHELL@ |
1783 | STRIP = @STRIP@ |
1784 | USE_NLS = @USE_NLS@ |
1785 | VERSION = @VERSION@ |
1786 | +WEXTRA = @WEXTRA@ |
1787 | XGETTEXT = @XGETTEXT@ |
1788 | XGETTEXT_015 = @XGETTEXT_015@ |
1789 | XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ |
1790 | @@ -870,12 +873,11 @@ top_build_prefix = @top_build_prefix@ |
1791 | top_builddir = @top_builddir@ |
1792 | top_srcdir = @top_srcdir@ |
1793 | zip_LIBS = @zip_LIBS@ |
1794 | -AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. $(am__append_2) |
1795 | +AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. $(am__append_3) |
1796 | AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ |
1797 | - $($(*F)_no_Werror),,-Werror) $(if \ |
1798 | - $($(*F)_no_Wunused),,-Wunused -Wextra) $(if \ |
1799 | + $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ |
1800 | $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ |
1801 | - $(am__append_1) |
1802 | + $(am__append_1) $(am__append_2) |
1803 | @MUDFLAP_FALSE@libmudflap = |
1804 | @MUDFLAP_TRUE@libmudflap = -lmudflap |
1805 | COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage $(no_mudflap.os),\ |
1806 | @@ -885,7 +887,7 @@ CLEANFILES = *.gcno *.gcda |
1807 | textrel_check = if $(READELF) -d $@ | fgrep -q TEXTREL; then exit 1; fi |
1808 | @MUDFLAP_FALSE@BUILD_RPATH = \$$ORIGIN/../libasm:\$$ORIGIN/../libdw:\$$ORIGIN/../backends:\$$ORIGIN/../libelf |
1809 | @MUDFLAP_TRUE@BUILD_RPATH = \$$ORIGIN/../backends |
1810 | -AM_LDFLAGS = $(am__append_3) $(am__append_4) |
1811 | +AM_LDFLAGS = $(am__append_4) $(am__append_5) |
1812 | @TESTS_RPATH_FALSE@tests_rpath = no |
1813 | @TESTS_RPATH_TRUE@tests_rpath = yes |
1814 | asm_TESTS = asm-tst1 asm-tst2 asm-tst3 asm-tst4 asm-tst5 \ |