blob: 71fb151e72bcc9df0ebdae94c4676ebdb8d6f5db [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
61###############################################################################
62# Main entry
63#
64#
Alexandre Lision8af73cb2013-12-10 14:11:20 -050065TARGETS := $(BINDIR)/$(PJSUA_EXE) $(BINDIR)/$(PJSYSTEST_EXE) samples
Tristan Matthews0a329cc2013-07-17 13:20:14 -040066
67all: $(TARGETS)
68
69doc:
70
71dep: depend
72distclean: realclean
73
Alexandre Lision8af73cb2013-12-10 14:11:20 -050074.PHONY: all dep depend clean realclean distclean
75.PHONY: $(TARGETS)
76.PHONY: $(PJSUA_EXE) $(PJSYSTEST_EXE)
Tristan Matthews0a329cc2013-07-17 13:20:14 -040077
Alexandre Lision8af73cb2013-12-10 14:11:20 -050078pjsua: $(PJSUA_EXE)
79$(PJSUA_EXE):
80 $(MAKE) -f $(RULES_MAK) APP=PJSUA app=pjsua $(subst /,$(HOST_PSEP),$(BINDIR)/$@)
Tristan Matthews0a329cc2013-07-17 13:20:14 -040081
Alexandre Lision8af73cb2013-12-10 14:11:20 -050082pjsystest: $(PJSYSTEST_EXE)
83$(PJSYSTEST_EXE):
84 $(MAKE) -f $(RULES_MAK) APP=PJSYSTEST app=pjsystest $(subst /,$(HOST_PSEP),$(BINDIR)/$@)
Tristan Matthews0a329cc2013-07-17 13:20:14 -040085
86samples:
87 $(MAKE) -f Samples.mak
88
Alexandre Lision8af73cb2013-12-10 14:11:20 -050089.PHONY: pjsua.ko
90pjsua.ko:
91 $(MAKE) -f $(RULES_MAK) APP=PJSUA app=pjsua $(subst /,$(HOST_PSEP),$(LIBDIR)/$@)
Tristan Matthews0a329cc2013-07-17 13:20:14 -040092
93clean depend realclean:
94 $(MAKE) -f $(RULES_MAK) APP=PJSUA app=pjsua $@
95 $(MAKE) -f $(RULES_MAK) APP=PJSYSTEST app=pjsystest $@
96 $(MAKE) -f Samples.mak $@
97 @if test "$@" = "depend"; then \
Alexandre Lision8af73cb2013-12-10 14:11:20 -050098 echo '$(BINDIR)/$(PJSUA_EXE): $(APP_LIB_FILES)' >> .pjsua-$(TARGET_NAME).depend; \
99 echo '$(BINDIR)/$(PJSYSTEST_EXE): $(APP_LIB_FILES)' >> .pjsystest-$(TARGET_NAME).depend; \
Tristan Matthews0a329cc2013-07-17 13:20:14 -0400100 fi
101
102
103