From: Walter Doekes Date: Fri, 14 Feb 2014 13:29:22 +0000 (+0000) Subject: buildsystem: Don't force main to depend on everything else. X-Git-Tag: 12.2.0-rc1~158 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e628b1488dee545a40a0c02240bd05e829b68bbc;p=thirdparty%2Fasterisk.git buildsystem: Don't force main to depend on everything else. Directory 'main' only needs to depend on embedded modules. If no module embedding is selected, the dependency is dropped. Review: https://reviewboard.asterisk.org/r/3212/ ........ Merged revisions 408083 from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged revisions 408084 from http://svn.asterisk.org/svn/asterisk/branches/11 git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/12@408085 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/Makefile b/Makefile index 223cafb543..271faeaea6 100644 --- a/Makefile +++ b/Makefile @@ -101,6 +101,8 @@ export LDCONFIG_FLAGS export PYTHON -include makeopts +# we want the MENUSELECT_EMBED var +-include menuselect.makeopts # start the primary CFLAGS and LDFLAGS with any that were provided # to the configure script @@ -359,12 +361,16 @@ makeopts.embed_rules: menuselect.makeopts $(SUBDIRS): makeopts .lastclean main/version.c include/asterisk/build.h include/asterisk/buildopts.h defaults.h makeopts.embed_rules ifeq ($(findstring $(OSARCH), mingw32 cygwin ),) + ifneq ($(MENUSELECT_EMBED),) # Non-windows: # ensure that all module subdirectories are processed before 'main' during # a parallel build, since if there are modules selected to be embedded the # directories containing them must be completed before the main Asterisk - # binary can be built + # binary can be built. + # If MENUSELECT_EMBED is empty, we don't need this and allow 'main' to be + # be built without building all dependencies first. main: $(filter-out main,$(MOD_SUBDIRS)) + endif else # Windows: we need to build main (i.e. the asterisk dll) first, # followed by res, followed by the other directories, because