PKG_NAME:=freeswitch
PKG_VERSION:=1.0.6
-PKG_RELEASE:=1
+PKG_RELEASE:=3
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
define Package/freeswitch/description
FreeSWITCH is an open source telephony platform designed to
facilitate the creation of voice and chat driven products scaling
- from a soft-phone up to a soft-switch.
+ from a soft-phone up to a soft-switch. See http://wiki.freeswitch.org
endef
define Package/freeswitch-example-config
be an example of how FreeSWITCH can be configured.
endef
-define Package/freeswitch-default
+define Package/freeswitch-config-upstream-defaults
$(call Package/freeswitch/Default)
- TITLE:=FreeSWITCH default config
+ TITLE:=FreeSWITCH upstream config
+ DEPENDS:= freeswitch
+endef
+
+define Package/freeswitch-config-upstream-defaults/description
+ The default configuration included with FreeSWITCH. It is not intended to be
+ a final product, and but is included for those who don't want to use the
+ OpenWRT configuration and/or want to try things as prepared by upstream.
+endef
+
+define Package/freeswitch-config-minimal
+$(call Package/freeswitch/Default)
+ TITLE:=FreeSWITCH a minimal FS config
+ DEPENDS:= freeswitch
+endef
+
+define Package/freeswitch-config-minimal/description
+ A minimal configuration of FreeSWITCH for OpenWRT devices. Is what the UCI
+ configuration began with.
+
+endef
+
+define Package/freeswitch-config-uci
+$(call Package/freeswitch/Default)
+ TITLE:=UCI-configuration for FreeSWITCH
+ DEPENDS:= freeswitch
+endef
+
+define Package/freeswitch-config-uci/description
+ The UCI configuration system for FreeSWITCH on OpenWRT.
+endef
+
+define Package/freeswitch-collection-upstream-defaults
+$(call Package/freeswitch/Default)
+ TITLE:=FreeSWITCH upstream default (sample) config
DEPENDS:= freeswitch \
+ +freeswitch-config-upstream-defaults \
+freeswitch-mod-commands \
+freeswitch-mod-conference \
- +freeswitch-mod-console \
+ +freeswitch-mod-syslog \
+freeswitch-mod-curl \
+freeswitch-mod-dialplan-xml \
+freeswitch-mod-dptools \
+freeswitch-mod-event-socket \
+freeswitch-mod-g723-1 \
+freeswitch-mod-ilbc \
+ +freeswitch-mod-limit \
+freeswitch-mod-local-stream \
+freeswitch-mod-logfile \
+freeswitch-mod-lua \
+freeswitch-mod-tone-stream \
+freeswitch-mod-voipcodecs \
+freeswitch-mod-xml-curl \
- +freeswitch-mod-xml-rpc
+ +freeswitch-mod-xml-rpc \
+ +freeswitch-tools
+endef
+
+define Package/freeswitch-collection-minimal
+$(call Package/freeswitch/Default)
+ TITLE:=A FreeSWITCH minimal package collection
+ DEPENDS:= freeswitch \
+ +freeswitch-config-minimal \
+ +freeswitch-mod-commands \
+ +freeswitch-mod-syslog \
+ +freeswitch-mod-dialplan-xml \
+ +freeswitch-mod-dptools \
+ +freeswitch-mod-event-socket \
+ +freeswitch-mod-local-stream \
+ +freeswitch-mod-sndfile \
+ +freeswitch-mod-sofia \
+ +freeswitch-mod-tone-stream \
+ +freeswitch-mod-voipcodecs \
+ +freeswitch-tools
endef
# mod_lua is included in FreeSWITCH minimal because it is intended to be used
# by the LuCI / ucitrigger interface to FreeSWITCH on OpenWRT
-define Package/freeswitch-minimal
+define Package/freeswitch-collection-uci-minimal
$(call Package/freeswitch/Default)
- TITLE:=FreeSWITCH minimal config
+ TITLE:=FreeSWITCH on OpenWRT minimal collection of packages
DEPENDS:= freeswitch \
+ +freeswitch-config-uci \
+freeswitch-mod-commands \
- +freeswitch-mod-console \
+ +freeswitch-mod-syslog \
+freeswitch-mod-dialplan-xml \
+freeswitch-mod-dptools \
+ +freeswitch-mod-event-socket \
+freeswitch-mod-local-stream \
+freeswitch-mod-sndfile \
+freeswitch-mod-sofia \
+freeswitch-mod-tone-stream \
+freeswitch-mod-voipcodecs \
- +freeswitch-mod-lua
+ +freeswitch-mod-lua \
+ +freeswitch-tools
endef
define Package/freeswitch-sounds-en
MAKE_INSTALL_TARGETS:=install
ifneq ($(CONFIG_PACKAGE_freeswitch-mod-celt),)
- $(eval $(call Download/files,celt,celt-0.6.1.tar.gz,2961ffb6fadb5f905d20de9f0d86e44c,downloads/libs/,libs/))
+ $(eval $(call Download/files,celt,celt-0.7.1.tar.gz,c7f6b8346e132b1a48dae0eff77ea9f0,downloads/libs/,libs/))
endif
ifneq ($(CONFIG_PACKAGE_freeswitch-mod-curl),)
- $(eval $(call Download/files,json-c,json-c-0.8.tar.gz,9c7b90dff16eec3063084829c382ebac,downloads/libs/,libs/))
+ $(eval $(call Download/files,json-c,json-c-0.9.tar.gz,4653b3b9c568bb9c782178abfaac128d,downloads/libs/,libs/))
endif
ifneq ($(CONFIG_PACKAGE_freeswitch-mod-flite),)
- $(eval $(call Download/files,flite,flite-1.3.99.tar.gz,,downloads/libs/,libs/))
+ $(eval $(call Download/files,flite,flite-1.3.99-latest.tar.gz,,downloads/libs/,libs/))
endif
ifneq ($(CONFIG_PACKAGE_freeswitch-sounds-en),)
- $(eval $(call Download/files,sounds-en,freeswitch-sounds-en-us-callie-8000-1.0.10.tar.gz,f7f85aaf3763673c884ec3451f1c1c3e,,))
+ $(eval $(call Download/files,sounds-en,freeswitch-sounds-en-us-callie-8000-1.0.12.tar.gz,d700439027dd95dd118e5e85f38e4d81,,))
MAKE_INSTALL_TARGETS+= sounds-install
endif
MAKE_INSTALL_TARGETS+= moh-install
endif
-FS_TARGET_CFLAGS = ${TARGET_CFLAGS} -DLUA_USE_LINUX $(FPIC) -std=gnu99
-FS_TARGET_CXXFLAGS = ${TARGET_CXXFLAGS} -DLUA_USE_LINUX $(FPIC)
+FS_TARGET_CFLAGS = ${TARGET_CFLAGS} -DLUA_USE_LINUX $(FPIC) -std=gnu99 -fgnu89-inline -Wno-format
+FS_TARGET_CXXFLAGS = ${TARGET_CXXFLAGS} -DLUA_USE_LINUX $(FPIC) -fgnu89-inline -Wno-format
FS_TARGET_CPPFLAGS = -I. -I./lua ${TARGET_CPPFLAGS}
ifneq ($(CONFIG_USE_EGLIBC),)
DESTDIR="$(PKG_INSTALL_DIR)" \
LDFLAGS_FOR_BUILD="$(HOST_LDFLAGS)" \
all $(MAKE_INSTALL_TARGETS)
+ $(SED) 's|^\([ \t]*\)\(.*\)"mod_console"\(.*\)$$$$|\1<!-- \2"mod_console"\3 -->|' $(PKG_INSTALL_DIR)/etc/freeswitch/autoload_configs/modules.conf.xml
+ $(SED) 's|^\([ \t]*\)<!-- *\(.*\)"mod_syslog"\(.*\) *-->\(.*\)$$$$|\1\2"mod_syslog"\3\4|' $(PKG_INSTALL_DIR)/etc/freeswitch/autoload_configs/modules.conf.xml
endef
define Build/InstallDev
$(INSTALL_DATA) ./files/freeswitch.config $(1)/etc/config/freeswitch
endef
-define Package/freeswitch-default/install
+define Package/freeswitch-collection-upstream-defaults/install
$(INSTALL_DIR) $(1)/etc/freeswitch
- $(CP) $(PKG_INSTALL_DIR)/etc/freeswitch/* $(1)/etc/freeswitch/
endef
define Package/freeswitch-example-config/install
$(CP) $(PKG_INSTALL_DIR)/etc/freeswitch/* $(1)/usr/share/freeswitch/examples/conf/
endef
-define Package/freeswitch-minimal/install
+define Package/freeswitch-config-upstream-defaults/install
+ $(INSTALL_DIR) $(1)/etc/freeswitch
+ $(CP) $(PKG_INSTALL_DIR)/etc/freeswitch/* $(1)/etc/freeswitch/
+endef
+
+define Package/freeswitch-collection-minimal/install
+ $(INSTALL_DIR) $(1)/etc/freeswitch
+endef
+
+define Package/freeswitch-collection-uci-minimal/install
+ $(INSTALL_DIR) $(1)/etc/freeswitch
+endef
+
+define Package/freeswitch-config-minimal/install
+ $(INSTALL_DIR) $(1)/etc/freeswitch
+ $(CP) ./files/etc.minimal/* $(1)/etc/freeswitch/
+endef
+
+define Package/freeswitch-config-uci/install
$(INSTALL_DIR) $(1)/etc/freeswitch
+ $(CP) ./files/etc.uci/* $(1)/etc/freeswitch/
+ $(INSTALL_DIR) $(1)/usr/lib/freeswitch/uci
+ $(CP) ./files/uci/* $(1)/usr/lib/freeswitch/uci/
endef
define Package/freeswitch-sounds-en/install
endef
$(eval $(call BuildPackage,freeswitch))
-$(eval $(call BuildPackage,freeswitch-default))
-$(eval $(call BuildPackage,freeswitch-minimal))
+$(eval $(call BuildPackage,freeswitch-collection-upstream-defaults))
+$(eval $(call BuildPackage,freeswitch-collection-minimal))
+$(eval $(call BuildPackage,freeswitch-collection-uci-minimal))
$(eval $(call BuildPackage,freeswitch-sounds-en))
$(eval $(call BuildPackage,freeswitch-sounds-moh))
$(eval $(call BuildPackage,freeswitch-tools))
$(eval $(call BuildPackage,freeswitch-example-config))
+$(eval $(call BuildPackage,freeswitch-config-upstream-defaults))
+$(eval $(call BuildPackage,freeswitch-config-minimal))
+$(eval $(call BuildPackage,freeswitch-config-uci))
#$(eval $(call BuildPlugin,Name,Title,Files,Depends))
$(eval $(call BuildPlugin,alsa,Alsa endpoint,mod_alsa,,+alsa-lib))
$(eval $(call BuildPlugin,fax,Fax,mod_fax,,@BROKEN +libjpeg)) # fails in spandsp
$(eval $(call BuildPlugin,fifo,FIFO,mod_fifo,,))
$(eval $(call BuildPlugin,file-string,File streaming,mod_file_string,,))
-$(eval $(call BuildPlugin,flite,Festival TTS,mod_flite,,))
+$(eval $(call BuildPlugin,flite,Festival TTS,mod_flite,,@!TARGET_avr32 @!TARGET_ixp4xx))
$(eval $(call BuildPlugin,fsv,Video,mod_fsv,,))
$(eval $(call BuildPlugin,g723-1,G.723.1 codec,mod_g723_1,,))
$(eval $(call BuildPlugin,g729,G.729 codec,mod_g729,,))