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.
This commit is contained in:
H.J. Lu 2021-01-12 05:45:28 -08:00
parent 18bfb5057f
commit d546b61084
30 changed files with 225 additions and 0 deletions

View File

@ -1,3 +1,10 @@
2021-01-12 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/26792
* configure.ac: Use GNU_MAKE_JOBSERVER.
* aclocal.m4: Regenerated.
* configure: Likewise.
2021-01-12 H.J. Lu <hongjiu.lu@intel.com>
PR ld/27171

1
bfd/aclocal.m4 vendored
View File

@ -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])

18
bfd/configure vendored
View File

@ -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

View File

@ -1146,3 +1146,5 @@ AC_SUBST(htmldir)
AC_SUBST(pdfdir)
AC_OUTPUT
GNU_MAKE_JOBSERVER

View File

@ -1,3 +1,10 @@
2021-01-12 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/26792
* configure.ac: Use GNU_MAKE_JOBSERVER.
* aclocal.m4: Regenerated.
* configure: Likewise.
2021-01-12 Nick Clifton <nickc@redhat.com>
* po/fr.po: Updated French translation.

1
binutils/aclocal.m4 vendored
View File

@ -1192,6 +1192,7 @@ m4_include([../config/depstand.m4])
m4_include([../config/enable.m4])
m4_include([../config/gettext-sister.m4])
m4_include([../config/iconv.m4])
m4_include([../config/jobserver.m4])
m4_include([../config/largefile.m4])
m4_include([../config/lcmessage.m4])
m4_include([../config/lead-dot.m4])

18
binutils/configure vendored
View File

@ -18051,3 +18051,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

View File

@ -494,3 +494,5 @@ AC_SUBST(pdfdir)
AC_CONFIG_FILES(Makefile doc/Makefile po/Makefile.in:po/Make-in)
AC_OUTPUT
GNU_MAKE_JOBSERVER

View File

@ -1,3 +1,8 @@
2021-01-12 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/26792
* jobserver.m4: New file.
2021-01-11 H.J. Lu <hongjiu.lu@intel.com>
PR ld/27173

24
config/jobserver.m4 Normal file
View File

@ -0,0 +1,24 @@
dnl GNU_MAKE_JOBSERVER
dnl
dnl Implement a workaround for GNU mak jobserver by adding the '+' to the
dnl recipe line in Makefiles generated by automake.
dnl
AC_DEFUN([GNU_MAKE_JOBSERVER],[dnl
m4_pattern_allow(AM_V_CCLD)
touch config.status.tmp
dnl Must keep the same timestamps on config.status and Makefile.
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])

View File

@ -1,3 +1,10 @@
2021-01-12 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/26792
* configure.ac: Use GNU_MAKE_JOBSERVER.
* aclocal.m4: Regenerated.
* configure: Likewise.
2021-01-12 Nick Clifton <nickc@redhat.com>
* po/fr.po: Updated French translation.

1
gas/aclocal.m4 vendored
View File

@ -1190,6 +1190,7 @@ m4_include([../bfd/warning.m4])
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/lcmessage.m4])
m4_include([../config/lead-dot.m4])

18
gas/configure vendored
View File

@ -17775,3 +17775,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

View File

@ -1076,3 +1076,5 @@ AC_CONFIG_COMMANDS([default],
te_file=${te_file}])
AC_OUTPUT
GNU_MAKE_JOBSERVER

View File

@ -1,3 +1,10 @@
2021-01-12 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/26792
* configure.ac: Use GNU_MAKE_JOBSERVER.
* aclocal.m4: Regenerated.
* configure: Likewise.
2021-01-11 H.J. Lu <hongjiu.lu@intel.com>
PR ld/27173

1
gprof/aclocal.m4 vendored
View File

@ -1170,6 +1170,7 @@ AC_SUBST([am__untar])
m4_include([../bfd/warning.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])

18
gprof/configure vendored
View File

@ -15083,3 +15083,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

View File

@ -74,3 +74,5 @@ AC_SUBST(pdfdir)
AC_CONFIG_FILES([Makefile po/Makefile.in:po/Make-in])
AC_OUTPUT
GNU_MAKE_JOBSERVER

View File

@ -1,3 +1,10 @@
2021-01-12 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/26792
* configure.ac: Use GNU_MAKE_JOBSERVER.
* aclocal.m4: Regenerated.
* configure: Likewise.
2021-01-12 H.J. Lu <hongjiu.lu@intel.com>
PR ld/27171

1
ld/aclocal.m4 vendored
View File

@ -1191,6 +1191,7 @@ m4_include([../config/acx.m4])
m4_include([../config/depstand.m4])
m4_include([../config/enable.m4])
m4_include([../config/gettext-sister.m4])
m4_include([../config/jobserver.m4])
m4_include([../config/largefile.m4])
m4_include([../config/lcmessage.m4])
m4_include([../config/lead-dot.m4])

18
ld/configure vendored
View File

@ -20629,3 +20629,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

View File

@ -597,3 +597,5 @@ AC_SUBST(pdfdir)
AC_CONFIG_FILES(Makefile po/Makefile.in:po/Make-in)
AC_OUTPUT
GNU_MAKE_JOBSERVER

View File

@ -1,3 +1,10 @@
2021-01-12 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/26792
* configure.ac: Use GNU_MAKE_JOBSERVER.
* aclocal.m4: Regenerated.
* configure: Likewise.
2021-01-11 H.J. Lu <hongjiu.lu@intel.com>
PR ld/27173

1
libctf/aclocal.m4 vendored
View File

@ -1232,6 +1232,7 @@ m4_include([../config/acx.m4])
m4_include([../config/depstand.m4])
m4_include([../config/enable.m4])
m4_include([../config/gettext-sister.m4])
m4_include([../config/jobserver.m4])
m4_include([../config/lead-dot.m4])
m4_include([../config/override.m4])
m4_include([../config/warnings.m4])

18
libctf/configure vendored
View File

@ -15768,3 +15768,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

View File

@ -210,3 +210,5 @@ AC_SUBST(VERSION_FLAGS)
AC_CONFIG_FILES(Makefile)
AC_CONFIG_HEADERS(config.h)
AC_OUTPUT
GNU_MAKE_JOBSERVER

View File

@ -1,3 +1,10 @@
2021-01-12 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/26792
* configure.ac: Use GNU_MAKE_JOBSERVER.
* aclocal.m4: Regenerated.
* configure: Likewise.
2021-01-12 Nick Clifton <nickc@redhat.com>
* po/sr.po: Updated Serbian translation.

1
opcodes/aclocal.m4 vendored
View File

@ -1172,6 +1172,7 @@ m4_include([../bfd/warning.m4])
m4_include([../config/acx.m4])
m4_include([../config/depstand.m4])
m4_include([../config/gettext-sister.m4])
m4_include([../config/jobserver.m4])
m4_include([../config/lead-dot.m4])
m4_include([../config/nls.m4])
m4_include([../config/override.m4])

18
opcodes/configure vendored
View File

@ -15488,3 +15488,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

View File

@ -382,3 +382,5 @@ AC_SUBST(BFD_MACHINES)
AC_CONFIG_FILES([Makefile po/Makefile.in:po/Make-in])
AC_OUTPUT
GNU_MAKE_JOBSERVER