]> sjero.net Git - linphone/blob - build/android/common.mk
543a9dc19492307cfd0bf208a17b7fce44bbf853
[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         linphone_tunnel_config.c \
48         message_storage.c
49
50 ifndef LINPHONE_VERSION
51 LINPHONE_VERSION = "Devel"
52 endif
53
54 LOCAL_CFLAGS += \
55         -D_BYTE_ORDER=_LITTLE_ENDIAN \
56         -DORTP_INET6 \
57         -DINET6 \
58         -DOSIP_MT \
59         -DENABLE_TRACE \
60         -DHAVE_CONFIG_H \
61         -DLINPHONE_VERSION=\"$(LINPHONE_VERSION)\" \
62         -DLINPHONE_PLUGINS_DIR=\"\\tmp\" \
63
64 LOCAL_CFLAGS += -DIN_LINPHONE
65
66 ifeq ($(LINPHONE_VIDEO),1)
67 LOCAL_CFLAGS += -DVIDEO_ENABLED
68 ifeq ($(BUILD_X264),1)
69 LOCAL_CFLAGS += -DHAVE_X264
70 endif
71 endif
72
73 ifeq ($(USE_JAVAH),1)
74 LOCAL_CFLAGS += -DUSE_JAVAH
75 endif
76
77 LOCAL_C_INCLUDES += \
78         $(LOCAL_PATH) \
79         $(LOCAL_PATH)/include \
80         $(LOCAL_PATH)/../build/android \
81         $(LOCAL_PATH)/../oRTP/include \
82         $(LOCAL_PATH)/../mediastreamer2/include \
83         $(LOCAL_PATH)/../../externals/exosip/include \
84         $(LOCAL_PATH)/../../externals/osip/include \
85         $(LOCAL_PATH)/../../../gen
86
87 LOCAL_LDLIBS += -llog -ldl
88
89
90
91 LOCAL_STATIC_LIBRARIES := \
92         cpufeatures \
93         libmediastreamer2 \
94         libortp \
95         libeXosip2 \
96         libosip2 \
97         libgsm 
98
99 ifeq ($(BUILD_TUNNEL),1)
100 LOCAL_CFLAGS +=-DTUNNEL_ENABLED
101 LOCAL_C_INCLUDES += $(LOCAL_PATH)/../../tunnel/include $(LOCAL_PATH)/../../tunnel/src
102 LOCAL_SRC_FILES +=  linphone_tunnel.cc TunnelManager.cc
103 ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
104 LOCAL_SHARED_LIBRARIES += libtunnelclient
105 else
106 LOCAL_STATIC_LIBRARIES += libtunnelclient
107 endif
108 else
109 LOCAL_SRC_FILES += linphone_tunnel_stubs.c
110 endif
111
112
113 _BUILD_AMR=0
114 ifneq ($(BUILD_AMRNB), 0)
115 _BUILD_AMR=1
116 endif
117
118 ifneq ($(BUILD_AMRWB), 0)
119 _BUILD_AMR=1
120 endif
121
122 ifneq ($(_BUILD_AMR), 0)
123 LOCAL_CFLAGS += -DHAVE_AMR
124 LOCAL_STATIC_LIBRARIES += \
125         libmsamr \
126         libopencoreamr
127 endif
128
129 ifneq ($(BUILD_AMRWB), 0)
130 LOCAL_STATIC_LIBRARIES += \
131         libvoamrwbenc
132 endif
133
134
135 ifeq ($(BUILD_SILK),1)
136 LOCAL_CFLAGS += -DHAVE_SILK
137 LOCAL_STATIC_LIBRARIES += libmssilk
138 endif
139
140 ifeq ($(BUILD_G729),1)
141 LOCAL_CFLAGS += -DHAVE_G729
142 LOCAL_SHARED_LIBRARIES += libbcg729
143 LOCAL_STATIC_LIBRARIES += libmsbcg729
144 endif
145
146 ifeq ($(LINPHONE_VIDEO),1)
147 LOCAL_LDLIBS    += -lGLESv2
148 LOCAL_STATIC_LIBRARIES += libvpx
149 ifeq ($(BUILD_X264),1)
150 LOCAL_STATIC_LIBRARIES += \
151         libmsx264 \
152         libx264
153 endif
154 endif
155
156 ifeq ($(BUILD_UPNP),1)
157 LOCAL_CFLAGS += -DBUILD_UPNP
158 LOCAL_SRC_FILES += upnp.c
159 endif
160
161 LOCAL_STATIC_LIBRARIES += libspeex 
162
163 ifeq ($(BUILD_SRTP), 1)
164         LOCAL_C_INCLUDES += $(SRTP_C_INCLUDE)
165 endif
166
167 ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
168 LOCAL_CFLAGS += -DHAVE_ILBC=1
169 LOCAL_STATIC_LIBRARIES += libmsilbc
170 endif
171
172 LOCAL_C_INCLUDES += $(LIBLINPHONE_EXTENDED_C_INCLUDES) 
173 LOCAL_WHOLE_STATIC_LIBRARIES += $(LIBLINPHONE_EXTENDED_STATIC_LIBS)
174 LOCAL_SRC_FILES  += $(LIBLINPHONE_EXTENDED_SRC_FILES)
175
176 ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
177         LOCAL_SHARED_LIBRARIES += liblinssl liblincrypto
178         ifeq ($(BUILD_GPLV3_ZRTP),1)
179         LOCAL_SHARED_LIBRARIES += libzrtpcpp
180         endif
181
182         ifeq ($(BUILD_SRTP),1)
183         LOCAL_SHARED_LIBRARIES += libsrtp
184         endif
185 else
186         LOCAL_LDLIBS += -lz
187         #LOCAL_STATIC_LIBRARIES += libz libdl
188         LOCAL_STATIC_LIBRARIES += \
189                 libssl-static libcrypto-static
190         ifeq ($(BUILD_GPLV3_ZRTP),1)
191                 LOCAL_STATIC_LIBRARIES += libzrtpcpp-static
192         endif
193
194         ifeq ($(BUILD_SRTP),1)
195                 LOCAL_STATIC_LIBRARIES += libsrtp-static
196         endif
197 endif
198