From: David M. Lee Date: Mon, 1 Apr 2013 13:34:51 +0000 (+0000) Subject: Fix parallel make problems. X-Git-Tag: 13.0.0-beta1~1962 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2d45dbc79bf3f65a1b74edfa27f4602a4ef68dd7;p=thirdparty%2Fasterisk.git Fix parallel make problems. Occasionally, make -j would fail due to missing includes, or other unusual errors. This was due to the 'cleantest' target, which was designed to force a make clean when some change in the code would cause the typical depedency checking to fail. Several targets in the main Makefile did not depend upon cleantest, hence would run in parallel to it. By adding the dependency, make -j runs happily now. Review: https://reviewboard.asterisk.org/r/2418/ ........ Merged revisions 384410 from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged revisions 384411 from http://svn.asterisk.org/svn/asterisk/branches/11 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@384412 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/Makefile b/Makefile index 02d6fa55da..63c3980215 100644 --- a/Makefile +++ b/Makefile @@ -377,22 +377,22 @@ $(MOD_SUBDIRS): makeopts $(OTHER_SUBDIRS): makeopts +@_ASTCFLAGS="$(OTHER_SUBDIR_CFLAGS) $(_ASTCFLAGS)" ASTCFLAGS="$(ASTCFLAGS)" _ASTLDFLAGS="$(_ASTLDFLAGS)" ASTLDFLAGS="$(ASTLDFLAGS)" $(SUBMAKE) --no-builtin-rules -C $@ SUBDIR=$@ all -defaults.h: makeopts build_tools/make_defaults_h +defaults.h: makeopts cleantest build_tools/make_defaults_h @build_tools/make_defaults_h > $@.tmp @cmp -s $@.tmp $@ || mv $@.tmp $@ @rm -f $@.tmp -main/version.c: FORCE +main/version.c: FORCE cleantest @build_tools/make_version_c > $@.tmp @cmp -s $@.tmp $@ || mv $@.tmp $@ @rm -f $@.tmp -include/asterisk/buildopts.h: menuselect.makeopts +include/asterisk/buildopts.h: menuselect.makeopts cleantest @build_tools/make_buildopts_h > $@.tmp @cmp -s $@.tmp $@ || mv $@.tmp $@ @rm -f $@.tmp -include/asterisk/build.h: +include/asterisk/build.h: cleantest @build_tools/make_build_h > $@.tmp @cmp -s $@.tmp $@ || mv $@.tmp $@ @rm -f $@.tmp @@ -449,7 +449,7 @@ datafiles: _all doc/core-en_US.xml done $(MAKE) -C sounds install -doc/core-en_US.xml: makeopts $(foreach dir,$(MOD_SUBDIRS),$(shell $(GREP) -l "language=\"en_US\"" $(dir)/*.c $(dir)/*.cc 2>/dev/null)) +doc/core-en_US.xml: makeopts cleantest $(foreach dir,$(MOD_SUBDIRS),$(shell $(GREP) -l "language=\"en_US\"" $(dir)/*.c $(dir)/*.cc 2>/dev/null)) @printf "Building Documentation For: " @echo "" > $@ @echo "" >> $@ @@ -463,7 +463,7 @@ doc/core-en_US.xml: makeopts $(foreach dir,$(MOD_SUBDIRS),$(shell $(GREP) -l "la @echo @echo "" >> $@ -doc/full-en_US.xml: makeopts $(foreach dir,$(MOD_SUBDIRS),$(shell $(GREP) -l "language=\"en_US\"" $(dir)/*.c $(dir)/*.cc 2>/dev/null)) +doc/full-en_US.xml: makeopts cleantest $(foreach dir,$(MOD_SUBDIRS),$(shell $(GREP) -l "language=\"en_US\"" $(dir)/*.c $(dir)/*.cc 2>/dev/null)) ifeq ($(PYTHON),:) @echo "--------------------------------------------------------------------------" @echo "--- Please install python to build full documentation ---"