From: Mazi Lo Date: Sat, 26 Mar 2016 21:49:30 +0000 (-0400) Subject: [FreeSWITCH]: Ref. to FS git commit bb258288801b50e8fb673a620a6c2b4855e11daf X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=1ee158605308fc64dba17f5c81bef71765609b9c;p=feed%2Ftelephony.git [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 --- diff --git a/net/freeswitch/Config.in b/net/freeswitch/Config.in index 21a61ea..7f869df 100644 --- a/net/freeswitch/Config.in +++ b/net/freeswitch/Config.in @@ -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 diff --git a/net/freeswitch/Makefile b/net/freeswitch/Makefile index 1148884..bbe2372 100644 --- a/net/freeswitch/Makefile +++ b/net/freeswitch/Makefile @@ -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)) diff --git a/net/freeswitch/patches/musl/configure_ac.patch b/net/freeswitch/patches/musl/configure_ac.patch index 9bd513d..5a47835 100644 --- a/net/freeswitch/patches/musl/configure_ac.patch +++ b/net/freeswitch/patches/musl/configure_ac.patch @@ -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" diff --git a/net/freeswitch/patches/musl/rel/build-config-erlang_m4.patch b/net/freeswitch/patches/musl/rel/build-config-erlang_m4.patch new file mode 100644 index 0000000..5d744f7 --- /dev/null +++ b/net/freeswitch/patches/musl/rel/build-config-erlang_m4.patch @@ -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 + + ]) diff --git a/net/freeswitch/patches/musl/rel/build-modules_conf_in.patch b/net/freeswitch/patches/musl/rel/build-modules_conf_in.patch new file mode 100644 index 0000000..9db0e8e --- /dev/null +++ b/net/freeswitch/patches/musl/rel/build-modules_conf_in.patch @@ -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 diff --git a/net/freeswitch/patches/musl/rel/build-openwrt_rules.mk.patch b/net/freeswitch/patches/musl/rel/build-openwrt_rules.mk.patch new file mode 100644 index 0000000..31fb16f --- /dev/null +++ b/net/freeswitch/patches/musl/rel/build-openwrt_rules.mk.patch @@ -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 diff --git a/net/freeswitch/patches/musl/rel/configure_ac.patch b/net/freeswitch/patches/musl/rel/configure_ac.patch new file mode 100644 index 0000000..9bd513d --- /dev/null +++ b/net/freeswitch/patches/musl/rel/configure_ac.patch @@ -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) diff --git a/net/freeswitch/patches/musl/rel/libs-apr-configure_ac.patch b/net/freeswitch/patches/musl/rel/libs-apr-configure_ac.patch new file mode 100644 index 0000000..c4667dd --- /dev/null +++ b/net/freeswitch/patches/musl/rel/libs-apr-configure_ac.patch @@ -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) diff --git a/net/freeswitch/patches/musl/rel/libs-apr-util-configure_gnu.patch b/net/freeswitch/patches/musl/rel/libs-apr-util-configure_gnu.patch new file mode 100644 index 0000000..b933b3c --- /dev/null +++ b/net/freeswitch/patches/musl/rel/libs-apr-util-configure_gnu.patch @@ -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 + diff --git a/net/freeswitch/patches/musl/rel/libs-srtp-configure_ac.patch b/net/freeswitch/patches/musl/rel/libs-srtp-configure_ac.patch new file mode 100644 index 0000000..56c1691 --- /dev/null +++ b/net/freeswitch/patches/musl/rel/libs-srtp-configure_ac.patch @@ -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) diff --git a/net/freeswitch/patches/uClibc/Makefile_am.patch b/net/freeswitch/patches/uClibc/Makefile_am.patch new file mode 100644 index 0000000..6689883 --- /dev/null +++ b/net/freeswitch/patches/uClibc/Makefile_am.patch @@ -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) diff --git a/net/freeswitch/patches/uClibc/configure_ac.patch b/net/freeswitch/patches/uClibc/configure_ac.patch index 477af6b..a69a12b 100644 --- a/net/freeswitch/patches/uClibc/configure_ac.patch +++ b/net/freeswitch/patches/uClibc/configure_ac.patch @@ -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]) diff --git a/net/freeswitch/patches/uClibc/src-mod-applications-mod_http_cache-conf-autoload_configs-http_cache_conf_xml.patch b/net/freeswitch/patches/uClibc/src-mod-applications-mod_http_cache-conf-autoload_configs-http_cache_conf_xml.patch new file mode 100644 index 0000000..d1a6715 --- /dev/null +++ b/net/freeswitch/patches/uClibc/src-mod-applications-mod_http_cache-conf-autoload_configs-http_cache_conf_xml.patch @@ -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 @@ + + + +- + + + diff --git a/net/freeswitch/patches/uClibc/src-mod-endpoints-mod_sofia-conf-sofia_conf_xml.patch b/net/freeswitch/patches/uClibc/src-mod-endpoints-mod_sofia-conf-sofia_conf_xml.patch new file mode 100644 index 0000000..78db028 --- /dev/null +++ b/net/freeswitch/patches/uClibc/src-mod-endpoints-mod_sofia-conf-sofia_conf_xml.patch @@ -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 @@ + + + +- + + + diff --git a/net/freeswitch/patches/uClibc/src-mod-languages-mod_python-Makefile_am.patch b/net/freeswitch/patches/uClibc/src-mod-languages-mod_python-Makefile_am.patch new file mode 100644 index 0000000..7ce0878 --- /dev/null +++ b/net/freeswitch/patches/uClibc/src-mod-languages-mod_python-Makefile_am.patch @@ -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 + diff --git a/net/freeswitch/patches/uClibc/src-mod-languages-mod_python-freeswitch_python_cpp.patch b/net/freeswitch/patches/uClibc/src-mod-languages-mod_python-freeswitch_python_cpp.patch new file mode 100644 index 0000000..9d509c8 --- /dev/null +++ b/net/freeswitch/patches/uClibc/src-mod-languages-mod_python-freeswitch_python_cpp.patch @@ -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(); + }