instead of using a for loop to call make on each subdirectory, use a target for

each subdirectory.
 - the shell code in the for loop doesn't have a manually catch errors from
   make on a subdirectory
 - you can now run something like "make apps" or "make channels" from the root
   source directory
 - This should allow for better support for parallel instances of make (the -j
   option) since make can work on each subdirectory target in parallel


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@35436 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Russell Bryant
2006-06-22 12:14:29 +00:00
parent ce76568c52
commit be0d611984

View File

@@ -368,7 +368,7 @@ _all: all
@echo " + make install +"
@echo " +-------------------------------------------+"
all: cleantest config.status menuselect.makeopts depend asterisk subdirs
all: cleantest config.status menuselect.makeopts depend asterisk $(SUBDIRS)
config.status: configure
@CFLAGS="" ./configure
@@ -480,10 +480,11 @@ asterisk: include/asterisk/buildopts.h editline/libedit.a db1-ast/libdb1.a $(OBJ
muted: muted.o
$(CC) $(AUDIO_LIBS) -o muted muted.o
subdirs:
@for x in $(MOD_SUBDIRS); do CFLAGS="$(MOD_SUBDIR_CFLAGS)$(ASTCFLAGS)" $(MAKE) -C $$x || exit 1 ; done
@CFLAGS="$(OTHER_SUBDIR_CFLAGS)$(ASTCFLAGS)" $(MAKE) -C utils
@CFLAGS="$(OTHER_SUBDIR_CFLAGS)$(ASTCFLAGS)" $(MAKE) -C agi
$(MOD_SUBDIRS): FORCE
@CFLAGS="$(MOD_SUBDIR_CFLAGS)$(ASTCFLAGS)" $(MAKE) -C $@
$(OTHER_SUBDIRS): FORCE
@CFLAGS="$(OTHER_SUBDIR_CFLAGS)$(ASTCFLAGS)" $(MAKE) -C $@
clean-depend:
@for x in $(SUBDIRS); do $(MAKE) -C $$x clean-depend || exit 1 ; done