blob: 7e5e6fd60e30086671cfb80dd5e949b8adc2d902 [file] [log] [blame]
Alexandre Lision8af73cb2013-12-10 14:11:20 -05001include ../../../build.mak
2include ../../../build/common.mak
3
4export LIBDIR := ../../lib
5
6RULES_MAK := $(PJDIR)/build/rules.mak
7
8export SPEEX_LIB := libspeex-$(TARGET_NAME)$(LIBEXT)
9
10ifeq ($(PJ_SHARED_LIBRARIES),)
11else
12export SPEEX_SONAME := libspeex.$(SHLIB_SUFFIX)
13export SPEEX_SHLIB := $(SPEEX_SONAME).$(PJ_VERSION_MAJOR)
14endif
15
16###############################################################################
17# Gather all flags.
18#
19export _CFLAGS := $(CC_CFLAGS) $(OS_CFLAGS) $(HOST_CFLAGS) $(M_CFLAGS) \
20 $(CFLAGS) $(CC_INC). $(CC_INC)../../speex/include \
21 $(CC_INC)../../speex/libspeex \
22 $(CC_INC)../../../pjlib/include
23export _CXXFLAGS:= $(_CFLAGS) $(CC_CXXFLAGS) $(OS_CXXFLAGS) $(M_CXXFLAGS) \
24 $(HOST_CXXFLAGS) $(CXXFLAGS)
25export _LDFLAGS := $(CC_LDFLAGS) $(OS_LDFLAGS) $(M_LDFLAGS) $(HOST_LDFLAGS) \
26 $(LDFLAGS)
27
28export SPEEX_SRCDIR = ../../speex/libspeex
29export SPEEX_OBJS = bits.o cb_search.o exc_10_16_table.o \
30 exc_10_32_table.o exc_20_32_table.o \
31 exc_5_256_table.o exc_5_64_table.o \
32 exc_8_128_table.o fftwrap.o filterbank.o \
33 filters.o gain_table.o gain_table_lbr.o \
34 hexc_10_32_table.o hexc_table.o \
35 high_lsp_tables.o \
36 kiss_fft.o kiss_fftr.o lpc.o \
37 lsp.o lsp_tables_nb.o ltp.o \
38 mdf.o modes.o modes_wb.o \
39 nb_celp.o preprocess.o \
40 quant_lsp.o resample.o sb_celp.o smallft.o \
41 speex.o speex_callbacks.o speex_header.o \
42 stereo.o vbr.o vq.o window.o
43
44export SPEEX_CFLAGS = -DHAVE_CONFIG_H $(_CFLAGS)
45
46
47export CC_OUT CC AR RANLIB HOST_MV HOST_RM HOST_RMDIR HOST_MKDIR OBJEXT LD LDOUT
48###############################################################################
49# Main entry
50#
51# $(TARGET) is defined in os-$(OS_NAME).mak file in current directory.
52#
53TARGETS := $(SPEEX_LIB) $(SPEEX_SONAME)
54
55all: $(TARGETS)
56
57doc:
58 cd .. && doxygen docs/doxygen.cfg
59
60dep: depend
61distclean: realclean
62
63.PHONY: all dep depend clean realclean distclean
64.PHONY: $(TARGETS)
65.PHONY: $(SPEEX_LIB) $(SPEEX_SONAME)
66
67libspeex: $(SPEEX_LIB)
68$(SPEEX_SONAME): $(SPEEX_LIB)
69$(SPEEX_LIB) $(SPEEX_SONAME):
70 $(MAKE) -f $(RULES_MAK) APP=SPEEX app=libspeex $(subst /,$(HOST_PSEP),$(LIBDIR)/$@)
71
72clean print_lib:
73 $(MAKE) -f $(RULES_MAK) APP=SPEEX app=libspeex $@
74
75realclean:
76 $(subst @@,$(subst /,$(HOST_PSEP),.ilbc-$(TARGET_NAME).depend),$(HOST_RMR))
77
78 $(MAKE) -f $(RULES_MAK) APP=SPEEX app=libspeex $@
79
80depend:
81 $(MAKE) -f $(RULES_MAK) APP=SPEEX app=libspeex $@
82
83