Fix libatomic multilib parallel build (PR other/67627)

The all-multi target may be built in parallel with the %_.lo
targets which generate make dependencies that are parsed during
the build of all-multi.

This patch forces all-multi to only run after the *_.lo targets
are done.

libatomic:
	PR other/67627
	* Makefile.am (all-multi): Add dependency.
	* Makefile.in: Regenerate.

From-SVN: r232102
This commit is contained in:
Szabolcs Nagy 2016-01-06 14:51:35 +00:00 committed by Szabolcs Nagy
parent 0c3e5dd1e6
commit 7c961392a6
3 changed files with 20 additions and 6 deletions

View File

@ -1,3 +1,9 @@
2016-01-06 Szabolcs Nagy <szabolcs.nagy@arm.com>
PR other/67627
* Makefile.am (all-multi): Add dependency.
* Makefile.in: Regenerate.
2016-01-04 Jakub Jelinek <jakub@redhat.com>
Update copyright years.

View File

@ -139,3 +139,10 @@ endif
libatomic_convenience_la_SOURCES = $(libatomic_la_SOURCES)
libatomic_convenience_la_LIBADD = $(libatomic_la_LIBADD)
# Override the automake generated all-multi rule to guarantee that all-multi
# is not run in parallel with the %_.lo rules which generate $(DEPDIR)/*.Ppo
# makefile fragments to avoid broken *.Ppo getting included into the Makefile
# when it is reloaded during the build of all-multi.
all-multi: $(libatomic_la_LIBADD)
$(MULTIDO) $(AM_MAKEFLAGS) DO=all multi-do # $(MAKE)

View File

@ -496,12 +496,6 @@ clean-libtool:
distclean-libtool:
-rm -f libtool config.lt
# GNU Make needs to see an explicit $(MAKE) variable in the command it
# runs to enable its job server during parallel builds. Hence the
# comments below.
all-multi:
$(MULTIDO) $(AM_MAKEFLAGS) DO=all multi-do # $(MAKE)
install-multi:
$(MULTIDO) $(AM_MAKEFLAGS) DO=install multi-do # $(MAKE)
@ -800,6 +794,13 @@ vpath % $(strip $(search_path))
%_.lo: Makefile
$(LTCOMPILE) $(M_DEPS) $(M_SIZE) $(M_IFUNC) -c -o $@ $(M_SRC)
# Override the automake generated all-multi rule to guarantee that all-multi
# is not run in parallel with the %_.lo rules which generate $(DEPDIR)/*.Ppo
# makefile fragments to avoid broken *.Ppo getting included into the Makefile
# when it is reloaded during the build of all-multi.
all-multi: $(libatomic_la_LIBADD)
$(MULTIDO) $(AM_MAKEFLAGS) DO=all multi-do # $(MAKE)
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT: