View | Details | Raw Unified | Return to bug 242053 | Differences between
and this patch

Collapse All | Expand All

(-)Makefile (+2 lines)
Lines 23-28 Link Here
23
23
24
CONFLICTS=	libbfd-[0-9]*
24
CONFLICTS=	libbfd-[0-9]*
25
25
26
EXTRA_PATCHES=	${PATCHDIR}/libcft-failures.diff:-p1
27
26
#TEST_DEPENDS+=	runtest:misc/dejagnu
28
#TEST_DEPENDS+=	runtest:misc/dejagnu
27
TEST_TARGET=	check
29
TEST_TARGET=	check
28
30
(-)files/libcft-failures.diff (+1728 lines)
Line 0 Link Here
1
Have a squash of the commits that should land on master and then the
2
2.33 branch once I finish testing them here, to fix the port.  I'm
3
afraid it's a patch -p1: it's a bit tricky to generate a -p0 if you're
4
starting from a git repo. I hope this'll do.
5
6
This is a squash of the following patches, some of which are already
7
upstream, some of which are not yet, with a few simple conflict
8
resolutions and reautoconfs for 2.33 and with changelog changes removed:
9
10
libctf: support platforms with separate libintl
11
libctf: add some missing #includes.
12
libctf, elfcpp, gold: do not assume that <byteswap.h> contains bswap_*
13
libctf: work with compilers not supporting GNU C attributes
14
libiberty, include, libctf: Use bsearch_r to avoid nonportable __thread
15
libctf: mark swap.h inline functions as static
16
libctf: make it compile for old glibc
17
18
diff -x .git -x autom4te.cache -durN binutils.orig/elfcpp/elfcpp_swap.h binutils/elfcpp/elfcpp_swap.h
19
--- binutils.orig/elfcpp/elfcpp_swap.h	2019-12-16 13:05:01.030039000 +0000
20
+++ binutils/elfcpp/elfcpp_swap.h	2019-12-16 14:31:06.256848000 +0000
21
@@ -46,15 +46,19 @@
22
 
23
 #ifdef HAVE_BYTESWAP_H
24
 #include <byteswap.h>
25
-#else
26
+#endif // defined(HAVE_BYTESWAP_H)
27
+
28
 // Provide our own versions of the byteswap functions.
29
-inline uint16_t
30
+#if !HAVE_DECL_BSWAP_16
31
+static inline uint16_t
32
 bswap_16(uint16_t v)
33
 {
34
   return ((v >> 8) & 0xff) | ((v & 0xff) << 8);
35
 }
36
+#endif // !HAVE_DECL_BSWAP16
37
 
38
-inline uint32_t
39
+#if !HAVE_DECL_BSWAP_32
40
+static inline uint32_t
41
 bswap_32(uint32_t v)
42
 {
43
   return (  ((v & 0xff000000) >> 24)
44
@@ -62,8 +66,10 @@
45
 	  | ((v & 0x0000ff00) <<  8)
46
 	  | ((v & 0x000000ff) << 24));
47
 }
48
+#endif // !HAVE_DECL_BSWAP32
49
 
50
-inline uint64_t
51
+#if !HAVE_DECL_BSWAP_64
52
+static inline uint64_t
53
 bswap_64(uint64_t v)
54
 {
55
   return (  ((v & 0xff00000000000000ULL) >> 56)
56
@@ -75,7 +81,7 @@
57
 	  | ((v & 0x000000000000ff00ULL) << 40)
58
 	  | ((v & 0x00000000000000ffULL) << 56));
59
 }
60
-#endif // !defined(HAVE_BYTESWAP_H)
61
+#endif // !HAVE_DECL_BSWAP64
62
 
63
 // gcc 4.3 and later provides __builtin_bswap32 and __builtin_bswap64.
64
 
65
diff -x .git -x autom4te.cache -durN binutils.orig/gold/config.in binutils/gold/config.in
66
--- binutils.orig/gold/config.in	2019-12-16 13:05:01.030429000 +0000
67
+++ binutils/gold/config.in	2019-12-16 14:31:06.257181000 +0000
68
@@ -52,6 +52,18 @@
69
    don't. */
70
 #undef HAVE_DECL_BASENAME
71
 
72
+/* Define to 1 if you have the declaration of `bswap_16', and to 0 if you
73
+   don't. */
74
+#undef HAVE_DECL_BSWAP_16
75
+
76
+/* Define to 1 if you have the declaration of `bswap_32', and to 0 if you
77
+   don't. */
78
+#undef HAVE_DECL_BSWAP_32
79
+
80
+/* Define to 1 if you have the declaration of `bswap_64', and to 0 if you
81
+   don't. */
82
+#undef HAVE_DECL_BSWAP_64
83
+
84
 /* Define to 1 if you have the declaration of `ffs', and to 0 if you don't. */
85
 #undef HAVE_DECL_FFS
86
 
87
diff -x .git -x autom4te.cache -durN binutils.orig/gold/configure binutils/gold/configure
88
--- binutils.orig/gold/configure	2019-12-16 13:05:01.035440000 +0000
89
+++ binutils/gold/configure	2019-12-16 14:31:06.259631000 +0000
90
@@ -2167,6 +2167,52 @@
91
 
92
 } # ac_fn_cxx_check_header_mongrel
93
 
94
+# ac_fn_cxx_check_decl LINENO SYMBOL VAR INCLUDES
95
+# -----------------------------------------------
96
+# Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR
97
+# accordingly.
98
+ac_fn_cxx_check_decl ()
99
+{
100
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
101
+  as_decl_name=`echo $2|sed 's/ *(.*//'`
102
+  as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'`
103
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5
104
+$as_echo_n "checking whether $as_decl_name is declared... " >&6; }
105
+if eval \${$3+:} false; then :
106
+  $as_echo_n "(cached) " >&6
107
+else
108
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
109
+/* end confdefs.h.  */
110
+$4
111
+int
112
+main ()
113
+{
114
+#ifndef $as_decl_name
115
+#ifdef __cplusplus
116
+  (void) $as_decl_use;
117
+#else
118
+  (void) $as_decl_name;
119
+#endif
120
+#endif
121
+
122
+  ;
123
+  return 0;
124
+}
125
+_ACEOF
126
+if ac_fn_cxx_try_compile "$LINENO"; then :
127
+  eval "$3=yes"
128
+else
129
+  eval "$3=no"
130
+fi
131
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
132
+fi
133
+eval ac_res=\$$3
134
+	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
135
+$as_echo "$ac_res" >&6; }
136
+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
137
+
138
+} # ac_fn_cxx_check_decl
139
+
140
 # ac_fn_cxx_try_link LINENO
141
 # -------------------------
142
 # Try to link conftest.$ac_ext, and return whether this succeeded.
143
@@ -2279,52 +2325,6 @@
144
   eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
145
 
146
 } # ac_fn_cxx_check_func
147
-
148
-# ac_fn_cxx_check_decl LINENO SYMBOL VAR INCLUDES
149
-# -----------------------------------------------
150
-# Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR
151
-# accordingly.
152
-ac_fn_cxx_check_decl ()
153
-{
154
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
155
-  as_decl_name=`echo $2|sed 's/ *(.*//'`
156
-  as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'`
157
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5
158
-$as_echo_n "checking whether $as_decl_name is declared... " >&6; }
159
-if eval \${$3+:} false; then :
160
-  $as_echo_n "(cached) " >&6
161
-else
162
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
163
-/* end confdefs.h.  */
164
-$4
165
-int
166
-main ()
167
-{
168
-#ifndef $as_decl_name
169
-#ifdef __cplusplus
170
-  (void) $as_decl_use;
171
-#else
172
-  (void) $as_decl_name;
173
-#endif
174
-#endif
175
-
176
-  ;
177
-  return 0;
178
-}
179
-_ACEOF
180
-if ac_fn_cxx_try_compile "$LINENO"; then :
181
-  eval "$3=yes"
182
-else
183
-  eval "$3=no"
184
-fi
185
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
186
-fi
187
-eval ac_res=\$$3
188
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
189
-$as_echo "$ac_res" >&6; }
190
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
191
-
192
-} # ac_fn_cxx_check_decl
193
 cat >config.log <<_ACEOF
194
 This file contains any messages produced by compilers while
195
 running configure, to aid debugging if configure makes a mistake.
196
@@ -9778,6 +9778,41 @@
197
 fi
198
 
199
 done
200
+
201
+
202
+ac_fn_cxx_check_decl "$LINENO" "bswap_16" "ac_cv_have_decl_bswap_16" "#include <byteswap.h>
203
+"
204
+if test "x$ac_cv_have_decl_bswap_16" = xyes; then :
205
+  ac_have_decl=1
206
+else
207
+  ac_have_decl=0
208
+fi
209
+
210
+cat >>confdefs.h <<_ACEOF
211
+#define HAVE_DECL_BSWAP_16 $ac_have_decl
212
+_ACEOF
213
+ac_fn_cxx_check_decl "$LINENO" "bswap_32" "ac_cv_have_decl_bswap_32" "#include <byteswap.h>
214
+"
215
+if test "x$ac_cv_have_decl_bswap_32" = xyes; then :
216
+  ac_have_decl=1
217
+else
218
+  ac_have_decl=0
219
+fi
220
+
221
+cat >>confdefs.h <<_ACEOF
222
+#define HAVE_DECL_BSWAP_32 $ac_have_decl
223
+_ACEOF
224
+ac_fn_cxx_check_decl "$LINENO" "bswap_64" "ac_cv_have_decl_bswap_64" "#include <byteswap.h>
225
+"
226
+if test "x$ac_cv_have_decl_bswap_64" = xyes; then :
227
+  ac_have_decl=1
228
+else
229
+  ac_have_decl=0
230
+fi
231
+
232
+cat >>confdefs.h <<_ACEOF
233
+#define HAVE_DECL_BSWAP_64 $ac_have_decl
234
+_ACEOF
235
 
236
 
237
 for ac_header in windows.h
238
diff -x .git -x autom4te.cache -durN binutils.orig/gold/configure.ac binutils/gold/configure.ac
239
--- binutils.orig/gold/configure.ac	2019-12-16 13:05:01.035714000 +0000
240
+++ binutils/gold/configure.ac	2019-12-16 14:31:06.259853000 +0000
241
@@ -602,6 +602,9 @@
242
 AC_CHECK_HEADERS(ext/hash_map ext/hash_set)
243
 AC_CHECK_HEADERS(byteswap.h)
244
 
245
+dnl Check for bswap_{16,32,64}
246
+AC_CHECK_DECLS([bswap_16, bswap_32, bswap_64], [], [], [[#include <byteswap.h>]])
247
+
248
 dnl When plugins enabled dynamic loader interface is required. Check headers
249
 dnl which may provide this interface. Add the necessary library to link.
250
 AC_CHECK_HEADERS(windows.h)
251
diff -x .git -x autom4te.cache -durN binutils.orig/include/libiberty.h binutils/include/libiberty.h
252
--- binutils.orig/include/libiberty.h	2019-12-16 13:05:01.036032000 +0000
253
+++ binutils/include/libiberty.h	2019-12-16 14:31:06.260125000 +0000
254
@@ -637,6 +637,13 @@
255
 
256
 extern int pwait (int, int *, int);
257
 
258
+/* Like bsearch, but takes and passes on an argument like qsort_r.  */
259
+
260
+extern void *bsearch_r (register const void *, const void *,
261
+			size_t, register size_t,
262
+			register int (*)(const void *, const void *, void *),
263
+			void *);
264
+
265
 #if defined(HAVE_DECL_ASPRINTF) && !HAVE_DECL_ASPRINTF
266
 /* Like sprintf but provides a pointer to malloc'd storage, which must
267
    be freed by the caller.  */
268
diff -x .git -x autom4te.cache -durN binutils.orig/libctf/Makefile.in binutils/libctf/Makefile.in
269
--- binutils.orig/libctf/Makefile.in	2019-12-16 12:41:49.155077000 +0000
270
+++ binutils/libctf/Makefile.in	2019-12-16 14:33:27.386326000 +0000
271
@@ -1,7 +1,7 @@
272
-# Makefile.in generated by automake 1.15.1 from Makefile.am.
273
+# Makefile.in generated by automake 1.16.1 from Makefile.am.
274
 # @configure_input@
275
 
276
-# Copyright (C) 1994-2017 Free Software Foundation, Inc.
277
+# Copyright (C) 1994-2018 Free Software Foundation, Inc.
278
 
279
 # This Makefile.in is free software; the Free Software Foundation
280
 # gives unlimited permission to copy and/or distribute it,
281
@@ -108,6 +108,7 @@
282
 subdir = .
283
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
284
 am__aclocal_m4_deps = $(top_srcdir)/../config/depstand.m4 \
285
+	$(top_srcdir)/../config/gettext-sister.m4 \
286
 	$(top_srcdir)/../config/lead-dot.m4 \
287
 	$(top_srcdir)/../config/override.m4 \
288
 	$(top_srcdir)/../config/warnings.m4 \
289
@@ -156,7 +157,15 @@
290
 am__v_at_1 = 
291
 DEFAULT_INCLUDES = -I.@am__isrc@
292
 depcomp = $(SHELL) $(top_srcdir)/../depcomp
293
-am__depfiles_maybe = depfiles
294
+am__maybe_remake_depfiles = depfiles
295
+am__depfiles_remade = ./$(DEPDIR)/ctf-archive.Po \
296
+	./$(DEPDIR)/ctf-create.Po ./$(DEPDIR)/ctf-decl.Po \
297
+	./$(DEPDIR)/ctf-dump.Po ./$(DEPDIR)/ctf-error.Po \
298
+	./$(DEPDIR)/ctf-hash.Po ./$(DEPDIR)/ctf-labels.Po \
299
+	./$(DEPDIR)/ctf-lookup.Po ./$(DEPDIR)/ctf-open-bfd.Po \
300
+	./$(DEPDIR)/ctf-open.Po ./$(DEPDIR)/ctf-qsort_r.Po \
301
+	./$(DEPDIR)/ctf-string.Po ./$(DEPDIR)/ctf-subr.Po \
302
+	./$(DEPDIR)/ctf-types.Po ./$(DEPDIR)/ctf-util.Po
303
 am__mv = mv -f
304
 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
305
 	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
306
@@ -229,12 +238,15 @@
307
 AUTOHEADER = @AUTOHEADER@
308
 AUTOMAKE = @AUTOMAKE@
309
 AWK = @AWK@
310
+CATALOGS = @CATALOGS@
311
+CATOBJEXT = @CATOBJEXT@
312
 CC = @CC@
313
 CCDEPMODE = @CCDEPMODE@
314
 CFLAGS = @CFLAGS@
315
 CPP = @CPP@
316
 CPPFLAGS = @CPPFLAGS@
317
 CYGPATH_W = @CYGPATH_W@
318
+DATADIRNAME = @DATADIRNAME@
319
 DEFS = @DEFS@
320
 DEPDIR = @DEPDIR@
321
 ECHO_C = @ECHO_C@
322
@@ -242,13 +254,19 @@
323
 ECHO_T = @ECHO_T@
324
 EGREP = @EGREP@
325
 EXEEXT = @EXEEXT@
326
+GENCAT = @GENCAT@
327
+GMSGFMT = @GMSGFMT@
328
 GREP = @GREP@
329
+INCINTL = @INCINTL@
330
 INSTALL = @INSTALL@
331
 INSTALL_DATA = @INSTALL_DATA@
332
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
333
 INSTALL_SCRIPT = @INSTALL_SCRIPT@
334
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
335
+INSTOBJEXT = @INSTOBJEXT@
336
 LDFLAGS = @LDFLAGS@
337
+LIBINTL = @LIBINTL@
338
+LIBINTL_DEP = @LIBINTL_DEP@
339
 LIBOBJS = @LIBOBJS@
340
 LIBS = @LIBS@
341
 LTLIBOBJS = @LTLIBOBJS@
342
@@ -264,13 +282,16 @@
343
 PACKAGE_URL = @PACKAGE_URL@
344
 PACKAGE_VERSION = @PACKAGE_VERSION@
345
 PATH_SEPARATOR = @PATH_SEPARATOR@
346
+POSUB = @POSUB@
347
 RANLIB = @RANLIB@
348
 SET_MAKE = @SET_MAKE@
349
 SHELL = @SHELL@
350
 STRIP = @STRIP@
351
+USE_NLS = @USE_NLS@
352
 VERSION = @VERSION@
353
 WARN_PEDANTIC = @WARN_PEDANTIC@
354
 WERROR = @WERROR@
355
+XGETTEXT = @XGETTEXT@
356
 abs_builddir = @abs_builddir@
357
 abs_srcdir = @abs_srcdir@
358
 abs_top_builddir = @abs_top_builddir@
359
@@ -360,8 +381,8 @@
360
 	    echo ' $(SHELL) ./config.status'; \
361
 	    $(SHELL) ./config.status;; \
362
 	  *) \
363
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
364
-	    cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
365
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles)'; \
366
+	    cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles);; \
367
 	esac;
368
 
369
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
370
@@ -402,22 +423,28 @@
371
 distclean-compile:
372
 	-rm -f *.tab.c
373
 
374
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-archive.Po@am__quote@
375
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-create.Po@am__quote@
376
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-decl.Po@am__quote@
377
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-dump.Po@am__quote@
378
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-error.Po@am__quote@
379
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-hash.Po@am__quote@
380
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-labels.Po@am__quote@
381
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-lookup.Po@am__quote@
382
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-open-bfd.Po@am__quote@
383
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-open.Po@am__quote@
384
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-qsort_r.Po@am__quote@
385
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-string.Po@am__quote@
386
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-subr.Po@am__quote@
387
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-types.Po@am__quote@
388
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-util.Po@am__quote@
389
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-archive.Po@am__quote@ # am--include-marker
390
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-create.Po@am__quote@ # am--include-marker
391
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-decl.Po@am__quote@ # am--include-marker
392
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-dump.Po@am__quote@ # am--include-marker
393
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-error.Po@am__quote@ # am--include-marker
394
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-hash.Po@am__quote@ # am--include-marker
395
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-labels.Po@am__quote@ # am--include-marker
396
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-lookup.Po@am__quote@ # am--include-marker
397
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-open-bfd.Po@am__quote@ # am--include-marker
398
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-open.Po@am__quote@ # am--include-marker
399
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-qsort_r.Po@am__quote@ # am--include-marker
400
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-string.Po@am__quote@ # am--include-marker
401
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-subr.Po@am__quote@ # am--include-marker
402
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-types.Po@am__quote@ # am--include-marker
403
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctf-util.Po@am__quote@ # am--include-marker
404
 
405
+$(am__depfiles_remade):
406
+	@$(MKDIR_P) $(@D)
407
+	@echo '# dummy' >$@-t && $(am__mv) $@-t $@
408
+
409
+am--depfiles: $(am__depfiles_remade)
410
+
411
 .c.o:
412
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
413
 @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
414
@@ -491,7 +518,10 @@
415
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
416
 	-rm -f cscope.out cscope.in.out cscope.po.out cscope.files
417
 
418
-distdir: $(DISTFILES)
419
+distdir: $(BUILT_SOURCES)
420
+	$(MAKE) $(AM_MAKEFLAGS) distdir-am
421
+
422
+distdir-am: $(DISTFILES)
423
 	$(am__remove_distdir)
424
 	test -d "$(distdir)" || mkdir "$(distdir)"
425
 	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
426
@@ -694,7 +724,21 @@
427
 
428
 distclean: distclean-am
429
 	-rm -f $(am__CONFIG_DISTCLEAN_FILES)
430
-	-rm -rf ./$(DEPDIR)
431
+		-rm -f ./$(DEPDIR)/ctf-archive.Po
432
+	-rm -f ./$(DEPDIR)/ctf-create.Po
433
+	-rm -f ./$(DEPDIR)/ctf-decl.Po
434
+	-rm -f ./$(DEPDIR)/ctf-dump.Po
435
+	-rm -f ./$(DEPDIR)/ctf-error.Po
436
+	-rm -f ./$(DEPDIR)/ctf-hash.Po
437
+	-rm -f ./$(DEPDIR)/ctf-labels.Po
438
+	-rm -f ./$(DEPDIR)/ctf-lookup.Po
439
+	-rm -f ./$(DEPDIR)/ctf-open-bfd.Po
440
+	-rm -f ./$(DEPDIR)/ctf-open.Po
441
+	-rm -f ./$(DEPDIR)/ctf-qsort_r.Po
442
+	-rm -f ./$(DEPDIR)/ctf-string.Po
443
+	-rm -f ./$(DEPDIR)/ctf-subr.Po
444
+	-rm -f ./$(DEPDIR)/ctf-types.Po
445
+	-rm -f ./$(DEPDIR)/ctf-util.Po
446
 	-rm -f Makefile
447
 distclean-am: clean-am distclean-compile distclean-generic \
448
 	distclean-hdr distclean-tags
449
@@ -742,7 +786,21 @@
450
 maintainer-clean: maintainer-clean-am
451
 	-rm -f $(am__CONFIG_DISTCLEAN_FILES)
452
 	-rm -rf $(top_srcdir)/autom4te.cache
453
-	-rm -rf ./$(DEPDIR)
454
+		-rm -f ./$(DEPDIR)/ctf-archive.Po
455
+	-rm -f ./$(DEPDIR)/ctf-create.Po
456
+	-rm -f ./$(DEPDIR)/ctf-decl.Po
457
+	-rm -f ./$(DEPDIR)/ctf-dump.Po
458
+	-rm -f ./$(DEPDIR)/ctf-error.Po
459
+	-rm -f ./$(DEPDIR)/ctf-hash.Po
460
+	-rm -f ./$(DEPDIR)/ctf-labels.Po
461
+	-rm -f ./$(DEPDIR)/ctf-lookup.Po
462
+	-rm -f ./$(DEPDIR)/ctf-open-bfd.Po
463
+	-rm -f ./$(DEPDIR)/ctf-open.Po
464
+	-rm -f ./$(DEPDIR)/ctf-qsort_r.Po
465
+	-rm -f ./$(DEPDIR)/ctf-string.Po
466
+	-rm -f ./$(DEPDIR)/ctf-subr.Po
467
+	-rm -f ./$(DEPDIR)/ctf-types.Po
468
+	-rm -f ./$(DEPDIR)/ctf-util.Po
469
 	-rm -f Makefile
470
 maintainer-clean-am: distclean-am maintainer-clean-generic
471
 
472
@@ -762,21 +820,21 @@
473
 
474
 .MAKE: all install-am install-strip
475
 
476
-.PHONY: CTAGS GTAGS TAGS all all-am am--refresh check check-am clean \
477
-	clean-cscope clean-generic clean-noinstLIBRARIES cscope \
478
-	cscopelist-am ctags ctags-am dist dist-all dist-bzip2 \
479
-	dist-gzip dist-lzip dist-shar dist-tarZ dist-xz dist-zip \
480
-	distcheck distclean distclean-compile distclean-generic \
481
-	distclean-hdr distclean-tags distcleancheck distdir \
482
-	distuninstallcheck dvi dvi-am html html-am info info-am \
483
-	install install-am install-data install-data-am install-dvi \
484
-	install-dvi-am install-exec install-exec-am install-html \
485
-	install-html-am install-info install-info-am install-man \
486
-	install-pdf install-pdf-am install-ps install-ps-am \
487
-	install-strip installcheck installcheck-am installdirs \
488
-	maintainer-clean maintainer-clean-generic mostlyclean \
489
-	mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \
490
-	tags tags-am uninstall uninstall-am
491
+.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles am--refresh check \
492
+	check-am clean clean-cscope clean-generic \
493
+	clean-noinstLIBRARIES cscope cscopelist-am ctags ctags-am dist \
494
+	dist-all dist-bzip2 dist-gzip dist-lzip dist-shar dist-tarZ \
495
+	dist-xz dist-zip distcheck distclean distclean-compile \
496
+	distclean-generic distclean-hdr distclean-tags distcleancheck \
497
+	distdir distuninstallcheck dvi dvi-am html html-am info \
498
+	info-am install install-am install-data install-data-am \
499
+	install-dvi install-dvi-am install-exec install-exec-am \
500
+	install-html install-html-am install-info install-info-am \
501
+	install-man install-pdf install-pdf-am install-ps \
502
+	install-ps-am install-strip installcheck installcheck-am \
503
+	installdirs maintainer-clean maintainer-clean-generic \
504
+	mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
505
+	ps ps-am tags tags-am uninstall uninstall-am
506
 
507
 .PRECIOUS: Makefile
508
 
509
diff -x .git -x autom4te.cache -durN binutils.orig/libctf/aclocal.m4 binutils/libctf/aclocal.m4
510
--- binutils.orig/libctf/aclocal.m4	2019-12-16 12:41:49.155502000 +0000
511
+++ binutils/libctf/aclocal.m4	2019-12-16 14:33:22.570144000 +0000
512
@@ -1,6 +1,6 @@
513
-# generated automatically by aclocal 1.15.1 -*- Autoconf -*-
514
+# generated automatically by aclocal 1.16.1 -*- Autoconf -*-
515
 
516
-# Copyright (C) 1996-2017 Free Software Foundation, Inc.
517
+# Copyright (C) 1996-2018 Free Software Foundation, Inc.
518
 
519
 # This file is free software; the Free Software Foundation
520
 # gives unlimited permission to copy and/or distribute it,
521
@@ -20,7 +20,7 @@
522
 If you have problems, you may need to regenerate the build system entirely.
523
 To do so, use the procedure documented by the package, typically 'autoreconf'.])])
524
 
525
-# Copyright (C) 2002-2017 Free Software Foundation, Inc.
526
+# Copyright (C) 2002-2018 Free Software Foundation, Inc.
527
 #
528
 # This file is free software; the Free Software Foundation
529
 # gives unlimited permission to copy and/or distribute it,
530
@@ -32,10 +32,10 @@
531
 # generated from the m4 files accompanying Automake X.Y.
532
 # (This private macro should not be called outside this file.)
533
 AC_DEFUN([AM_AUTOMAKE_VERSION],
534
-[am__api_version='1.15'
535
+[am__api_version='1.16'
536
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
537
 dnl require some minimum version.  Point them to the right macro.
538
-m4_if([$1], [1.15.1], [],
539
+m4_if([$1], [1.16.1], [],
540
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
541
 ])
542
 
543
@@ -51,12 +51,12 @@
544
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
545
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
546
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
547
-[AM_AUTOMAKE_VERSION([1.15.1])dnl
548
+[AM_AUTOMAKE_VERSION([1.16.1])dnl
549
 m4_ifndef([AC_AUTOCONF_VERSION],
550
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
551
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
552
 
553
-# Copyright (C) 2011-2017 Free Software Foundation, Inc.
554
+# Copyright (C) 2011-2018 Free Software Foundation, Inc.
555
 #
556
 # This file is free software; the Free Software Foundation
557
 # gives unlimited permission to copy and/or distribute it,
558
@@ -118,7 +118,7 @@
559
 
560
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
561
 
562
-# Copyright (C) 2001-2017 Free Software Foundation, Inc.
563
+# Copyright (C) 2001-2018 Free Software Foundation, Inc.
564
 #
565
 # This file is free software; the Free Software Foundation
566
 # gives unlimited permission to copy and/or distribute it,
567
@@ -170,7 +170,7 @@
568
 
569
 # AM_CONDITIONAL                                            -*- Autoconf -*-
570
 
571
-# Copyright (C) 1997-2017 Free Software Foundation, Inc.
572
+# Copyright (C) 1997-2018 Free Software Foundation, Inc.
573
 #
574
 # This file is free software; the Free Software Foundation
575
 # gives unlimited permission to copy and/or distribute it,
576
@@ -201,7 +201,7 @@
577
 Usually this means the macro was only invoked conditionally.]])
578
 fi])])
579
 
580
-# Copyright (C) 1999-2017 Free Software Foundation, Inc.
581
+# Copyright (C) 1999-2018 Free Software Foundation, Inc.
582
 #
583
 # This file is free software; the Free Software Foundation
584
 # gives unlimited permission to copy and/or distribute it,
585
@@ -392,13 +392,12 @@
586
 
587
 # Generate code to set up dependency tracking.              -*- Autoconf -*-
588
 
589
-# Copyright (C) 1999-2017 Free Software Foundation, Inc.
590
+# Copyright (C) 1999-2018 Free Software Foundation, Inc.
591
 #
592
 # This file is free software; the Free Software Foundation
593
 # gives unlimited permission to copy and/or distribute it,
594
 # with or without modifications, as long as this notice is preserved.
595
 
596
-
597
 # _AM_OUTPUT_DEPENDENCY_COMMANDS
598
 # ------------------------------
599
 AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
600
@@ -406,49 +405,41 @@
601
   # Older Autoconf quotes --file arguments for eval, but not when files
602
   # are listed without --file.  Let's play safe and only enable the eval
603
   # if we detect the quoting.
604
-  case $CONFIG_FILES in
605
-  *\'*) eval set x "$CONFIG_FILES" ;;
606
-  *)   set x $CONFIG_FILES ;;
607
-  esac
608
+  # TODO: see whether this extra hack can be removed once we start
609
+  # requiring Autoconf 2.70 or later.
610
+  AS_CASE([$CONFIG_FILES],
611
+          [*\'*], [eval set x "$CONFIG_FILES"],
612
+          [*], [set x $CONFIG_FILES])
613
   shift
614
-  for mf
615
+  # Used to flag and report bootstrapping failures.
616
+  am_rc=0
617
+  for am_mf
618
   do
619
     # Strip MF so we end up with the name of the file.
620
-    mf=`echo "$mf" | sed -e 's/:.*$//'`
621
-    # Check whether this is an Automake generated Makefile or not.
622
-    # We used to match only the files named 'Makefile.in', but
623
-    # some people rename them; so instead we look at the file content.
624
-    # Grep'ing the first line is not enough: some people post-process
625
-    # each Makefile.in and add a new line on top of each file to say so.
626
-    # Grep'ing the whole file is not good either: AIX grep has a line
627
+    am_mf=`AS_ECHO(["$am_mf"]) | sed -e 's/:.*$//'`
628
+    # Check whether this is an Automake generated Makefile which includes
629
+    # dependency-tracking related rules and includes.
630
+    # Grep'ing the whole file directly is not great: AIX grep has a line
631
     # limit of 2048, but all sed's we know have understand at least 4000.
632
-    if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
633
-      dirpart=`AS_DIRNAME("$mf")`
634
-    else
635
-      continue
636
-    fi
637
-    # Extract the definition of DEPDIR, am__include, and am__quote
638
-    # from the Makefile without running 'make'.
639
-    DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
640
-    test -z "$DEPDIR" && continue
641
-    am__include=`sed -n 's/^am__include = //p' < "$mf"`
642
-    test -z "$am__include" && continue
643
-    am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
644
-    # Find all dependency output files, they are included files with
645
-    # $(DEPDIR) in their names.  We invoke sed twice because it is the
646
-    # simplest approach to changing $(DEPDIR) to its actual value in the
647
-    # expansion.
648
-    for file in `sed -n "
649
-      s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
650
-	 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
651
-      # Make sure the directory exists.
652
-      test -f "$dirpart/$file" && continue
653
-      fdir=`AS_DIRNAME(["$file"])`
654
-      AS_MKDIR_P([$dirpart/$fdir])
655
-      # echo "creating $dirpart/$file"
656
-      echo '# dummy' > "$dirpart/$file"
657
-    done
658
+    sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \
659
+      || continue
660
+    am_dirpart=`AS_DIRNAME(["$am_mf"])`
661
+    am_filepart=`AS_BASENAME(["$am_mf"])`
662
+    AM_RUN_LOG([cd "$am_dirpart" \
663
+      && sed -e '/# am--include-marker/d' "$am_filepart" \
664
+        | $MAKE -f - am--depfiles]) || am_rc=$?
665
   done
666
+  if test $am_rc -ne 0; then
667
+    AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments
668
+    for automatic dependency tracking.  Try re-running configure with the
669
+    '--disable-dependency-tracking' option to at least be able to build
670
+    the package (albeit without support for automatic dependency tracking).])
671
+  fi
672
+  AS_UNSET([am_dirpart])
673
+  AS_UNSET([am_filepart])
674
+  AS_UNSET([am_mf])
675
+  AS_UNSET([am_rc])
676
+  rm -f conftest-deps.mk
677
 }
678
 ])# _AM_OUTPUT_DEPENDENCY_COMMANDS
679
 
680
@@ -457,18 +448,17 @@
681
 # -----------------------------
682
 # This macro should only be invoked once -- use via AC_REQUIRE.
683
 #
684
-# This code is only required when automatic dependency tracking
685
-# is enabled.  FIXME.  This creates each '.P' file that we will
686
-# need in order to bootstrap the dependency handling code.
687
+# This code is only required when automatic dependency tracking is enabled.
688
+# This creates each '.Po' and '.Plo' makefile fragment that we'll need in
689
+# order to bootstrap the dependency handling code.
690
 AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
691
 [AC_CONFIG_COMMANDS([depfiles],
692
      [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
693
-     [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
694
-])
695
+     [AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"])])
696
 
697
 # Do all the work for Automake.                             -*- Autoconf -*-
698
 
699
-# Copyright (C) 1996-2017 Free Software Foundation, Inc.
700
+# Copyright (C) 1996-2018 Free Software Foundation, Inc.
701
 #
702
 # This file is free software; the Free Software Foundation
703
 # gives unlimited permission to copy and/or distribute it,
704
@@ -555,8 +545,8 @@
705
 AC_REQUIRE([AC_PROG_MKDIR_P])dnl
706
 # For better backward compatibility.  To be removed once Automake 1.9.x
707
 # dies out for good.  For more background, see:
708
-# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
709
-# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
710
+# <https://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
711
+# <https://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
712
 AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
713
 # We need awk for the "check" target (and possibly the TAP driver).  The
714
 # system "awk" is bad on some platforms.
715
@@ -623,7 +613,7 @@
716
 Aborting the configuration process, to ensure you take notice of the issue.
717
 
718
 You can download and install GNU coreutils to get an 'rm' implementation
719
-that behaves properly: <http://www.gnu.org/software/coreutils/>.
720
+that behaves properly: <https://www.gnu.org/software/coreutils/>.
721
 
722
 If you want to complete the configuration process using your problematic
723
 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
724
@@ -665,7 +655,7 @@
725
 done
726
 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
727
 
728
-# Copyright (C) 2001-2017 Free Software Foundation, Inc.
729
+# Copyright (C) 2001-2018 Free Software Foundation, Inc.
730
 #
731
 # This file is free software; the Free Software Foundation
732
 # gives unlimited permission to copy and/or distribute it,
733
@@ -689,7 +679,7 @@
734
 # Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
735
 # From Jim Meyering
736
 
737
-# Copyright (C) 1996-2017 Free Software Foundation, Inc.
738
+# Copyright (C) 1996-2018 Free Software Foundation, Inc.
739
 #
740
 # This file is free software; the Free Software Foundation
741
 # gives unlimited permission to copy and/or distribute it,
742
@@ -724,7 +714,7 @@
743
 
744
 # Check to see how 'make' treats includes.	            -*- Autoconf -*-
745
 
746
-# Copyright (C) 2001-2017 Free Software Foundation, Inc.
747
+# Copyright (C) 2001-2018 Free Software Foundation, Inc.
748
 #
749
 # This file is free software; the Free Software Foundation
750
 # gives unlimited permission to copy and/or distribute it,
751
@@ -732,49 +722,42 @@
752
 
753
 # AM_MAKE_INCLUDE()
754
 # -----------------
755
-# Check to see how make treats includes.
756
+# Check whether make has an 'include' directive that can support all
757
+# the idioms we need for our automatic dependency tracking code.
758
 AC_DEFUN([AM_MAKE_INCLUDE],
759
-[am_make=${MAKE-make}
760
-cat > confinc << 'END'
761
+[AC_MSG_CHECKING([whether ${MAKE-make} supports the include directive])
762
+cat > confinc.mk << 'END'
763
 am__doit:
764
-	@echo this is the am__doit target
765
+	@echo this is the am__doit target >confinc.out
766
 .PHONY: am__doit
767
 END
768
-# If we don't find an include directive, just comment out the code.
769
-AC_MSG_CHECKING([for style of include used by $am_make])
770
 am__include="#"
771
 am__quote=
772
-_am_result=none
773
-# First try GNU make style include.
774
-echo "include confinc" > confmf
775
-# Ignore all kinds of additional output from 'make'.
776
-case `$am_make -s -f confmf 2> /dev/null` in #(
777
-*the\ am__doit\ target*)
778
-  am__include=include
779
-  am__quote=
780
-  _am_result=GNU
781
-  ;;
782
-esac
783
-# Now try BSD make style include.
784
-if test "$am__include" = "#"; then
785
-   echo '.include "confinc"' > confmf
786
-   case `$am_make -s -f confmf 2> /dev/null` in #(
787
-   *the\ am__doit\ target*)
788
-     am__include=.include
789
-     am__quote="\""
790
-     _am_result=BSD
791
-     ;;
792
-   esac
793
-fi
794
-AC_SUBST([am__include])
795
-AC_SUBST([am__quote])
796
-AC_MSG_RESULT([$_am_result])
797
-rm -f confinc confmf
798
-])
799
+# BSD make does it like this.
800
+echo '.include "confinc.mk" # ignored' > confmf.BSD
801
+# Other make implementations (GNU, Solaris 10, AIX) do it like this.
802
+echo 'include confinc.mk # ignored' > confmf.GNU
803
+_am_result=no
804
+for s in GNU BSD; do
805
+  AM_RUN_LOG([${MAKE-make} -f confmf.$s && cat confinc.out])
806
+  AS_CASE([$?:`cat confinc.out 2>/dev/null`],
807
+      ['0:this is the am__doit target'],
808
+      [AS_CASE([$s],
809
+          [BSD], [am__include='.include' am__quote='"'],
810
+          [am__include='include' am__quote=''])])
811
+  if test "$am__include" != "#"; then
812
+    _am_result="yes ($s style)"
813
+    break
814
+  fi
815
+done
816
+rm -f confinc.* confmf.*
817
+AC_MSG_RESULT([${_am_result}])
818
+AC_SUBST([am__include])])
819
+AC_SUBST([am__quote])])
820
 
821
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
822
 
823
-# Copyright (C) 1997-2017 Free Software Foundation, Inc.
824
+# Copyright (C) 1997-2018 Free Software Foundation, Inc.
825
 #
826
 # This file is free software; the Free Software Foundation
827
 # gives unlimited permission to copy and/or distribute it,
828
@@ -813,7 +796,7 @@
829
 
830
 # Helper functions for option handling.                     -*- Autoconf -*-
831
 
832
-# Copyright (C) 2001-2017 Free Software Foundation, Inc.
833
+# Copyright (C) 2001-2018 Free Software Foundation, Inc.
834
 #
835
 # This file is free software; the Free Software Foundation
836
 # gives unlimited permission to copy and/or distribute it,
837
@@ -842,7 +825,7 @@
838
 AC_DEFUN([_AM_IF_OPTION],
839
 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
840
 
841
-# Copyright (C) 1999-2017 Free Software Foundation, Inc.
842
+# Copyright (C) 1999-2018 Free Software Foundation, Inc.
843
 #
844
 # This file is free software; the Free Software Foundation
845
 # gives unlimited permission to copy and/or distribute it,
846
@@ -889,7 +872,7 @@
847
 # For backward compatibility.
848
 AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
849
 
850
-# Copyright (C) 2001-2017 Free Software Foundation, Inc.
851
+# Copyright (C) 2001-2018 Free Software Foundation, Inc.
852
 #
853
 # This file is free software; the Free Software Foundation
854
 # gives unlimited permission to copy and/or distribute it,
855
@@ -908,7 +891,7 @@
856
 
857
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
858
 
859
-# Copyright (C) 1996-2017 Free Software Foundation, Inc.
860
+# Copyright (C) 1996-2018 Free Software Foundation, Inc.
861
 #
862
 # This file is free software; the Free Software Foundation
863
 # gives unlimited permission to copy and/or distribute it,
864
@@ -989,7 +972,7 @@
865
 rm -f conftest.file
866
 ])
867
 
868
-# Copyright (C) 2009-2017 Free Software Foundation, Inc.
869
+# Copyright (C) 2009-2018 Free Software Foundation, Inc.
870
 #
871
 # This file is free software; the Free Software Foundation
872
 # gives unlimited permission to copy and/or distribute it,
873
@@ -1049,7 +1032,7 @@
874
 _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
875
 ])
876
 
877
-# Copyright (C) 2001-2017 Free Software Foundation, Inc.
878
+# Copyright (C) 2001-2018 Free Software Foundation, Inc.
879
 #
880
 # This file is free software; the Free Software Foundation
881
 # gives unlimited permission to copy and/or distribute it,
882
@@ -1077,7 +1060,7 @@
883
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
884
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
885
 
886
-# Copyright (C) 2006-2017 Free Software Foundation, Inc.
887
+# Copyright (C) 2006-2018 Free Software Foundation, Inc.
888
 #
889
 # This file is free software; the Free Software Foundation
890
 # gives unlimited permission to copy and/or distribute it,
891
@@ -1096,7 +1079,7 @@
892
 
893
 # Check how to create a tarball.                            -*- Autoconf -*-
894
 
895
-# Copyright (C) 2004-2017 Free Software Foundation, Inc.
896
+# Copyright (C) 2004-2018 Free Software Foundation, Inc.
897
 #
898
 # This file is free software; the Free Software Foundation
899
 # gives unlimited permission to copy and/or distribute it,
900
@@ -1228,6 +1211,7 @@
901
 ]) # _AM_PROG_TAR
902
 
903
 m4_include([../config/depstand.m4])
904
+m4_include([../config/gettext-sister.m4])
905
 m4_include([../config/lead-dot.m4])
906
 m4_include([../config/override.m4])
907
 m4_include([../config/warnings.m4])
908
diff -x .git -x autom4te.cache -durN binutils.orig/libctf/config.h.in binutils/libctf/config.h.in
909
--- binutils.orig/libctf/config.h.in	2019-12-16 13:05:01.036237000 +0000
910
+++ binutils/libctf/config.h.in	2019-12-16 14:31:49.184504000 +0000
911
@@ -3,11 +3,27 @@
912
 /* Define if building universal (internal helper macro) */
913
 #undef AC_APPLE_UNIVERSAL_BUILD
914
 
915
+/* Define to 1 if translation of program messages to the user's native
916
+   language is requested. */
917
+#undef ENABLE_NLS
918
+
919
 /* Whether libbfd was configured for an ELF target. */
920
 #undef HAVE_BFD_ELF
921
 
922
 /* Define to 1 if you have the <byteswap.h> header file. */
923
 #undef HAVE_BYTESWAP_H
924
+
925
+/* Define to 1 if you have the declaration of `bswap_16', and to 0 if you
926
+   don't. */
927
+#undef HAVE_DECL_BSWAP_16
928
+
929
+/* Define to 1 if you have the declaration of `bswap_32', and to 0 if you
930
+   don't. */
931
+#undef HAVE_DECL_BSWAP_32
932
+
933
+/* Define to 1 if you have the declaration of `bswap_64', and to 0 if you
934
+   don't. */
935
+#undef HAVE_DECL_BSWAP_64
936
 
937
 /* Define to 1 if you have the <endian.h> header file. */
938
 #undef HAVE_ENDIAN_H
939
diff -x .git -x autom4te.cache -durN binutils.orig/libctf/configure binutils/libctf/configure
940
--- binutils.orig/libctf/configure	2019-12-16 13:05:01.037775000 +0000
941
+++ binutils/libctf/configure	2019-12-16 14:33:31.352108000 +0000
942
@@ -637,6 +637,18 @@
943
 WARN_PEDANTIC
944
 c_warn
945
 warn
946
+CATOBJEXT
947
+GENCAT
948
+INSTOBJEXT
949
+DATADIRNAME
950
+CATALOGS
951
+POSUB
952
+GMSGFMT
953
+XGETTEXT
954
+INCINTL
955
+LIBINTL_DEP
956
+LIBINTL
957
+USE_NLS
958
 ac_ct_AR
959
 AR
960
 RANLIB
961
@@ -651,7 +663,6 @@
962
 AMDEPBACKSLASH
963
 AMDEP_FALSE
964
 AMDEP_TRUE
965
-am__quote
966
 am__include
967
 DEPDIR
968
 am__untar
969
@@ -724,7 +735,8 @@
970
 PACKAGE_TARNAME
971
 PACKAGE_NAME
972
 PATH_SEPARATOR
973
-SHELL'
974
+SHELL
975
+am__quote'
976
 ac_subst_files=''
977
 ac_user_opts='
978
 enable_option_checking
979
@@ -1812,6 +1824,52 @@
980
   eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
981
 
982
 } # ac_fn_c_check_func
983
+
984
+# ac_fn_c_check_decl LINENO SYMBOL VAR INCLUDES
985
+# ---------------------------------------------
986
+# Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR
987
+# accordingly.
988
+ac_fn_c_check_decl ()
989
+{
990
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
991
+  as_decl_name=`echo $2|sed 's/ *(.*//'`
992
+  as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'`
993
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5
994
+$as_echo_n "checking whether $as_decl_name is declared... " >&6; }
995
+if eval \${$3+:} false; then :
996
+  $as_echo_n "(cached) " >&6
997
+else
998
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
999
+/* end confdefs.h.  */
1000
+$4
1001
+int
1002
+main ()
1003
+{
1004
+#ifndef $as_decl_name
1005
+#ifdef __cplusplus
1006
+  (void) $as_decl_use;
1007
+#else
1008
+  (void) $as_decl_name;
1009
+#endif
1010
+#endif
1011
+
1012
+  ;
1013
+  return 0;
1014
+}
1015
+_ACEOF
1016
+if ac_fn_c_try_compile "$LINENO"; then :
1017
+  eval "$3=yes"
1018
+else
1019
+  eval "$3=no"
1020
+fi
1021
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
1022
+fi
1023
+eval ac_res=\$$3
1024
+	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
1025
+$as_echo "$ac_res" >&6; }
1026
+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1027
+
1028
+} # ac_fn_c_check_decl
1029
 cat >config.log <<_ACEOF
1030
 This file contains any messages produced by compilers while
1031
 running configure, to aid debugging if configure makes a mistake.
1032
@@ -3512,7 +3570,7 @@
1033
   $as_echo "#define _TANDEM_SOURCE 1" >>confdefs.h
1034
 
1035
 
1036
-am__api_version='1.15'
1037
+am__api_version='1.16'
1038
 
1039
 # Find a good install program.  We prefer a C program (faster),
1040
 # so one script is as good as another.  But avoid the broken or
1041
@@ -3938,46 +3996,46 @@
1042
 
1043
 ac_config_commands="$ac_config_commands depfiles"
1044
 
1045
-
1046
-am_make=${MAKE-make}
1047
-cat > confinc << 'END'
1048
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} supports the include directive" >&5
1049
+$as_echo_n "checking whether ${MAKE-make} supports the include directive... " >&6; }
1050
+cat > confinc.mk << 'END'
1051
 am__doit:
1052
-	@echo this is the am__doit target
1053
+	@echo this is the am__doit target >confinc.out
1054
 .PHONY: am__doit
1055
 END
1056
-# If we don't find an include directive, just comment out the code.
1057
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5
1058
-$as_echo_n "checking for style of include used by $am_make... " >&6; }
1059
 am__include="#"
1060
 am__quote=
1061
-_am_result=none
1062
-# First try GNU make style include.
1063
-echo "include confinc" > confmf
1064
-# Ignore all kinds of additional output from 'make'.
1065
-case `$am_make -s -f confmf 2> /dev/null` in #(
1066
-*the\ am__doit\ target*)
1067
-  am__include=include
1068
-  am__quote=
1069
-  _am_result=GNU
1070
-  ;;
1071
-esac
1072
-# Now try BSD make style include.
1073
-if test "$am__include" = "#"; then
1074
-   echo '.include "confinc"' > confmf
1075
-   case `$am_make -s -f confmf 2> /dev/null` in #(
1076
-   *the\ am__doit\ target*)
1077
-     am__include=.include
1078
-     am__quote="\""
1079
-     _am_result=BSD
1080
+# BSD make does it like this.
1081
+echo '.include "confinc.mk" # ignored' > confmf.BSD
1082
+# Other make implementations (GNU, Solaris 10, AIX) do it like this.
1083
+echo 'include confinc.mk # ignored' > confmf.GNU
1084
+_am_result=no
1085
+for s in GNU BSD; do
1086
+  { echo "$as_me:$LINENO: ${MAKE-make} -f confmf.$s && cat confinc.out" >&5
1087
+   (${MAKE-make} -f confmf.$s && cat confinc.out) >&5 2>&5
1088
+   ac_status=$?
1089
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
1090
+   (exit $ac_status); }
1091
+  case $?:`cat confinc.out 2>/dev/null` in #(
1092
+  '0:this is the am__doit target') :
1093
+    case $s in #(
1094
+  BSD) :
1095
+    am__include='.include' am__quote='"' ;; #(
1096
+  *) :
1097
+    am__include='include' am__quote='' ;;
1098
+esac ;; #(
1099
+  *) :
1100
      ;;
1101
-   esac
1102
-fi
1103
+esac
1104
+  if test "$am__include" != "#"; then
1105
+    _am_result="yes ($s style)"
1106
+    break
1107
+  fi
1108
+done
1109
+rm -f confinc.* confmf.*
1110
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${_am_result}" >&5
1111
+$as_echo "${_am_result}" >&6; }
1112
 
1113
-
1114
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5
1115
-$as_echo "$_am_result" >&6; }
1116
-rm -f confinc confmf
1117
-
1118
 # Check whether --enable-dependency-tracking was given.
1119
 if test "${enable_dependency_tracking+set}" = set; then :
1120
   enableval=$enable_dependency_tracking;
1121
@@ -4088,8 +4146,8 @@
1122
 
1123
 # For better backward compatibility.  To be removed once Automake 1.9.x
1124
 # dies out for good.  For more background, see:
1125
-# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
1126
-# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
1127
+# <https://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
1128
+# <https://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
1129
 mkdir_p='$(MKDIR_P)'
1130
 
1131
 # We need awk for the "check" target (and possibly the TAP driver).  The
1132
@@ -4268,7 +4326,7 @@
1133
 Aborting the configuration process, to ensure you take notice of the issue.
1134
 
1135
 You can download and install GNU coreutils to get an 'rm' implementation
1136
-that behaves properly: <http://www.gnu.org/software/coreutils/>.
1137
+that behaves properly: <https://www.gnu.org/software/coreutils/>.
1138
 
1139
 If you want to complete the configuration process using your problematic
1140
 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
1141
@@ -5173,7 +5231,77 @@
1142
   ;;
1143
 esac
1144
 
1145
+# If we haven't got the data from the intl directory,
1146
+# assume NLS is disabled.
1147
+USE_NLS=no
1148
+LIBINTL=
1149
+LIBINTL_DEP=
1150
+INCINTL=
1151
+XGETTEXT=
1152
+GMSGFMT=
1153
+POSUB=
1154
 
1155
+if test -f  ../intl/config.intl; then
1156
+  .  ../intl/config.intl
1157
+fi
1158
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5
1159
+$as_echo_n "checking whether NLS is requested... " >&6; }
1160
+if test x"$USE_NLS" != xyes; then
1161
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
1162
+$as_echo "no" >&6; }
1163
+else
1164
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
1165
+$as_echo "yes" >&6; }
1166
+
1167
+$as_echo "#define ENABLE_NLS 1" >>confdefs.h
1168
+
1169
+
1170
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for catalogs to be installed" >&5
1171
+$as_echo_n "checking for catalogs to be installed... " >&6; }
1172
+  # Look for .po and .gmo files in the source directory.
1173
+  CATALOGS=
1174
+  XLINGUAS=
1175
+  for cat in $srcdir/po/*.gmo $srcdir/po/*.po; do
1176
+    # If there aren't any .gmo files the shell will give us the
1177
+    # literal string "../path/to/srcdir/po/*.gmo" which has to be
1178
+    # weeded out.
1179
+    case "$cat" in *\**)
1180
+      continue;;
1181
+    esac
1182
+    # The quadruple backslash is collapsed to a double backslash
1183
+    # by the backticks, then collapsed again by the double quotes,
1184
+    # leaving us with one backslash in the sed expression (right
1185
+    # before the dot that mustn't act as a wildcard).
1186
+    cat=`echo $cat | sed -e "s!$srcdir/po/!!" -e "s!\\\\.po!.gmo!"`
1187
+    lang=`echo $cat | sed -e "s!\\\\.gmo!!"`
1188
+    # The user is allowed to set LINGUAS to a list of languages to
1189
+    # install catalogs for.  If it's empty that means "all of them."
1190
+    if test "x$LINGUAS" = x; then
1191
+      CATALOGS="$CATALOGS $cat"
1192
+      XLINGUAS="$XLINGUAS $lang"
1193
+    else
1194
+      case "$LINGUAS" in *$lang*)
1195
+        CATALOGS="$CATALOGS $cat"
1196
+        XLINGUAS="$XLINGUAS $lang"
1197
+        ;;
1198
+      esac
1199
+    fi
1200
+  done
1201
+  LINGUAS="$XLINGUAS"
1202
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LINGUAS" >&5
1203
+$as_echo "$LINGUAS" >&6; }
1204
+
1205
+
1206
+    DATADIRNAME=share
1207
+
1208
+  INSTOBJEXT=.mo
1209
+
1210
+  GENCAT=gencat
1211
+
1212
+  CATOBJEXT=.gmo
1213
+
1214
+fi
1215
+
1216
 # Check whether --enable-largefile was given.
1217
 if test "${enable_largefile+set}" = set; then :
1218
   enableval=$enable_largefile;
1219
@@ -6360,9 +6488,44 @@
1220
 done
1221
 
1222
 
1223
+ac_fn_c_check_decl "$LINENO" "bswap_16" "ac_cv_have_decl_bswap_16" "#include <byteswap.h>
1224
+"
1225
+if test "x$ac_cv_have_decl_bswap_16" = xyes; then :
1226
+  ac_have_decl=1
1227
+else
1228
+  ac_have_decl=0
1229
+fi
1230
 
1231
+cat >>confdefs.h <<_ACEOF
1232
+#define HAVE_DECL_BSWAP_16 $ac_have_decl
1233
+_ACEOF
1234
+ac_fn_c_check_decl "$LINENO" "bswap_32" "ac_cv_have_decl_bswap_32" "#include <byteswap.h>
1235
+"
1236
+if test "x$ac_cv_have_decl_bswap_32" = xyes; then :
1237
+  ac_have_decl=1
1238
+else
1239
+  ac_have_decl=0
1240
+fi
1241
 
1242
+cat >>confdefs.h <<_ACEOF
1243
+#define HAVE_DECL_BSWAP_32 $ac_have_decl
1244
+_ACEOF
1245
+ac_fn_c_check_decl "$LINENO" "bswap_64" "ac_cv_have_decl_bswap_64" "#include <byteswap.h>
1246
+"
1247
+if test "x$ac_cv_have_decl_bswap_64" = xyes; then :
1248
+  ac_have_decl=1
1249
+else
1250
+  ac_have_decl=0
1251
+fi
1252
 
1253
+cat >>confdefs.h <<_ACEOF
1254
+#define HAVE_DECL_BSWAP_64 $ac_have_decl
1255
+_ACEOF
1256
+
1257
+
1258
+
1259
+
1260
+
1261
   for ac_func in $ac_func_list
1262
 do :
1263
   as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
1264
@@ -7227,7 +7390,7 @@
1265
 #
1266
 # INIT-COMMANDS
1267
 #
1268
-AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
1269
+AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"
1270
 
1271
 _ACEOF
1272
 
1273
@@ -7839,29 +8002,35 @@
1274
   # Older Autoconf quotes --file arguments for eval, but not when files
1275
   # are listed without --file.  Let's play safe and only enable the eval
1276
   # if we detect the quoting.
1277
-  case $CONFIG_FILES in
1278
-  *\'*) eval set x "$CONFIG_FILES" ;;
1279
-  *)   set x $CONFIG_FILES ;;
1280
-  esac
1281
+  # TODO: see whether this extra hack can be removed once we start
1282
+  # requiring Autoconf 2.70 or later.
1283
+  case $CONFIG_FILES in #(
1284
+  *\'*) :
1285
+    eval set x "$CONFIG_FILES" ;; #(
1286
+  *) :
1287
+    set x $CONFIG_FILES ;; #(
1288
+  *) :
1289
+     ;;
1290
+esac
1291
   shift
1292
-  for mf
1293
+  # Used to flag and report bootstrapping failures.
1294
+  am_rc=0
1295
+  for am_mf
1296
   do
1297
     # Strip MF so we end up with the name of the file.
1298
-    mf=`echo "$mf" | sed -e 's/:.*$//'`
1299
-    # Check whether this is an Automake generated Makefile or not.
1300
-    # We used to match only the files named 'Makefile.in', but
1301
-    # some people rename them; so instead we look at the file content.
1302
-    # Grep'ing the first line is not enough: some people post-process
1303
-    # each Makefile.in and add a new line on top of each file to say so.
1304
-    # Grep'ing the whole file is not good either: AIX grep has a line
1305
+    am_mf=`$as_echo "$am_mf" | sed -e 's/:.*$//'`
1306
+    # Check whether this is an Automake generated Makefile which includes
1307
+    # dependency-tracking related rules and includes.
1308
+    # Grep'ing the whole file directly is not great: AIX grep has a line
1309
     # limit of 2048, but all sed's we know have understand at least 4000.
1310
-    if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
1311
-      dirpart=`$as_dirname -- "$mf" ||
1312
-$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
1313
-	 X"$mf" : 'X\(//\)[^/]' \| \
1314
-	 X"$mf" : 'X\(//\)$' \| \
1315
-	 X"$mf" : 'X\(/\)' \| . 2>/dev/null ||
1316
-$as_echo X"$mf" |
1317
+    sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \
1318
+      || continue
1319
+    am_dirpart=`$as_dirname -- "$am_mf" ||
1320
+$as_expr X"$am_mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
1321
+	 X"$am_mf" : 'X\(//\)[^/]' \| \
1322
+	 X"$am_mf" : 'X\(//\)$' \| \
1323
+	 X"$am_mf" : 'X\(/\)' \| . 2>/dev/null ||
1324
+$as_echo X"$am_mf" |
1325
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
1326
 	    s//\1/
1327
 	    q
1328
@@ -7879,53 +8048,48 @@
1329
 	    q
1330
 	  }
1331
 	  s/.*/./; q'`
1332
-    else
1333
-      continue
1334
-    fi
1335
-    # Extract the definition of DEPDIR, am__include, and am__quote
1336
-    # from the Makefile without running 'make'.
1337
-    DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
1338
-    test -z "$DEPDIR" && continue
1339
-    am__include=`sed -n 's/^am__include = //p' < "$mf"`
1340
-    test -z "$am__include" && continue
1341
-    am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
1342
-    # Find all dependency output files, they are included files with
1343
-    # $(DEPDIR) in their names.  We invoke sed twice because it is the
1344
-    # simplest approach to changing $(DEPDIR) to its actual value in the
1345
-    # expansion.
1346
-    for file in `sed -n "
1347
-      s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
1348
-	 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
1349
-      # Make sure the directory exists.
1350
-      test -f "$dirpart/$file" && continue
1351
-      fdir=`$as_dirname -- "$file" ||
1352
-$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
1353
-	 X"$file" : 'X\(//\)[^/]' \| \
1354
-	 X"$file" : 'X\(//\)$' \| \
1355
-	 X"$file" : 'X\(/\)' \| . 2>/dev/null ||
1356
-$as_echo X"$file" |
1357
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
1358
+    am_filepart=`$as_basename -- "$am_mf" ||
1359
+$as_expr X/"$am_mf" : '.*/\([^/][^/]*\)/*$' \| \
1360
+	 X"$am_mf" : 'X\(//\)$' \| \
1361
+	 X"$am_mf" : 'X\(/\)' \| . 2>/dev/null ||
1362
+$as_echo X/"$am_mf" |
1363
+    sed '/^.*\/\([^/][^/]*\)\/*$/{
1364
 	    s//\1/
1365
 	    q
1366
 	  }
1367
-	  /^X\(\/\/\)[^/].*/{
1368
+	  /^X\/\(\/\/\)$/{
1369
 	    s//\1/
1370
 	    q
1371
 	  }
1372
-	  /^X\(\/\/\)$/{
1373
+	  /^X\/\(\/\).*/{
1374
 	    s//\1/
1375
 	    q
1376
 	  }
1377
-	  /^X\(\/\).*/{
1378
-	    s//\1/
1379
-	    q
1380
-	  }
1381
 	  s/.*/./; q'`
1382
-      as_dir=$dirpart/$fdir; as_fn_mkdir_p
1383
-      # echo "creating $dirpart/$file"
1384
-      echo '# dummy' > "$dirpart/$file"
1385
-    done
1386
+    { echo "$as_me:$LINENO: cd "$am_dirpart" \
1387
+      && sed -e '/# am--include-marker/d' "$am_filepart" \
1388
+        | $MAKE -f - am--depfiles" >&5
1389
+   (cd "$am_dirpart" \
1390
+      && sed -e '/# am--include-marker/d' "$am_filepart" \
1391
+        | $MAKE -f - am--depfiles) >&5 2>&5
1392
+   ac_status=$?
1393
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
1394
+   (exit $ac_status); } || am_rc=$?
1395
   done
1396
+  if test $am_rc -ne 0; then
1397
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
1398
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
1399
+as_fn_error $? "Something went wrong bootstrapping makefile fragments
1400
+    for automatic dependency tracking.  Try re-running configure with the
1401
+    '--disable-dependency-tracking' option to at least be able to build
1402
+    the package (albeit without support for automatic dependency tracking).
1403
+See \`config.log' for more details" "$LINENO" 5; }
1404
+  fi
1405
+  { am_dirpart=; unset am_dirpart;}
1406
+  { am_filepart=; unset am_filepart;}
1407
+  { am_mf=; unset am_mf;}
1408
+  { am_rc=; unset am_rc;}
1409
+  rm -f conftest-deps.mk
1410
 }
1411
  ;;
1412
 
1413
diff -x .git -x autom4te.cache -durN binutils.orig/libctf/configure.ac binutils/libctf/configure.ac
1414
--- binutils.orig/libctf/configure.ac	2019-12-16 13:05:01.037964000 +0000
1415
+++ binutils/libctf/configure.ac	2019-12-16 14:31:49.144635000 +0000
1416
@@ -30,6 +30,7 @@
1417
 AC_PROG_CC
1418
 AC_PROG_RANLIB
1419
 AM_PROG_AR
1420
+ZW_GNU_GETTEXT_SISTER_DIR
1421
 
1422
 AC_SYS_LARGEFILE
1423
 
1424
@@ -90,6 +91,9 @@
1425
 AC_C_BIGENDIAN
1426
 AC_CHECK_HEADERS(byteswap.h endian.h)
1427
 AC_CHECK_FUNCS(pread)
1428
+
1429
+dnl Check for bswap_{16,32,64}
1430
+AC_CHECK_DECLS([bswap_16, bswap_32, bswap_64], [], [], [[#include <byteswap.h>]])
1431
 
1432
 dnl Check for qsort_r.  (Taken from gnulib.)
1433
 AC_CHECK_FUNCS_ONCE([qsort_r])
1434
diff -x .git -x autom4te.cache -durN binutils.orig/libctf/ctf-archive.c binutils/libctf/ctf-archive.c
1435
--- binutils.orig/libctf/ctf-archive.c	2019-12-16 13:05:01.038294000 +0000
1436
+++ binutils/libctf/ctf-archive.c	2019-12-16 14:31:06.262127000 +0000
1437
@@ -44,9 +44,6 @@
1438
 			      const char **errmsg);
1439
 static int arc_mmap_unmap (void *header, size_t headersz, const char **errmsg);
1440
 
1441
-/* bsearch() internal state.  */
1442
-static __thread char *search_nametbl;
1443
-
1444
 /* Write out a CTF archive.  The entries in CTF_FILES are referenced by name:
1445
    the names are passed in the names array, which must have CTF_FILES entries.
1446
 
1447
@@ -300,13 +297,14 @@
1448
 		 &nametbl[le64toh (b->name_offset)]);
1449
 }
1450
 
1451
-/* bsearch() function to search for a given name in the sorted array of struct
1452
+/* bsearch_r() function to search for a given name in the sorted array of struct
1453
    ctf_archive_modents.  */
1454
 static int
1455
-search_modent_by_name (const void *key, const void *ent)
1456
+search_modent_by_name (const void *key, const void *ent, void *arg)
1457
 {
1458
   const char *k = key;
1459
   const struct ctf_archive_modent *v = ent;
1460
+  const char *search_nametbl = arg;
1461
 
1462
   return strcmp (k, &search_nametbl[le64toh (v->name_offset)]);
1463
 }
1464
@@ -419,6 +417,7 @@
1465
 			       const char *name, int *errp)
1466
 {
1467
   struct ctf_archive_modent *modent;
1468
+  const char *search_nametbl;
1469
 
1470
   if (name == NULL)
1471
     name = _CTF_SECTION;		 /* The default name.  */
1472
@@ -428,10 +427,10 @@
1473
   modent = (ctf_archive_modent_t *) ((char *) arc
1474
 				     + sizeof (struct ctf_archive));
1475
 
1476
-  search_nametbl = (char *) arc + le64toh (arc->ctfa_names);
1477
-  modent = bsearch (name, modent, le64toh (arc->ctfa_nfiles),
1478
-		    sizeof (struct ctf_archive_modent),
1479
-		    search_modent_by_name);
1480
+  search_nametbl = (const char *) arc + le64toh (arc->ctfa_names);
1481
+  modent = bsearch_r (name, modent, le64toh (arc->ctfa_nfiles),
1482
+		      sizeof (struct ctf_archive_modent),
1483
+		      search_modent_by_name, (void *) search_nametbl);
1484
 
1485
   /* This is actually a common case and normal operation: no error
1486
      debug output.  */
1487
diff -x .git -x autom4te.cache -durN binutils.orig/libctf/ctf-create.c binutils/libctf/ctf-create.c
1488
--- binutils.orig/libctf/ctf-create.c	2019-12-16 13:05:01.038815000 +0000
1489
+++ binutils/libctf/ctf-create.c	2019-12-16 14:31:06.262525000 +0000
1490
@@ -21,6 +21,7 @@
1491
 #include <sys/param.h>
1492
 #include <assert.h>
1493
 #include <string.h>
1494
+#include <unistd.h>
1495
 #include <zlib.h>
1496
 
1497
 #ifndef roundup
1498
diff -x .git -x autom4te.cache -durN binutils.orig/libctf/ctf-endian.h binutils/libctf/ctf-endian.h
1499
--- binutils.orig/libctf/ctf-endian.h	2019-12-16 12:41:49.160410000 +0000
1500
+++ binutils/libctf/ctf-endian.h	2019-12-16 14:31:06.262648000 +0000
1501
@@ -24,10 +24,10 @@
1502
 #include <stdint.h>
1503
 #include "swap.h"
1504
 
1505
-#ifndef HAVE_ENDIAN_H
1506
+#if !defined (HAVE_ENDIAN_H) || !defined (htole64)
1507
 #ifndef WORDS_BIGENDIAN
1508
-# define htole64(x) bswap_identity_64 ((x))
1509
-# define le64toh(x) bswap_identity_64 ((x))
1510
+# define htole64(x) (x)
1511
+# define le64toh(x) (x)
1512
 #else
1513
 # define htole64(x) bswap_64 ((x))
1514
 # define le64toh(x) bswap_64 ((x))
1515
diff -x .git -x autom4te.cache -durN binutils.orig/libctf/ctf-impl.h binutils/libctf/ctf-impl.h
1516
--- binutils.orig/libctf/ctf-impl.h	2019-12-16 13:05:01.039050000 +0000
1517
+++ binutils/libctf/ctf-impl.h	2019-12-16 14:31:06.262883000 +0000
1518
@@ -58,6 +58,13 @@
1519
 #define _libctf_unused_ __attribute__ ((__unused__))
1520
 #define _libctf_malloc_ __attribute__((__malloc__))
1521
 
1522
+#else
1523
+
1524
+#define _libctf_printflike_(string_index,first_to_check)
1525
+#define _libctf_unlikely_(x) (x)
1526
+#define _libctf_unused_
1527
+#define _libctf_malloc_
1528
+
1529
 #endif
1530
 
1531
 /* libctf in-memory state.  */
1532
diff -x .git -x autom4te.cache -durN binutils.orig/libctf/ctf-open-bfd.c binutils/libctf/ctf-open-bfd.c
1533
--- binutils.orig/libctf/ctf-open-bfd.c	2019-12-16 13:05:01.039304000 +0000
1534
+++ binutils/libctf/ctf-open-bfd.c	2019-12-16 14:31:06.263077000 +0000
1535
@@ -24,6 +24,7 @@
1536
 #include <errno.h>
1537
 #include <string.h>
1538
 #include <fcntl.h>
1539
+#include <unistd.h>
1540
 #include <elf.h>
1541
 #include <bfd.h>
1542
 #include "swap.h"
1543
diff -x .git -x autom4te.cache -durN binutils.orig/libctf/swap.h binutils/libctf/swap.h
1544
--- binutils.orig/libctf/swap.h	2019-12-16 13:05:01.039437000 +0000
1545
+++ binutils/libctf/swap.h	2019-12-16 14:31:06.263198000 +0000
1546
@@ -25,16 +25,20 @@
1547
 
1548
 #ifdef HAVE_BYTESWAP_H
1549
 #include <byteswap.h>
1550
-#else
1551
+#endif /* defined(HAVE_BYTESWAP_H) */
1552
 
1553
 /* Provide our own versions of the byteswap functions.  */
1554
-inline uint16_t
1555
+
1556
+#if !HAVE_DECL_BSWAP_16
1557
+static inline uint16_t
1558
 bswap_16 (uint16_t v)
1559
 {
1560
   return ((v >> 8) & 0xff) | ((v & 0xff) << 8);
1561
 }
1562
+#endif /* !HAVE_DECL_BSWAP16 */
1563
 
1564
-inline uint32_t
1565
+#if !HAVE_DECL_BSWAP_32
1566
+static inline uint32_t
1567
 bswap_32 (uint32_t v)
1568
 {
1569
   return (  ((v & 0xff000000) >> 24)
1570
@@ -42,14 +46,10 @@
1571
 	  | ((v & 0x0000ff00) <<  8)
1572
 	  | ((v & 0x000000ff) << 24));
1573
 }
1574
+#endif /* !HAVE_DECL_BSWAP32 */
1575
 
1576
-inline uint64_t
1577
-bswap_identity_64 (uint64_t v)
1578
-{
1579
-  return v;
1580
-}
1581
-
1582
-inline uint64_t
1583
+#if !HAVE_DECL_BSWAP_64
1584
+static inline uint64_t
1585
 bswap_64 (uint64_t v)
1586
 {
1587
   return (  ((v & 0xff00000000000000ULL) >> 56)
1588
@@ -61,6 +61,6 @@
1589
 	  | ((v & 0x000000000000ff00ULL) << 40)
1590
 	  | ((v & 0x00000000000000ffULL) << 56));
1591
 }
1592
-#endif /* !defined(HAVE_BYTESWAP_H) */
1593
+#endif /* !HAVE_DECL_BSWAP64 */
1594
 
1595
 #endif /* !defined(_CTF_SWAP_H) */
1596
diff -x .git -x autom4te.cache -durN binutils.orig/libiberty/Makefile.in binutils/libiberty/Makefile.in
1597
--- binutils.orig/libiberty/Makefile.in	2019-12-16 13:05:01.042227000 +0000
1598
+++ binutils/libiberty/Makefile.in	2019-12-16 14:31:06.263555000 +0000
1599
@@ -123,7 +123,7 @@
1600
 # CONFIGURED_OFILES and funcs in configure.ac.  Also run "make maint-deps"
1601
 # to build the new rules.
1602
 CFILES = alloca.c argv.c asprintf.c atexit.c				\
1603
-	basename.c bcmp.c bcopy.c bsearch.c bzero.c			\
1604
+	basename.c bcmp.c bcopy.c bsearch.c bsearch_r.c bzero.c		\
1605
 	calloc.c choose-temp.c clock.c concat.c cp-demangle.c		\
1606
 	 cp-demint.c cplus-dem.c crc32.c				\
1607
 	d-demangle.c dwarfnames.c dyn-string.c				\
1608
@@ -167,6 +167,7 @@
1609
 	./regex.$(objext) ./cplus-dem.$(objext) ./cp-demangle.$(objext) \
1610
 	./md5.$(objext) ./sha1.$(objext) ./alloca.$(objext)		\
1611
 	./argv.$(objext)						\
1612
+	./bsearch_r.$(objext)						\
1613
 	./choose-temp.$(objext) ./concat.$(objext)			\
1614
 	./cp-demint.$(objext) ./crc32.$(objext) ./d-demangle.$(objext)	\
1615
 	./dwarfnames.$(objext) ./dyn-string.$(objext)			\
1616
@@ -596,6 +597,15 @@
1617
 	  $(COMPILE.c) $(PICFLAG) $(NOASANFLAG) $(srcdir)/bsearch.c -o noasan/$@; \
1618
 	else true; fi
1619
 	$(COMPILE.c) $(srcdir)/bsearch.c $(OUTPUT_OPTION)
1620
+
1621
+./bsearch_r.$(objext): $(srcdir)/bsearch_r.c config.h $(INCDIR)/ansidecl.h
1622
+	if [ x"$(PICFLAG)" != x ]; then \
1623
+	  $(COMPILE.c) $(PICFLAG) $(srcdir)/bsearch_r.c -o pic/$@; \
1624
+	else true; fi
1625
+	if [ x"$(NOASANFLAG)" != x ]; then \
1626
+	  $(COMPILE.c) $(PICFLAG) $(NOASANFLAG) $(srcdir)/bsearch_r.c -o noasan/$@; \
1627
+	else true; fi
1628
+	$(COMPILE.c) $(srcdir)/bsearch_r.c $(OUTPUT_OPTION)
1629
 
1630
 ./bzero.$(objext): $(srcdir)/bzero.c
1631
 	if [ x"$(PICFLAG)" != x ]; then \
1632
diff -x .git -x autom4te.cache -durN binutils.orig/libiberty/bsearch_r.c binutils/libiberty/bsearch_r.c
1633
--- binutils.orig/libiberty/bsearch_r.c	1970-01-01 01:00:00.000000000 +0100
1634
+++ binutils/libiberty/bsearch_r.c	2019-12-16 14:31:06.263681000 +0000
1635
@@ -0,0 +1,92 @@
1636
+/*
1637
+ * Copyright (c) 1990 Regents of the University of California.
1638
+ * All rights reserved.
1639
+ *
1640
+ * Redistribution and use in source and binary forms, with or without
1641
+ * modification, are permitted provided that the following conditions
1642
+ * are met:
1643
+ * 1. Redistributions of source code must retain the above copyright
1644
+ *    notice, this list of conditions and the following disclaimer.
1645
+ * 2. Redistributions in binary form must reproduce the above copyright
1646
+ *    notice, this list of conditions and the following disclaimer in the
1647
+ *    documentation and/or other materials provided with the distribution.
1648
+ * 3. [rescinded 22 July 1999]
1649
+ * 4. Neither the name of the University nor the names of its contributors
1650
+ *    may be used to endorse or promote products derived from this software
1651
+ *    without specific prior written permission.
1652
+ *
1653
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
1654
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
1655
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
1656
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
1657
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
1658
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
1659
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
1660
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
1661
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
1662
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
1663
+ * SUCH DAMAGE.
1664
+ */
1665
+
1666
+/*
1667
+
1668
+@deftypefn Supplemental void* bsearch_r (const void *@var{key}, @
1669
+  const void *@var{base}, size_t @var{nmemb}, size_t @var{size}, @
1670
+  int (*@var{compar})(const void *, const void *, void *), void *@var{arg})
1671
+
1672
+Performs a search over an array of @var{nmemb} elements pointed to by
1673
+@var{base} for a member that matches the object pointed to by @var{key}.
1674
+The size of each member is specified by @var{size}.  The array contents
1675
+should be sorted in ascending order according to the @var{compar}
1676
+comparison function.  This routine should take two arguments pointing to
1677
+the @var{key} and to an array member, in that order, and should return an
1678
+integer less than, equal to, or greater than zero if the @var{key} object
1679
+is respectively less than, matching, or greater than the array member.
1680
+
1681
+@end deftypefn
1682
+
1683
+*/
1684
+
1685
+#include "config.h"
1686
+#include "ansidecl.h"
1687
+#include <sys/types.h>		/* size_t */
1688
+#include <stdio.h>
1689
+
1690
+/*
1691
+ * Perform a binary search.
1692
+ *
1693
+ * The code below is a bit sneaky.  After a comparison fails, we
1694
+ * divide the work in half by moving either left or right. If lim
1695
+ * is odd, moving left simply involves halving lim: e.g., when lim
1696
+ * is 5 we look at item 2, so we change lim to 2 so that we will
1697
+ * look at items 0 & 1.  If lim is even, the same applies.  If lim
1698
+ * is odd, moving right again involes halving lim, this time moving
1699
+ * the base up one item past p: e.g., when lim is 5 we change base
1700
+ * to item 3 and make lim 2 so that we will look at items 3 and 4.
1701
+ * If lim is even, however, we have to shrink it by one before
1702
+ * halving: e.g., when lim is 4, we still looked at item 2, so we
1703
+ * have to make lim 3, then halve, obtaining 1, so that we will only
1704
+ * look at item 3.
1705
+ */
1706
+void *
1707
+bsearch_r (register const void *key, const void *base0,
1708
+	   size_t nmemb, register size_t size,
1709
+	   register int (*compar)(const void *, const void *, void *),
1710
+	   void *arg)
1711
+{
1712
+	register const char *base = (const char *) base0;
1713
+	register int lim, cmp;
1714
+	register const void *p;
1715
+
1716
+	for (lim = nmemb; lim != 0; lim >>= 1) {
1717
+		p = base + (lim >> 1) * size;
1718
+		cmp = (*compar)(key, p, arg);
1719
+		if (cmp == 0)
1720
+			return (void *)p;
1721
+		if (cmp > 0) {	/* key > p: move right */
1722
+			base = (const char *)p + size;
1723
+			lim--;
1724
+		} /* else move left */
1725
+	}
1726
+	return (NULL);
1727
+}
1728

Return to bug 242053