From baa8d6158635e36d4daaa52ddec661cd1bb0912f Mon Sep 17 00:00:00 2001 From: kpfleming Date: Fri, 29 Sep 2006 22:47:40 +0000 Subject: fix a few build system bugs, and convert Makefiles to be compatible with GNU make 3.80 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@44055 f38db490-d61c-443f-a65b-d21fe96a405b --- Makefile.moddir_rules | 38 +++++++-------------- Makefile.rules | 77 ++++++++++++------------------------------- agi/Makefile | 6 ++-- build_tools/embed_modules.xml | 2 +- channels/Makefile | 8 +++-- codecs/Makefile | 6 ++-- codecs/gsm/Makefile | 6 +++- codecs/ilbc/Makefile | 5 ++- codecs/lpc10/Makefile | 5 ++- configure | 31 +---------------- configure.ac | 23 ------------- main/db1-ast/Makefile | 5 ++- pbx/Makefile | 12 +++---- res/Makefile | 2 +- utils/Makefile | 51 ++++++++++++++++++---------- 15 files changed, 103 insertions(+), 174 deletions(-) diff --git a/Makefile.moddir_rules b/Makefile.moddir_rules index 2144e50a2..6925636b9 100644 --- a/Makefile.moddir_rules +++ b/Makefile.moddir_rules @@ -27,35 +27,18 @@ include $(ASTTOPDIR)/Makefile.rules comma:=, -define module_o_template -$(2): $(3) -$(2): ASTCFLAGS+=-DAST_MODULE=\"$(1)\" $$(MENUSELECT_OPTS_$(1):%=-D%) $(foreach dep,$(MENUSELECT_DEPENDS_$(1)),$$(value $(dep)_INCLUDE)) -endef +$(addsuffix .o,$(C_MODS)): ASTCFLAGS+=-DAST_MODULE=\"$*\" $(MENUSELECT_OPTS_$*:%=-D%) $(foreach dep,$(MENUSELECT_DEPENDS_$*),$(value $(dep)_INCLUDE)) +$(addsuffix .oo,$(CC_MODS)): ASTCFLAGS+=-DAST_MODULE=\"$*\" $(MENUSELECT_OPTS_$*:%=-D%) $(foreach dep,$(MENUSELECT_DEPENDS_$*),$(value $(dep)_INCLUDE)) -define module_so_template -$(1)=$(1).so -$(1).so: ASTCFLAGS+=-fPIC -$(1).so: LIBS+=$(foreach dep,$(MENUSELECT_DEPENDS_$(1)),$$(value $(dep)_LIB)) -$(1).so: ASTLDFLAGS+=$(foreach dep,$(MENUSELECT_DEPENDS_$(1)),$$(value $(dep)_LDFLAGS)) -$(1).so: $(2) -endef +$(LOADABLE_MODS:%=%.so): ASTCFLAGS+=-fPIC +$(LOADABLE_MODS:%=%.so): LIBS+=$(foreach dep,$(MENUSELECT_DEPENDS_$*),$(value $(dep)_LIB)) +$(LOADABLE_MODS:%=%.so): ASTLDFLAGS+=$(foreach dep,$(MENUSELECT_DEPENDS_$*),$(value $(dep)_LDFLAGS)) -define module_a_template -$(1)=modules.link -modules.link: $(2) -endef +$(addsuffix .so,$(filter $(LOADABLE_MODS),$(C_MODS))): %.so: %.o +$(addsuffix .so,$(filter $(LOADABLE_MODS),$(CC_MODS))): %.so: %.oo -$(foreach mod,$(C_MODS),$(eval $(call module_o_template,$(mod),$(mod).o,$(mod).c))) - -$(foreach mod,$(CC_MODS),$(eval $(call module_o_template,$(mod),$(mod).oo,$(mod).cc))) - -$(foreach mod,$(filter-out $(EMBEDDED_MODS),$(C_MODS)),$(eval $(call module_so_template,$(mod),$(mod).o))) - -$(foreach mod,$(filter-out $(EMBEDDED_MODS),$(CC_MODS)),$(eval $(call module_so_template,$(mod),$(mod).oo))) - -$(foreach mod,$(filter $(EMBEDDED_MODS),$(C_MODS)),$(eval $(call module_a_template,$(mod),$(mod).o))) - -$(foreach mod,$(filter $(EMBEDDED_MODS),$(CC_MODS)),$(eval $(call module_a_template,$(mod),$(mod).oo))) +modules.link: $(addsuffix .o,$(filter $(EMBEDDED_MODS),$(C_MODS))) +modules.link: $(addsuffix .oo,$(filter $(EMBEDDED_MODS),$(CC_MODS))) .PHONY: clean clean-depend depend uninstall _all @@ -81,7 +64,8 @@ endif modules.link: @rm -f $@ - @for file in $(patsubst $(ASTTOPDIR)/%,%,$(realpath $^)); do echo "INPUT (../$${file})" >> $@; done + @for file in $(patsubst %,$(SUBDIR)/%,$(filter %.o,$^)); do echo "INPUT (../$${file})" >> $@; done + @for file in $(patsubst %,$(SUBDIR)/%,$(filter-out %.o,$^)); do echo "INPUT (../$${file})" >> $@; done clean-depend:: rm -f .depend diff --git a/Makefile.rules b/Makefile.rules index cdad748df..59ced05ea 100644 --- a/Makefile.rules +++ b/Makefile.rules @@ -36,65 +36,30 @@ OPTIMIZE?=-O6 ASTCFLAGS+=$(OPTIMIZE) endif -define ast_make_o_c -$(1): $(2) - $(ECHO_PREFIX) echo " [CC] $$< -> $$@" - $(CMD_PREFIX) $$(CC) -o $$@ -c $$< $$(ASTCFLAGS) -endef +%.o: %.c + $(ECHO_PREFIX) echo " [CC] $< -> $@" + $(CMD_PREFIX) $(CC) -o $@ -c $< $(ASTCFLAGS) -define ast_make_oo_cc -$(1): $(2) - $(ECHO_PREFIX) echo " [CXX] $$< -> $$@" - $(CMD_PREFIX) $$(CXX) -o $$@ -c $$< $$(ASTCFLAGS) -endef +%.oo: %.cc + $(ECHO_PREFIX) echo " [CXX] $< -> $@" + $(CMD_PREFIX) $(CXX) -o $@ -c $< $(ASTCFLAGS) -define ast_make_c_y -$(1): $(2) - $(ECHO_PREFIX) echo " [BISON] $$< -> $$@" - $(CMD_PREFIX) bison -o $$@ -d --name-prefix=ast_yy $$< -endef +%.c: %.y + $(ECHO_PREFIX) echo " [BISON] $< -> $@" + $(CMD_PREFIX) bison -o $@ -d --name-prefix=ast_yy $< -define ast_make_c_fl -$(1): $(2) - $(ECHO_PREFIX) echo " [FLEX] $$< -> $$@" - $(CMD_PREFIX) flex -o $$@ --full $$< -endef +%.c: %.fl + $(ECHO_PREFIX) echo " [FLEX] $< -> $@" + $(CMD_PREFIX) flex -o $@ --full $< -define ast_make_so_o -$(1): $(2) - $(ECHO_PREFIX) echo " [LD] $$^ -> $$@" - $(CMD_PREFIX) $$(CC) $$(STATIC_BUILD) -o $$@ $$(ASTLDFLAGS) $$(SOLINK) $$^ $$(LIBS) -endef +%.so: %.o + $(ECHO_PREFIX) echo " [LD] $^ -> $@" + $(CMD_PREFIX) $(CC) $(STATIC_BUILD) -o $@ $(ASTLDFLAGS) $(SOLINK) $^ $(LIBS) -define ast_make_so_oo -$(1): $(2) - $(ECHO_PREFIX) echo " [LDXX] $$^ -> $$@" - $(CMD_PREFIX) $$(CXX) $$(STATIC_BUILD) -o $$@ $$(ASTLDFLAGS) $$(SOLINK) $$^ $$(LIBS) -endef +%.soo: %.oo + $(ECHO_PREFIX) echo " [LDXX] $^ -> $@" + $(CMD_PREFIX) $(CXX) $(STATIC_BUILD) -o $@ $(ASTLDFLAGS) $(SOLINK) $^ $(LIBS) -define ast_make_a_o -$(1): $(2) - $(ECHO_PREFIX) echo " [AR] $$^ -> $$@" - $(CMD_PREFIX) $$(AR) cr $$@ $$^ - $(CMD_PREFIX) $$(RANLIB) $$@ -endef - -define ast_make_final -$(1): $(2) - $(ECHO_PREFIX) echo " [LD] $$^ -> $$@" - $(CMD_PREFIX) $$(CXX) $$(STATIC_BUILD) -o $$@ $$(ASTLDFLAGS) $$^ $$(LIBS) -endef - -define ast_make_final_host -$(1): $(2) - $(ECHO_PREFIX) echo " [LD] $$^ -> $$@" - $(CMD_PREFIX) $$(HOST_CC) $$(STATIC_BUILD) -o $$@ $$(HOST_CFLAGS) $$(HOST_LDFLAGS) $$^ $$(LIBS) -endef - -$(eval $(call ast_make_o_c,%.o,%.c)) - -$(eval $(call ast_make_oo_cc,%.oo,%.cc)) - -$(eval $(call ast_make_so_o,%.so,%.o)) - -$(eval $(call ast_make_final,%,%.o)) +%: %.o + $(ECHO_PREFIX) echo " [LD] $^ -> $@" + $(CMD_PREFIX) $(CXX) $(STATIC_BUILD) -o $@ $(ASTLDFLAGS) $^ $(LIBS) diff --git a/agi/Makefile b/agi/Makefile index 08de2f751..3a3495138 100644 --- a/agi/Makefile +++ b/agi/Makefile @@ -23,12 +23,13 @@ include $(ASTTOPDIR)/Makefile.rules all: $(AGIS) +strcompat.c: ../main/strcompat.c + @cp $< $@ + eagi-test: eagi-test.o strcompat.o eagi-sphinx-test: eagi-sphinx-test.o -$(eval $(call ast_make_o_c,strcompat.o,../main/strcompat.c)) - install: all mkdir -p $(DESTDIR)$(AGI_DIR) for x in $(AGIS); do $(INSTALL) -m 755 $$x $(DESTDIR)$(AGI_DIR) ; done @@ -41,6 +42,7 @@ clean-depend: clean: clean-depend rm -f *.so *.o look eagi-test eagi-sphinx-test + rm -f strcompat.c ifneq ($(wildcard .depend),) include .depend diff --git a/build_tools/embed_modules.xml b/build_tools/embed_modules.xml index 85c3d6298..b064b842d 100644 --- a/build_tools/embed_modules.xml +++ b/build_tools/embed_modules.xml @@ -5,7 +5,7 @@ - + diff --git a/channels/Makefile b/channels/Makefile index 6c10010a9..3d36793d4 100644 --- a/channels/Makefile +++ b/channels/Makefile @@ -80,7 +80,9 @@ h323/libchanh323.a h323/Makefile.ast: $(CMD_PREFIX) exit 1 endif -$(eval $(call ast_make_final_host,gentone,gentone.c)) +gentone: gentone.c + $(ECHO_PREFIX) echo " [LD] $^ -> $@" + $(CMD_PREFIX) $(HOST_CC) $(STATIC_BUILD) -o $@ $(HOST_CFLAGS) $(HOST_LDFLAGS) $^ $(LIBS) gentone: LIBS+=-lm busy.h: gentone @@ -91,7 +93,7 @@ ringtone.h: gentone chan_oss.o: busy.h ringtone.h -$(chan_iax2): iax2-parser.o iax2-provision.o +$(if $(filter chan_iax2,$(EMBEDDED_MODS)),modules.link,chan_iax2.so): iax2-parser.o iax2-provision.o chan_alsa.o: busy.h ringtone.h @@ -109,4 +111,4 @@ chan_misdn.o: ASTCFLAGS+=-Imisdn misdn_config.o: ASTCFLAGS+=-Imisdn -$(chan_misdn): chan_misdn.o misdn_config.o misdn/isdn_lib.o misdn/isdn_msg_parser.o +$(if $(filter chan_misdn,$(EMBEDDED_MODS)),modules.link,chan_misdn.so): chan_misdn.o misdn_config.o misdn/isdn_lib.o misdn/isdn_msg_parser.o diff --git a/codecs/Makefile b/codecs/Makefile index 8996ad452..c3ab707f6 100644 --- a/codecs/Makefile +++ b/codecs/Makefile @@ -32,7 +32,7 @@ include $(ASTTOPDIR)/Makefile.moddir_rules ifneq ($(GSM_INTERNAL),) GSM_INCLUDE:=-Igsm/inc -$(codec_gsm): gsm/lib/libgsm.a +$(if $(filter codec_gsm,$(EMBEDDED_MODS)),modules.link,codec_gsm.so): gsm/lib/libgsm.a endif clean:: @@ -47,9 +47,9 @@ gsm/lib/libgsm.a: $(LIBLPC10): @$(MAKE) -C lpc10 all -$(codec_lpc10): $(LIBLPC10) +$(if $(filter codec_lpc10,$(EMBEDDED_MODS)),modules.link,codec_lpc10.so): $(LIBLPC10) $(LIBILBC): @$(MAKE) -C ilbc all -$(codec_ilbc): $(LIBILBC) +$(if $(filter codec_ilbc,$(EMBEDDED_MODS)),modules.link,codec_ilbc.so): $(LIBILBC) diff --git a/codecs/gsm/Makefile b/codecs/gsm/Makefile index ba3a20062..ec2694a65 100644 --- a/codecs/gsm/Makefile +++ b/codecs/gsm/Makefile @@ -347,7 +347,11 @@ $(LIBGSMSO): $(LIB) $(GSM_OBJECTS) ln -fs libgsm.so.1.0.10 lib/libgsm.so.1 ln -fs libgsm.so.1.0.10 lib/libgsm.so -$(eval $(call ast_make_a_o,$(LIBGSM),$(GSM_OBJECTS))) +$(LIBGSM): $(GSM_OBJECTS) + $(ECHO_PREFIX) echo " [AR] $^ -> $@" + $(CMD_PREFIX) $(AR) cr $@ $^ + $(CMD_PREFIX) $(RANLIB) $@ + # Toast, Untoast and Tcat -- the compress-like frontends to gsm. diff --git a/codecs/ilbc/Makefile b/codecs/ilbc/Makefile index 1060579ab..3c4668ba8 100644 --- a/codecs/ilbc/Makefile +++ b/codecs/ilbc/Makefile @@ -11,7 +11,10 @@ include $(ASTTOPDIR)/Makefile.rules all: $(LIB) -$(eval $(call ast_make_a_o,$(LIB),$(OBJS))) +$(LIB): $(OBJS) + $(ECHO_PREFIX) echo " [AR] $^ -> $@" + $(CMD_PREFIX) $(AR) cr $@ $^ + $(CMD_PREFIX) $(RANLIB) $@ clean: rm -f $(LIB) *.o diff --git a/codecs/lpc10/Makefile b/codecs/lpc10/Makefile index 75b3f858f..18b7c0bcc 100644 --- a/codecs/lpc10/Makefile +++ b/codecs/lpc10/Makefile @@ -64,7 +64,10 @@ OBJ=f2clib.o analys.o bsynz.o chanwr.o dcbias.o decode.o \ placea.o placev.o preemp.o prepro.o random.o rcchk.o \ synths.o tbdm.o voicin.o vparms.o -$(eval $(call ast_make_a_o,$(LIB),$(OBJ))) +$(LIB): $(OBJ) + $(ECHO_PREFIX) echo " [AR] $^ -> $@" + $(CMD_PREFIX) $(AR) cr $@ $^ + $(CMD_PREFIX) $(RANLIB) $@ clean: rm -f *.o $(LIB) diff --git a/configure b/configure index 721849d70..e5408588e 100755 --- a/configure +++ b/configure @@ -1,5 +1,5 @@ #! /bin/sh -# From configure.ac Revision: 43410 . +# From configure.ac Revision: 43997 . # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.60a. # @@ -4897,35 +4897,6 @@ fi -# http://www.mail-archive.com/bug-make@gnu.org/msg02871.html -echo 'define A' > testMakefile -echo '12345: $(1:.idl=.hh) $(1:.idl=S.h) $(1:.idl=C.h) $(1:.idl=SK.cc) $(1:.idl=DynSK.cc)' >> testMakefile -echo 'endef' >> testMakefile -echo '$(eval $(call A,01234567890123456789012345678901.idl))' >> testMakefile -echo '01234567890123456789012345678901.hh:' >> testMakefile -echo '01234567890123456789012345678901S.h:' >> testMakefile -echo '01234567890123456789012345678901C.h:' >> testMakefile -echo '01234567890123456789012345678901SK.cc:' >> testMakefile -echo '01234567890123456789012345678901DynSK.cc:' >> testMakefile -$GNU_MAKE -r -f testMakefile 2>&1 > /dev/null -if test "$?" != "0" ; then - rm -f testMakefile - { echo "$as_me:$LINENO: ********** ERROR **********" >&5 -echo "$as_me: ********** ERROR **********" >&6;} - { echo "$as_me:$LINENO: Your version of GNU Make contains a bug that will cause the Asterisk build" >&5 -echo "$as_me: Your version of GNU Make contains a bug that will cause the Asterisk build" >&6;} - { echo "$as_me:$LINENO: system to not function properly. This bug is known to be fixed in version" >&5 -echo "$as_me: system to not function properly. This bug is known to be fixed in version" >&6;} - { echo "$as_me:$LINENO: 3.81 as well as distributions of 3.80 that contain backported bug fixes. You" >&5 -echo "$as_me: 3.81 as well as distributions of 3.80 that contain backported bug fixes. You" >&6;} - { echo "$as_me:$LINENO: must update GNU make to build Asterisk." >&5 -echo "$as_me: must update GNU make to build Asterisk." >&6;} - { echo "$as_me:$LINENO: ***************************" >&5 -echo "$as_me: ***************************" >&6;} - exit 1 -fi -rm -f testMakefile - # Extract the first word of "grep", so it can be a program name with args. set dummy grep; ac_word=$2 { echo "$as_me:$LINENO: checking for $ac_word" >&5 diff --git a/configure.ac b/configure.ac index ab2146818..f98a62aa8 100644 --- a/configure.ac +++ b/configure.ac @@ -126,29 +126,6 @@ AC_PROG_LN_S AC_PROG_RANLIB AST_CHECK_GNU_MAKE -# http://www.mail-archive.com/bug-make@gnu.org/msg02871.html -echo 'define A' > testMakefile -echo '12345: $(1:.idl=.hh) $(1:.idl=S.h) $(1:.idl=C.h) $(1:.idl=SK.cc) $(1:.idl=DynSK.cc)' >> testMakefile -echo 'endef' >> testMakefile -echo '$(eval $(call A,01234567890123456789012345678901.idl))' >> testMakefile -echo '01234567890123456789012345678901.hh:' >> testMakefile -echo '01234567890123456789012345678901S.h:' >> testMakefile -echo '01234567890123456789012345678901C.h:' >> testMakefile -echo '01234567890123456789012345678901SK.cc:' >> testMakefile -echo '01234567890123456789012345678901DynSK.cc:' >> testMakefile -$GNU_MAKE -r -f testMakefile 2>&1 > /dev/null -if test "$?" != "0" ; then - rm -f testMakefile - AC_MSG_NOTICE(********** ERROR **********) - AC_MSG_NOTICE(Your version of GNU Make contains a bug that will cause the Asterisk build) - AC_MSG_NOTICE(system to not function properly. This bug is known to be fixed in version) - AC_MSG_NOTICE(3.81 as well as distributions of 3.80 that contain backported bug fixes. You) - AC_MSG_NOTICE(must update GNU make to build Asterisk.) - AC_MSG_NOTICE(***************************) - exit 1 -fi -rm -f testMakefile - AC_PATH_PROG([GREP], [grep], :) AC_PATH_PROG([AR], [ar], :) AC_PATH_PROG([FIND], [find], :) diff --git a/main/db1-ast/Makefile b/main/db1-ast/Makefile index 4fb92fc3c..59ad0e25e 100644 --- a/main/db1-ast/Makefile +++ b/main/db1-ast/Makefile @@ -36,7 +36,10 @@ include $(ASTTOPDIR)/Makefile.rules all: $(LIBDB) #$(LIBDBSO) $(PROG) -$(eval $(call ast_make_a_o,$(LIBDB),$(OBJS))) +$(LIBDB): $(OBJS) + $(ECHO_PREFIX) echo " [AR] $^ -> $@" + $(CMD_PREFIX) $(AR) cr $@ $^ + $(CMD_PREFIX) $(RANLIB) $@ $(LIBDBSO): $(SHOBJS) $(CC) -Wl,-O1 -Wl,--version-script=libdb.map -Wl,-soname=$(LIBDBSO) -shared -o $@ $^ diff --git a/pbx/Makefile b/pbx/Makefile index 43812f1dc..0f9c9d165 100644 --- a/pbx/Makefile +++ b/pbx/Makefile @@ -28,13 +28,13 @@ include $(ASTTOPDIR)/Makefile.moddir_rules clean:: rm -f ael/*.o -$(eval $(call ast_make_o_c,ael/aelflex.o,ael/ael_lex.c ../include/asterisk/ael_structs.h ael/ael.tab.h)) -ael/aelflex.o: ASTCFLAGS+=-I. +ael/ael_lex.o: ael/ael_lex.c ../include/asterisk/ael_structs.h ael/ael.tab.h +ael/ael_lex.o: ASTCFLAGS+=-I. -$(eval $(call ast_make_o_c,ael/aelbison.o,ael/ael.tab.c ael/ael.tab.h ../include/asterisk/ael_structs.h)) -ael/aelbison.o: ASTCFLAGS+=-I. +ael/ael.tab.o: ael/ael.tab.c ael/ael.tab.h ../include/asterisk/ael_structs.h +ael/ael.tab.o: ASTCFLAGS+=-I. -$(pbx_ael): ael/aelbison.o ael/aelflex.o +$(if $(filter pbx_ael,$(EMBEDDED_MODS)),modules.link,pbx_ael.so): ael/ael.tab.o ael/ael_lex.o ael/ael_lex.c: (cd ael; flex ael.flex; sed -i -e "/begin standard C headers/i#include \"asterisk.h\"" ael_lex.c) @@ -45,4 +45,4 @@ ael/ael.tab.c ael/ael.tab.h: dundi-parser.o: dundi-parser.h dundi-parser.o: ASTCFLAGS+=-I. -$(pbx_dundi): dundi-parser.o +$(if $(filter pbx_dundi,$(EMBEDDED_MODS)),modules.link,pbx_dundi.so): dundi-parser.o diff --git a/res/Makefile b/res/Makefile index 380f022fe..f2d50ebab 100644 --- a/res/Makefile +++ b/res/Makefile @@ -25,7 +25,7 @@ all: _all include $(ASTTOPDIR)/Makefile.moddir_rules -$(res_snmp): snmp/agent.o +$(if $(filter res_snmp,$(EMBEDDED_MODS)),modules.link,res_snmp.so): snmp/agent.o clean:: rm -f snmp/*.o diff --git a/utils/Makefile b/utils/Makefile index 5e5bdca88..88f653065 100644 --- a/utils/Makefile +++ b/utils/Makefile @@ -13,7 +13,10 @@ .PHONY: clean clean-depend all depend uninstall -UTILS:=astman smsq stereorize streamplayer aelparse muted +ALL_UTILS:=astman smsq stereorize streamplayer aelparse muted +UTILS:=$(ALL_UTILS) + +include $(ASTTOPDIR)/Makefile.rules ifeq ($(OSARCH),SunOS) LIBS+=-lsocket -lnsl @@ -32,8 +35,6 @@ ifneq ($(filter pbx_ael,$(MENUSELECT_PBX)),) UTILS:=$(filter-out aelparse,$(UTILS)) endif -include $(ASTTOPDIR)/Makefile.rules - all: $(UTILS) install: @@ -44,21 +45,27 @@ install: done uninstall: - for x in $(UTILS); do rm -f $$x $(DESTDIR)$(ASTSBINDIR)/$$x; done + for x in $(ALL_UTILS); do rm -f $$x $(DESTDIR)$(ASTSBINDIR)/$$x; done clean-depend: rm -f .depend clean: clean-depend - rm -f *.o $(UTILS) check_expr + rm -f *.o $(ALL_UTILS) check_expr + rm -f md5.c strcompat.c ast_expr2.c ast_expr2f.c pbx_ael.c + rm -f aelparse.c aelbison.c + +md5.c: ../main/md5.c + @cp $< $@ -$(eval $(call ast_make_final,astman,astman.o ../main/md5.o)) +astman: astman.o md5.o astman: LIBS+=-lnewt -lslang -ldl -$(eval $(call ast_make_final,stereorize,stereorize.o frame.o)) +stereorize: stereorize.o frame.o stereorize: LIBS+=-lm -$(eval $(call ast_make_o_c,strcompat.o,../main/strcompat.c)) +strcompat.c: ../main/strcompat.c + @cp $< $@ ../main/ast_expr2.c: @echo " [BISON] ../main/ast_expr2.y -> $@" @@ -68,25 +75,33 @@ $(eval $(call ast_make_o_c,strcompat.o,../main/strcompat.c)) @echo " [FLEX] ../main/ast_expr2.fl -> $@" @flex -o $@ --full ../main/ast_expr2.fl -$(eval $(call ast_make_o_c,ast_expr2.o,../main/ast_expr2.c)) +ast_expr2.c: ../main/ast_expr2.c + @cp $< $@ -$(eval $(call ast_make_o_c,ast_expr2f.o,../main/ast_expr2f.c)) -ast_expr2f.o: ASTCFLAGS+=-DSTANDALONE_AEL +ast_expr2f.c: ../main/ast_expr2f.c + @cp $< $@ -$(eval $(call ast_make_final,check_expr,check_expr.c ast_expr2.o ast_expr2f.o)) +ast_expr2f.o: ASTCFLAGS+=-DSTANDALONE_AEL -I../main -$(eval $(call ast_make_o_c,aelflex.o,../pbx/ael/ael_lex.c ../include/asterisk/ael_structs.h ../pbx/ael/ael.tab.h)) -aelflex.o: ASTCFLAGS+=-I../pbx -DSTANDALONE_AEL +check_expr: check_expr.c ast_expr2.o ast_expr2f.o -$(eval $(call ast_make_o_c,aelbison.o,../pbx/ael/ael.tab.c ../pbx/ael/ael.tab.h ../include/asterisk/ael_structs.h)) +aelbison.c: ../pbx/ael/ael.tab.c + @cp $< $@ +aelbison.o: aelbison.c ../pbx/ael/ael.tab.h ../include/asterisk/ael_structs.h aelbison.o: ASTCFLAGS+=-I../pbx -$(eval $(call ast_make_o_c,pbx_ael.o,../pbx/pbx_ael.c)) +pbx_ael.c: ../pbx/pbx_ael.c + @cp $< $@ pbx_ael.o: ASTCFLAGS+=-DSTANDALONE_AEL -$(eval $(call ast_make_final,aelparse,aelflex.o aelbison.o pbx_ael.o ael_main.o ast_expr2f.o ast_expr2.o strcompat.o)) +ael_main.o: ael_main.c ../include/asterisk/ael_structs.h + +aelparse.c: ../pbx/ael/ael_lex.c + @cp $< $@ +aelparse.o: aelparse.c ../include/asterisk/ael_structs.h ../pbx/ael/ael.tab.h +aelparse.o: ASTCFLAGS+=-I../pbx -DSTANDALONE_AEL -$(eval $(call ast_make_o_c,ael_main.o,ael_main.c ../include/asterisk/ael_structs.h)) +aelparse: aelparse.o aelbison.o pbx_ael.o ael_main.o ast_expr2f.o ast_expr2.o strcompat.o testexpr2s: ../main/ast_expr2f.c ../main/ast_expr2.c ../main/ast_expr2.h $(CC) -g -c -I../include -DSTANDALONE_AEL ../main/ast_expr2f.c -o ast_expr2f.o -- cgit v1.2.3