blob: 3c7be4f4a3bd94ef1b9be5f0e3cb52c766cb8583 [file] [log] [blame]
Benny Prijonoceb12602006-07-14 15:20:00 +00001# By default, the test application includes main.o.
2# OS make file may override this with os-specific files
3export UTIL_TEST_OBJS = main.o
4
Benny Prijono9a656212005-11-08 11:55:27 +00005include ../../build/common.mak
Benny Prijonoe91bf772005-11-08 11:31:55 +00006
7RULES_MAK := ../../build/rules.mak
8
Benny Prijono0382cd82006-05-04 08:43:02 +00009PJLIB_LIB:=../../pjlib/lib/libpj-$(TARGET_NAME)$(LIBEXT)
10export PJLIB_UTIL_LIB:=../lib/libpjlib-util-$(TARGET_NAME)$(LIBEXT)
Benny Prijonoe91bf772005-11-08 11:31:55 +000011
12###############################################################################
13# Gather all flags.
14#
Benny Prijono1819dc92006-02-08 11:15:20 +000015export _CFLAGS := $(CC_CFLAGS) $(OS_CFLAGS) $(HOST_CFLAGS) $(M_CFLAGS) \
Benny Prijonoe91bf772005-11-08 11:31:55 +000016 $(CFLAGS) $(CC_INC)../include $(CC_INC)../../pjlib/include
17export _CXXFLAGS:= $(_CFLAGS) $(CC_CXXFLAGS) $(OS_CXXFLAGS) $(M_CXXFLAGS) \
18 $(HOST_CXXFLAGS) $(CXXFLAGS)
19export _LDFLAGS := $(subst /,$(HOST_PSEP),$(PJLIB_UTIL_LIB)) \
20 $(subst /,$(HOST_PSEP),$(PJLIB_LIB)) \
21 $(CC_LDFLAGS) $(OS_LDFLAGS) $(M_LDFLAGS) $(HOST_LDFLAGS) \
22 $(LDFLAGS)
23
24###############################################################################
Benny Prijono8fa234f2006-02-07 20:57:14 +000025# Defines for building PJLIB-UTIL library
Benny Prijonoe91bf772005-11-08 11:31:55 +000026#
27export PJLIB_UTIL_SRCDIR = ../src/pjlib-util
28export PJLIB_UTIL_OBJS += $(OS_OBJS) $(M_OBJS) $(CC_OBJS) $(HOST_OBJS) \
Benny Prijonod424f5b2006-09-30 11:39:17 +000029 errno.o dns.o dns_dump.o getopt.o md5.o \
30 scanner.o stun.o string.o stun.o stun_client.o xml.o
Benny Prijonoe91bf772005-11-08 11:31:55 +000031export PJLIB_UTIL_CFLAGS += $(_CFLAGS)
32
33###############################################################################
34# Defines for building test application
35#
36export UTIL_TEST_SRCDIR = ../src/pjlib-util-test
Benny Prijonoceb12602006-07-14 15:20:00 +000037export UTIL_TEST_OBJS += xml.o test.o
Benny Prijonoe91bf772005-11-08 11:31:55 +000038export UTIL_TEST_CFLAGS += $(_CFLAGS)
39export UTIL_TEST_LDFLAGS += $(_LDFLAGS)
Benny Prijono0382cd82006-05-04 08:43:02 +000040export UTIL_TEST_EXE:=../bin/pjlib-util-test-$(TARGET_NAME)$(HOST_EXE)
Benny Prijonoe91bf772005-11-08 11:31:55 +000041
42
43export CC_OUT CC AR RANLIB HOST_MV HOST_RM HOST_RMDIR HOST_MKDIR OBJEXT LD LDOUT
44###############################################################################
45# Main entry
46#
47# $(TARGET) is defined in os-$(OS_NAME).mak file in current directory.
48#
49TARGETS := pjlib-util pjlib-util-test
50
51all: $(TARGETS)
52
53doc:
54 cd .. && doxygen docs/doxygen.cfg
55
56dep: depend
57distclean: realclean
58
59.PHONY: dep depend pjlib pjlib-test clean realclean distclean
60
61pjlib-util:
62 $(MAKE) -f $(RULES_MAK) APP=PJLIB_UTIL app=pjlib-util $(PJLIB_UTIL_LIB)
63
64pjlib-util-test: $(PJLIB_LIB)
65 $(MAKE) -f $(RULES_MAK) APP=UTIL_TEST app=pjlib-util-test $(UTIL_TEST_EXE)
66
67.PHONY: ../lib/pjlib-util.ko
68../lib/pjlib-util.ko:
69 echo Making $@
70 $(MAKE) -f $(RULES_MAK) APP=PJLIB_UTIL app=pjlib-util $@
71
72.PHONY: ../lib/pjlib-util-test.ko
73../lib/pjlib-util-test.ko:
74 $(MAKE) -f $(RULES_MAK) APP=UTIL_TEST app=pjlib-util-test $@
75
Benny Prijono0c59fea2006-05-27 13:11:32 +000076clean:
Benny Prijonoe91bf772005-11-08 11:31:55 +000077 $(MAKE) -f $(RULES_MAK) APP=PJLIB_UTIL app=pjlib-util $@
78 $(MAKE) -f $(RULES_MAK) APP=UTIL_TEST app=pjlib-util-test $@
Benny Prijono0c59fea2006-05-27 13:11:32 +000079
80realclean:
81 $(subst @@,$(subst /,$(HOST_PSEP),.pjlib-util-$(TARGET_NAME).depend),$(HOST_RMR))
82 $(subst @@,$(subst /,$(HOST_PSEP),.pjlib-util-test-$(TARGET_NAME).depend),$(HOST_RMR))
83 $(MAKE) -f $(RULES_MAK) APP=PJLIB_UTIL app=pjlib-util $@
84 $(MAKE) -f $(RULES_MAK) APP=UTIL_TEST app=pjlib-util-test $@
85
86depend:
87 $(MAKE) -f $(RULES_MAK) APP=PJLIB_UTIL app=pjlib-util $@
88 $(MAKE) -f $(RULES_MAK) APP=UTIL_TEST app=pjlib-util-test $@
89 echo '$(TEST_EXE): $(PJLIB_UTIL_LIB)' >> .pjlib-util-test-$(TARGET_NAME).depend; \
Benny Prijonoe91bf772005-11-08 11:31:55 +000090
91