more Makefile cleanup and consistency stuff
[asterisk/asterisk.git] / codecs / Makefile
1 #
2 # Asterisk -- A telephony toolkit for Linux.
3
4 # Makefile for codec modules
5 #
6 # Copyright (C) 1999-2006, Digium, Inc.
7 #
8 # Mark Spencer <markster@digium.com>
9 #
10 # This program is free software, distributed under the terms of
11 # the GNU General Public License
12 #
13
14 ifneq ($(wildcard ../menuselect.makeopts),)
15   include ../menuselect.makeopts
16   include ../menuselect.makedeps
17 endif
18
19 C_MODS:=$(filter-out $(MENUSELECT_CODECS),$(patsubst %.c,%,$(wildcard codec_*.c)))
20 CC_MODS:=$(filter-out $(MENUSELECT_CODECS),$(patsubst %.cc,%,$(wildcard codec_*.cc)))
21
22 SELECTED_MODS:=$(C_MODS) $(CC_MODS)
23
24 LIBILBC:=ilbc/libilbc.a
25 LIBLPC10:=lpc10/liblpc10.a
26
27 all: _all
28
29 ifeq ($(GSM_LIB),internal)
30 GSM_INCLUDE:=-Igsm/inc
31 GSM_LIB:=
32
33 codec_gsm.so: gsm/lib/libgsm.a
34 endif
35
36 include $(ASTTOPDIR)/Makefile.moddir_rules
37
38 clean::
39         $(MAKE) -C gsm clean
40         $(MAKE) -C lpc10 clean
41         $(MAKE) -C ilbc clean
42
43 gsm/lib/libgsm.a:
44         @mkdir -p gsm/lib
45         @CFLAGS="$(ASTCFLAGS) -I." $(MAKE) -C gsm lib/libgsm.a
46
47 $(LIBLPC10):
48         @CFLAGS="$(ASTCFLAGS)" $(MAKE) -C lpc10 all
49
50 codec_lpc10.so: $(LIBLPC10)
51
52 $(LIBILBC):
53         @CFLAGS="$(ASTCFLAGS)" $(MAKE) -C ilbc all
54
55 codec_ilbc.so: $(LIBILBC)