blob: c776de1077adcc2cb09dda7e0c7796a6da5f66a9 [file] [log] [blame]
Tristan Matthews0a329cc2013-07-17 13:20:14 -04001include ../../build.mak
2include $(PJDIR)/build/common.mak
3
Alexandre Lision8af73cb2013-12-10 14:11:20 -05004export LIBDIR := ../lib
5export BINDIR := ../bin
Tristan Matthews0a329cc2013-07-17 13:20:14 -04006
7RULES_MAK := $(PJDIR)/build/rules.mak
8
9PJLIB_LIB:=../../pjlib/lib/libpj-$(TARGET_NAME)$(LIBEXT)
10PJLIB_UTIL_LIB:=../../pjlib-util/lib/libpjlib-util-$(TARGET_NAME)$(LIBEXT)
11PJNATH_LIB:=../../pjnath/lib/libpjnath-$(TARGET_NAME)$(LIBEXT)
12PJMEDIA_LIB:=../../pjmedia/lib/libpjmedia-$(TARGET_NAME)$(LIBEXT)
13PJMEDIA_AUDIODEV_LIB:=../../pjmedia/lib/libpjmedia-audiodev-$(TARGET_NAME)$(LIBEXT)
14PJMEDIA_CODEC_LIB:=../../pjmedia/lib/libpjmedia-codec-$(TARGET_NAME)$(LIBEXT)
15PJSIP_LIB:=../../pjsip/lib/libpjsip-$(TARGET_NAME)$(LIBEXT)
16PJSIP_UA_LIB:=../../pjsip/lib/libpjsip-ua-$(TARGET_NAME)$(LIBEXT)
17PJSIP_SIMPLE_LIB:=../../pjsip/lib/libpjsip-simple-$(TARGET_NAME)$(LIBEXT)
18PJSUA_LIB_LIB=../../pjsip/lib/libpjsua-$(TARGET_NAME)$(LIBEXT)
19
20
21###############################################################################
22# Gather all flags.
23#
24export _CFLAGS := $(CC_CFLAGS) $(OS_CFLAGS) $(HOST_CFLAGS) $(M_CFLAGS) \
25 $(PJ_CFLAGS) $(CFLAGS) $(CC_INC)../../pjsip/include \
26 $(CC_INC)../../pjlib/include \
27 $(CC_INC)../../pjlib-util/include \
28 $(CC_INC)../../pjnath/include \
29 $(CC_INC)../../pjmedia/include
30export _CXXFLAGS:= $(_CFLAGS) $(CC_CXXFLAGS) $(OS_CXXFLAGS) $(M_CXXFLAGS) \
31 $(HOST_CXXFLAGS) $(CXXFLAGS)
Alexandre Lision8af73cb2013-12-10 14:11:20 -050032export _LDFLAGS := $(CC_LDFLAGS) $(OS_LDFLAGS) $(M_LDFLAGS) $(HOST_LDFLAGS) \
33 $(APP_LDFLAGS) $(APP_LDLIBS) $(LDFLAGS)
Tristan Matthews0a329cc2013-07-17 13:20:14 -040034
35###############################################################################
36# Defines for building PJSUA
37#
38export PJSUA_SRCDIR = ../src/pjsua
39export PJSUA_OBJS += $(OS_OBJS) $(M_OBJS) $(CC_OBJS) $(HOST_OBJS) \
40 main.o pjsua_app.o pjsua_app_cli.o pjsua_app_common.o \
41 pjsua_app_config.o pjsua_app_legacy.o
42export PJSUA_CFLAGS += $(_CFLAGS)
Alexandre Lision8af73cb2013-12-10 14:11:20 -050043export PJSUA_CXXFLAGS += $(_CXXFLAGS)
44export PJSUA_LDFLAGS += $(_LDFLAGS)
45export PJSUA_EXE:=pjsua-$(TARGET_NAME)$(HOST_EXE)
Tristan Matthews0a329cc2013-07-17 13:20:14 -040046
47
48###############################################################################
49# Defines for building pjsystest
50#
51export PJSYSTEST_SRCDIR = ../src/pjsystest
52export PJSYSTEST_OBJS += $(OS_OBJS) $(M_OBJS) $(CC_OBJS) $(HOST_OBJS) \
53 systest.o main_console.o
54export PJSYSTEST_CFLAGS += $(_CFLAGS)
Alexandre Lision8af73cb2013-12-10 14:11:20 -050055export PJSYSTEST_CXXFLAGS += $(_CXXFLAGS)
56export PJSYSTEST_LDFLAGS += $(_LDFLAGS)
57export PJSYSTEST_EXE:=pjsystest-$(TARGET_NAME)$(HOST_EXE)
Tristan Matthews0a329cc2013-07-17 13:20:14 -040058
59
60export CC_OUT CC AR RANLIB HOST_MV HOST_RM HOST_RMDIR HOST_MKDIR OBJEXT LD LDOUT
Alexandre Lision67916dd2014-01-24 13:33:04 -050061###############################################################################
62# Main entry
63#
64#
65# x x x x x x x x x x x x x x x x x x x x x x x x
66#
67# FIX THIS
68#
69# x x x x x x x x x x x x x x x x x x x x x x x x
70TARGETS := $(BINDIR)/$(PJSUA_EXE) $(BINDIR)/$(PJSYSTEST_EXE) samples
Tristan Matthews0a329cc2013-07-17 13:20:14 -040071
72all: $(TARGETS)
73
Alexandre Lision0e143012014-01-22 11:02:46 -050074swig:
75 $(MAKE) -C ../src/swig
76
Tristan Matthews0a329cc2013-07-17 13:20:14 -040077doc:
78
79dep: depend
80distclean: realclean
81
Alexandre Lision8af73cb2013-12-10 14:11:20 -050082.PHONY: all dep depend clean realclean distclean
83.PHONY: $(TARGETS)
84.PHONY: $(PJSUA_EXE) $(PJSYSTEST_EXE)
Tristan Matthews0a329cc2013-07-17 13:20:14 -040085
Alexandre Lision8af73cb2013-12-10 14:11:20 -050086pjsua: $(PJSUA_EXE)
87$(PJSUA_EXE):
88 $(MAKE) -f $(RULES_MAK) APP=PJSUA app=pjsua $(subst /,$(HOST_PSEP),$(BINDIR)/$@)
Tristan Matthews0a329cc2013-07-17 13:20:14 -040089
Alexandre Lision8af73cb2013-12-10 14:11:20 -050090pjsystest: $(PJSYSTEST_EXE)
91$(PJSYSTEST_EXE):
92 $(MAKE) -f $(RULES_MAK) APP=PJSYSTEST app=pjsystest $(subst /,$(HOST_PSEP),$(BINDIR)/$@)
Tristan Matthews0a329cc2013-07-17 13:20:14 -040093
94samples:
95 $(MAKE) -f Samples.mak
96
Alexandre Lision8af73cb2013-12-10 14:11:20 -050097.PHONY: pjsua.ko
98pjsua.ko:
99 $(MAKE) -f $(RULES_MAK) APP=PJSUA app=pjsua $(subst /,$(HOST_PSEP),$(LIBDIR)/$@)
Tristan Matthews0a329cc2013-07-17 13:20:14 -0400100
101clean depend realclean:
102 $(MAKE) -f $(RULES_MAK) APP=PJSUA app=pjsua $@
103 $(MAKE) -f $(RULES_MAK) APP=PJSYSTEST app=pjsystest $@
104 $(MAKE) -f Samples.mak $@
105 @if test "$@" = "depend"; then \
Alexandre Lision8af73cb2013-12-10 14:11:20 -0500106 echo '$(BINDIR)/$(PJSUA_EXE): $(APP_LIB_FILES)' >> .pjsua-$(TARGET_NAME).depend; \
107 echo '$(BINDIR)/$(PJSYSTEST_EXE): $(APP_LIB_FILES)' >> .pjsystest-$(TARGET_NAME).depend; \
Tristan Matthews0a329cc2013-07-17 13:20:14 -0400108 fi
109
110
111