blob: f8ed4b0de0d58def49de07bf0983cd19787e6fd3 [file] [log] [blame]
Benny Prijono81dbd742006-02-08 11:16:34 +00001include build.mak
2include build/host-$(HOST_NAME).mak
3
Benny Prijonod9627842007-04-18 09:24:31 +00004DIRS = pjlib pjlib-util pjnath third_party pjmedia pjsip pjsip-apps
Benny Prijonodd859a62005-11-01 16:42:51 +00005
6ifdef MINSIZE
7MAKE_FLAGS := MINSIZE=1
8endif
9
Benny Prijono5b64b8d2008-06-20 21:39:02 +000010all clean dep depend distclean print realclean:
Benny Prijonodd859a62005-11-01 16:42:51 +000011 for dir in $(DIRS); do \
Benny Prijono1d971622006-09-10 22:27:40 +000012 if $(MAKE) $(MAKE_FLAGS) -C $$dir/build $@; then \
Benny Prijonodd859a62005-11-01 16:42:51 +000013 true; \
14 else \
15 exit 1; \
16 fi; \
Benny Prijonodd859a62005-11-01 16:42:51 +000017 done
18
Benny Prijono5b64b8d2008-06-20 21:39:02 +000019doc:
20 @if test \( ! "$(WWWDIR)" == "" \) -a \( ! -d $(WWWDIR)/pjlib/docs/html \) ; then \
21 echo 'Directory "$(WWWDIR)" does not look like a valid pjsip web directory'; \
22 exit 1; \
23 fi
24 for dir in $(DIRS); do \
25 if $(MAKE) $(MAKE_FLAGS) -C $$dir/build $@; then \
26 true; \
27 else \
28 exit 1; \
29 fi; \
30 done
31
Benny Prijono7a6e84f2006-05-04 08:57:45 +000032LIBS = pjlib/lib/libpj-$(TARGET_NAME).a \
33 pjlib-util/lib/libpjlib-util-$(TARGET_NAME).a \
Benny Prijonodbce2cf2007-03-28 16:24:00 +000034 pjnath/lib/libpjnath-$(TARGET_NAME).a \
Benny Prijono7a6e84f2006-05-04 08:57:45 +000035 pjmedia/lib/libpjmedia-$(TARGET_NAME).a \
Benny Prijonoccd90bb2009-03-10 15:14:11 +000036 pjmedia/lib/libpjmedia-audiodev-$(TARGET_NAME).a \
Benny Prijono7a6e84f2006-05-04 08:57:45 +000037 pjmedia/lib/libpjmedia-codec-$(TARGET_NAME).a \
38 pjsip/lib/libpjsip-$(TARGET_NAME).a \
39 pjsip/lib/libpjsip-ua-$(TARGET_NAME).a \
40 pjsip/lib/libpjsip-simple-$(TARGET_NAME).a \
41 pjsip/lib/libpjsua-$(TARGET_NAME).a
42BINS = pjsip-apps/bin/pjsua-$(TARGET_NAME)$(HOST_EXE)
Benny Prijonodd859a62005-11-01 16:42:51 +000043
44size:
45 @echo -n 'Date: '
46 @date
47 @echo
48 @for lib in $(LIBS); do \
49 echo "$$lib:"; \
Benny Prijono53c36772006-07-29 11:15:34 +000050 size -t $$lib | awk '{print $$1 "\t" $$2 "\t" $$3 "\t" $$6}'; \
Benny Prijonodd859a62005-11-01 16:42:51 +000051 echo; \
52 done
53 @echo
54 @for bin in $(BINS); do \
55 echo "size $$bin:"; \
56 size $$bin; \
57 done
58
Benny Prijono81dbd742006-02-08 11:16:34 +000059#dos2unix:
60# for f in `find . | egrep '(mak|h|c|S|s|Makefile)$$'`; do \
61# dos2unix "$$f" > dos2unix.tmp; \
62# cp dos2unix.tmp "$$f"; \
63# done
64# rm -f dos2unix.tmp
Benny Prijonodd859a62005-11-01 16:42:51 +000065
Benny Prijono4766ffe2005-11-01 17:56:59 +000066xhdrid:
67 for f in `find . | egrep '\.(h|c|S|s|cpp|hpp)$$'`; do \
68 echo Processing $$f...; \
69 cat $$f | sed 's/.*\$$Author\$$/ */' > /tmp/id; \
70 cp /tmp/id $$f; \
71 done
72
Benny Prijono6b0d9a02009-11-24 02:51:41 +000073selftest: pjlib-test pjlib-util-test pjnath-test pjmedia-test pjsip-test pjsua-test
74
75pjlib-test: pjlib/bin/pjlib-test-$(TARGET_NAME)
76 cd pjlib/build && ../bin/pjlib-test-$(TARGET_NAME)
77
78pjlib-util-test: pjlib-util/bin/pjlib-util-test-$(TARGET_NAME)
79 cd pjlib-util/build && ../bin/pjlib-util-test-$(TARGET_NAME)
80
81pjnath-test: pjnath/bin/pjnath-test-$(TARGET_NAME)
82 cd pjnath/build && ../bin/pjnath-test-$(TARGET_NAME)
83
84pjmedia-test: pjmedia/bin/pjmedia-test-$(TARGET_NAME)
85 cd pjmedia/build && ../bin/pjmedia-test-$(TARGET_NAME)
86
87pjsip-test: pjsip/bin/pjsip-test-$(TARGET_NAME)
88 cd pjsip/build && ../bin/pjsip-test-$(TARGET_NAME)
89
90pjsua-test:
91 cd tests/pjsua && python runall.py
92
Benny Prijonoaf09dc32007-04-22 12:48:30 +000093prefix = /usr/local
94install:
95 mkdir -p $(DESTDIR)$(prefix)/lib
96 cp -L $$(find . -name '*.a') $(DESTDIR)$(prefix)/lib
97 mkdir -p $(DESTDIR)$(prefix)/include
98 cp -RL $$(find . -name include) $(DESTDIR)$(prefix)
99 cd $(DESTDIR)$(prefix)/lib && for i in $$(find . -name 'libpj*a'); do\
100 ln -s $$i $$(echo $$i | sed -e "s/-$(TARGET_NAME)//");\
101 done
102 mkdir -p $(DESTDIR)$(prefix)/lib/pkgconfig
103 sed -e "s!@PREFIX@!$(DESTDIR)$(prefix)!" libpj.pc.in > $(DESTDIR)/$(prefix)/lib/pkgconfig/libpj.pc