summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorDavid M. Lee <dlee@digium.com>2013-04-01 13:34:51 +0000
committerDavid M. Lee <dlee@digium.com>2013-04-01 13:34:51 +0000
commit2d45dbc79bf3f65a1b74edfa27f4602a4ef68dd7 (patch)
treef019e38cd7a3dff2a848060e01527fe898c0c9bc /Makefile
parentad191ebfcd1a3cf05c10d68cc1aba06ee833253d (diff)
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
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile12
1 files changed, 6 insertions, 6 deletions
diff --git a/Makefile b/Makefile
index 02d6fa55d..63c398021 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 "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" > $@
@echo "<!DOCTYPE docs SYSTEM \"appdocsxml.dtd\">" >> $@
@@ -463,7 +463,7 @@ doc/core-en_US.xml: makeopts $(foreach dir,$(MOD_SUBDIRS),$(shell $(GREP) -l "la
@echo
@echo "</docs>" >> $@
-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 ---"