]> sjero.net Git - linphone/blob - build/android/common.mk
8772e90035fe47f48ab6d3478d1f67c8cabbd45c
[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.cc
48
49 ifndef MY_LOG_DOMAIN
50 MY_LOG_DOMAIN = \"Linphone\"
51 endif
52
53 ifndef LINPHONE_VERSION
54 LINPHONE_VERSION = "Devel"
55 endif
56
57 LOCAL_CFLAGS += \
58         -D_BYTE_ORDER=_LITTLE_ENDIAN \
59         -DORTP_INET6 \
60         -DINET6 \
61         -DOSIP_MT \
62         -DHAVE_EXOSIP_RESET_TRANSPORTS \
63         -DENABLE_TRACE \
64         -DLINPHONE_VERSION=\"$(LINPHONE_VERSION)\" \
65         -DLINPHONE_PLUGINS_DIR=\"\\tmp\" \
66         -DLOG_DOMAIN=$(MY_LOG_DOMAIN) \
67         -DHAVE_EXOSIP_TRYLOCK=1 
68
69 LOCAL_CFLAGS += -DIN_LINPHONE
70
71 ifeq ($(LINPHONE_VIDEO),1)
72 LOCAL_CFLAGS += -DVIDEO_ENABLED
73 ifeq ($(BUILD_X264),1)
74 LOCAL_CFLAGS += -DHAVE_X264
75 endif
76 endif
77
78 LOCAL_C_INCLUDES += \
79         $(LOCAL_PATH) \
80         $(LOCAL_PATH)/include \
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 +=  TunnelManager.cc
103 ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
104 LOCAL_SHARED_LIBRARIES += libtunnelclient
105 else
106 LOCAL_STATIC_LIBRARIES += libtunnelclient
107 endif
108 endif
109
110
111 _BUILD_AMR=0
112 ifneq ($(BUILD_AMRNB), 0)
113 _BUILD_AMR=1
114 endif
115
116 ifneq ($(BUILD_AMRWB), 0)
117 _BUILD_AMR=1
118 endif
119
120 ifneq ($(_BUILD_AMR), 0)
121 LOCAL_CFLAGS += -DHAVE_AMR
122 LOCAL_STATIC_LIBRARIES += \
123         libmsamr \
124         libopencoreamr
125 endif
126
127 ifneq ($(BUILD_AMRWB), 0)
128 LOCAL_STATIC_LIBRARIES += \
129         libvoamrwbenc
130 endif
131
132
133 ifeq ($(BUILD_SILK),1)
134 LOCAL_CFLAGS += -DHAVE_SILK
135 LOCAL_STATIC_LIBRARIES += libmssilk
136 endif
137
138 ifeq ($(BUILD_G729),1)
139 LOCAL_CFLAGS += -DHAVE_G729
140 LOCAL_SHARED_LIBRARIES += libbcg729
141 LOCAL_STATIC_LIBRARIES += libmsbcg729
142 endif
143
144 ifeq ($(LINPHONE_VIDEO),1)
145 LOCAL_LDLIBS    += -lGLESv2
146 LOCAL_STATIC_LIBRARIES += libvpx
147 ifeq ($(BUILD_X264),1)
148 LOCAL_STATIC_LIBRARIES += \
149         libmsx264 \
150         libx264
151 endif
152 endif
153
154 LOCAL_STATIC_LIBRARIES += libspeex 
155
156 ifeq ($(BUILD_SRTP), 1)
157         LOCAL_C_INCLUDES += $(SRTP_C_INCLUDE)
158 endif
159
160 ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
161 LOCAL_CFLAGS += -DHAVE_ILBC=1
162 LOCAL_STATIC_LIBRARIES += libmsilbc
163 endif
164
165 LOCAL_C_INCLUDES += $(LIBLINPHONE_EXTENDED_C_INCLUDES) 
166 LOCAL_WHOLE_STATIC_LIBRARIES += $(LIBLINPHONE_EXTENDED_STATIC_LIBS)
167 LOCAL_SRC_FILES  += $(LIBLINPHONE_EXTENDED_SRC_FILES)
168
169 ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
170         LOCAL_SHARED_LIBRARIES += liblinssl liblincrypto
171         ifeq ($(BUILD_GPLV3_ZRTP),1)
172         LOCAL_SHARED_LIBRARIES += libzrtpcpp
173         endif
174
175         ifeq ($(BUILD_SRTP),1)
176         LOCAL_SHARED_LIBRARIES += libsrtp
177         endif
178 else
179         LOCAL_LDLIBS += -lz
180         #LOCAL_STATIC_LIBRARIES += libz libdl
181         LOCAL_STATIC_LIBRARIES += \
182                 libssl-static libcrypto-static
183         ifeq ($(BUILD_GPLV3_ZRTP),1)
184                 LOCAL_STATIC_LIBRARIES += libzrtpcpp-static
185         endif
186
187         ifeq ($(BUILD_SRTP),1)
188                 LOCAL_STATIC_LIBRARIES += libsrtp-static
189         endif
190 endif
191