1
0
mirror of https://github.com/signalwire/freeswitch.git synced 2025-03-05 02:02:01 +00:00

do a better job with dependency tracking so the the mods don't keep trying to build or install when they don't need to. This should start to help with the speed of the build.

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4599 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
Michael Jerris 2007-03-15 01:32:18 +00:00
parent d69cde6367
commit d35dda719e
11 changed files with 87 additions and 50 deletions
build
libs/libetpan
src/mod
Makefile.amMakefile.in
languages
mod_spidermonkey
mod_spidermonkey_core_db
mod_spidermonkey_etpan
mod_spidermonkey_odbc
mod_spidermonkey_skel
mod_spidermonkey_teletone

@ -79,12 +79,12 @@ $(MODNAME).$(DYNAMIC_LIB_EXTEN): $(LOCAL_LIBADD) $(OUR_DEPS) $(LOCAL_OBJS) $(SOU
$(CXXLINK) $(SOLINK) $(MODNAME).o -o $(MODNAME).$(DYNAMIC_LIB_EXTEN) $(LIBS) $(LOCAL_LDFLAGS) $(LOCAL_OBJS) $(LOCAL_LIBADD); \
fi;
mod_clean:
rm -fr *.$(DYNAMIC_LIB_EXTEN) *.o *~ .libs
mod_install:
mod_install: $(DESTDIR)$(PREFIX)/mod/$(MODNAME).$(DYNAMIC_LIB_EXTEN)
$(DESTDIR)$(PREFIX)/mod/$(MODNAME).$(DYNAMIC_LIB_EXTEN):$(MODNAME).$(DYNAMIC_LIB_EXTEN)
$(LTINSTALL) $(MODNAME).$(DYNAMIC_LIB_EXTEN) $(DESTDIR)$(PREFIX)/mod
mod_uninstall:

@ -0,0 +1,3 @@
#! /bin/sh
./configure "$@" --disable-shared --with-pic

@ -1,7 +1,7 @@
CONF_MODULES=$(shell grep -v "\#" $(switch_builddir)/modules.conf)
FOUND_MODULES=$(shell find . -type d -name mod_\*)
OUR_MODULES=`if test -z $(MODULES) ; then echo $(CONF_MODULES) ; else echo $(MODULES) ; fi ;`
OUR_CLEAN_MODULES=`if test -z $(MODULES) ; then echo $(CONF_MODULES) $(FOUND_MODULES) ; else echo $(MODULES) ; fi ;`
OUR_MODULES=`if test -z "$(MODULES)" ; then echo $(CONF_MODULES) ; else echo $(MODULES) ; fi ;`
OUR_CLEAN_MODULES=`if test -z "$(MODULES)" ; then echo $(CONF_MODULES) $(FOUND_MODULES) ; else echo $(MODULES) ; fi ;`
MOD_NAME=`echo $$i | sed -e 's|^.*/||'`
MOD_DIR=`if test -d $(switch_srcdir)/src/mod/$$i ; then echo $(switch_srcdir)/src/mod/$$i ; else echo $$i ; fi;`
@ -12,7 +12,6 @@ all:
@for i in $(OUR_MODULES) ; do \
echo making $$i ; \
moddir=$(MOD_DIR); \
echo $(MOD_NAME); \
if test -f $$moddir/Makefile ; then \
cd $$moddir && MODNAME=$(MOD_NAME) BASE=$(switch_builddir) $(MAKE) ; else \
cd $$moddir && MODNAME=$(MOD_NAME) BASE=$(switch_builddir) $(MAKE) -f $(switch_builddir)/build/modmake.rules ; \

@ -194,8 +194,8 @@ uint64_t_fmt = @uint64_t_fmt@
voidp_size = @voidp_size@
CONF_MODULES = $(shell grep -v "\#" $(switch_builddir)/modules.conf)
FOUND_MODULES = $(shell find . -type d -name mod_\*)
OUR_MODULES = `if test -z $(MODULES) ; then echo $(CONF_MODULES) ; else echo $(MODULES) ; fi ;`
OUR_CLEAN_MODULES = `if test -z $(MODULES) ; then echo $(CONF_MODULES) $(FOUND_MODULES) ; else echo $(MODULES) ; fi ;`
OUR_MODULES = `if test -z "$(MODULES)" ; then echo $(CONF_MODULES) ; else echo $(MODULES) ; fi ;`
OUR_CLEAN_MODULES = `if test -z "$(MODULES)" ; then echo $(CONF_MODULES) $(FOUND_MODULES) ; else echo $(MODULES) ; fi ;`
MOD_NAME = `echo $$i | sed -e 's|^.*/||'`
MOD_DIR = `if test -d $(switch_srcdir)/src/mod/$$i ; then echo $(switch_srcdir)/src/mod/$$i ; else echo $$i ; fi;`
all: all-am
@ -361,7 +361,6 @@ all:
@for i in $(OUR_MODULES) ; do \
echo making $$i ; \
moddir=$(MOD_DIR); \
echo $(MOD_NAME); \
if test -f $$moddir/Makefile ; then \
cd $$moddir && MODNAME=$(MOD_NAME) BASE=$(switch_builddir) $(MAKE) ; else \
cd $$moddir && MODNAME=$(MOD_NAME) BASE=$(switch_builddir) $(MAKE) -f $(switch_builddir)/build/modmake.rules ; \

@ -1,15 +1,17 @@
MODNAME=mod_spidermonkey
include sm.mak
WANT_CURL=yes
include ../../../../build/modmake.rules
local_depend:
cd $(BASE)/libs/curl && $(MAKE)
cd $(BASE)/libs/js/nsprpub && $(MAKE)
cd $(BASE)/libs/js && $(MAKE)
LOCAL_CFLAGS=
LOCAL_LDFLAGS=
LOCAL_LIBADD=
depend_install:
cd $(BASE)/libs/js/nsprpub && $(MAKE) install
cd $(BASE)/libs/js && $(MAKE) install
$(LINK) $(SOLINK) $(MODNAME).o -o $(MODNAME).$(DYNAMIC_LIB_EXTEN) $(LIBS) $(LOCAL_LDFLAGS) $(LOCAL_OBJS)
include sm.mak
depend_install: $(DESTDIR)$(PREFIX)/lib/libjs.la
$(DESTDIR)$(PREFIX)/lib/libjs.la: $(JS_DIR)/nsprpub/pr/src/libnspr4.so $(JS_DIR)/nsprpub/lib/ds/libplds4.so $(JS_DIR)/nsprpub/lib/libc/src/libplc4.so $(JS_DIR)/libjs.la
cd $(JS_DIR)/nsprpub/pr/src && $(INSTALL) libnspr4.so $(DESTDIR)$(PREFIX)/lib
cd $(JS_DIR)/nsprpub/lib/ds && $(INSTALL) libplds4.so $(DESTDIR)$(PREFIX)/lib
cd $(JS_DIR)/nsprpub/lib/libc/src && $(INSTALL) libplc4.so $(DESTDIR)$(PREFIX)/lib
cd $(JS_DIR) && $(LTINSTALL) libjs.la $(DESTDIR)$(PREFIX)/lib

@ -1,2 +1,13 @@
LOCAL_CFLAGS = -I$(BASE)/libs/js/src -I$(BASE)/libs/js/nsprpub/dist/include/nspr -DXP_UNIX -I../mod_spidermonkey -DJS_THREADSAFE -DJS_HAS_FILE_OBJECT=1
LOCAL_LDFLAGS = -L$(BASE)/libs/js/nsprpub/pr/src -L$(BASE)/libs/js/nsprpub/dist/lib -lnspr4 $(BASE)/libs/js/libjs.la
switch_srcdir=../../../..
JS_DIR=$(switch_srcdir)/libs/js
JSLA=$(JS_DIR)/libjs.la
LOCAL_CFLAGS+=-I$(JS_DIR)/src -I$(JS_DIR)/nsprpub/dist/include/nspr -DXP_UNIX -I../mod_spidermonkey -DJS_THREADSAFE -DJS_HAS_FILE_OBJECT=1
LOCAL_LDFLAGS+=-L$(JS_DIR)/nsprpub/pr/src -L$(JS_DIR)/nsprpub/dist/lib -lnspr4
LOCAL_LIBADD+=$(JSLA)
include $(switch_srcdir)/build/modmake.rules
$(JSLA):
cd $(JS_DIR)/nsprpub && $(MAKE)
cd $(JS_DIR) && $(MAKE)

@ -1,3 +1,7 @@
include ../mod_spidermonkey/sm.mak
MODNAME=mod_spidermonkey_core_db
include ../../../../build/modmake.rules
switch_srcdir=../../../..
LOCAL_CFLAGS=
LOCAL_LDFLAGS=
LOCAL_LIBADD=
include ../mod_spidermonkey/sm.mak

@ -1,14 +1,16 @@
include ../mod_spidermonkey/sm.mak
# define these targets in your makefile if you wish
# local_all local_depend local_clean depend_install local_install local_distclean local_extraclean:
# and define these variables to impact your build
MODNAME=mod_spidermonkey_etpan
#LOCAL_CFLAGS=
LOCAL_LDFLAGS+=-letpan
#LOCAL_OBJS=
include ../../../../build/modmake.rules
local_depend:
MAKE=$(MAKE) $(BASE)/build/buildlib.sh $(BASE) install libetpan --prefix=$(PREFIX)
switch_srcdir=../../../..
ETPAN_DIR=$(switch_srcdir)/libs/libetpan
ETPANLA=$(ETPAN_DIR)/src/libetpan.la
LOCAL_CFLAGS=-I$(ETPAN_DIR)/include
LOCAL_LDFLAGS=
LOCAL_LIBADD=$(ETPANLA)
include ../mod_spidermonkey/sm.mak
$(ETPANLA):
cd $(ETPAN_DIR) && $(MAKE)

@ -1,14 +1,26 @@
include ../mod_spidermonkey/sm.mak
# define these targets in your makefile if you wish
# local_all local_depend local_clean depend_install local_install local_distclean local_extraclean:
# and define these variables to impact your build
MODNAME=mod_spidermonkey_odbc
#LOCAL_CFLAGS=
LOCAL_LDFLAGS+=-lodbc
#LOCAL_OBJS=
include ../../../../build/modmake.rules
switch_srcdir=../../../..
local_depend:
MAKE=$(MAKE) $(BASE)/build/buildlib.sh $(BASE) install unixODBC-2.2.12.tar.gz --prefix=$(PREFIX) --disable-gui --without-x --with-pic
ODBC=unixODBC-2.2.12
ODBC_DIR=$(switch_srcdir)/libs/$(ODBC)
ODBCLA=libodbc.la
UNINST_ODBCLA=$(ODBC_DIR)/DriverManager/$(ODBCLA)
INST_ODBCLA=$(DESTDIR)$(PREFIX)/lib/$(ODBCLA)
LOCAL_CFLAGS=-I$(ODBC_DIR)/include
LOCAL_LDFLAGS=
LOCAL_LIBADD=$(UNINST_ODBCLA)
include ../mod_spidermonkey/sm.mak
$(ODBC_DIR)/Makefile:
$(GETLIB) $(ODBC).tar.gz
cd $(ODBC_DIR) && ./configure --prefix=$(PREFIX) --disable-gui --without-x --with-pic
$(UNINST_ODBCLA): $(ODBC_DIR)/Makefile
cd $(ODBC_DIR) && $(MAKE)
depend_install: $(INST_ODBCLA)
$(INST_ODBCLA): $(UNINST_ODBCLA)
cd $(ODBC_DIR) && $(MAKE) install

@ -1,4 +1,7 @@
include ../mod_spidermonkey/sm.mak
MODNAME=mod_spidermonkey_skel
include ../../../../build/modmake.rules
switch_srcdir=../../../..
LOCAL_CFLAGS=
LOCAL_LDFLAGS=
LOCAL_LIBADD=
include ../mod_spidermonkey/sm.mak

@ -1,5 +1,7 @@
MODNAME=mod_spidermonkey_teletone
switch_srcdir=../../../..
LOCAL_CFLAGS=-I$(switch_srcdir)/libs/libteletone/src
LOCAL_LDFLAGS=
LOCAL_LIBADD=$(switch_srcdir)/libs/libteletone/libteletone.la
include ../mod_spidermonkey/sm.mak
LOCAL_CFLAGS+=-I$(BASE)/libs/libteletone/src
LOCAL_LDFLAGS+=$(BASE)/libs/libteletone/libteletone.la
include ../../../../build/modmake.rules