blob: 17cb421711ef97e5509ea7a0e72971bfcc4d0c3a [file] [log] [blame]
Tristan Matthews0a329cc2013-07-17 13:20:14 -04001include ../../../build.mak
2include ../../../build/common.mak
3
4export LIBDIR := ../../lib
5
6RULES_MAK := $(PJDIR)/build/rules.mak
7
8export SRTP_LIB := ../../lib/libsrtp-$(TARGET_NAME)$(LIBEXT)
9
10###############################################################################
11# Gather all flags.
12#
13export _CFLAGS := $(CC_INC). $(CC_INC)../../srtp/crypto/include \
14 $(CC_INC)../../srtp/include \
15 $(CC_INC)../../../pjlib/include \
16 $(CC_CFLAGS) $(OS_CFLAGS) $(HOST_CFLAGS) $(M_CFLAGS) \
17 $(CFLAGS)
18export _CXXFLAGS:= $(_CFLAGS) $(CC_CXXFLAGS) $(OS_CXXFLAGS) $(M_CXXFLAGS) \
19 $(HOST_CXXFLAGS) $(CXXFLAGS)
20export _LDFLAGS := $(CC_LDFLAGS) $(OS_LDFLAGS) $(M_LDFLAGS) $(HOST_LDFLAGS) \
21 $(LDFLAGS)
22
23# libcrypt.a (the crypto engine)
24ciphers = crypto/cipher/cipher.o crypto/cipher/null_cipher.o \
25 crypto/cipher/aes.o crypto/cipher/aes_icm.o \
26 crypto/cipher/aes_cbc.o
27
28hashes = crypto/hash/null_auth.o crypto/hash/sha1.o \
29 crypto/hash/hmac.o crypto/hash/auth.o # crypto/hash/tmmhv2.o
30
31replay = crypto/replay/rdb.o crypto/replay/rdbx.o \
32 crypto/replay/ut_sim.o
33
34math = crypto/math/datatypes.o crypto/math/stat.o
35
36ust = crypto/ust/ust.o
37
38rng = crypto/rng/rand_source.o crypto/rng/prng.o crypto/rng/ctr_prng.o
39
40err = pjlib/srtp_err.o
41
42kernel = crypto/kernel/crypto_kernel.o crypto/kernel/alloc.o \
43 crypto/kernel/key.o $(rng) $(err) # $(ust)
44
45srtpobj = srtp/srtp.o
46
47cryptobj = $(ciphers) $(hashes) $(math) $(stat) $(kernel) $(replay)
48
49export SRTP_SRCDIR = ../../srtp
50export SRTP_OBJS = $(cryptobj) $(srtpobj)
51export SRTP_CFLAGS = -DHAVE_CONFIG_H $(_CFLAGS)
52
53
54export CC_OUT CC AR RANLIB HOST_MV HOST_RM HOST_RMDIR HOST_MKDIR OBJEXT LD LDOUT
55###############################################################################
56# Main entry
57#
58# $(TARGET) is defined in os-$(OS_NAME).mak file in current directory.
59#
60TARGETS := libsrtp
61
62all: $(TARGETS)
63
64doc:
65 cd .. && doxygen docs/doxygen.cfg
66
67dep: depend
68distclean: realclean
69
70.PHONY: dep depend libsrtp clean realclean distclean
71
72libsrtp:
73 $(MAKE) -f $(RULES_MAK) APP=SRTP app=libsrtp $(SRTP_LIB)
74
75clean print_lib:
76 $(MAKE) -f $(RULES_MAK) APP=SRTP app=libsrtp $@
77
78realclean:
79 $(subst @@,$(subst /,$(HOST_PSEP),.ilbc-$(TARGET_NAME).depend),$(HOST_RMR))
80
81 $(MAKE) -f $(RULES_MAK) APP=SRTP app=libsrtp $@
82
83depend:
84 $(MAKE) -f $(RULES_MAK) APP=SRTP app=libsrtp $@
85
86
87