Merge pull request #265 from micmac1/fs-redo-freetdm

freeswitch-stable: redo freetdm
This commit is contained in:
micmac1 2018-02-05 23:13:58 +01:00 committed by GitHub
commit 9a60912bae
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 89 additions and 64 deletions

View file

@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk
PRG_NAME:=freeswitch PRG_NAME:=freeswitch
PKG_NAME:=$(PRG_NAME)-stable PKG_NAME:=$(PRG_NAME)-stable
PKG_VERSION:=1.6.20 PKG_VERSION:=1.6.20
PKG_RELEASE:=2 PKG_RELEASE:=3
PKG_MAINTAINER:=Sebastian Kemper <sebastian_ml@gmx.net> PKG_MAINTAINER:=Sebastian Kemper <sebastian_ml@gmx.net>
PKG_SOURCE:=$(PRG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE:=$(PRG_NAME)-$(PKG_VERSION).tar.xz
@ -75,7 +75,10 @@ FS_STABLE_SYSCONF_DIR:=/etc
FS_STABLE_TLS_DIR:=$(FS_STABLE_SYSCONF_DIR)/$(PRG_NAME)/tls FS_STABLE_TLS_DIR:=$(FS_STABLE_SYSCONF_DIR)/$(PRG_NAME)/tls
FS_STABLE_TZ_DIR:=$(FS_STABLE_DATA_DIR)/tz FS_STABLE_TZ_DIR:=$(FS_STABLE_DATA_DIR)/tz
FS_STABLE_FTMOD_AVAILABLE:= \ FTDM:=freetdm
PKG_LIBFTDM:=lib$(FTDM)-stable
LIBFTDM_FTMOD_AVAILABLE:= \
analog \ analog \
analog_em \ analog_em \
libpri \ libpri \
@ -160,7 +163,7 @@ FS_STABLE_MOD_AVAILABLE:= \
expr \ expr \
fifo \ fifo \
format_cdr \ format_cdr \
freetdm \ $(FTDM) \
fsk \ fsk \
fsv \ fsv \
g723_1 \ g723_1 \
@ -254,11 +257,9 @@ FS_STABLE_MOD_AVAILABLE:= \
yaml \ yaml \
yuv yuv
LIBFTDM:=libfreetdm
PKG_CONFIG_DEPENDS:= \ PKG_CONFIG_DEPENDS:= \
$(patsubst %,CONFIG_PACKAGE_$(PKG_LIBFTDM)-ftmod-%,$(LIBFTDM_FTMOD_AVAILABLE)) \
$(patsubst %,CONFIG_PACKAGE_$(PKG_NAME)-%,$(FS_STABLE_MISC_AVAILABLE)) \ $(patsubst %,CONFIG_PACKAGE_$(PKG_NAME)-%,$(FS_STABLE_MISC_AVAILABLE)) \
$(patsubst %,CONFIG_PACKAGE_$(PKG_NAME)-ftmod-%,$(FS_STABLE_FTMOD_AVAILABLE)) \
$(patsubst %,CONFIG_PACKAGE_$(PKG_NAME)-mod-%,$(FS_STABLE_MOD_AVAILABLE)) \ $(patsubst %,CONFIG_PACKAGE_$(PKG_NAME)-mod-%,$(FS_STABLE_MOD_AVAILABLE)) \
CONFIG_FS_STABLE_WITH_DEBUG \ CONFIG_FS_STABLE_WITH_DEBUG \
CONFIG_FS_STABLE_WITH_FREETYPE \ CONFIG_FS_STABLE_WITH_FREETYPE \
@ -273,7 +274,7 @@ PKG_CONFIG_DEPENDS:= \
CONFIG_FS_STABLE_WITH_VPX \ CONFIG_FS_STABLE_WITH_VPX \
CONFIG_FS_STABLE_WITH_ZRTP \ CONFIG_FS_STABLE_WITH_ZRTP \
CONFIG_LIBC \ CONFIG_LIBC \
CONFIG_PACKAGE_$(LIBFTDM) \ CONFIG_PACKAGE_$(PKG_LIBFTDM) \
CONFIG_SOFT_FLOAT CONFIG_SOFT_FLOAT
include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/package.mk
@ -324,7 +325,7 @@ define Package/$(PKG_NAME)/install/dir
done done
endef endef
define Package/$(PKG_NAME)/install/ftmod define Package/$(PKG_LIBFTDM)/install/ftmod
$(INSTALL_DIR) $(1)$(FS_STABLE_MOD_DIR) $(INSTALL_DIR) $(1)$(FS_STABLE_MOD_DIR)
$(INSTALL_BIN) $(PKG_INSTALL_DIR)$(FS_STABLE_MOD_DIR)/ftmod_$(2).so \ $(INSTALL_BIN) $(PKG_INSTALL_DIR)$(FS_STABLE_MOD_DIR)/ftmod_$(2).so \
$(1)$(FS_STABLE_MOD_DIR) $(1)$(FS_STABLE_MOD_DIR)
@ -342,26 +343,47 @@ define Package/$(PKG_NAME)/install/mod
$(1)$(FS_STABLE_MOD_DIR) $(1)$(FS_STABLE_MOD_DIR)
endef endef
define Package/$(LIBFTDM) define Package/$(PKG_NAME)/config
CATEGORY:=Libraries source "$(SOURCE)/Config.in"
DEPENDS:=$(PKG_NAME) endef
define Package/$(PKG_LIBFTDM)/Default
SECTION:=libs SECTION:=libs
CATEGORY:=Libraries
SUBMENU:=Telephony SUBMENU:=Telephony
TITLE:=TDM signaling and media API
URL:=https://www.$(PRG_NAME).org URL:=https://www.$(PRG_NAME).org
endef endef
define Package/$(LIBFTDM)/description define Package/$(PKG_LIBFTDM)
Provides a unified interface to hardware TDM cards and ss7 stacks for $(call Package/$(PKG_LIBFTDM)/Default)
FreeSWITCH. DEPENDS:=
TITLE:=TDM signaling and media API
MENU:=1
URL:=https://www.$(PRG_NAME).org
endef endef
define Package/$(LIBFTDM)/install define Package/$(PKG_LIBFTDM)/description
$(call Package/$(PKG_NAME)/install/lib,$(1),$(LIBFTDM)) Provides a unified interface to hardware TDM cards and SS7 stacks.
endef endef
define Package/$(PKG_NAME)/config define Package/$(PKG_LIBFTDM)/install
source "$(SOURCE)/Config.in" $(call Package/$(PKG_NAME)/install/lib,$(1),lib$(FTDM))
endef
define Package/$(PKG_LIBFTDM)/FTModule
define Package/$(PKG_LIBFTDM)-ftmod-$(1)
$(call Package/$(PKG_LIBFTDM)/Default)
DEPENDS:=PACKAGE_$(PKG_LIBFTDM)-ftmod-$(1):$(PKG_LIBFTDM) \
$(patsubst +%,+PACKAGE_$(PKG_LIBFTDM)-ftmod-$(1):%,$(4))
TITLE:=$(2) FreeTDM module
endef
define Package/$(PKG_LIBFTDM)-ftmod-$(1)/description
$(subst \n,$(newline),$(3))
endef
define Package/$(PKG_LIBFTDM)-ftmod-$(1)/install
$(call Package/$(PKG_LIBFTDM)/install/ftmod,$$(1),$(1))
endef
$$(eval $$(call BuildPackage,$(PKG_LIBFTDM)-ftmod-$(1)))
endef endef
define Package/$(PKG_NAME)/Default define Package/$(PKG_NAME)/Default
@ -568,24 +590,6 @@ endef
$$(eval $$(call BuildPackage,$(PKG_NAME)-example-$(1))) $$(eval $$(call BuildPackage,$(PKG_NAME)-example-$(1)))
endef endef
define Package/$(PKG_NAME)/FTModule
define Package/$(PKG_NAME)-ftmod-$(1)
$(call Package/$(PKG_NAME)/Default)
DEPENDS := \
$(PKG_NAME) \
$(patsubst +%,+PACKAGE_$(PKG_NAME)-ftmod-$(1):%,$(4)) \
+PACKAGE_$(PKG_NAME)-ftmod-$(1):$(LIBFTDM)
TITLE:=$(2) FreeTDM module
endef
define Package/$(PKG_NAME)-ftmod-$(1)/description
$(subst \n,$(newline),$(3))
endef
define Package/$(PKG_NAME)-ftmod-$(1)/install
$(call Package/$(PKG_NAME)/install/ftmod,$$(1),$(1))
endef
$$(eval $$(call BuildPackage,$(PKG_NAME)-ftmod-$(1)))
endef
define Package/$(PKG_NAME)/Language define Package/$(PKG_NAME)/Language
define Package/$(PKG_NAME)-lang-$(1) define Package/$(PKG_NAME)-lang-$(1)
$(call Package/$(PKG_NAME)/Default) $(call Package/$(PKG_NAME)/Default)
@ -676,7 +680,6 @@ endef
CONFIGURE_ARGS+= \ CONFIGURE_ARGS+= \
--srcdir=$(PKG_BUILD_DIR) \ --srcdir=$(PKG_BUILD_DIR) \
--disable-dependency-tracking \ --disable-dependency-tracking \
--disable-silent-rules \
--disable-static \ --disable-static \
--disable-system-xmlrpc-c \ --disable-system-xmlrpc-c \
--enable-core-libedit-support \ --enable-core-libedit-support \
@ -699,8 +702,8 @@ CONFIGURE_ARGS+= \
$(if $(CONFIG_FS_STABLE_WITH_ODBC),--with-odbc="$(STAGING_DIR)/usr") \ $(if $(CONFIG_FS_STABLE_WITH_ODBC),--with-odbc="$(STAGING_DIR)/usr") \
$(if $(CONFIG_FS_STABLE_WITH_PGSQL),,--without-pgsql) \ $(if $(CONFIG_FS_STABLE_WITH_PGSQL),,--without-pgsql) \
$(if $(CONFIG_FS_STABLE_WITH_PNG),,--without-png) \ $(if $(CONFIG_FS_STABLE_WITH_PNG),,--without-png) \
$(if $(CONFIG_PACKAGE_$(PKG_NAME)-ftmod-libpri),--with-libpri="$(STAGING_DIR)/usr",--without-libpri) \ $(if $(CONFIG_PACKAGE_$(PKG_LIBFTDM)-ftmod-libpri),--with-libpri="$(STAGING_DIR)/usr",--without-libpri) \
$(if $(CONFIG_PACKAGE_$(PKG_NAME)-ftmod-pritap),--with-pritap,--without-pritap) $(if $(CONFIG_PACKAGE_$(PKG_LIBFTDM)-ftmod-pritap),--with-pritap,--without-pritap)
ifneq ($(CONFIG_PACKAGE_$(PKG_NAME)-misc-python-esl)$(CONFIG_PACKAGE_$(PKG_NAME)-mod-python),) ifneq ($(CONFIG_PACKAGE_$(PKG_NAME)-misc-python-esl)$(CONFIG_PACKAGE_$(PKG_NAME)-mod-python),)
CONFIGURE_ARGS+= \ CONFIGURE_ARGS+= \
@ -995,12 +998,12 @@ endif
endef endef
define Build/Compile define Build/Compile
$(call Build/Compile/Default) # Compile FreeTDM first
# FreeTDM is only compiled/installed automatically if mod_freetdm is selected ifneq ($(CONFIG_PACKAGE_$(PKG_LIBFTDM)),)
ifneq ($(CONFIG_PACKAGE_$(LIBFTDM)),) $(call Build/Compile/Default,-C $(PKG_BUILD_DIR)/libs/$(FTDM))
ifeq ($(CONFIG_PACKAGE_$(PKG_NAME)-mod-freetdm),)
$(call Build/Compile/Default,-C $(PKG_BUILD_DIR)/libs/freetdm)
endif endif
ifneq ($(CONFIG_PACKAGE_$(PKG_NAME)),)
$(call Build/Compile/Default)
endif endif
ifneq ($(CONFIG_PACKAGE_$(PKG_NAME)-misc-perl-esl),) ifneq ($(CONFIG_PACKAGE_$(PKG_NAME)-misc-perl-esl),)
$(call Build/Compile/Default,-C $(PKG_BUILD_DIR)/libs/esl perlmod) $(call Build/Compile/Default,-C $(PKG_BUILD_DIR)/libs/esl perlmod)
@ -1011,11 +1014,12 @@ endif
endef endef
define Build/Install define Build/Install
$(call Build/Install/Default) # Again, FreeTDM first
ifneq ($(CONFIG_PACKAGE_$(LIBFTDM)),) ifneq ($(CONFIG_PACKAGE_$(PKG_LIBFTDM)),)
ifeq ($(CONFIG_PACKAGE_$(PKG_NAME)-mod-freetdm),) $(call Build/Install/Default,-C $(PKG_BUILD_DIR)/libs/$(FTDM) install)
$(call Build/Install/Default,-C $(PKG_BUILD_DIR)/libs/freetdm install)
endif endif
ifneq ($(CONFIG_PACKAGE_$(PKG_NAME)),)
$(call Build/Install/Default)
endif endif
ifneq ($(CONFIG_PACKAGE_$(PKG_NAME)-misc-perl-esl),) ifneq ($(CONFIG_PACKAGE_$(PKG_NAME)-misc-perl-esl),)
$(call Build/Compile/Default,-C $(PKG_BUILD_DIR)/libs/esl DESTDIR=$(PKG_INSTALL_DIR) perlmod-install) $(call Build/Compile/Default,-C $(PKG_BUILD_DIR)/libs/esl DESTDIR=$(PKG_INSTALL_DIR) perlmod-install)
@ -1025,23 +1029,34 @@ ifneq ($(CONFIG_PACKAGE_$(PKG_NAME)-misc-python-esl),)
endif endif
endef endef
define Build/InstallDev define Build/InstallDev/$(PKG_LIBFTDM)
$(INSTALL_DIR) $(1)/usr/include
$(INSTALL_DATA) \
$(PKG_INSTALL_DIR)$(FS_STABLE_PKGCONFIG_DIR)/$(FTDM).pc \
$(1)$(FS_STABLE_PKGCONFIG_DIR)
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/*.h $(1)/usr/include
endef
define Build/InstallDev/$(PKG_NAME)
$(INSTALL_DIR) $(1)$(FS_STABLE_INCLUDES_DIR) $(INSTALL_DIR) $(1)$(FS_STABLE_INCLUDES_DIR)
$(INSTALL_DIR) $(1)$(FS_STABLE_PKGCONFIG_DIR)
$(INSTALL_DATA) $(PKG_INSTALL_DIR)$(FS_STABLE_INCLUDES_DIR)/*.h \ $(INSTALL_DATA) $(PKG_INSTALL_DIR)$(FS_STABLE_INCLUDES_DIR)/*.h \
$(1)$(FS_STABLE_INCLUDES_DIR) $(1)$(FS_STABLE_INCLUDES_DIR)
$(INSTALL_DATA) \ $(INSTALL_DATA) \
$(PKG_INSTALL_DIR)$(FS_STABLE_PKGCONFIG_DIR)/$(PRG_NAME).pc \ $(PKG_INSTALL_DIR)$(FS_STABLE_PKGCONFIG_DIR)/$(PRG_NAME).pc \
$(1)$(FS_STABLE_PKGCONFIG_DIR) $(1)$(FS_STABLE_PKGCONFIG_DIR)
ifneq ($(CONFIG_PACKAGE_$(LIBFTDM)),) endef
$(INSTALL_DATA) \
$(PKG_INSTALL_DIR)$(FS_STABLE_PKGCONFIG_DIR)/freetdm.pc \ define Build/InstallDev
$(1)$(FS_STABLE_PKGCONFIG_DIR) $(INSTALL_DIR) $(1)$(FS_STABLE_PKGCONFIG_DIR)
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/*.h $(1)/usr/include ifneq ($(CONFIG_PACKAGE_$(PKG_LIBFTDM)),)
$(call Build/InstallDev/$(PKG_LIBFTDM),$(1))
endif
ifneq ($(CONFIG_PACKAGE_$(PKG_NAME)),)
$(call Build/InstallDev/$(PKG_NAME),$(1))
endif endif
endef endef
$(eval $(call BuildPackage,$(LIBFTDM))) $(eval $(call BuildPackage,$(PKG_LIBFTDM)))
$(eval $(call BuildPackage,$(PKG_NAME))) $(eval $(call BuildPackage,$(PKG_NAME)))
$(eval $(call BuildPackage,$(PKG_NAME)-misc-hotplug)) $(eval $(call BuildPackage,$(PKG_NAME)-misc-hotplug))
$(eval $(call BuildPackage,$(PKG_NAME)-misc-perl-esl)) $(eval $(call BuildPackage,$(PKG_NAME)-misc-perl-esl))
@ -1072,12 +1087,12 @@ $(eval $(call Package/$(PKG_NAME)/Example,vanilla))
# 4 - Module dependencies # 4 - Module dependencies
################################ ################################
$(eval $(call Package/$(PKG_NAME)/FTModule,analog,Analog,Offers generic FXO/FXS support for any type of card supported by FreeTDM.,)) $(eval $(call Package/$(PKG_LIBFTDM)/FTModule,analog,Analog,Offers generic FXO/FXS support for any type of card supported by FreeTDM.,))
$(eval $(call Package/$(PKG_NAME)/FTModule,analog_em,Analog EM,Offers generic E&M signaling for any type of card supported by FreeTDM.,)) $(eval $(call Package/$(PKG_LIBFTDM)/FTModule,analog_em,Analog EM,Offers generic E&M signaling for any type of card supported by FreeTDM.,))
$(eval $(call Package/$(PKG_NAME)/FTModule,libpri,LibPRI,Offers support for PRI lines using the open source libpri stack for any\ntype of card supported by FreeTDM. Supports both PRI and BRI signalling.,+libpri @!aarch64)) $(eval $(call Package/$(PKG_LIBFTDM)/FTModule,libpri,LibPRI,Offers support for PRI lines using the open source libpri stack for any\ntype of card supported by FreeTDM. Supports both PRI and BRI signalling.,+libpri @!aarch64))
$(eval $(call Package/$(PKG_NAME)/FTModule,pritap,PRI tapping,This module is used to tap PRI lines.,+$(PKG_NAME)-ftmod-libpri)) $(eval $(call Package/$(PKG_LIBFTDM)/FTModule,pritap,PRI tapping,This module is used to tap PRI lines.,+$(PKG_LIBFTDM)-ftmod-libpri))
$(eval $(call Package/$(PKG_NAME)/FTModule,skel,Skeleton,ftmod_skel is an example module.,)) $(eval $(call Package/$(PKG_LIBFTDM)/FTModule,skel,Skeleton,ftmod_skel is an example module.,))
$(eval $(call Package/$(PKG_NAME)/FTModule,zt,DAHDI I/O,This module supports the DAHDI interface. The DAHDI interface is used by\nseveral hardware vendors.,)) $(eval $(call Package/$(PKG_LIBFTDM)/FTModule,zt,DAHDI I/O,This module supports the DAHDI interface. The DAHDI interface is used by\nseveral hardware vendors.,))
################################ ################################
# FreeSWITCH language files # FreeSWITCH language files
@ -1164,7 +1179,7 @@ $(eval $(call Package/$(PKG_NAME)/Module,event_zmq,ZMQ event,ZMQ event module.,)
$(eval $(call Package/$(PKG_NAME)/Module,expr,Expr,This module adds expr support for expression evaluation.,)) $(eval $(call Package/$(PKG_NAME)/Module,expr,Expr,This module adds expr support for expression evaluation.,))
$(eval $(call Package/$(PKG_NAME)/Module,fifo,FIFO,This module adds a first-in first-out queue system.,)) $(eval $(call Package/$(PKG_NAME)/Module,fifo,FIFO,This module adds a first-in first-out queue system.,))
$(eval $(call Package/$(PKG_NAME)/Module,format_cdr,Multiformat CDR,A superset of mod_json_cdr and mod_xml_cdr.,)) $(eval $(call Package/$(PKG_NAME)/Module,format_cdr,Multiformat CDR,A superset of mod_json_cdr and mod_xml_cdr.,))
$(eval $(call Package/$(PKG_NAME)/Module,freetdm,FreeTDM endpoint,This module is the glue between FreeSWITCH and FreeTDM.,+$(LIBFTDM))) $(eval $(call Package/$(PKG_NAME)/Module,$(FTDM),FreeTDM endpoint,This module is the glue between FreeSWITCH and FreeTDM.,+$(PKG_LIBFTDM)))
$(eval $(call Package/$(PKG_NAME)/Module,fsk,FSK,This module adds frequency-shift keying support which can be used to\nsend and receive caller ID.,)) $(eval $(call Package/$(PKG_NAME)/Module,fsk,FSK,This module adds frequency-shift keying support which can be used to\nsend and receive caller ID.,))
$(eval $(call Package/$(PKG_NAME)/Module,fsv,FSV,This module provides dialplan applications for recording and playing\nvideos.,)) $(eval $(call Package/$(PKG_NAME)/Module,fsv,FSV,This module provides dialplan applications for recording and playing\nvideos.,))
$(eval $(call Package/$(PKG_NAME)/Module,g723_1,G.723.1 passthrough,G.723.1 codec passthrough.,)) $(eval $(call Package/$(PKG_NAME)/Module,g723_1,G.723.1 passthrough,G.723.1 codec passthrough.,))

View file

@ -0,0 +1,10 @@
--- a/libs/freetdm/mod_freetdm/Makefile.in
+++ b/libs/freetdm/mod_freetdm/Makefile.in
@@ -15,7 +15,6 @@ $(FTLA): $(FT_DIR)/.update
cd $(FT_DIR) && $(MAKE)
local_install:
- cd $(FT_DIR) && $(MAKE) install
[ -f $(DESTDIR)@confdir@/autoload_configs/freetdm.conf.xml ] || cp -f $(FT_DIR)/conf/freetdm.conf.xml $(DESTDIR)@confdir@/autoload_configs
local_clean: