blob: 2deb8732d8a51b4995a92051503c7d249934c669 [file] [log] [blame]
Tristan Matthews0a329cc2013-07-17 13:20:14 -04001include ../../../build.mak
2include ../../../build/common.mak
3
4export LIBDIR := ../../lib
5
6RULES_MAK := $(PJDIR)/build/rules.mak
7
8
9###############################################################################
10# Gather all flags.
11#
12export _CFLAGS := $(CC_CFLAGS) $(OS_CFLAGS) $(HOST_CFLAGS) $(M_CFLAGS) \
13 $(CFLAGS) $(CC_INC). $(CC_INC)../../resample/include \
14 $(CC_INC)../../../pjlib/include
15export _CXXFLAGS:= $(_CFLAGS) $(CC_CXXFLAGS) $(OS_CXXFLAGS) $(M_CXXFLAGS) \
16 $(HOST_CXXFLAGS) $(CXXFLAGS)
17export _LDFLAGS := $(CC_LDFLAGS) $(OS_LDFLAGS) $(M_LDFLAGS) $(HOST_LDFLAGS) \
18 $(LDFLAGS)
19
20export RESAMPLE_SRCDIR = ../../resample/src
21export RESAMPLE_OBJS = resamplesubs.o
22export RESAMPLE_CFLAGS = $(_CFLAGS)
23
24SHLIB_NAME := libresample.$(SHLIB_SUFFIX)
25export RESAMPLE_SHLIB := ../../lib/$(SHLIB_NAME).$(PJ_VERSION_MAJOR)
26export RESAMPLE_LIB := ../../lib/libresample-$(TARGET_NAME)$(LIBEXT)
27
28export CC_OUT CC AR RANLIB HOST_MV HOST_RM HOST_RMDIR HOST_MKDIR OBJEXT LD LDOUT
29###############################################################################
30# Main entry
31#
32# $(TARGET) is defined in os-$(OS_NAME).mak file in current directory.
33#
34ifeq ($(PJ_RESAMPLE_DLL),1)
35TARGETS := ../../lib/$(SHLIB_NAME)
36ifeq ($(SHLIB_SUFFIX),so)
37SHLIB_OPT := -Wl,-soname,$(SHLIB_NAME).$(PJ_VERSION_MAJOR)
38else
39SHLIB_OPT :=
40endif
41export RESAMPLE_CFLAGS := -fPIC $(RESAMPLE_CFLAGS)
42export RESAMPLE_LDFLAGS := -shared $(SHLIB_OPT) $(RESAMPLE_LDFLAGS)
43else
44TARGETS := libresample
45endif
46
47all: $(TARGETS)
48
49doc:
50 cd .. && doxygen docs/doxygen.cfg
51
52dep: depend
53distclean: realclean
54
55.PHONY: dep depend libresample clean realclean distclean
56
57libresample:
58 $(MAKE) -f $(RULES_MAK) APP=RESAMPLE app=libresample $(RESAMPLE_LIB)
59
60../../lib/$(SHLIB_NAME): $(RESAMPLE_SHLIB)
61 ln -s $(SHLIB_NAME).$(PJ_VERSION_MAJOR) $@
62
63$(RESAMPLE_SHLIB):
64 $(MAKE) -f $(RULES_MAK) APP=RESAMPLE app=libresample $(RESAMPLE_SHLIB)
65
66clean print_lib:
67 $(MAKE) -f $(RULES_MAK) APP=RESAMPLE app=libresample $@
68
69realclean:
70 $(subst @@,$(subst /,$(HOST_PSEP),../../lib/$(SHLIB_NAME)),$(HOST_RMR))
71 $(subst @@,$(subst /,$(HOST_PSEP),$(RESAMPLE_SHLIB)),$(HOST_RMR))
72 $(MAKE) -f $(RULES_MAK) APP=RESAMPLE app=libresample $@
73
74depend:
75 $(MAKE) -f $(RULES_MAK) APP=RESAMPLE app=libresample $@
76
77