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_FT_WITH_DEBUG \
45 CONFIG_PACKAGE_libfreetdm-ftmod-libpri \
46 CONFIG_PACKAGE_libfreetdm-ftmod-pritap \
48 include $(INCLUDE_DIR
)/package.mk
50 define Package
/libfreetdm
/install/ftmod
51 $(INSTALL_DIR
) $(1)$(FS_MOD_DIR
)
52 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)$(FS_MOD_DIR
)/ftmod_
$(2).so \
56 define Package
/freetdm
/config
57 source
"$(SOURCE)/Config.in"
60 define Package
/libfreetdm
/Default
64 URL
:=https
://www.freeswitch.org
67 define Package
/libfreetdm
68 $(call Package
/libfreetdm
/Default
)
70 TITLE
:=TDM signaling and media API
74 define Package
/libfreetdm
/description
75 Provides a unified interface to hardware TDM cards and SS7 stacks.
78 define Package
/libfreetdm
/install
79 $(INSTALL_DIR
) $(1)$(FS_LIB_DIR
)
80 $(CP
) $(PKG_INSTALL_DIR
)$(FS_LIB_DIR
)/libfreetdm.so.
* \
84 define Package
/freeswitch-mod-freetdm
85 $(call Package
/libfreetdm
/Default
)
89 DEPENDS
:=freeswitch
+libfreetdm
90 TITLE
:=FreeTDM endpoint module
93 define Package
/freeswitch-mod-freetdm
/description
94 This module is the glue between FreeSWITCH and FreeTDM.
97 define Package
/freeswitch-mod-freetdm
/install
98 $(INSTALL_DIR
) $(1)$(FS_MOD_DIR
)
99 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)$(FS_MOD_DIR
)/mod_freetdm.so \
101 ifeq ($(CONFIG_FS_WITH_MODCONF
),y
)
103 $(1)$(FS_EXAMPLES_DIR
)/mod_freetdm
/freeswitch
/autoload_configs
104 $(INSTALL_DATA
) $(PKG_INSTALL_DIR
)/etc
/*.conf \
105 $(1)$(FS_EXAMPLES_DIR
)/mod_freetdm
107 $(PKG_INSTALL_DIR
)/etc
/freeswitch
/autoload_configs
/freetdm.conf.xml \
108 $(1)$(FS_EXAMPLES_DIR
)/mod_freetdm
/freeswitch
/autoload_configs
112 define Package
/libfreetdm
/FTModule
113 define Package
/libfreetdm-ftmod-
$(subst _
,-,$(1))
114 $(call Package
/libfreetdm
/Default
)
115 DEPENDS
:=libfreetdm \
116 $(patsubst +%,+PACKAGE_libfreetdm-ftmod-
$(subst _
,-,$(1)):%,$(4))
117 TITLE
:=$(2) FreeTDM module
119 define Package
/libfreetdm-ftmod-
$(subst _
,-,$(1))/description
120 $(subst \n,$(newline
),$(3))
122 define Package
/libfreetdm-ftmod-
$(subst _
,-,$(1))/install
123 $(call Package
/libfreetdm
/install/ftmod
,$$(1),$(1))
125 $$(eval
$$(call BuildPackage
,libfreetdm-ftmod-
$(subst _
,-,$(1))))
129 --srcdir=$(PKG_BUILD_DIR
) \
130 --disable-dependency-tracking \
132 --with-modinstdir
=$(FS_MOD_DIR
) \
133 $(call autoconf_bool
,CONFIG_FREETDM_WITH_DEBUG
,debug
) \
134 $(if
$(CONFIG_PACKAGE_libfreetdm-ftmod-libpri
),--with-libpri
="$(STAGING_DIR)/usr",--without-libpri
) \
135 $(if
$(CONFIG_PACKAGE_libfreetdm-ftmod-pritap
),--with-pritap
,--without-pritap
)
137 define Build
/InstallDev
/libfreetdm
138 $(INSTALL_DIR
) $(1)/usr
/include
140 $(PKG_INSTALL_DIR
)$(FS_PKGCONFIG_DIR
)/freetdm.
pc \
141 $(1)$(FS_PKGCONFIG_DIR
)
142 $(INSTALL_DATA
) $(PKG_INSTALL_DIR
)/usr
/include/*.h
$(1)/usr
/include
145 define Build
/InstallDev
146 $(INSTALL_DIR
) $(1)$(FS_PKGCONFIG_DIR
)
147 $(call Build
/InstallDev
/libfreetdm
,$(1))
150 $(eval
$(call BuildPackage
,libfreetdm
))
151 $(eval
$(call BuildPackage
,freeswitch-mod-freetdm
))
153 ################################
156 # 1 - Package subname
158 # 3 - Module description
159 # 4 - Module dependencies
160 ################################
162 $(eval
$(call Package
/libfreetdm
/FTModule
,analog
,Analog
,Offers generic FXO
/FXS support for any type of card supported by FreeTDM.
,))
163 $(eval
$(call Package
/libfreetdm
/FTModule
,analog_em
,Analog EM
,Offers generic E
&M signaling for any type of card supported by FreeTDM.
,))
164 $(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
))
165 $(eval
$(call Package
/libfreetdm
/FTModule
,pritap
,PRI tapping
,This module is used to tap PRI lines.
,+libfreetdm-ftmod-libpri
))
166 $(eval
$(call Package
/libfreetdm
/FTModule
,skel
,Skeleton
,ftmod_skel is an example module.
,))
167 $(eval
$(call Package
/libfreetdm
/FTModule
,zt
,DAHDI I
/O
,This module supports the DAHDI interface. The DAHDI interface is used by
\nseveral hardware vendors.
,))