2 # Copyright (C) 2021 Sebastian Kemper <sebastian_ml@gmx.net>
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR
)/rules.mk
12 PKG_MAINTAINER
:=Sebastian Kemper
<sebastian_ml@gmx.net
>
15 PKG_SOURCE_URL
:=https
://github.com
/freeswitch
/freetdm.git
16 PKG_SOURCE_DATE
:=2021-08-30
17 PKG_SOURCE_VERSION
:=8918ee1c3637cad0f9d41a402d26d3aa076fc202
18 PKG_MIRROR_HASH
:=c910ff0fb62c8a174f6e0bbd749783da1ecd71634d4dcde48b118909f4981943
33 PKG_LICENSE_FILES
:=LICENSE
35 PKG_BUILD_DEPENDS
:=freeswitch
37 FS_EXAMPLES_DIR
:=/usr
/share
/freeswitch
/examples
39 FS_MOD_DIR
:=$(FS_LIB_DIR
)/freeswitch
/mod
40 FS_PKGCONFIG_DIR
:=$(FS_LIB_DIR
)/pkgconfig
42 PKG_CONFIG_DEPENDS
:= \
43 CONFIG_FREETDM_WITH_DEBUG \
44 CONFIG_FS_WITH_MODCONF \
46 CONFIG_PACKAGE_libfreetdm-ftmod-libpri \
47 CONFIG_PACKAGE_libfreetdm-ftmod-pritap \
49 include $(INCLUDE_DIR
)/package.mk
51 define Package
/libfreetdm
/install/ftmod
52 $(INSTALL_DIR
) $(1)$(FS_MOD_DIR
)
53 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)$(FS_MOD_DIR
)/ftmod_
$(2).so \
57 define Package
/freetdm
/config
58 source
"$(SOURCE)/Config.in"
61 define Package
/libfreetdm
/Default
65 URL
:=https
://www.freeswitch.org
68 define Package
/libfreetdm
69 $(call Package
/libfreetdm
/Default
)
71 TITLE
:=TDM signaling and media API
75 define Package
/libfreetdm
/description
76 Provides a unified interface to hardware TDM cards and SS7 stacks.
79 define Package
/libfreetdm
/install
80 $(INSTALL_DIR
) $(1)$(FS_LIB_DIR
)
81 $(CP
) $(PKG_INSTALL_DIR
)$(FS_LIB_DIR
)/libfreetdm.so.
* \
85 define Package
/freeswitch-mod-freetdm
86 $(call Package
/libfreetdm
/Default
)
90 DEPENDS
:=freeswitch
+libfreetdm
91 TITLE
:=FreeTDM endpoint module
94 define Package
/freeswitch-mod-freetdm
/description
95 This module is the glue between FreeSWITCH and FreeTDM.
98 define Package
/freeswitch-mod-freetdm
/install
99 $(INSTALL_DIR
) $(1)$(FS_MOD_DIR
)
100 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)$(FS_MOD_DIR
)/mod_freetdm.so \
102 ifeq ($(CONFIG_FS_WITH_MODCONF
),y
)
104 $(1)$(FS_EXAMPLES_DIR
)/mod_freetdm
/freeswitch
/autoload_configs
105 $(INSTALL_DATA
) $(PKG_INSTALL_DIR
)/etc
/*.conf \
106 $(1)$(FS_EXAMPLES_DIR
)/mod_freetdm
108 $(PKG_INSTALL_DIR
)/etc
/freeswitch
/autoload_configs
/freetdm.conf.xml \
109 $(1)$(FS_EXAMPLES_DIR
)/mod_freetdm
/freeswitch
/autoload_configs
113 define Package
/libfreetdm
/FTModule
114 define Package
/libfreetdm-ftmod-
$(subst _
,-,$(1))
115 $(call Package
/libfreetdm
/Default
)
116 DEPENDS
:=libfreetdm \
117 $(patsubst +%,+PACKAGE_libfreetdm-ftmod-
$(subst _
,-,$(1)):%,$(4))
118 TITLE
:=$(2) FreeTDM module
120 define Package
/libfreetdm-ftmod-
$(subst _
,-,$(1))/description
121 $(subst \n,$(newline
),$(3))
123 define Package
/libfreetdm-ftmod-
$(subst _
,-,$(1))/install
124 $(call Package
/libfreetdm
/install/ftmod
,$$(1),$(1))
126 $$(eval
$$(call BuildPackage
,libfreetdm-ftmod-
$(subst _
,-,$(1))))
130 --srcdir=$(PKG_BUILD_DIR
) \
131 --disable-dependency-tracking \
133 --with-modinstdir
=$(FS_MOD_DIR
) \
134 $(call autoconf_bool
,CONFIG_FREETDM_WITH_DEBUG
,debug
) \
135 $(if
$(CONFIG_PACKAGE_libfreetdm-ftmod-libpri
),--with-libpri
="$(STAGING_DIR)/usr",--without-libpri
) \
136 $(if
$(CONFIG_PACKAGE_libfreetdm-ftmod-pritap
),--with-pritap
,--without-pritap
)
138 $(eval
$(call BuildPackage
,libfreetdm
))
139 $(eval
$(call BuildPackage
,freeswitch-mod-freetdm
))
141 ################################
144 # 1 - Package subname
146 # 3 - Module description
147 # 4 - Module dependencies
148 ################################
150 $(eval
$(call Package
/libfreetdm
/FTModule
,analog
,Analog
,Offers generic FXO
/FXS support for any type of card supported by FreeTDM.
,))
151 $(eval
$(call Package
/libfreetdm
/FTModule
,analog_em
,Analog EM
,Offers generic E
&M signaling for any type of card supported by FreeTDM.
,))
152 $(eval
$(call Package
/libfreetdm
/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
))
153 $(eval
$(call Package
/libfreetdm
/FTModule
,pritap
,PRI tapping
,This module is used to tap PRI lines.
,+libfreetdm-ftmod-libpri
))
154 $(eval
$(call Package
/libfreetdm
/FTModule
,skel
,Skeleton
,ftmod_skel is an example module.
,))
155 $(eval
$(call Package
/libfreetdm
/FTModule
,zt
,DAHDI I
/O
,This module supports the DAHDI interface. The DAHDI interface is used by
\nseveral hardware vendors.
,))