]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
add auto generated mod_* targets (generated from modules.conf. A step towards make...
authorMichael Jerris <mike@jerris.com>
Tue, 3 Apr 2007 10:53:47 +0000 (10:53 +0000)
committerMichael Jerris <mike@jerris.com>
Tue, 3 Apr 2007 10:53:47 +0000 (10:53 +0000)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4840 d0543943-73ff-0310-b7d9-9358b9ac24b2

Makefile.am
src/mod/Makefile.am

index 13f8375d130302c1079838b1bd11ea036552434f..c22d4b3b3bdadb88b3bda5a0d6b9d48eb0b42b2b 100644 (file)
@@ -113,7 +113,7 @@ nodist_libfreeswitch_la_SOURCES = src/include/switch_version.h
 MOD_LINK       = $(BASE)/libfreeswitch.la
 
 CLEANFILES     = src/include/switch_version.h
-BUILT_SOURCES  = src/include/switch_version.h
+BUILT_SOURCES  = src/include/switch_version.h ./$(DEPDIR)/modules.targets
 
 bin_PROGRAMS = freeswitch
 freeswitch_SOURCES = src/switch.c
@@ -122,7 +122,7 @@ freeswitch_CFLAGS = $(AM_CFLAGS)
 freeswitch_LDFLAGS = $(AM_LDFLAGS) -rpath $(libdir)
 freeswitch_LDADD = libfreeswitch.la libs/apr/libapr-1.la
 
-$(libfreeswitch_la_SOURCES): $(CORE_LIBS) $(switch_builddir)/quiet_libtool
+$(libfreeswitch_la_SOURCES): $(CORE_LIBS) $(switch_builddir)/quiet_libtool modules.conf
 
 $(switch_builddir)/quiet_libtool: $(switch_builddir)/libtool
        @cat libtool | sed -e 's|$$show "$$command"|if test -z "$$suppress_output" ; then $$show "Compiling $$srcfile ..." ; fi|' > quiet_libtool
@@ -239,6 +239,19 @@ eclean: clean
 megaclean: eclean modclean
        rm -f `find ./libs -name \*.la`
 
+@am__include@ @am__quote@./$(DEPDIR)/modules.targets@am__quote@
+
+modules.conf:
+       if test -f $@; then touch $@; else cp build/modules.conf.in $@ 
+
+./$(DEPDIR)/modules.targets: modules.conf
+       mods=`cat modules.conf | sed -e 's|^.*/||'`; echo MODULE_TARGETS=\"$$mods\" > ./$(DEPDIR)/modules.targets
+
+$(MODULE_TARGETS):
+       @set fnord $$MAKEFLAGS; amf=$$2; \
+       (cd src/mod && $(MAKE) $(AM_MAKEFLAGS) $@) \
+          || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+       test -z "$$fail"
 
 # Special targets
 
index 4cca14281fd80934541b53dfec99a446161ea786..43a72e155ba68a5242591df635a39d6773cc4192 100644 (file)
@@ -76,3 +76,15 @@ uninstall:
        @echo
        @echo done Uninstalling Modules
 
+
+@am__include@ @am__quote@$(switch_builddir)/$(DEPDIR)/modules.targets@am__quote@
+
+$(MODULE_TARGETS):
+       @set fnord $$MAKEFLAGS; amf=$$2; \
+       moddir=`grep $@ $(switch_builddir)/modules.conf | sed -e 's|#||'` ; \
+       (if test -f $$moddir/Makefile ; then \
+               cd $$moddir && MODNAME=$(MOD_NAME) BASE=$(switch_builddir) $(MAKE) $(AM_MAKEFLAGS); else\
+               cd $$moddir && MODNAME=$(MOD_NAME) BASE=$(switch_builddir) $(MAKE) $(AM_MAKEFLAGS) -f $(switch_builddir)/build/modmake.rules;\
+       fi;)\
+          || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+       test -z "$$fail"