1 ################################################################################
5 ################################################################################
7 FREESWITCH_VERSION
= 1.6.15
8 FREESWITCH_SOURCE
= freeswitch-
$(FREESWITCH_VERSION
).
tar.xz
9 FREESWITCH_SITE
= http
://files.freeswitch.org
/freeswitch-releases
10 FREESWITCH_LICENSE
= MPLv1.1
, \
11 GPLv3
+ with font exception
(fonts
), \
12 Apache-2.0
(apr
, apr-util
), \
13 LGPLv2
+ (sofia-sip
), \
14 LGPLv2.1
, GPLv2
(spandsp
), \
18 FREESWITCH_LICENSE_FILES
= \
21 libs
/apr-util
/LICENSE \
22 libs
/sofia-sip
/COPYING \
23 libs
/sofia-sip
/COPYRIGHTS \
24 libs
/spandsp
/COPYING \
26 libs
/tiff-4.0
.2/COPYRIGHT
28 # required dependencies
29 FREESWITCH_DEPENDENCIES
= \
40 # disable display of ClueCon banner in fs_cli
41 FREESWITCH_CONF_ENV
+= \
44 # we neither need host-perl nor host-php
45 FREESWITCH_CONF_ENV
+= \
46 ac_cv_prog_PERL
=false \
48 ac_cv_prog_PHP
=false \
50 ac_cv_prog_PHP_CONFIG
=false \
51 ac_cv_have_php_config
=no
53 # copied from freeswitch/configure.ac, line 258+
54 FREESWITCH_CONF_ENV
+= \
55 ac_cv_file__dev_ptmx
=yes \
57 ac_cv_file__dev_urandom
=yes \
58 ac_cv_func_realloc_0_nonnull
=yes \
59 ac_cv_func_malloc_0_nonnull
=yes \
60 ac_cv_func_setpgrp_void
=yes \
61 ac_cv_file__dev_zero
=yes \
62 apr_cv_tcp_nodelay_with_cork
=yes \
63 ac_cv_file_dbd_apr_dbd_mysql_c
=no \
64 ac_cv_sizeof_ssize_t
=4 \
65 apr_cv_mutex_recursive
=yes \
66 ac_cv_func_pthread_rwlock_init
=yes \
67 apr_cv_type_rwlock_t
=yes \
68 apr_cv_process_shared_works
=yes \
69 apr_cv_mutex_robust_shared
=yes
71 # build breaks with -Werror enabled
72 FREESWITCH_CONF_ENV
+= \
73 ac_cv_gcc_supports_w_no_unused_result
=no
75 FREESWITCH_CONF_OPTS
= \
79 --disable-system-xmlrpc-c
81 # zrtp supports a limited set of archs, sparc support is also broken due
82 # to a broken ld call by gcc, see libs/libzrtp/include/zrtp_config.h
83 ifeq ($(BR2_i386
)$(BR2_arm
)$(BR2_armeb
)$(BR2_aarch64
)$(BR2_aarch64_be
)$(BR2_mips
)$(BR2_mipsel
)$(BR2_mips64
)$(BR2_mips64el
)$(BR2_powerpc
)$(BR2_powerpc64
)$(BR2_powerpcle
)$(BR2_x86_64
),y
)
84 FREESWITCH_LICENSE_FILES
+= libs
/libzrtp
/src
/zrtp_legal.c
85 FREESWITCH_CONF_OPTS
+= --enable-zrtp
87 FREESWITCH_CONF_OPTS
+= --disable-zrtp
90 # Enable optional modules
91 FREESWITCH_ENABLED_MODULES
+= \
92 applications
/mod_avmd \
93 applications
/mod_blacklist \
94 applications
/mod_callcenter \
95 applications
/mod_commands \
96 applications
/mod_conference \
97 applications
/mod_curl \
99 applications
/mod_directory \
100 applications
/mod_dptools \
101 applications
/mod_easyroute \
102 applications
/mod_esf \
103 applications
/mod_esl \
104 applications
/mod_expr \
105 applications
/mod_fifo \
106 applications
/mod_fsk \
107 applications
/mod_hash \
108 applications
/mod_httapi \
109 applications
/mod_lcr \
110 applications
/mod_sms \
111 applications
/mod_snom \
112 applications
/mod_spandsp \
113 applications
/mod_spy \
114 applications
/mod_valet_parking \
115 applications
/mod_voicemail \
118 dialplans
/mod_dialplan_asterisk \
119 dialplans
/mod_dialplan_xml \
120 endpoints
/mod_loopback \
123 endpoints
/mod_sofia \
124 endpoints
/mod_verto \
125 event_handlers
/mod_cdr_csv \
126 event_handlers
/mod_cdr_sqlite \
127 event_handlers
/mod_event_socket \
128 formats
/mod_local_stream \
129 formats
/mod_native_file \
130 formats
/mod_tone_stream \
131 loggers
/mod_console \
132 loggers
/mod_logfile \
152 xml_int
/mod_xml_cdr \
153 xml_int
/mod_xml_rpc \
156 define FREESWITCH_ENABLE_MODULES
157 $(Q
)echo
$(FREESWITCH_ENABLED_MODULES
) \
161 FREESWITCH_PRE_CONFIGURE_HOOKS
+= FREESWITCH_ENABLE_MODULES
163 # mod_isac supports a limited set of archs
164 # src/mod/codecs/mod_isac/typedefs.h
165 ifeq ($(BR2_i386
)$(BR2_mips
)$(BR2_mipsel
)$(BR2_mips64
)$(BR2_mips64el
)$(BR2_x86_64
),y
)
166 FREESWITCH_LICENSE
:= $(FREESWITCH_LICENSE
), BSD-3c
(mod_isac
)
167 FREESWITCH_LICENSE_FILES
+= src
/mod
/codecs
/mod_isac
/LICENSE
168 FREESWITCH_ENABLED_MODULES
+= codecs
/mod_isac
171 ifeq ($(BR2_PACKAGE_ALSA_LIB
),y
)
172 FREESWITCH_DEPENDENCIES
+= alsa-lib
173 FREESWITCH_ENABLED_MODULES
+= endpoints
/mod_alsa
176 ifeq ($(BR2_PACKAGE_FREETYPE
),y
)
177 FREESWITCH_DEPENDENCIES
+= freetype
180 ifeq ($(BR2_PACKAGE_LIBBROADVOICE
),y
)
181 FREESWITCH_DEPENDENCIES
+= libbroadvoice
182 FREESWITCH_ENABLED_MODULES
+= codecs
/mod_bv
185 ifeq ($(BR2_PACKAGE_LIBCODEC2
),y
)
186 FREESWITCH_DEPENDENCIES
+= libcodec2
187 FREESWITCH_ENABLED_MODULES
+= codecs
/mod_codec2
190 ifeq ($(BR2_PACKAGE_LIBEDIT
),y
)
191 FREESWITCH_DEPENDENCIES
+= libedit
192 FREESWITCH_CONF_OPTS
+= --enable-core-libedit-support
194 FREESWITCH_CONF_OPTS
+= --disable-core-libedit-support
197 ifeq ($(BR2_PACKAGE_LIBG7221
),y
)
198 FREESWITCH_DEPENDENCIES
+= libg7221
201 ifeq ($(BR2_PACKAGE_LIBILBC
),y
)
202 FREESWITCH_DEPENDENCIES
+= libilbc
203 FREESWITCH_ENABLED_MODULES
+= codecs
/mod_ilbc
206 ifeq ($(BR2_PACKAGE_LIBLDNS
),y
)
207 FREESWITCH_DEPENDENCIES
+= libldns
208 FREESWITCH_ENABLED_MODULES
+= applications
/mod_enum
211 ifeq ($(BR2_PACKAGE_LIBMEMCACHED
),y
)
212 FREESWITCH_DEPENDENCIES
+= libmemcached
213 FREESWITCH_ENABLED_MODULES
+= applications
/mod_memcache
216 ifeq ($(BR2_PACKAGE_LIBPNG
),y
)
217 FREESWITCH_DEPENDENCIES
+= libpng
218 FREESWITCH_ENABLED_MODULES
+= formats
/mod_png
221 ifeq ($(BR2_PACKAGE_LIBYAML
),y
)
222 FREESWITCH_DEPENDENCIES
+= libyaml
223 FREESWITCH_ENABLED_MODULES
+= languages
/mod_yaml
226 ifeq ($(BR2_PACKAGE_LUA
),y
)
227 FREESWITCH_DEPENDENCIES
+= lua
228 FREESWITCH_ENABLED_MODULES
+= languages
/mod_lua
231 ifeq ($(BR2_PACKAGE_OPENLDAP
),y
)
232 FREESWITCH_DEPENDENCIES
+= openldap
233 FREESWITCH_ENABLED_MODULES
+= directories
/mod_ldap xml_int
/mod_xml_ldap
236 ifeq ($(BR2_PACKAGE_OPUS
),y
)
237 FREESWITCH_DEPENDENCIES
+= opus
238 FREESWITCH_ENABLED_MODULES
+= codecs
/mod_opus
241 ifeq ($(BR2_PACKAGE_PORTAUDIO
),y
)
242 FREESWITCH_DEPENDENCIES
+= portaudio
243 FREESWITCH_ENABLED_MODULES
+= endpoints
/mod_portaudio
246 ifeq ($(BR2_PACKAGE_LAME
)$(BR2_PACKAGE_LIBSHOUT
)$(BR2_PACKAGE_MPG123
),yyy
)
247 FREESWITCH_DEPENDENCIES
+= lame libshout mpg123
248 FREESWITCH_ENABLED_MODULES
+= formats
/mod_shout
251 ifeq ($(BR2_PACKAGE_LIBSILK
),y
)
252 FREESWITCH_DEPENDENCIES
+= libsilk
253 FREESWITCH_ENABLED_MODULES
+= codecs
/mod_silk
256 ifeq ($(BR2_PACKAGE_LIBSNDFILE
),y
)
257 FREESWITCH_DEPENDENCIES
+= libsndfile
258 FREESWITCH_ENABLED_MODULES
+= formats
/mod_sndfile
261 ifeq ($(BR2_PACKAGE_LIBSOUNDTOUCH
),y
)
262 FREESWITCH_DEPENDENCIES
+= libsoundtouch
263 FREESWITCH_ENABLED_MODULES
+= applications
/mod_soundtouch
266 ifeq ($(BR2_PACKAGE_OPENCV
),y
)
267 FREESWITCH_DEPENDENCIES
+= opencv
268 FREESWITCH_ENABLED_MODULES
+= applications
/mod_cv
271 ifeq ($(BR2_PACKAGE_UNIXODBC
),y
)
272 FREESWITCH_DEPENDENCIES
+= unixodbc
273 FREESWITCH_CONF_OPTS
+= \
274 --enable-core-odbc-support \
275 --with-odbc
=$(STAGING_DIR
)/usr
277 FREESWITCH_CONF_OPTS
+= --disable-core-odbc-support
280 ifeq ($(BR2_PACKAGE_XZ
),y
)
281 FREESWITCH_DEPENDENCIES
+= xz
284 ifeq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
)$(BR2_PACKAGE_FFMPEG
),yy
)
285 FREESWITCH_LICENSE
:= $(FREESWITCH_LICENSE
), BSD-3c
(libvpx
, libyuv
)
286 FREESWITCH_LICENSE_FILES
+= libs
/libvpx
/LICENSE libs
/libyuv
/LICENSE
287 FREESWITCH_CONF_OPTS
+= --enable-libvpx
--enable-libyuv
288 FREESWITCH_DEPENDENCIES
+= host-yasm ffmpeg
289 FREESWITCH_ENABLED_MODULES
+= applications
/mod_av applications
/mod_fsv
290 FREESWITCH_MAKE_ENV
+= CROSS
=$(TARGET_CROSS
)
292 FREESWITCH_CONF_OPTS
+= --disable-libvpx
--disable-libyuv
295 $(eval
$(autotools-package
))