[FreeSWITCH]: Ref. to FS git commit bb258288801b50e8fb673a620a6c2b4855e11daf

1. Update to FS v1.7.0
 2. Fix erlang detection
 3. Fix mod-python
 4. Add libvpx and libyuv configure switches.
 5. Add mod-graylog2, mod-png, mod-prefix, and mod-translate.
 6. Use $(STAGING_DIR)/host instead of $(STAGING_DIR_HOST).

--
Signed-off-by: Mazi Lo <openwrt.mazilo@recursor.net>
This commit is contained in:
Mazi Lo 2016-03-26 17:49:30 -04:00
parent 6dd432b5be
commit 1ee1586053
16 changed files with 454 additions and 112 deletions

View file

@ -31,13 +31,13 @@ menu "Configuration"
endchoice
choice
depends on FS_WITH_LATEST_HEAD
prompt "FS TARRED archive to use"
default FS_WITH_OPENWRT_SOURCE
help
Select which tarred to use: local or OpenWRT
local: FS tarred from local archive
OpenWRT: FS tarred download from source by OpenWRT
local: Manually downloaded from FS git repo
OpenWRT: FS tarred-file downloaded from source by OpenWRT
FS git repo: https://freeswitch.org/stash/scm/fs/freeswitch.git
config FS_WITH_LOCAL_SOURCE
bool "local"
@ -155,6 +155,18 @@ menu "Configuration"
Build FreeSWITCH to comply with FHS when placing
files and directories.
config FS_WITH_LIBVPX
bool "Enable building libvpx"
default y
help
Compile to build libs/libvpx.
config FS_WITH_LIBYUV
bool "Enable building libyuv"
default y
help
Compile to build libs/libyuv.
config FS_WITH_LZMA
bool "Enable liblzma usage in libtiff"
default y
@ -219,13 +231,6 @@ menu "Configuration"
help
Use OpenSSL crypto primitives.
config FS_WITH_PYTHON
depends on PACKAGE_freeswitch-mod-python
bool "Enable to use system provided version of python"
default n
help
Enable to use system provided version of python.
config FS_WITH_STUN
bool "Enable stun module"
default y
@ -236,7 +241,7 @@ menu "Configuration"
depends on PACKAGE_freeswitch-mod-erlang-event
string
prompt "path to erlang installed directory"
default "$$(STAGING_DIR_HOST)/lib/erlang"
default "$$(STAGING_DIR)/host/lib/erlang"
help
Specify the path to erlang libraries.
@ -247,4 +252,18 @@ menu "Configuration"
# help
# Specify the include header path for OGG library.
config FS_WITH_PYTHON
bool "Enable to use system provided version of python"
default y
help
Enable to use system provided version of python.
config FS_WITH_PYTHON_PATH
depends on FS_WITH_PYTHON
string
prompt "full path to binary python$(PYTHON3_VERSION)"
default "$$(STAGING_DIR)/host/bin/python$(PYTHON3_VERSION)"
help
Specify the full path to binary python$(PYTHON3-VERSION).
endmenu

View file

@ -1,61 +1,58 @@
#
# Copyright (C) 2009-2013 OpenWrt.org
# Copyright (C) 2009-2016 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
#
include $(TOPDIR)/rules.mk
-include perlmod.mk
ifneq ($(PACKAGE_$(PKG_NAME)-mod-perl),)
include $(TOPDIR)/feeds/packages/lang/perl/perlmod.mk
endif
PKG_NAME:=freeswitch
PKG_SOURCE_PROTO:=git
PKG_DISTNAME:=$(PKG_NAME)_$(PKG_SOURCE_PROTO)
PKG_VERSION:=1.5.final
PKG_VERSION:=1.7.0
#
# The latest FS git hash in PKG_SOURCE_VERSION can be obtained from
# http://fisheye.freeswitch.org
#
FS_WITH_DEFAULT_HEAD:=16d600c0350a79c2532c739dd1432f7ed318ea09
PKG_SOURCE_URL:=https://$(PKG_NAME).org/stash/scm/fs/$(PKG_NAME).git
PKG_SOURCE_VERSION:=$(if $(CONFIG_FS_WITH_LATEST_HEAD),$(shell git ls-remote $(PKG_SOURCE_URL) HEAD|cut -f1),$(FS_WITH_DEFAULT_HEAD))
PATCH_DIR:=./patches/$(CONFIG_LIBC)
FS_WITH_DEFAULT_HEAD:=bb258288801b50e8fb673a620a6c2b4855e11daf
FS_WITH_DEFAULT_HEAD_SHORT:=$(shell echo $(FS_WITH_DEFAULT_HEAD)|cut -b -7)
PKG_SOURCE_VERSION:=$(if $(CONFIG_FS_WITH_LATEST_HEAD),$(shell git ls-remote $(PKG_SOURCE_URL) HEAD | cut -f1),$(FS_WITH_DEFAULT_HEAD))
PKG_SOURCE_VERSION_SHORT:=$(shell echo $(PKG_SOURCE_VERSION)|cut -b -7)
PKG_RELEASE:=$(PKG_SOURCE_VERSION_SHORT)
PKG_SOURCE_SUBDIR:=$(PKG_DISTNAME)
PKG_SOURCE:=$(PKG_SOURCE_SUBDIR)-$(if $(CONFIG_FS_WITH_LOCAL_SOURCE),$(FS_WITH_DEFAULT_HEAD_SHORT).tar.xz,$(PKG_SOURCE_VERSION_SHORT).tar.bz2)
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE:=$(PKG_DISTNAME)-$(FS_WITH_DEFAULT_HEAD_SHORT).tar.xz
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_SOURCE_SUBDIR)
PATCH_DIR=./patches/$(CONFIG_LIBC)
TAR_OPTIONS+= --strip-components=1 -C $(PKG_BUILD_DIR)
PKG_FIXUP:=autoreconf
PKG_BUILD_PARALLEL:=0
PKG_LICENSE:=MPL-1.1
PKG_LICENSE_FILES:=COPYING
ifeq ($(CONFIG_DEVEL),y)
export QUILT=1
endif
PKG_BUILD_DEPENDS:= \
FS_WITH_CORE_LIBEDIT_SUPPORT:libedit \
FS_WITH_MYSQL:libmysqlclient \
FS_WITH_POSTGRESQL:libpq \
FS_WITH_SQLITE2:libsqlite2 \
FS_WITH_SQLITE3:libsqlite3 \
FS_WITH_APR_SCTP:sctp \
TAR_OPTIONS+= --strip-components=1 -C $(PKG_BUILD_DIR)
FS_MOD_AVAILABLE:= \
abstraction \
alsa \
@ -108,6 +105,7 @@ FS_MOD_AVAILABLE:= \
fsv \
g723-1 \
g729 \
graylog2 \
gsmopen \
h26x \
h323 \
@ -137,9 +135,11 @@ FS_MOD_AVAILABLE:= \
opus \
oreka \
perl \
png \
portaudio \
portaudio-stream \
posix-timer \
prefix \
python \
radius-cdr \
rayo \
@ -187,6 +187,7 @@ FS_MOD_AVAILABLE:= \
syslog \
timerfd \
tone-stream \
translate \
tts-commandline \
unimrcp \
valet-parking \
@ -194,17 +195,17 @@ FS_MOD_AVAILABLE:= \
vmd \
voicemail \
voicemail-ivr \
vpx \
xml-cdr \
xml-curl \
xml-ldap \
xml-rpc \
xml-radius \
xml-rpc \
xml-scgi \
yaml \
PKG_CONFIG_DEPENDS:= \
CONFIG_FS_WITH_LATEST_HEAD \
CONFIG_FS_WITH_ALSA \
CONFIG_FS_WITH_APR_CONFIG_SWITCHES \
CONFIG_FS_WITH_APR_IPV6 \
@ -216,8 +217,9 @@ PKG_CONFIG_DEPENDS:= \
CONFIG_FS_WITH_ERLANG \
CONFIG_FS_WITH_FHS \
CONFIG_FS_WITH_FIXED_POINT \
CONFIG_FS_WITH_LATEST_HEAD \
CONFIG_FS_WITH_LOCAL_SOURCE \
CONFIG_FS_WITH_LIBVPX \
CONFIG_FS_WITH_LIBYUV \
CONFIG_FS_WITH_LZMA \
CONFIG_FS_WITH_MYSQL \
CONFIG_FS_WITH_ODBC \
@ -227,6 +229,7 @@ PKG_CONFIG_DEPENDS:= \
CONFIG_FS_WITH_OPT \
CONFIG_FS_WITH_POSTGRESQL \
CONFIG_FS_WITH_PYTHON \
CONFIG_FS_WITH_PYTHON_PATH \
CONFIG_FS_WITH_SILENT_RULES \
CONFIG_FS_WITH_SQLITE2 \
CONFIG_FS_WITH_SQLITE3 \
@ -241,11 +244,8 @@ PKG_CONFIG_DEPENDS:= \
include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/nls.mk
ifneq ($(CONFIG_CCACHE),)
TARGET_CC=$(TARGET_CC_NOCACHE)
TARGET_CXX=$(TARGET_CXX_NOCACHE)
ifneq ($(CONFIG_FS_WITH_PYTHON),)
$(call include_mk, python3-package.mk)
endif
@ -265,10 +265,10 @@ endef
define Package/$(PKG_NAME)
$(call Package/$(PKG_NAME)/Default)
$(call Package/$(PKG_NAME)/Default)
MENU:=1
TITLE:=FreeSWITCH open source telephony platform ($(PKG_SOURCE_VERSION_SHORT))
DEPENDS:=+FS_WITH_CORE_LIBEDIT_SUPPORT:libedit +FS_WITH_OPENSSL:libopenssl +libcurl +libdb47 +libfreetype +libgdbm $(ICONV_DEPENDS) $(INTL_DEPENDS) +libjpeg +libncurses +libopenldap +libpcre +libpng +libpthread +librt +libspeex +libspeexdsp +FS_WITH_SQLITE2:libsqlite2 +FS_WITH_SQLITE3:libsqlite3 +FS_WITH_SRTP:libsrtp +SSP_SUPPORT:libssp +libstdcpp +libuuid +PACKAGE_$(PKG_NAME)-mod-perl:perl +libvpx
DEPENDS:=+FS_WITH_CORE_LIBEDIT_SUPPORT:libedit +FS_WITH_OPENSSL:libopenssl +libcurl +libdb47 +libfreetype +libgdbm $(ICONV_DEPENDS) $(INTL_DEPENDS) +libjpeg +libncurses +libopenldap +libpcre +libpng +libpthread +librt +libspeex +libspeexdsp +FS_WITH_SQLITE2:libsqlite2 +FS_WITH_SQLITE3:libsqlite3 +libsrtp +SSP_SUPPORT:libssp +libstdcpp +libuuid +PACKAGE_$(PKG_NAME)-mod-perl:perl
endef
@ -296,7 +296,7 @@ endef
define Package/$(PKG_NAME)-example-config
$(call Package/$(PKG_NAME)/Default)
$(call Package/$(PKG_NAME)/Default)
TITLE:=FreeSWITCH example config (commented)
DEPENDS:= $(PKG_NAME)
endef
@ -310,7 +310,7 @@ endef
define Package/$(PKG_NAME)-config-upstream-defaults
$(call Package/$(PKG_NAME)/Default)
$(call Package/$(PKG_NAME)/Default)
TITLE:=FreeSWITCH upstream config
DEPENDS:= $(PKG_NAME)
endef
@ -324,7 +324,7 @@ endef
define Package/$(PKG_NAME)-config-minimal
$(call Package/$(PKG_NAME)/Default)
$(call Package/$(PKG_NAME)/Default)
TITLE:=FreeSWITCH minimal config
DEPENDS:= $(PKG_NAME)
endef
@ -337,7 +337,7 @@ endef
define Package/$(PKG_NAME)-collection-upstream-defaults
$(call Package/$(PKG_NAME)/Default)
$(call Package/$(PKG_NAME)/Default)
TITLE:=FS upstream def sample conf
DEPENDS:= $(PKG_NAME) \
+$(PKG_NAME)-config-upstream-defaults \
@ -370,7 +370,7 @@ endef
define Package/$(PKG_NAME)-collection-minimal
$(call Package/$(PKG_NAME)/Default)
$(call Package/$(PKG_NAME)/Default)
TITLE:=FreeSWITCH minimal package collection
DEFAULT:=y
DEPENDS:= $(PKG_NAME) \
@ -391,63 +391,63 @@ endef
define Package/$(PKG_NAME)-sounds-en-08KHz
$(call Package/$(PKG_NAME)/Default)
$(call Package/$(PKG_NAME)/Default)
TITLE:=FreeSWITCH 8KHz english sounds
DEPENDS:= $(PKG_NAME)
endef
define Package/$(PKG_NAME)-sounds-en-16KHz
$(call Package/$(PKG_NAME)/Default)
$(call Package/$(PKG_NAME)/Default)
TITLE:=FreeSWITCH 16KHz english sounds
DEPENDS:= +$(PKG_NAME)-sounds-en-08KHz
endef
define Package/$(PKG_NAME)-sounds-en-32KHz
$(call Package/$(PKG_NAME)/Default)
$(call Package/$(PKG_NAME)/Default)
TITLE:=FreeSWITCH 32KHz english sounds
DEPENDS:= +$(PKG_NAME)-sounds-en-16KHz
endef
define Package/$(PKG_NAME)-sounds-en-48KHz
$(call Package/$(PKG_NAME)/Default)
$(call Package/$(PKG_NAME)/Default)
TITLE:=FreeSWITCH 48KHz english sounds
DEPENDS:= +$(PKG_NAME)-sounds-en-32KHz
endef
define Package/$(PKG_NAME)-sounds-moh-08KHz
$(call Package/$(PKG_NAME)/Default)
$(call Package/$(PKG_NAME)/Default)
TITLE:=FreeSWITCH 8KHz music-on-hold sounds
DEPENDS:= $(PKG_NAME)
endef
define Package/$(PKG_NAME)-sounds-moh-16KHz
$(call Package/$(PKG_NAME)/Default)
$(call Package/$(PKG_NAME)/Default)
TITLE:=FreeSWITCH 16KHz music-on-hold sounds
DEPENDS:= +$(PKG_NAME)-sounds-moh-08KHz
endef
define Package/$(PKG_NAME)-sounds-moh-32KHz
$(call Package/$(PKG_NAME)/Default)
$(call Package/$(PKG_NAME)/Default)
TITLE:=FreeSWITCH 32KHz music-on-hold sounds
DEPENDS:= +$(PKG_NAME)-sounds-moh-16KHz
endef
define Package/$(PKG_NAME)-sounds-moh-48KHz
$(call Package/$(PKG_NAME)/Default)
$(call Package/$(PKG_NAME)/Default)
TITLE:=FreeSWITCH 48KHz music-on-hold sounds
DEPENDS:= +$(PKG_NAME)-sounds-moh-32KHz
endef
define Package/$(PKG_NAME)-tools
$(call Package/$(PKG_NAME)/Default)
$(call Package/$(PKG_NAME)/Default)
TITLE:=FreeSWITCH control tools
DEPENDS:= $(PKG_NAME)
endef
@ -551,21 +551,18 @@ endif
ifeq ($(CONFIG_LIBC),musl)
TARGET_CFLAGS += -D_GNU_SOURCE
endif
#FS_TARGET_CFLAGS:= $(TARGET_CFLAGS) -DLUA_USE_LINUX $(FPIC) -std=gnu99 -Wno-format -Wno-unused-variable -Wno-unused-but-set-variable -Wno-implicit-function-declaration
#FS_TARGET_CXXFLAGS:= $(TARGET_CXXFLAGS)
#FS_TARGET_CPPFLAGS:= -I. -I./lua $(TARGET_CPPFLAGS) $(if $(CONFIG_PACKAGE_$(PKG_NAME)-mod-json-cdr),-Wno-error) -I`ls -d $(PKG_BUILD_DIR)/libs/*|grep tiff`/libtiff -I$(PKG_BUILD_DIR)/libs/spandsp/src
#MAKE_FLAGS += \
# OPT_FLAGS+="$(TARGET_CFLAGS)"
MAKE_FLAGS += \
AR="$(TOOLCHAIN_DIR)/bin/$(TARGET_CROSS)ar" \
CC="$(TOOLCHAIN_DIR)/bin/$(TARGET_CC)" \
CXX="$(TOOLCHAIN_DIR)/bin/$(TARGET_CXX)" \
RANLIB="$(TOOLCHAIN_DIR)/bin/$(TARGET_CROSS)ranlib" \
CC_FOR_BUILD="$(HOSTCC)" \
#MAKE_VARS += \
# AR="$(TOOLCHAIN_DIR)/bin/$(TARGET_CROSS)ar" \
# CC="$(TOOLCHAIN_DIR)/bin/$(TARGET_CC)" \
# CXX="$(TOOLCHAIN_DIR)/bin/$(TARGET_CXX)" \
# RANLIB="$(TOOLCHAIN_DIR)/bin/$(TARGET_CROSS)ranlib" \
# CC_FOR_BUILD="$(HOSTCC)" \
MAKE_VARS += \
OPT_FLAGS+="$(TARGET_CFLAGS)"
CONFIGURE_ARGS+= \
@ -582,6 +579,8 @@ CONFIGURE_ARGS+= \
$(call autoconf_bool,CONFIG_FS_WITH_CORE_LIBEDIT_SUPPORT,core-libedit-support) \
$(call autoconf_bool,CONFIG_FS_WITH_FHS,fhs) \
$(call autoconf_bool,CONFIG_FS_WITH_APR_IPV6,ipv6) \
$(call autoconf_bool,CONFIG_FS_WITH_LIBVPX,libvpx) \
$(call autoconf_bool,CONFIG_FS_WITH_LIBYUV,libyuv) \
$(call autoconf_bool,CONFIG_FS_WITH_LZMA,lzma) \
$(call autoconf_bool,CONFIG_FS_WITH_ODBC,core-odbc-support) \
$(call autoconf_bool,CONFIG_FS_WITH_OPT,optimization) \
@ -604,7 +603,7 @@ CONFIGURE_ARGS+= \
$(if $(CONFIG_FS_WITH_OPENSSL),--with-openssl="pkg-config") \
$(if $(CONFIG_PACKAGE_$(PKG_NAME)-mod-erlang-event),--with-erlang="$(CONFIG_FS_WITH_ERLANG)",--without-erlang) \
$(if $(CONFIG_PACKAGE_$(PKG_NAME)-mod-java),--with-java="$(STAGING_DIR)/usr",--without-java) \
$(if $(CONFIG_PACKAGE_$(PKG_NAME)-mod-python),--with-python="$(CONFIG_FS_WITH_PYTHON)",--without-python) \
$(if $(CONFIG_PACKAGE_$(PKG_NAME)-mod-python),--with-python="$(CONFIG_FS_WITH_PYTHON_PATH)",--without-python) \
$(if ($(CONFIG_PACKAGE_$(PKG_NAME)-mod-curl)|$(CONFIG_PACKAGE_$(PKG_NAME)-mod-xml-cdr)|$(CONFIG_PACKAGE_$(PKG_NAME)-mod-xml-curl)),--with-libcurl="$(STAGING_DIR)/usr",--without-libcurl) \
--with$(if $(CONFIG_FS_WITH_MYSQL),,out)-mysql \
--with$(if $(CONFIG_FS_WITH_POSTGRESQL),,out)-pgsql \
@ -627,34 +626,6 @@ endif
#endif
#CONFIGURE_VARS+= \
# config_TARGET_CC="$(TOOLCHAIN_DIR)/bin/$(TARGET_CC)" \
# config_TARGET_CXX="$(TOOLCHAIN_DIR)/bin/$(TARGET_CXX)" \
# config_TARGET_CFLAGS="$(FS_TARGET_CPPFLAGS) $(FS_TARGET_CFLAGS)" \
# config_TARGET_CXXFLAGS="$(FS_TARGET_CPPFLAGS) $(FS_TARGET_CXXFLAGS)" \
# config_TARGET_CPPFLAGS="$(FS_TARGET_CPPFLAGS)" \
# config_TARGET_READLINE_INC="$(FS_TARGET_CPPFLAGS)" \
# config_TARGET_READLINE_LIBS="-lreadline -lncurses" \
# config_TARGET_LIBS="-lpthread -ldl" \
# config_BUILD_CC="$(HOSTCC)" \
# CC_FOR_BUILD="$(HOSTCC)" \
# BUILDTOOL_CC="$(HOSTCC)" \
# BUILDTOOL_CCLD="$(HOSTCC)" \
# CC="$(TOOLCHAIN_DIR)/bin/$(TARGET_CC)" \
# CXX="$(TOOLCHAIN_DIR)/bin/$(TARGET_CXX)" \
# AR="$(TOOLCHAIN_DIR)/bin/$(TARGET_CROSS)ar" \
# RANLIB="$(TOOLCHAIN_DIR)/bin/$(TARGET_CROSS)ranlib" \
# CFLAGS="$(FS_TARGET_CPPFLAGS) $(FS_TARGET_CFLAGS)" \
# CXXFLAGS="$(FS_TARGET_CPPFLAGS) $(FS_TARGET_CXXFLAGS)" \
# CPPFLAGS="$(FS_TARGET_CPPFLAGS)" \
# LDFLAGS="-L$(STAGING_DIR)/usr/lib/perl5/$(PERL_VERSION)/CORE -Wl,-rpath-link=\"$(STAGING_DIR)/usr/lib\" -Wl,-rpath-link=\"$(STAGING_DIR)/usr/lib$(if $(CONFIG_PACKAGE_$(PKG_NAME)-mod-perl),/perl5/$(PERL_VERSION)/CORE)\" -Wl,-rpath,/usr/lib -Wl,-rpath,/usr/lib$(if $(CONFIG_PACKAGE_$(PKG_NAME)-mod-perl),/perl5/$(PERL_VERSION)/CORE -lperl -lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc)" \
# HOST_CC="/usr/bin/cc" \
# HOST_CXX="/usr/bin/g++" \
# CROSS_COMPILE="1" \
# $(if $(CONFIG_FS_WITH_APR_SCTP),ac_cv_header_netinet_sctp_h="yes") \
# ac_cv_file_dbd_apr_dbd_mysql_c="no" \
define Build/Prepare
$(call Build/Prepare/Default)
$(call Prepare/event-zmq)
@ -999,12 +970,13 @@ $(eval $(call BuildPlugin,event-zmq,Socket Event Handler By Zero MQ,vanilla,,,,+
$(eval $(call BuildPlugin,expr,Expression Evaluation,vanilla,,,,))
$(eval $(call BuildPlugin,fifo,FIFO,vanilla,,,,))
$(eval $(call BuildPlugin,file-string,Streaming Multiple Sound Files Sequentially,vanilla,,,,@OBSOLETE)) # merged into dptools
$(eval $(call BuildPlugin,flite,Festival TTS,vanilla,,,,+flite @BROKEN)) # flite is from old package and/or qi repo
$(eval $(call BuildPlugin,flite,Festival TTS,vanilla,,,,+flite @(!(armeb||avr32)||BROKEN))) # flite is from old package repo
$(eval $(call BuildPlugin,format-cdr,XML CDR Module to files or curl,vanilla,,,,))
$(eval $(call BuildPlugin,fsk,Bell-202 1200-Baud FSK Decoder,vanilla,,,,))
$(eval $(call BuildPlugin,fsv,Video Player / Recorder,vanilla,,,,+libyuv @BROKEN)) # Requires unsupported libyuv.
$(eval $(call BuildPlugin,g723-1,G.723.1 Codec,vanilla,,,,))
$(eval $(call BuildPlugin,g729,G.729 Codec,vanilla,,,,))
$(eval $(call BuildPlugin,graylog2,Graylog2 GELF logger,vanilla,,,,))
$(eval $(call BuildPlugin,gsmopen,GSM Modem compatible Endpoint,mod,,,alsa,+FS_WITH_ALSA:alsa-lib +FS_WITH_LZMA:liblzma @FS_WITH_ALSA @BROKEN)) # needs gsmlib
$(eval $(call BuildPlugin,h26x,H26X Linear Codec,vanilla,,,,))
$(eval $(call BuildPlugin,h323,H323 Endpoint,mod,,,,@BROKEN)) # Req. H323Plus v1.24.x or newer
@ -1031,13 +1003,15 @@ $(eval $(call BuildPlugin,mp4,MP4 File Format Support For Video,vanilla,,,,@BROK
$(eval $(call BuildPlugin,mp4v,MP4 CoDec Support For Video,vanilla,,,,))
$(eval $(call BuildPlugin,native-file,WAV Format Sound Player,vanilla,,,,))
$(eval $(call BuildPlugin,nibblebill,Credit / Debit Billing,vanilla,,,,))
$(eval $(call BuildPlugin,opus,Opus CoDec,vanilla,,,,+libopus))
$(eval $(call BuildPlugin,opus,Opus CoDec,vanilla,,,,+opus))
$(eval $(call BuildPlugin,oreka,Media Recording with Oreka,vanilla,,,,))
$(eval $(call BuildPlugin,png,play a png as video with audio,vanilla,,,,+libpng))
$(eval $(call BuildPlugin,perl,Perl Language Interface,vanilla,,lib/perl5/$(PERL_VERSION)/$(PKG_NAME).la lib/perl5/$(PERL_VERSION)/$(PKG_NAME).pm lib/perl5/$(PERL_VERSION)/$(PKG_NAME).so,,+perl +libdb47 +libgdbm @BROKEN))
$(eval $(call BuildPlugin,portaudio,Portaudio To Sound Card Interface,vanilla,,,alsa,+FS_WITH_ALSA:alsa-lib @FS_WITH_ALSA @BROKEN)) # needs portaudio
$(eval $(call BuildPlugin,portaudio-stream,Portaudio Streaming Interface,vanilla,,,alsa,+FS_WITH_ALSA:alsa-lib @FS_WITH_ALSA @BROKEN)) # needs portaudio
$(eval $(call BuildPlugin,posix-timer,POSIX Compliant Soft Timer,vanilla,,,,))
$(eval $(call BuildPlugin,python,Python Language Interface,vanilla,,,,python @BROKEN))
$(eval $(call BuildPlugin,prefix,longest-prefix match in store,mod,,,,))
$(eval $(call BuildPlugin,python,Python Language Interface,vanilla,,lib/python$(PYTHON3_VERSION)/site-packages/freeswitch.py,,+FS_WITH_PYTHON:python3 @FS_WITH_PYTHON))
$(eval $(call BuildPlugin,radius-cdr,Radius-CDR interface,vanilla,,,,@BROKEN)) # fails in freeradius-client
$(eval $(call BuildPlugin,rayo,Rayo server & node implementation,vanilla,,,,))
$(eval $(call BuildPlugin,redis,Redis limit backend,vanilla,,,,))
@ -1060,7 +1034,7 @@ $(eval $(call BuildPlugin,say-zh,Chineese Say,vanilla,,,,))
$(eval $(call BuildPlugin,shell-stream,Streaming Audio Through CLI,vanilla,,,,))
$(eval $(call BuildPlugin,silk,Skype(TM) SILK Codec Module,vanilla,,,,+libsilk @BROKEN)) # Requires unsupported libsilk
$(eval $(call BuildPlugin,siren,G.722.1 Codec,vanilla,,,,+libg7221 @BROKEN)) # Requires unsupported libg7221
$(eval $(call BuildPlugin,skel,Template For New Module,vanilla,,,,))
$(eval $(call BuildPlugin,skel,Template For New Module,vanilla,,,,@BROKEN))
$(eval $(call BuildPlugin,skinny,Skinny Call Control Protocol (SCCP),vanilla,,,,))
$(eval $(call BuildPlugin,skypopen,Skype Compatible Endpoint,mod,,,,@FEATURE_drawing-backend_libX11))
$(eval $(call BuildPlugin,sms,SMS,vanilla,,,,))
@ -1084,6 +1058,7 @@ $(eval $(call BuildPlugin,stress,Voice Stress Detection,vanilla,,,,))
$(eval $(call BuildPlugin,syslog,SysLog logger,vanilla,,,,))
$(eval $(call BuildPlugin,timerfd,Linux Kernel timerfd API,vanilla,,,,))
$(eval $(call BuildPlugin,tone-stream,Tone Generation Stream,vanilla,,,,))
$(eval $(call BuildPlugin,translate,Translate,vanilla,,,,))
$(eval $(call BuildPlugin,tts-commandline,ASR TTS Command Interface,vanilla,,,,))
$(eval $(call BuildPlugin,unimrcp,UniMRCP (MRCP Client),vanilla,,,,@BROKEN))
$(eval $(call BuildPlugin,valet-parking,Valet Parking Application,vanilla,,,,))
@ -1091,7 +1066,6 @@ $(eval $(call BuildPlugin,verto,HTML5 Verto interface,vanilla,,lib/perl5/$(PERL_
$(eval $(call BuildPlugin,vmd,VoiceMail Beep Detection,vanilla,,,,))
$(eval $(call BuildPlugin,voicemail,VoiceMail,vanilla,,,,))
$(eval $(call BuildPlugin,voicemail-ivr,VoiceMail IVR,vanilla,,,,))
$(eval $(call BuildPlugin,vpx,VP8/9 Video Codec with transcoding,vanilla,,,,+libvpx))
$(eval $(call BuildPlugin,xml-cdr,XML-CDR Handler,vanilla,,,,+libcurl))
$(eval $(call BuildPlugin,xml-curl,XML-Curl Gateway,vanilla,,,,+libcurl))
$(eval $(call BuildPlugin,xml-ldap,LDAP-XML Gateway,vanilla,,,,+PACKAGE_$(PKG_NAME)-mod-ldap:libopenldap))

View file

@ -41,7 +41,7 @@
#
-AC_CHECK_PROG(PERL,perl,[ac_cv_have_perl=yes],[ac_cv_have_perl=no])
+AC_CHECK_PROG(PERL,[perl],[ac_cv_have_perl=yes],[ac_cv_have_perl=no],[${STAGING_DIR}/../host/usr/bin])
+AC_CHECK_PROG(PERL,[perl],[ac_cv_have_perl=yes],[ac_cv_have_perl=no],[${STAGING_DIR}/host/usr/bin])
+PERL=$as_dir/$ac_word$ac_exec_ext
# -a "x$ac_cv_have_EXTERN_h" != "xno"

View file

@ -0,0 +1,97 @@
--- a/build/config/erlang.m4
+++ b/build/config/erlang.m4
@@ -1,6 +1,6 @@
AC_DEFUN([CHECK_ERLANG], [
#
-# Erlang checks for mod_erlang_event
+# Erlang check
#
AC_ARG_WITH(
[erlang],
@@ -20,22 +20,23 @@ then
if test ! -x "$with_erlang" ; then
AC_MSG_ERROR([Specified erlang does not exist or is not executable: $with_erlang])
fi
- AC_MSG_RESULT([$with_erlang])
- AC_SUBST([ERLANG], ["$with_erlang"])
+ AC_MSG_RESULT(["$with_erlang/bin/erl"])
+ AC_SUBST([ERL],["$with_erlang/bin/erl"])
else
- AC_PATH_PROG([ERLANG], ["erl"], ["no"], ["$PATH:/usr/bin:/usr/local/bin"])
+ AC_ERLANG_NEED_ERL(["$with_erlang/bin"])
fi
- if test "$ERLANG" != "no" ; then
+ if test "$ERL" != "no" ; then
AC_MSG_CHECKING([erlang version])
- ERLANG_VER="`$ERLANG -version 2>&1 | cut -d' ' -f6`"
+ ERLANG_VER="`$ERL -version 2>&1 | cut -d' ' -f6`"
if test -z "$ERLANG_VER" ; then
AC_MSG_ERROR([Unable to detect erlang version])
+ else
+ AC_MSG_RESULT([$ERLANG_VER])
fi
- AC_MSG_RESULT([$ERLANG_VER])
- ERLANG_LIBDIR=`$ERLANG -noshell -eval 'io:format("~n~s/lib~n", [[code:lib_dir("erl_interface")]]).' -s erlang halt | tail -n 1`
+ ERLANG_LIBDIR=`$ERL -noshell -eval 'io:format("~n~s/lib~n", [[code:lib_dir("erl_interface")]]).' -s erlang halt | tail -n 1`
AC_MSG_CHECKING([erlang libdir])
if test -z "`echo $ERLANG_LIBDIR`" ; then
AC_MSG_ERROR([failed])
@@ -43,9 +44,16 @@ then
ERLANG_LDFLAGS="-L$ERLANG_LIBDIR $ERLANG_LDFLAGS"
LIBS="-L$ERLANG_LIBDIR $LIBS"
fi
+
+ #
+ # Don't use the above ERLANG_LDFLAGS
+ #
+ ERLANG_LIBDIR="${STAGING_DIR}/usr/lib"
+ ERLANG_LDFLAGS="-L$ERLANG_LIBDIR"
+ LIBS="-L$ERLANG_LIBDIR $LIBS"
AC_MSG_RESULT([$ERLANG_LIBDIR])
- ERLANG_INCDIR=`$ERLANG -noshell -eval 'io:format("~n~s/include~n", [[code:lib_dir("erl_interface")]]).' -s erlang halt | tail -n 1`
+ ERLANG_INCDIR=`$ERL -noshell -eval 'io:format("~n~s/include~n", [[code:lib_dir("erl_interface")]]).' -s erlang halt | tail -n 1`
AC_MSG_CHECKING([erlang incdir])
if test -z "`echo $ERLANG_INCDIR`" ; then
AC_MSG_ERROR([failed])
@@ -59,10 +67,11 @@ then
ERLANG_LIB="ei"
- # check liei
+ # check libei
AC_CHECK_LIB([$ERLANG_LIB], [ei_encode_version], [has_libei="yes"], [has_libei="no"])
# maybe someday ei will actually expose this?
- AC_CHECK_LIB([$ERLANG_LIB], [ei_link_unlink], [ERLANG_CFLAGS="$ERLANG_CFLAGS -DEI_LINK_UNLINK"])
+ # until then, we comment it out
+ #AC_CHECK_LIB([$ERLANG_LIB], [ei_link_unlink], [ERLANG_CFLAGS="$ERLANG_CFLAGS -DEI_LINK_UNLINK"])
if test "$has_libei" = "no" ; then
AS_IF([test "$with_erlang" = "try"],
@@ -76,7 +85,7 @@ then
)
else
ERLANG_LDFLAGS="$ERLANG_LDFLAGS -lei"
- AC_MSG_NOTICE([Your erlang seems OK, do not forget to enable mod_erlang_event in modules.conf])
+ AC_MSG_NOTICE([Your erlang seems OK. You can now use ErLang in your codes.])
AC_SUBST([ERLANG_CFLAGS], [$ERLANG_CFLAGS])
AC_SUBST([ERLANG_LDFLAGS], [$ERLANG_LDFLAGS])
AM_CONDITIONAL([HAVE_ERLANG],[true])
@@ -87,12 +96,12 @@ then
else
AS_IF([test "$with_erlang" = "try"],
- [AC_MSG_WARN([Could not find erlang, mod_erlang_event will not build, use --with-erlang to specify the location])],
+ [AC_MSG_WARN([Could not find erlang, codes depend on erlang will not build, use --with-erlang to specify the location])],
[AC_MSG_ERROR([Could not find erlang, use --with-erlang to specify the location])]
)
fi
else
- AC_MSG_WARN([erlang support disabled, building mod_erlang_event will fail!])
+ AC_MSG_WARN([erlang support disabled!])
fi
])

View file

@ -0,0 +1,10 @@
--- a/build/modules.conf.in
+++ b/build/modules.conf.in
@@ -38,6 +38,7 @@ applications/mod_httapi
#applications/mod_rad_auth
#applications/mod_redis
#applications/mod_rss
+#applications/mod_skel
applications/mod_sms
#applications/mod_snapshot
#applications/mod_snom

View file

@ -0,0 +1,10 @@
--- /dev/null
+++ b/build/openwrt_rules.mk
@@ -0,0 +1,7 @@
+OPENWRT_DIR=$(shell (cd $(BASE)/../../..;pwd))
+STAGING_PREFIX=$(OPENWRT_DIR)/staging_dir/host
+STAGING_DIR=$(OPENWRT_DIR)/staging_dir/$(shell (cd $(BASE)/..;basename `pwd`))
+ARCH="$(shell grep CONFIG_ARCH $(OPENWRT_DIR)/.config|cut -d= -d'"' -f2)"
+GNU_TARGET_NAME=$(ARCH)-openwrt-linux
+
+include $(OPENWRT_DIR)/rules.mk

View file

@ -0,0 +1,65 @@
--- a/configure.ac
+++ b/configure.ac
@@ -254,7 +254,7 @@ AX_COMPILER_VENDOR
if test "x${cross_compiling}" = "xyes"; then
CC_FOR_BUILD=${CC_FOR_BUILD-gcc}
case "$host" in
- arm*-linux-gnueabi*|arm*-*-linux-gnueabi*)
+ arm*-linux-gnueabi*|arm*-*-linux-*)
# spandsp modem
ac_cv_file__dev_ptmx=yes
# libjs
@@ -273,7 +273,7 @@ if test "x${cross_compiling}" = "xyes";
export apr_cv_mutex_recursive=yes
export ac_cv_func_pthread_rwlock_init=yes
export apr_cv_type_rwlock_t=yes
- export apr_cv_process_shared_works=yes
+ export apr_cv_process_shared_works=no
export apr_cv_mutex_robust_shared=yes
;;
esac
@@ -405,9 +405,6 @@ elif test "x${ax_cv_c_compiler_vendor}"
elif test "x${ax_cv_c_compiler_vendor}" = "xgnu" ; then
APR_ADDTO(SWITCH_AM_CFLAGS, -fPIC)
APR_ADDTO(SWITCH_AM_CXXFLAGS, -fPIC)
- if test "$ac_cv_gcc_supports_w_no_unused_result" = yes; then
- APR_ADDTO(SWITCH_AM_CFLAGS, -Werror)
- fi
if test "${enable_64}" = "yes"; then
case "$host" in
*darwin*)
@@ -901,7 +898,6 @@ AC_CHECK_LIB(pthread, pthread_setschedpa
AC_CHECK_FUNC(socket, , AC_CHECK_LIB(socket, socket))
-AC_CHECK_FILE(/dev/ptmx, [AC_DEFINE(HAVE_DEV_PTMX, 1, [Define if you have /dev/ptmx])])
AC_CHECK_LIB(util, openpty, [AC_DEFINE(HAVE_OPENPTY, 1, [Define if you have openpty()])])
AC_CHECK_MEMBERS([struct tm.tm_gmtoff],,,[
@@ -1474,14 +1470,14 @@ AM_CONDITIONAL([HAVE_MYSQL],[test "$foun
# perl checks
#
-AC_CHECK_PROG(PERL,perl,[ac_cv_have_perl=yes],[ac_cv_have_perl=no])
+AC_CHECK_PROG(PERL,[perl],[ac_cv_have_perl=yes],[ac_cv_have_perl=no],[${STAGING_DIR}/../host/usr/bin])
+PERL=$as_dir/$ac_word$ac_exec_ext
# -a "x$ac_cv_have_EXTERN_h" != "xno"
if test "x$ac_cv_have_perl" != "xno"; then
- PERL=perl
- PERL_SITEDIR="`$PERL -MConfig -e 'print $Config{archlib}'`"
- PERL_LIBDIR="-L`$PERL -MConfig -e 'print $Config{archlib}'`/CORE"
+ PERL_SITEDIR="`$PERL -MConfig -e 'print $Config{archlibexp}'`"
+ PERL_LIBDIR="-L`$PERL -MConfig -e 'print $Config{archlibexp}'`/CORE"
PERL_LIBS="`$PERL -MConfig -e 'print $Config{libs}'`"
PERL_CFLAGS="-w -DMULTIPLICITY `$PERL -MExtUtils::Embed -e ccopts | sed -e 's|-arch x86_64 -arch i386||'` -DEMBED_PERL"
PERL_LDFLAGS="`$PERL -MExtUtils::Embed -e ldopts| sed -e 's|-arch x86_64 -arch i386||'`"
@@ -1498,6 +1494,7 @@ if test "x$ac_cv_have_perl" != "xno"; th
AC_CHECK_LIB([perl], [perl_alloc], ac_cv_use_libperl=yes, ac_cv_use_libperl=no)
LDFLAGS="$save_LDFLAGS"
+ AC_SUBST(PERL)
AC_SUBST(PERL_SITEDIR)
AC_SUBST(PERL_LIBDIR)
AC_SUBST(PERL_LIBS)

View file

@ -0,0 +1,15 @@
--- a/libs/apr/configure.ac
+++ b/libs/apr/configure.ac
@@ -1956,7 +1956,11 @@ fi
APR_CHECK_TCP_NODELAY_INHERITED
APR_CHECK_O_NONBLOCK_INHERITED
-APR_CHECK_TCP_NODELAY_WITH_CORK
+
+dnl Check TCP_NODELAY_WITH_CORK ONLY when NOT cross compiling
+if test "$cross_compiling" != yes; then
+ APR_CHECK_TCP_NODELAY_WITH_CORK
+fi
# Look for a way of corking TCP...
APR_CHECK_DEFINE(TCP_CORK, netinet/tcp.h)

View file

@ -0,0 +1,8 @@
--- a/libs/apr-util/configure.gnu
+++ b/libs/apr-util/configure.gnu
@@ -1,4 +1,4 @@
#! /bin/sh
srcpath=$(dirname $0 2>/dev/null ) || srcpath="."
-$srcpath/configure "$@" --with-apr=../apr --disable-shared --with-pic --without-sqlite2 --without-sqlite3 --with-expat=builtin
+$srcpath/configure "$@" --with-apr=../apr --disable-shared --with-expat=builtin

View file

@ -0,0 +1,13 @@
--- a/libs/srtp/configure.ac
+++ b/libs/srtp/configure.ac
@@ -130,10 +130,6 @@ if test "$enable_kernel_linux" = "yes";
fi
AC_MSG_RESULT($enable_kernel_linux)
-dnl Check for /dev/urandom
-AC_CHECK_FILE(/dev/urandom, DEV_URANDOM=/dev/urandom,
- [AC_CHECK_FILE(/dev/random, DEV_URANDOM=/dev/random)])
-
dnl Checks for header files.
AC_HEADER_STDC
AC_CHECK_HEADERS(stdlib.h)

View file

@ -0,0 +1,11 @@
--- a/Makefile.am
+++ b/Makefile.am
@@ -533,7 +533,7 @@ libs/libzrtp/libzrtp.a:
cd libs/libzrtp && $(MAKE)
libs/libvpx/Makefile:
- cd libs/libvpx && CC=$(CC) CXX=$(CXX) CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" LDFLAGS="$(LDFLAGS)" ./configure --enable-pic --disable-docs --disable-examples --disable-install-bins --disable-install-srcs --disable-unit-tests --extra-cflags="-fvisibility=hidden"
+ cd libs/libvpx && CC=$(CC) CXX=$(CXX) CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS)" CROSS=$(ARCH)-openwrt-linux LD=$(CXX) ./configure --target=generic-gnu --enable-pic --disable-docs --disable-examples --disable-install-bins --disable-install-srcs --disable-unit-tests --extra-cflags="-fvisibility=hidden"
libs/libvpx/libvpx.a: libs/libvpx/Makefile
@cd libs/libvpx && $(MAKE)

View file

@ -1,15 +1,18 @@
--- a/configure.ac
+++ b/configure.ac
@@ -254,7 +254,7 @@ AX_COMPILER_VENDOR
@@ -257,9 +257,9 @@ AX_COMPILER_VENDOR
if test "x${cross_compiling}" = "xyes"; then
CC_FOR_BUILD=${CC_FOR_BUILD-gcc}
case "$host" in
- arm*-linux-gnueabi*|arm*-*-linux-gnueabi*)
+ arm*-linux-gnueabi*|arm*-*-linux-*)
# spandsp modem
ac_cv_file__dev_ptmx=yes
- ac_cv_file__dev_ptmx=yes
+ ac_cv_file__dev_ptmx=no
# libjs
@@ -273,7 +273,7 @@ if test "x${cross_compiling}" = "xyes";
export ac_cv_va_copy=yes
# srtp
@@ -276,7 +276,7 @@ if test "x${cross_compiling}" = "xyes";
export apr_cv_mutex_recursive=yes
export ac_cv_func_pthread_rwlock_init=yes
export apr_cv_type_rwlock_t=yes
@ -18,17 +21,17 @@
export apr_cv_mutex_robust_shared=yes
;;
esac
@@ -405,9 +405,6 @@ elif test "x${ax_cv_c_compiler_vendor}"
elif test "x${ax_cv_c_compiler_vendor}" = "xgnu" ; then
@@ -409,9 +409,6 @@ elif test "x${ax_cv_c_compiler_vendor}"
APR_ADDTO(SWITCH_AM_CFLAGS, -fPIC)
APR_ADDTO(SWITCH_AM_CXXFLAGS, -fPIC)
AC_SUBST([AM_MOD_AVMD_CXXFLAGS], [-std=gnu99]) # FS-8809, needed for MAP_POPULATE
- if test "$ac_cv_gcc_supports_w_no_unused_result" = yes; then
- APR_ADDTO(SWITCH_AM_CFLAGS, -Werror)
- fi
if test "${enable_64}" = "yes"; then
case "$host" in
*darwin*)
@@ -901,7 +898,6 @@ AC_CHECK_LIB(pthread, pthread_setschedpa
@@ -912,7 +909,6 @@ AC_CHECK_LIB(pthread, pthread_setschedpa
AC_CHECK_FUNC(socket, , AC_CHECK_LIB(socket, socket))
@ -36,12 +39,12 @@
AC_CHECK_LIB(util, openpty, [AC_DEFINE(HAVE_OPENPTY, 1, [Define if you have openpty()])])
AC_CHECK_MEMBERS([struct tm.tm_gmtoff],,,[
@@ -1478,14 +1474,14 @@ AM_CONDITIONAL([HAVE_MYSQL],[test "$foun
@@ -1487,16 +1483,16 @@ AM_CONDITIONAL([HAVE_MYSQL],[test "$foun
# perl checks
#
-AC_CHECK_PROG(PERL,perl,[ac_cv_have_perl=yes],[ac_cv_have_perl=no])
+AC_CHECK_PROG(PERL,[perl],[ac_cv_have_perl=yes],[ac_cv_have_perl=no],[${STAGING_DIR}/../host/usr/bin])
+AC_CHECK_PROG(PERL,[perl],[ac_cv_have_perl=yes],[ac_cv_have_perl=no],[${STAGING_DIR}/host/usr/bin])
+PERL=$as_dir/$ac_word$ac_exec_ext
# -a "x$ac_cv_have_EXTERN_h" != "xno"
@ -53,9 +56,12 @@
+ PERL_SITEDIR="`$PERL -MConfig -e 'print $Config{archlibexp}'`"
+ PERL_LIBDIR="-L`$PERL -MConfig -e 'print $Config{archlibexp}'`/CORE"
PERL_LIBS="`$PERL -MConfig -e 'print $Config{libs}'`"
PERL_CFLAGS="-w -DMULTIPLICITY `$PERL -MExtUtils::Embed -e ccopts | sed -e 's|-arch x86_64 -arch i386||'` -DEMBED_PERL"
- PERL_CFLAGS="-w -DMULTIPLICITY `$PERL -MExtUtils::Embed -e ccopts | sed -e 's|-arch x86_64 -arch i386||'` -DEMBED_PERL"
+ PERL_CFLAGS="-w -DMULTIPLICITY `$PERL -MExtUtils::Embed -e ccopts | sed -e 's| -I/usr/local/include||g'` -DEMBED_PERL"
PERL_LDFLAGS="`$PERL -MExtUtils::Embed -e ldopts| sed -e 's|-arch x86_64 -arch i386||'`"
@@ -1502,6 +1498,7 @@ if test "x$ac_cv_have_perl" != "xno"; th
PERL_INC="`$PERL -MExtUtils::Embed -e perl_inc`"
@@ -1511,6 +1507,7 @@ if test "x$ac_cv_have_perl" != "xno"; th
AC_CHECK_LIB([perl], [perl_alloc], ac_cv_use_libperl=yes, ac_cv_use_libperl=no)
LDFLAGS="$save_LDFLAGS"
@ -63,3 +69,69 @@
AC_SUBST(PERL_SITEDIR)
AC_SUBST(PERL_LIBDIR)
AC_SUBST(PERL_LIBS)
@@ -1526,16 +1523,16 @@ AM_CONDITIONAL([HAVE_PERL],[test "x$ac_c
#
AC_CHECK_PROG(PHP,php,[ac_cv_have_php=yes],[ac_cv_have_php=no])
-AC_CHECK_PROG(PHP_CONFIG,php-config,[ac_cv_have_php_config=yes],[ac_cv_have_php_config=no])
+AC_CHECK_PROG(PHP_CONFIG,php-config,[ac_cv_have_php_config=yes],[ac_cv_have_php_config=no],[${STAGING_DIR}/host/usr/bin])
AM_CONDITIONAL([HAVE_PHP],[test "x$ac_cv_have_php" != "xno" -a "x$ac_cv_have_php_config" != "xno"])
if test "x$ac_cv_have_php" != "xno" -a "x$ac_cv_have_php_config" != "xno"; then
PHP=php
- PHP_CONFIG=php-config
+ PHP_CONFIG=${STAGING_DIR}/host/usr/bin/php-config
PHP_LDFLAGS="`$PHP_CONFIG --ldflags`"
PHP_LIBS="`$PHP_CONFIG --libs | sed -r 's/ ?-l(bz2|pcre|xml2|gssapi_krb5|krb5|k5crypto|com_err|history|z|readline|gmp|ssl|crypto)//g'`"
PHP_EXT_DIR="`$PHP_CONFIG --extension-dir`"
- PHP_INC_DIR="`$PHP -r 'echo ini_get("include_path");' | cut -d: -f2`"
+ PHP_INC_DIR="`$PHP_CONFIG --includes | cut -d" " -f1 | cut -dI -f2`"
PHP_INI_DIR="`$PHP_CONFIG --configure-options | tr " " "\n" | grep -- --with-config-file-scan-dir | cut -f2 -d=`"
PHP_CFLAGS="`$PHP_CONFIG --includes`"
AC_SUBST(PHP_LDFLAGS)
@@ -1569,12 +1566,12 @@ then
AC_MSG_RESULT([$with_python])
AC_SUBST([PYTHON], ["$with_python"])
else
- AC_PATH_PROG([PYTHON], ["python"], ["no"], ["$PATH:/usr/bin:/usr/local/bin"])
+ AC_PATH_PROG([PYTHON], ["python3"], ["no"], ["$PATH:${STAGING_DIR}/host/bin:/usr/bin:/usr/local/bin"])
fi
if test "$PYTHON" != "no" ; then
AC_MSG_CHECKING([python version])
- PYTHON_VER="`$PYTHON -V 2>&1 | cut -d' ' -f2`"
+ PYTHON_VER=`$PYTHON -c "import sys; print('%d.%d' % (sys.version_info[[0]], sys.version_info[[1]]))"`
if test -z "$PYTHON_VER" ; then
AC_MSG_ERROR([Unable to detect python version])
@@ -1593,12 +1590,12 @@ then
if test "$python_has_distutils" != "no" ; then
AC_MSG_CHECKING([location of site-packages])
- PYTHON_SITE_DIR="`$PYTHON -c 'from distutils import sysconfig; print(sysconfig.get_python_lib(0));'`"
+ if test -d "`$PYTHON -c 'from distutils import sysconfig; print(sysconfig.get_python_lib(0));'`" ; then
+ PYTHON_SITE_DIR="`$PYTHON -c 'from distutils import sysconfig; print(sysconfig.get_python_lib(0));' | sed -e 's|\(^.*\)/host|/usr|g'`"
- if test -z "$PYTHON_SITE_DIR" ; then
- AC_MSG_ERROR([Unable to detect python site-packages path])
- elif test ! -d "$PYTHON_SITE_DIR" ; then
- AC_MSG_ERROR([Path $PYTHON_SITE_DIR returned by python does not exist!])
+ if test -z "$PYTHON_SITE_DIR" ; then
+ AC_MSG_ERROR([Unable to detect python site-packages path])
+ fi
fi
AC_MSG_RESULT([$PYTHON_SITE_DIR])
AC_SUBST([PYTHON_SITE_DIR], [$PYTHON_SITE_DIR])
@@ -1606,10 +1603,10 @@ then
#
# python distutils found, get settings from python directly
#
- PYTHON_CFLAGS="`$PYTHON -c 'from distutils import sysconfig; flags = [[\"-I\" + sysconfig.get_python_inc(0), \"-I\" + sysconfig.get_python_inc(1), \" \".join(sysconfig.get_config_var(\"CFLAGS\").split())]]; print(\" \".join(flags));' | sed -e 's/-arch i386//g;s/-arch x86_64//g'`"
+ PYTHON_CFLAGS="`$PYTHON -c 'from distutils import sysconfig; flags = [[\"-I\" + sysconfig.get_python_inc(0), \"-I\" + sysconfig.get_python_inc(1), \" \".join(sysconfig.get_config_var(\"CFLAGS\").split())]]; print(\" \".join(flags));' | sed -e 's|host|usr|g'`"
PYTHON_LDFLAGS="`$PYTHON -c 'from distutils import sysconfig; libs = sysconfig.get_config_var(\"LIBS\").split() + sysconfig.get_config_var(\"SYSLIBS\").split(); libs.append(\"-lpython\"+sysconfig.get_config_var(\"VERSION\")); print(\" \".join(libs));'`"
PYTHON_LIB="`$PYTHON -c 'from distutils import sysconfig; print(\"python\" + sysconfig.get_config_var(\"VERSION\"));'`"
- PYTHON_LIBDIR="`$PYTHON -c 'from distutils import sysconfig; print(sysconfig.get_config_var(\"LIBDIR\"));'`"
+ PYTHON_LIBDIR="`$PYTHON -c 'from distutils import sysconfig; print(sysconfig.get_config_var(\"LIBDIR\"));' | sed -e 's|host|usr|g'`"
# handle python being installed into /usr/local
AC_MSG_CHECKING([python libdir])

View file

@ -0,0 +1,11 @@
--- a/src/mod/applications/mod_http_cache/conf/autoload_configs/http_cache.conf.xml
+++ b/src/mod/applications/mod_http_cache/conf/autoload_configs/http_cache.conf.xml
@@ -9,7 +9,7 @@
<param name="ssl-verifyhost" value="true"/>
<param name="ssl-verifypeer" value="true"/>
<!-- default is 300 seconds, override here -->
- <!--param name="connect-timeout" value="300"/>
+ <!-- param name="connect-timeout" value="300"/> -->
</settings>
<profiles>

View file

@ -0,0 +1,11 @@
--- a/src/mod/endpoints/mod_sofia/conf/sofia.conf.xml
+++ b/src/mod/endpoints/mod_sofia/conf/sofia.conf.xml
@@ -216,7 +216,7 @@
<!-- <param name="unregister-on-options-fail" value="true"/> -->
<!-- Send an OPTIONS packet to all registered endpoints -->
<!--<param name="all-reg-options-ping" value="true"/>-->
- <!-- Send an OPTIONS packet to NATed registered endpoints. Can be 'true' or 'udp-only
+ <!-- Send an OPTIONS packet to NATed registered endpoints. Can be 'true' or 'udp-only -->
<!--<param name="nat-options-ping" value="true"/>-->
<!-- TLS: disabled by default, set to "true" to enable -->

View file

@ -0,0 +1,11 @@
--- a/src/mod/languages/mod_python/Makefile.am
+++ b/src/mod/languages/mod_python/Makefile.am
@@ -20,7 +20,7 @@ swigclean: clean
rm -f mod_python_wrap.* freeswitch.py
mod_python_wrap.cpp: mod_python_extra.c hack.diff
- swig2.0 -python -c++ -I../../../../src/include -oh mod_python_wrap.h -o mod_python_wrap.cpp mod_python.i
+ ${STAGING_DIR}/host/bin/swig -python -c++ -I../../../../src/include -oh mod_python_wrap.h -o mod_python_wrap.cpp mod_python.i
echo "#include \"mod_python_extra.c\"" >> mod_python_wrap.cpp
patch -s -p0 -i hack.diff

View file

@ -0,0 +1,15 @@
--- a/src/mod/languages/mod_python/freeswitch_python.cpp
+++ b/src/mod/languages/mod_python/freeswitch_python.cpp
@@ -319,7 +319,12 @@ switch_status_t Session::run_dtmf_callba
}
if ((pyresult = PyEval_CallObject(cb_function, arglist))) {
+#if PY_MAJOR_VERSION < 3
str = (char *) PyString_AsString(pyresult);
+#else
+ //str = (char *) pyresult->encode('UTF-8');
+ str = (char *) PyUnicode_AsUnicode(pyresult);
+#endif
} else {
PyErr_Print();
}