blob: 5be4a8777ea20b6b4b47904a973e364b7424b954 [file] [log] [blame]
Benny Prijono6782e092006-02-07 20:56:50 +00001include ../../build/common.mak
Benny Prijonodd859a62005-11-01 16:42:51 +00002
Benny Prijono6782e092006-02-07 20:56:50 +00003RULES_MAK := ../../build/rules.mak
4
5PJLIB_LIB:=../../pjlib/lib/libpj-$(MACHINE_NAME)-$(OS_NAME)-$(CC_NAME)$(LIBEXT)
6PJLIB_UTIL_LIB:=../../pjlib-util/lib/libpjlib-util-$(MACHINE_NAME)-$(OS_NAME)-$(CC_NAME)$(LIBEXT)
7PJMEDIA_LIB:=../../pjmedia/lib/libpjmedia-$(MACHINE_NAME)-$(OS_NAME)-$(CC_NAME)$(LIBEXT)
8
9export PJSIP_LIB:=../lib/libpjsip-$(MACHINE_NAME)-$(OS_NAME)-$(CC_NAME)$(LIBEXT)
10export PJSIP_UA_LIB:=../lib/libpjsip-ua-$(MACHINE_NAME)-$(OS_NAME)-$(CC_NAME)$(LIBEXT)
11
12
13###############################################################################
14# Gather all flags.
15#
16export _CFLAGS := -O2 -g $(CC_CFLAGS) $(OS_CFLAGS) $(HOST_CFLAGS) $(M_CFLAGS) \
17 $(CFLAGS) $(CC_INC)../include $(CC_INC)../../pjlib/include \
18 $(CC_INC)../../pjlib-util/include $(CC_INC)../../pjmedia/include
19export _CXXFLAGS:= $(_CFLAGS) $(CC_CXXFLAGS) $(OS_CXXFLAGS) $(M_CXXFLAGS) \
20 $(HOST_CXXFLAGS) $(CXXFLAGS)
21export _LDFLAGS := $(subst /,$(HOST_PSEP),$(PJSIP_UA_LIB)) \
22 $(subst /,$(HOST_PSEP),$(PJSIP_LIB)) \
23 $(subst /,$(HOST_PSEP),$(PJMEDIA_LIB)) \
24 $(subst /,$(HOST_PSEP),$(PJLIB_UTIL_LIB)) \
25 $(subst /,$(HOST_PSEP),$(PJLIB_LIB)) \
26 $(CC_LDFLAGS) $(OS_LDFLAGS) $(M_LDFLAGS) $(HOST_LDFLAGS) \
27 $(LDFLAGS)
28
29
30###############################################################################
31# Defines for building PJSIP core library
32#
Benny Prijonodd859a62005-11-01 16:42:51 +000033export PJSIP_SRCDIR = ../src/pjsip
Benny Prijono6782e092006-02-07 20:56:50 +000034export PJSIP_OBJS += $(OS_OBJS) $(M_OBJS) $(CC_OBJS) $(HOST_OBJS) \
35 sip_errno.o sip_msg.o sip_parser.o sip_tel_uri.o sip_uri.o \
36 sip_endpoint.o sip_util.o sip_util_proxy.o \
37 sip_resolve.o sip_transport.o sip_transport_loop.o sip_transport_udp.o \
38 sip_auth_client.o sip_auth_msg.o sip_auth_parser.o sip_auth_server.o \
39 sip_transaction.o sip_util_statefull.o \
40 sip_dialog.o sip_ua_layer.o
41export PJSIP_CFLAGS += $(_CFLAGS)
Benny Prijonodd859a62005-11-01 16:42:51 +000042
Benny Prijono6782e092006-02-07 20:56:50 +000043###############################################################################
44# Defines for building PJSIP UA library
45#
46export PJSIP_UA_SRCDIR = ../src/pjsip-ua
47export PJSIP_UA_OBJS += $(OS_OBJS) $(M_OBJS) $(CC_OBJS) $(HOST_OBJS) \
48 sip_inv.o sip_reg.o
49export PJSIP_UA_CFLAGS += $(_CFLAGS)
Benny Prijonodd859a62005-11-01 16:42:51 +000050
Benny Prijonodd859a62005-11-01 16:42:51 +000051
Benny Prijono6782e092006-02-07 20:56:50 +000052###############################################################################
53# Defines for building PJSUA
54#
Benny Prijonodd859a62005-11-01 16:42:51 +000055export PJSUA_SRCDIR = ../src/pjsua
Benny Prijono6782e092006-02-07 20:56:50 +000056export PJSUA_OBJS += $(OS_OBJS) $(M_OBJS) $(CC_OBJS) $(HOST_OBJS) \
57 main.o pjsua_reg.o pjsua.o
58export PJSUA_CFLAGS += $(_CFLAGS)
59export PJSUA_LDFLAGS += $(_LDFLAGS)
60export PJSUA_EXE:=../bin/pjsua-$(MACHINE_NAME)-$(OS_NAME)-$(CC_NAME)$(HOST_EXE)
Benny Prijonodd859a62005-11-01 16:42:51 +000061
Benny Prijonodd859a62005-11-01 16:42:51 +000062
Benny Prijono6782e092006-02-07 20:56:50 +000063
64export CC_OUT CC AR RANLIB HOST_MV HOST_RM HOST_RMDIR HOST_MKDIR OBJEXT LD LDOUT
65###############################################################################
66# Main entry
67#
68#
69TARGETS := pjsip pjsip-ua pjsua
70
71all: $(TARGETS)
Benny Prijonodd859a62005-11-01 16:42:51 +000072
73doc:
74 cd .. && doxygen docs/doxygen.cfg
75
Benny Prijonodd859a62005-11-01 16:42:51 +000076dep: depend
Benny Prijono6782e092006-02-07 20:56:50 +000077distclean: realclean
78
79.PHONY: dep depend pjsip pjsip-ua pjsua clean realclean distclean
Benny Prijonodd859a62005-11-01 16:42:51 +000080
81pjsip:
Benny Prijono6782e092006-02-07 20:56:50 +000082 $(MAKE) -f $(RULES_MAK) APP=PJSIP app=pjsip $(PJSIP_LIB)
Benny Prijonodd859a62005-11-01 16:42:51 +000083
Benny Prijono6782e092006-02-07 20:56:50 +000084pjsip-ua:
85 $(MAKE) -f $(RULES_MAK) APP=PJSIP_UA app=pjsip-ua $(PJSIP_UA_LIB)
Benny Prijonodd859a62005-11-01 16:42:51 +000086
Benny Prijono6782e092006-02-07 20:56:50 +000087pjsua: $(PJSIP_LIB) $(PJSIP_UA_LIB)
88 $(MAKE) -f $(RULES_MAK) APP=PJSUA app=pjsua $(PJSUA_EXE)
Benny Prijonodd859a62005-11-01 16:42:51 +000089
Benny Prijono6782e092006-02-07 20:56:50 +000090.PHONY: ../lib/pjsip.ko
91../lib/pjsip.ko:
92 echo Making $@
93 $(MAKE) -f $(RULES_MAK) APP=PJSIP app=pjsip $@
Benny Prijonodd859a62005-11-01 16:42:51 +000094
Benny Prijono6782e092006-02-07 20:56:50 +000095.PHONY: ../lib/pjsip-ua.ko
96../lib/pjsip-ua.ko:
97 echo Making $@
98 $(MAKE) -f $(RULES_MAK) APP=PJSIP_UA app=pjsip-ua $@
Benny Prijonodd859a62005-11-01 16:42:51 +000099
Benny Prijono6782e092006-02-07 20:56:50 +0000100.PHONY: ../lib/pjsua.ko
101../lib/pjsua.ko:
102 $(MAKE) -f $(RULES_MAK) APP=PJSUA app=pjsua $@
Benny Prijonodd859a62005-11-01 16:42:51 +0000103
Benny Prijono6782e092006-02-07 20:56:50 +0000104clean depend realclean:
105 $(MAKE) -f $(RULES_MAK) APP=PJSIP app=pjsip $@
106 $(MAKE) -f $(RULES_MAK) APP=PJSIP_UA app=pjsip-ua $@
107 $(MAKE) -f $(RULES_MAK) APP=PJSUA app=pjsua $@
108 @if test "$@" == "depend"; then \
109 echo '$(PJSUA_EXE): $(PJSIP_LIB) $(PJSIP_UA_LIB)' >> .pjsua-$(MACHINE_NAME)-$(OS_NAME)-$(CC_NAME).depend; \
110 fi
Benny Prijonodd859a62005-11-01 16:42:51 +0000111
Benny Prijonodd859a62005-11-01 16:42:51 +0000112
113