From d546b61084cec687e0063b2e0e169b4690341c23 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Tue, 12 Jan 2021 05:45:28 -0800 Subject: Implement a workaround for GNU mak jobserver Compiling binutils using -flto=jobserver with GCC 11 leads to libtool: link: gcc -W -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wstack-usage=262144 -Wwrite-strings -I../../gas/../zlib -g -O2 -fprofile-generate -flto=jobserver -o as-new app.o as.o atof-generic.o compress-debug.o cond.o depend.o dwarf2dbg.o dw2gencfi.o ecoff.o ehopt.o expr.o flonum-copy.o flonum-konst.o flonum-mult.o frags.o hash.o input-file.o input-scrub.o listing.o literal.o macro.o messages.o output-file.o read.o remap.o sb.o stabs.o subsegs.o symbols.o write.o config/tc-i386.o config/obj-elf.o config/atof-ieee.o ../opcodes/.libs/libopcodes.a ../bfd/.libs/libbfd.a -L/tmp/binutils-gdb/objdir/zlib -lz ../libiberty/libiberty.a -ldl lto-wrapper: warning: jobserver is not available: '--jobserver-auth=' is not present in 'MAKEFLAGS' since the '+' is missing on the recipe line in Makefiles generated by automake. Add the '+' to the recipe line by hand. bfd/ PR binutils/26792 * configure.ac: Use GNU_MAKE_JOBSERVER. * aclocal.m4: Regenerated. * configure: Likewise. binutils/ PR binutils/26792 * configure.ac: Use GNU_MAKE_JOBSERVER. * aclocal.m4: Regenerated. * configure: Likewise. config/ PR binutils/26792 * jobserver.m4: New file. gas/ PR binutils/26792 * configure.ac: Use GNU_MAKE_JOBSERVER. * aclocal.m4: Regenerated. * configure: Likewise. gprof/ PR binutils/26792 * configure.ac: Use GNU_MAKE_JOBSERVER. * aclocal.m4: Regenerated. * configure: Likewise. ld/ PR binutils/26792 * configure.ac: Use GNU_MAKE_JOBSERVER. * aclocal.m4: Regenerated. * configure: Likewise. libctf/ PR binutils/26792 * configure.ac: Use GNU_MAKE_JOBSERVER. * aclocal.m4: Regenerated. * configure: Likewise. opcodes/ PR binutils/26792 * configure.ac: Use GNU_MAKE_JOBSERVER. * aclocal.m4: Regenerated. * configure: Likewise. --- bfd/ChangeLog | 7 +++++++ bfd/aclocal.m4 | 1 + bfd/configure | 18 ++++++++++++++++++ bfd/configure.ac | 2 ++ 4 files changed, 28 insertions(+) (limited to 'bfd') diff --git a/bfd/ChangeLog b/bfd/ChangeLog index eaeb47d..158b798 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,12 @@ 2021-01-12 H.J. Lu + PR binutils/26792 + * configure.ac: Use GNU_MAKE_JOBSERVER. + * aclocal.m4: Regenerated. + * configure: Likewise. + +2021-01-12 H.J. Lu + PR ld/27171 * reloc.c (bfd_perform_relocation): Adjust R_AMD64_DIR64 and R_AMD64_DIR32 relocations for PE/x86-64 inputs. diff --git a/bfd/aclocal.m4 b/bfd/aclocal.m4 index 4a6a47c..519325d 100644 --- a/bfd/aclocal.m4 +++ b/bfd/aclocal.m4 @@ -1170,6 +1170,7 @@ AC_SUBST([am__untar]) m4_include([../config/acx.m4]) m4_include([../config/depstand.m4]) m4_include([../config/gettext-sister.m4]) +m4_include([../config/jobserver.m4]) m4_include([../config/largefile.m4]) m4_include([../config/lead-dot.m4]) m4_include([../config/nls.m4]) diff --git a/bfd/configure b/bfd/configure index 32c547f..ed328de 100755 --- a/bfd/configure +++ b/bfd/configure @@ -19354,3 +19354,21 @@ if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} fi + + +touch config.status.tmp +if touch --reference=config.status config.status.tmp > /dev/null 2>&1; then + sed '/as_fn_exit 0/i \ +sed -e \"s/^\t\\\(\\\$(AM_V_CCLD)\\\)/\t+ \\\1/\" Makefile > Makefile.tmp \ +touch --reference=Makefile Makefile.tmp \ +mv Makefile.tmp Makefile \ +' config.status > config.status.tmp + touch --reference=config.status config.status.tmp + mv config.status.tmp config.status + chmod +x config.status + sed -e "s/^\t\(\$(AM_V_CCLD)\)/\t+ \1/" Makefile > Makefile.tmp + touch --reference=Makefile Makefile.tmp + mv Makefile.tmp Makefile +else + rm -f config.status.tmp +fi diff --git a/bfd/configure.ac b/bfd/configure.ac index 0797a08..102a221 100644 --- a/bfd/configure.ac +++ b/bfd/configure.ac @@ -1146,3 +1146,5 @@ AC_SUBST(htmldir) AC_SUBST(pdfdir) AC_OUTPUT + +GNU_MAKE_JOBSERVER -- cgit v1.1