]> sjero.net Git - linphone/blob - build/android/common.mk
Factorized makefiles
[linphone] / build / android / common.mk
1 ##
2 ## Android.mk -Android build script-
3 ##
4 ##
5 ## Copyright (C) 2010  Belledonne Communications, Grenoble, France
6 ##
7 ##  This program is free software; you can redistribute it and/or modify
8 ##  it under the terms of the GNU General Public License as published by
9 ##  the Free Software Foundation; either version 2 of the License, or
10 ##  (at your option) any later version.
11 ##
12 ##  This program is distributed in the hope that it will be useful,
13 ##  but WITHOUT ANY WARRANTY; without even the implied warranty of
14 ##  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 ##  GNU General Public License for more details.
16 ##
17 ##  You should have received a copy of the GNU General Public License
18 ##  along with this program; if not, write to the Free Software
19 ##  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
20 ##
21
22 LOCAL_CPP_EXTENSION := .cc
23
24 LOCAL_SRC_FILES := \
25         linphonecore.c \
26         misc.c  \
27         enum.c \
28         presence.c \
29         proxy.c \
30         friend.c \
31         authentication.c \
32         lpconfig.c \
33         chat.c \
34         sipsetup.c \
35         siplogin.c \
36         address.c \
37         linphonecore_jni.cc \
38         sal.c \
39         sal_eXosip2.c \
40         sal_eXosip2_presence.c \
41         sal_eXosip2_sdp.c \
42         offeranswer.c \
43         callbacks.c \
44         linphonecall.c \
45         conference.c \
46         ec-calibrator.c
47
48 ifndef MY_LOG_DOMAIN
49 MY_LOG_DOMAIN = \"Linphone\"
50 endif
51
52 LOCAL_CFLAGS += \
53         -D_BYTE_ORDER=_LITTLE_ENDIAN \
54         -DORTP_INET6 \
55         -DINET6 \
56         -DOSIP_MT \
57         -DENABLE_TRACE \
58         -DLINPHONE_VERSION=\"3.4.0\" \
59         -DLINPHONE_PLUGINS_DIR=\"\\tmp\" \
60         -DLOG_DOMAIN=$(MY_LOG_DOMAIN) 
61
62 LOCAL_CFLAGS += -DIN_LINPHONE
63
64 ifeq ($(LINPHONE_VIDEO),1)
65 LOCAL_CFLAGS += -DVIDEO_ENABLED
66 ifeq ($(BUILD_X264),1)
67 LOCAL_CFLAGS += -DHAVE_X264
68 endif
69 endif
70
71 LOCAL_C_INCLUDES += \
72         $(LOCAL_PATH) \
73         $(LOCAL_PATH)/include \
74         $(LOCAL_PATH)/../oRTP/include \
75         $(LOCAL_PATH)/../mediastreamer2/include \
76         $(LOCAL_PATH)/../../externals/exosip/include \
77         $(LOCAL_PATH)/../../externals/osip/include 
78
79 LOCAL_LDLIBS += -llog -ldl
80
81
82
83 LOCAL_STATIC_LIBRARIES := \
84         cpufeatures \
85         libmediastreamer2 \
86         libortp \
87         libeXosip2 \
88         libosip2 \
89         libgsm 
90
91 ifeq ($(BUILD_TUNNEL),1)
92 LOCAL_CFLAGS +=-DTUNNEL_ENABLED
93 LOCAL_C_INCLUDES += $(LOCAL_PATH)/../../tunnel/include $(LOCAL_PATH)/../../tunnel/src
94 LOCAL_SRC_FILES += linphone_tunnel.cc TunnelManager.cc
95 ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
96 LOCAL_SHARED_LIBRARIES += libtunnelclient
97 else
98 LOCAL_STATIC_LIBRARIES += libtunnelclient
99 endif
100 endif
101
102
103 _BUILD_AMR=0
104 ifneq ($(BUILD_AMRNB), 0)
105 _BUILD_AMR=1
106 endif
107
108 ifneq ($(BUILD_AMRWB), 0)
109 _BUILD_AMR=1
110 endif
111
112 ifneq ($(_BUILD_AMR), 0)
113 LOCAL_CFLAGS += -DHAVE_AMR
114 LOCAL_STATIC_LIBRARIES += \
115         libmsamr \
116         libopencoreamr
117 endif
118
119 ifneq ($(BUILD_AMRWB), 0)
120 LOCAL_STATIC_LIBRARIES += \
121         libvoamrwbenc
122 endif
123
124
125 ifeq ($(BUILD_SILK),1)
126 LOCAL_CFLAGS += -DHAVE_SILK
127 LOCAL_STATIC_LIBRARIES += libmssilk
128 endif
129
130 ifeq ($(BUILD_G729),1)
131 LOCAL_CFLAGS += -DHAVE_G729
132 LOCAL_SHARED_LIBRARIES += libbcg729
133 LOCAL_STATIC_LIBRARIES += libmsbcg729
134 endif
135
136 ifeq ($(LINPHONE_VIDEO),1)
137 LOCAL_LDLIBS    += -lGLESv2
138 LOCAL_STATIC_LIBRARIES += libvpx
139 ifeq ($(BUILD_X264),1)
140 LOCAL_STATIC_LIBRARIES += \
141         libmsx264 \
142         libx264
143 endif
144 endif
145
146 LOCAL_STATIC_LIBRARIES += libspeex 
147
148 ifeq ($(BUILD_SRTP), 1)
149         LOCAL_C_INCLUDES += $(SRTP_C_INCLUDE)
150 endif
151
152 ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
153 LOCAL_CFLAGS += -DHAVE_ILBC=1
154 LOCAL_STATIC_LIBRARIES += libmsilbc
155 endif
156
157 LOCAL_C_INCLUDES += $(LIBLINPHONE_EXTENDED_C_INCLUDES) 
158 LOCAL_WHOLE_STATIC_LIBRARIES += $(LIBLINPHONE_EXTENDED_STATIC_LIBS)
159 LOCAL_SRC_FILES  += $(LIBLINPHONE_EXTENDED_SRC_FILES)
160
161 ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
162         LOCAL_SHARED_LIBRARIES += liblinssl liblincrypto
163         ifeq ($(BUILD_GPLV3_ZRTP),1)
164         LOCAL_SHARED_LIBRARIES += libzrtpcpp
165         endif
166
167         ifeq ($(BUILD_SRTP),1)
168         LOCAL_SHARED_LIBRARIES += libsrtp
169         endif
170 else
171         LOCAL_LDLIBS += -lz
172         #LOCAL_STATIC_LIBRARIES += libz libdl
173         LOCAL_STATIC_LIBRARIES += \
174                 libssl-static libcrypto-static
175         ifeq ($(BUILD_GPLV3_ZRTP),1)
176                 LOCAL_STATIC_LIBRARIES += libzrtpcpp-static
177         endif
178
179         ifeq ($(BUILD_SRTP),1)
180                 LOCAL_STATIC_LIBRARIES += libsrtp-static
181         endif
182 endif
183