]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
Make rebuild GSM, ilbc, or lpc10 codecs if the respective sources change.
authorRichard Mudgett <rmudgett@digium.com>
Tue, 25 Sep 2012 16:33:31 +0000 (16:33 +0000)
committerRichard Mudgett <rmudgett@digium.com>
Tue, 25 Sep 2012 16:33:31 +0000 (16:33 +0000)
........

Merged revisions 373618 from http://svn.asterisk.org/svn/asterisk/branches/1.8

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@373633 65c4cc65-6c06-0410-ace0-fbb531ad65f3

codecs/Makefile

index 6ef08daed65f7453b14d65e9a3b7354feb398c95..eeeccd25bc2b626152c5d7191781c247e68cb4c3 100644 (file)
@@ -17,44 +17,70 @@ MODULE_PREFIX=codec
 MENUSELECT_CATEGORY=CODECS
 MENUSELECT_DESCRIPTION=Codec Translators
 
-LIBILBC:=ilbc/libilbc.a
-LIBLPC10:=lpc10/liblpc10.a
+SUB_GSM := gsm
+
+SUB_ILBC := ilbc
+LIBILBC := $(SUB_ILBC)/libilbc.a
+
+SUB_LPC10 := lpc10
+LIBLPC10 := $(SUB_LPC10)/liblpc10.a
+
+SUB_DIRS := \
+       $(SUB_GSM) \
+       $(SUB_ILBC) \
+       $(SUB_LPC10) \
 
 all: _all
 
 include $(ASTTOPDIR)/Makefile.moddir_rules
 
 ifneq ($(GSM_INTERNAL),no)
-GSM_INCLUDE:=-Igsm/inc
-$(if $(filter codec_gsm,$(EMBEDDED_MODS)),modules.link,codec_gsm.so): gsm/lib/libgsm.a
+GSM_INCLUDE := -I$(SUB_GSM)/inc
 endif
 
+$(SUB_GSM):
+       @mkdir -p $(SUB_GSM)/lib
+       @$(MAKE) -C $(SUB_GSM) lib/libgsm.a
+
+# Don't run the implicit rules for this target.
+$(SUB_GSM)/lib/libgsm.a: $(SUB_GSM) ;
+
+ifneq ($(GSM_INTERNAL),no)
+$(if $(filter codec_gsm,$(EMBEDDED_MODS)),modules.link,codec_gsm.so): $(SUB_GSM)/lib/libgsm.a
+endif
 
 clean::
-       $(MAKE) -C gsm clean
-       $(MAKE) -C lpc10 clean
-       $(MAKE) -C ilbc clean
+       for dir in $(SUB_DIRS); do \
+               $(MAKE) -C $$dir clean; \
+       done
        rm -f g722/*.[oa]
        rm -f speex/*.[oa]
 
-gsm/lib/libgsm.a:
-       @mkdir -p gsm/lib
-       @$(MAKE) -C gsm lib/libgsm.a
+.PHONY: $(SUB_DIRS)
 
-$(LIBLPC10):
-       @$(MAKE) -C lpc10 all
+$(SUB_LPC10):
+       @$(MAKE) -C $(SUB_LPC10) all
+
+# Don't run the implicit rules for this target.
+$(LIBLPC10): $(SUB_LPC10) ;
 
 $(if $(filter codec_lpc10,$(EMBEDDED_MODS)),modules.link,codec_lpc10.so): $(LIBLPC10)
 
-$(LIBILBC):
-       @$(MAKE) -C ilbc all _ASTCFLAGS="$(filter-out -Wmissing-prototypes -Wmissing-declarations -Wshadow,$(_ASTCFLAGS)) $(AST_NO_STRICT_OVERFLOW)"
 
+$(SUB_ILBC):
+       @$(MAKE) -C $(SUB_ILBC) all _ASTCFLAGS="$(filter-out -Wmissing-prototypes -Wmissing-declarations -Wshadow,$(_ASTCFLAGS)) $(AST_NO_STRICT_OVERFLOW)"
+
+# Don't run the implicit rules for this target.
+$(LIBILBC): $(SUB_ILBC) ;
 
 $(if $(filter codec_ilbc,$(EMBEDDED_MODS)),modules.link,codec_ilbc.so): $(LIBILBC)
 
+
 $(if $(filter codec_g722,$(EMBEDDED_MODS)),modules.link,codec_g722.so): g722/g722_encode.o g722/g722_decode.o
+
 g722/g722_encode.o g722/g722_decode.o: _ASTCFLAGS+=$(call MOD_ASTCFLAGS,codec_g722)
 
+
 ifeq ($(BUILD_CPU),x86_64)
 SPEEX_RESAMPLE_CFLAGS:=-fPIC
 else
@@ -62,4 +88,5 @@ SPEEX_RESAMPLE_CFLAGS:=
 endif
 
 $(if $(filter codec_resample,$(EMBEDDED_MODS)),modules.link,codec_resample.so): speex/resample.o
+
 speex/resample.o: _ASTCFLAGS+=$(call MOD_ASTCFLAGS,codec_resample) $(SPEEX_RESAMPLE_CFLAGS)