freeswitch: fix compile against musl-1.2.4
[feed/telephony.git] / net / freeswitch / Makefile
index 29f38bffb3a5ab506d910d305975b2ad79399d79..f90522b5fa46a3056011ae27df83a3044f6777e8 100644 (file)
@@ -8,13 +8,13 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=freeswitch
-PKG_VERSION:=1.10.5
+PKG_VERSION:=1.10.9
 PKG_RELEASE:=2
 PKG_MAINTAINER:=Sebastian Kemper <sebastian_ml@gmx.net>
 
 PKG_SOURCE:=freeswitch-$(PKG_VERSION).-release.tar.xz
 PKG_SOURCE_URL:=https://files.freeswitch.org/releases/freeswitch
-PKG_HASH:=3e26600767a82946eca94af2c8f14712783aa83db5fb1cc57585f544aecce327
+PKG_HASH:=f649d53af7beccb59c1d03864cd8f2d287e4ea26ef652b5c4969d29121ced063
 
 PKG_CPE_ID:=cpe:/a:freeswitch:freeswitch
 
@@ -98,7 +98,6 @@ FS_MOD_AVAILABLE:= \
        dialplan_asterisk \
        dialplan_directory \
        dialplan_xml \
-       dingaling \
        directory \
        distributor \
        dptools \
@@ -115,7 +114,6 @@ FS_MOD_AVAILABLE:= \
        fail2ban \
        fifo \
        format_cdr \
-       freetdm \
        fsk \
        fsv \
        g723_1 \
@@ -152,6 +150,7 @@ FS_MOD_AVAILABLE:= \
        portaudio_stream \
        posix_timer \
        prefix \
+       python3 \
        radius_cdr \
        random \
        raven \
@@ -198,7 +197,6 @@ FS_MOD_AVAILABLE:= \
        tone_stream \
        translate \
        tts_commandline \
-       unimrcp \
        valet_parking \
        verto \
        video_filter \
@@ -222,40 +220,34 @@ PKG_CONFIG_DEPENDS:= \
        CONFIG_FS_WITH_PNG \
        CONFIG_FS_WITH_SRTP \
        CONFIG_FS_WITH_VPX \
-       CONFIG_FS_WITH_ZRTP \
        CONFIG_LIBC \
-       CONFIG_PACKAGE_libfreetdm \
-       CONFIG_PACKAGE_libfreetdm-ftmod-libpri \
-       CONFIG_PACKAGE_libfreetdm-ftmod-pritap \
        CONFIG_PACKAGE_freeswitch-misc-perl-esl \
+       CONFIG_PACKAGE_freeswitch-misc-python3-esl \
        CONFIG_SOFT_FLOAT
 
-include $(INCLUDE_DIR)/uclibc++.mk
 include $(INCLUDE_DIR)/package.mk
 # iconv support
 include $(INCLUDE_DIR)/nls.mk
-#######################################################
-# mod_gsmopen can't detect if iconv's inbuf is const. #
-#                                                     #
-#                  musl    uclibc                     #
-# libiconv-stub    -       -                          #
-# libiconv-full    -       const                      #
-#                                                     #
-#######################################################
-ifeq ($(ICONV_FULL)$(CONFIG_USE_UCLIBC),1y)
-TARGET_CFLAGS+=-DFS_ICONV_INBUF_CONST
-endif
 
 FS_PERL_FEED:=$(TOPDIR)/feeds/packages/lang/perl
 
+include $(TOPDIR)/feeds/packages/lang/python/python3-version.mk
 include $(FS_PERL_FEED)/perlver.mk
 
+# https://github.com/signalwire/freeswitch/issues/1670
+TARGET_CFLAGS+=-Wno-error=address
+
+# Allow compiling with OpenSSL 3.0
+TARGET_CFLAGS+=-Wno-error=deprecated-declarations
+
 PERL_SITELIB:=/usr/lib/perl$(PERL_MAJOR)/$(PERL_VERSION2)
 
 FS_PERL_LIBS:=$(shell grep "^libs=" \
        $(FS_PERL_FEED)/files/base.config | \
                        sed "s/^libs=//;s/'//g")
 
+FS_PYTHON3_SITE_DIR:=$(FS_LIB_DIR)/python$(PYTHON3_VERSION)/site-packages
+
 define Download/files
 define Download/$(1)
   FILE:=$(2)
@@ -291,12 +283,6 @@ define Package/freeswitch/install/dir
        done
 endef
 
-define Package/libfreetdm/install/ftmod
-       $(INSTALL_DIR) $(1)$(FS_MOD_DIR)
-       $(INSTALL_BIN) $(PKG_INSTALL_DIR)$(FS_MOD_DIR)/ftmod_$(2).so \
-                                               $(1)$(FS_MOD_DIR)
-endef
-
 define Package/freeswitch/install/lib
        $(INSTALL_DIR) $(1)$(FS_LIB_DIR)
        $(CP) $(PKG_INSTALL_DIR)$(FS_LIB_DIR)/$(2).so.* \
@@ -313,45 +299,6 @@ define Package/freeswitch/config
        source "$(SOURCE)/Config.in"
 endef
 
-define Package/libfreetdm/Default
-  SECTION:=libs
-  CATEGORY:=Libraries
-  SUBMENU:=Telephony
-  URL:=https://www.freeswitch.org
-endef
-
-define Package/libfreetdm
-$(call Package/libfreetdm/Default)
-  DEPENDS:=
-  TITLE:=TDM signaling and media API
-  MENU:=1
-  URL:=https://www.freeswitch.org
-endef
-
-define Package/libfreetdm/description
-Provides a unified interface to hardware TDM cards and SS7 stacks.
-endef
-
-define Package/libfreetdm/install
-$(call Package/freeswitch/install/lib,$(1),libfreetdm)
-endef
-
-define Package/libfreetdm/FTModule
-define Package/libfreetdm-ftmod-$(subst _,-,$(1))
-$(call Package/libfreetdm/Default)
-  DEPENDS:=libfreetdm \
-         $(patsubst +%,+PACKAGE_libfreetdm-ftmod-$(subst _,-,$(1)):%,$(4))
-  TITLE:=$(2) FreeTDM module
-endef
-define Package/libfreetdm-ftmod-$(subst _,-,$(1))/description
-$(subst \n,$(newline),$(3))
-endef
-define Package/libfreetdm-ftmod-$(subst _,-,$(1))/install
-$(call Package/libfreetdm/install/ftmod,$$(1),$(1))
-endef
-$$(eval $$(call BuildPackage,libfreetdm-ftmod-$(subst _,-,$(1))))
-endef
-
 define Package/freeswitch/Default
   SUBMENU:=Telephony
   SECTION:=net
@@ -368,8 +315,8 @@ $(call Package/freeswitch/Default)
   MENU:=1
   USERID:=freeswitch=372:freeswitch=372
   DEPENDS:= \
-         $(CXX_DEPENDS) \
          $(ICONV_DEPENDS) \
+         +libstdcpp \
          +!BUSYBOX_DEFAULT_SU:shadow-utils \
          +!BUSYBOX_DEFAULT_SU:shadow-su \
          +@OPENSSL_WITH_DEPRECATED \
@@ -473,6 +420,27 @@ define Package/freeswitch-misc-perl-esl/install
                                        $(1)$(PERL_SITELIB)/ESL
 endef
 
+define Package/freeswitch-misc-python3-esl
+$(call Package/freeswitch/Default)
+  TITLE:=Python3 ESL
+  DEPENDS:=freeswitch +PACKAGE_freeswitch-misc-python3-esl:python3-light
+endef
+
+define Package/freeswitch-misc-python3-esl/description
+This package contains the Python3 binding for FreeSWITCH's Event Socket
+Library (ESL).
+endef
+
+define Package/freeswitch-misc-python3-esl/install
+       $(INSTALL_DIR) $(1)$(FS_PYTHON3_SITE_DIR)
+       $(INSTALL_BIN) \
+               $(PKG_INSTALL_DIR)$(FS_PYTHON3_SITE_DIR)/_ESL.so \
+                                       $(1)$(FS_PYTHON3_SITE_DIR)
+       $(INSTALL_DATA) \
+               $(PKG_INSTALL_DIR)$(FS_PYTHON3_SITE_DIR)/ESL.py \
+                                       $(1)$(FS_PYTHON3_SITE_DIR)
+endef
+
 define Package/freeswitch-misc-timezones
 $(call Package/freeswitch/Default)
   TITLE:=Timezones file
@@ -570,6 +538,12 @@ ifeq ($(1),perl)
                $(PKG_INSTALL_DIR)/usr/perl/freeswitch.pm \
                                                        $$(1)$(PERL_SITELIB)
 endif
+ifeq ($(1),python3)
+       $(INSTALL_DIR) $$(1)$(FS_PYTHON3_SITE_DIR)
+       $(INSTALL_DATA) \
+               $(PKG_INSTALL_DIR)$(FS_PYTHON3_SITE_DIR)/freeswitch.py \
+                                       $$(1)$(FS_PYTHON3_SITE_DIR)
+endif
 endef
 $$(eval $$(call BuildPackage,freeswitch-mod-$(subst _,-,$(1))))
 endef
@@ -611,13 +585,18 @@ CONFIGURE_ARGS+= \
        $(call autoconf_bool,CONFIG_FS_WITH_ODBC,core-odbc-support) \
        $(call autoconf_bool,CONFIG_FS_WITH_SRTP,srtp) \
        $(call autoconf_bool,CONFIG_FS_WITH_VPX,libvpx) \
-       $(call autoconf_bool,CONFIG_FS_WITH_ZRTP,zrtp) \
        $(if $(CONFIG_FS_WITH_FREETYPE),,--without-freetype) \
        $(if $(CONFIG_FS_WITH_ODBC),--with-odbc-lib="$(STAGING_DIR)$(FS_LIB_DIR)") \
        $(if $(CONFIG_FS_WITH_ODBC),--with-odbc="$(STAGING_DIR)/usr") \
-       $(if $(CONFIG_FS_WITH_PNG),,--without-png) \
-       $(if $(CONFIG_PACKAGE_libfreetdm-ftmod-libpri),--with-libpri="$(STAGING_DIR)/usr",--without-libpri) \
-       $(if $(CONFIG_PACKAGE_libfreetdm-ftmod-pritap),--with-pritap,--without-pritap)
+       $(if $(CONFIG_FS_WITH_PNG),,--without-png)
+
+ifneq ($(CONFIG_PACKAGE_freeswitch-misc-python3-esl)$(CONFIG_PACKAGE_freeswitch-mod-python3),)
+CONFIGURE_ARGS+= \
+       --with-python3=$(STAGING_DIR_HOST)/bin/python3
+else
+CONFIGURE_ARGS+= \
+       --with-python3=no
+endif
 
 ifeq ($(CONFIG_PACKAGE_freeswitch-mod-erlang-event)$(CONFIG_PACKAGE_freeswitch-mod-kazoo),)
 CONFIGURE_ARGS+= \
@@ -678,7 +657,7 @@ endif
 ifneq ($(CONFIG_PACKAGE_freeswitch-misc-perl-esl)$(CONFIG_PACKAGE_freeswitch-mod-perl),)
 CONFIGURE_VARS+= \
        PERL="$(STAGING_DIR_HOSTPKG)/usr/bin/perl$(PERL_VERSION)" \
-       PERL_CFLAGS="-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_REENTRANT -D_GNU_SOURCE -I$(STAGING_DIR)$(PERL_SITELIB)/CORE" \
+       PERL_CFLAGS="-D_LARGEFILE_SOURCE $(if $(CONFIG_USE_MUSL),-D_LARGEFILE64_SOURCE) -D_FILE_OFFSET_BITS=64 -D_REENTRANT -D_GNU_SOURCE -I$(STAGING_DIR)$(PERL_SITELIB)/CORE" \
        PERL_INC="-I$(STAGING_DIR)$(PERL_SITELIB)/CORE" \
        PERL_LDFLAGS="-Wl,-rpath,$(PERL_SITELIB)/CORE -L$(STAGING_DIR)$(PERL_SITELIB)/CORE -lperl" \
        PERL_LIBDIR="-L$(PERL_SITELIB)/CORE" \
@@ -690,6 +669,15 @@ CONFIGURE_VARS+= \
        ac_cv_prog_PERL=false
 endif
 
+ifneq ($(CONFIG_PACKAGE_freeswitch-misc-python3-esl)$(CONFIG_PACKAGE_freeswitch-mod-python3),)
+CONFIGURE_VARS+= \
+       PYTHON3_CFLAGS="-I$(STAGING_DIR)/usr/include/python$(PYTHON3_VERSION)" \
+       PYTHON3_LDFLAGS="-lpython$(PYTHON3_VERSION)" \
+       PYTHON3_LIB="python$(PYTHON3_VERSION)" \
+       PYTHON3_LIBDIR="$(FS_LIB_DIR)" \
+       PYTHON3_SITE_DIR="$(FS_PYTHON3_SITE_DIR)"
+endif
+
 # mod_radius_cdr runs configure in libs/freeradius-client. Let
 # freeradius-client know /dev/urandom is available on target devices.
 MAKE_VARS+= \
@@ -739,21 +727,12 @@ ifneq ($(CONFIG_PACKAGE_freeswitch-mod-radius-cdr),)
 $(eval $(call Download/files,freeradius-client,$(FS_FREERADIUS_CLIENT_FILE),$(FS_LIBS_URL),$(FS_FREERADIUS_CLIENT_HASH)))
 endif
 
-# Need to update LDFLAGS for libs/unimrcp, otherwise it will try to link to a
-# different apr/apr-util if found.
-# FS_ANCHOR: string in build/acmacros/apr.m4 that will be replaced
-FS_ANCHOR:=dnl Get build information from APR
-FS_APR_LIBS:=-L$(PKG_BUILD_DIR)/libs/apr -L$(PKG_BUILD_DIR)/libs/apr-util
-
 define Build/Prepare
        $(call Build/Prepare/Default)
 
        echo '#applications/mod_random' >> $(PKG_BUILD_DIR)/modules.conf
        echo '#codecs/mod_yuv' >> $(PKG_BUILD_DIR)/modules.conf
        echo '#event_handlers/mod_event_test' >> $(PKG_BUILD_DIR)/modules.conf
-
-       $(SED) 's|$(FS_ANCHOR)|APR_SETVAR(LDFLAGS,[$(FS_APR_LIBS) $(TARGET_LDFLAGS)])|' \
-               $(PKG_BUILD_DIR)/libs/unimrcp/build/acmacros/apr.m4
 endef
 
 define Build/Configure
@@ -775,21 +754,9 @@ ifneq ($(CONFIG_PACKAGE_freeswitch-mod-gsmopen),)
        $(call Package/freeswitch/enable/plugin,mod_spandsp)
 endif
 
-# Hack for mod_rayo - it has a build-time dep on mod_dingaling
-ifneq ($(CONFIG_PACKAGE_freeswitch-mod-rayo),)
-       $(call Package/freeswitch/enable/plugin,mod_dingaling)
-endif
-
-# Hack for mod_ssml - it has a build-time dep on mod_rayo. And mod_rayo needs
-# mod_dingaling :)
+# Hack for mod_ssml - it has a build-time dep on mod_rayo.
 ifneq ($(CONFIG_PACKAGE_freeswitch-mod-ssml),)
        $(call Package/freeswitch/enable/plugin,mod_rayo)
-       $(call Package/freeswitch/enable/plugin,mod_dingaling)
-endif
-
-# Hack for mod_unimrcp - it has a build-time dep on mod_sofia
-ifneq ($(CONFIG_PACKAGE_freeswitch-mod-unimrcp),)
-       $(call Package/freeswitch/enable/plugin,mod_sofia)
 endif
 
        $(call Build/Configure/Default)
@@ -811,61 +778,41 @@ ifneq ($(CONFIG_PACKAGE_freeswitch-mod-radius-cdr),)
        $(CP) $(DL_DIR)/$(FS_FREERADIUS_CLIENT_FILE) $(PKG_BUILD_DIR)/libs
 endif
 
-# Compile FreeTDM first
-ifneq ($(CONFIG_PACKAGE_libfreetdm),)
-       $(call Build/Compile/Default,-C $(PKG_BUILD_DIR)/libs/freetdm)
-endif
-ifneq ($(CONFIG_PACKAGE_freeswitch),)
        $(call Build/Compile/Default)
-endif
+
 ifneq ($(CONFIG_PACKAGE_freeswitch-misc-perl-esl),)
        $(call Build/Compile/Default,-C $(PKG_BUILD_DIR)/libs/esl perlmod)
 endif
+ifneq ($(CONFIG_PACKAGE_freeswitch-misc-python3-esl),)
+       $(call Build/Compile/Default,-C $(PKG_BUILD_DIR)/libs/esl py3mod)
+endif
 endef
 
 define Build/Install
-# Again, FreeTDM first
-ifneq ($(CONFIG_PACKAGE_libfreetdm),)
-       $(call Build/Install/Default,-C $(PKG_BUILD_DIR)/libs/freetdm install)
-endif
-ifneq ($(CONFIG_PACKAGE_freeswitch),)
        $(call Build/Install/Default)
-endif
 ifneq ($(CONFIG_PACKAGE_freeswitch-misc-perl-esl),)
        $(call Build/Compile/Default,-C $(PKG_BUILD_DIR)/libs/esl DESTDIR=$(PKG_INSTALL_DIR) perlmod-install)
 endif
+ifneq ($(CONFIG_PACKAGE_freeswitch-misc-python3-esl),)
+       $(call Build/Install/Default,-C $(PKG_BUILD_DIR)/libs/esl py3mod-install)
+endif
 endef
 
-define Build/InstallDev/libfreetdm
-       $(INSTALL_DIR) $(1)/usr/include
-       $(INSTALL_DATA) \
-               $(PKG_INSTALL_DIR)$(FS_PKGCONFIG_DIR)/freetdm.pc \
+define Build/InstallDev
+       $(INSTALL_DIR) $(1)$(FS_INCLUDES_DIR) $(1)$(FS_LIB_DIR) \
                                                $(1)$(FS_PKGCONFIG_DIR)
-       $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/*.h $(1)/usr/include
-endef
-
-define Build/InstallDev/freeswitch
-       $(INSTALL_DIR) $(1)$(FS_INCLUDES_DIR)
        $(INSTALL_DATA) $(PKG_INSTALL_DIR)$(FS_INCLUDES_DIR)/*.h \
                                                $(1)$(FS_INCLUDES_DIR)
        $(INSTALL_DATA) \
                $(PKG_INSTALL_DIR)$(FS_PKGCONFIG_DIR)/freeswitch.pc \
                                                $(1)$(FS_PKGCONFIG_DIR)
+       $(CP) $(PKG_INSTALL_DIR)$(FS_LIB_DIR)/libfreeswitch.so* \
+                                               $(1)$(FS_LIB_DIR)
 endef
 
-define Build/InstallDev
-       $(INSTALL_DIR) $(1)$(FS_PKGCONFIG_DIR)
-ifneq ($(CONFIG_PACKAGE_libfreetdm),)
-       $(call Build/InstallDev/libfreetdm,$(1))
-endif
-ifneq ($(CONFIG_PACKAGE_freeswitch),)
-       $(call Build/InstallDev/freeswitch,$(1))
-endif
-endef
-
-$(eval $(call BuildPackage,libfreetdm))
 $(eval $(call BuildPackage,freeswitch))
 $(eval $(call BuildPackage,freeswitch-misc-perl-esl))
+$(eval $(call BuildPackage,freeswitch-misc-python3-esl))
 $(eval $(call BuildPackage,freeswitch-misc-timezones))
 
 ################################
@@ -883,22 +830,6 @@ $(eval $(call Package/freeswitch/Example,softphone))
 $(eval $(call Package/freeswitch/Example,testing))
 $(eval $(call Package/freeswitch/Example,vanilla))
 
-################################
-# FreeTDM modules
-# Params:
-# 1 - Package subname
-# 2 - Package title
-# 3 - Module description
-# 4 - Module dependencies
-################################
-
-$(eval $(call Package/libfreetdm/FTModule,analog,Analog,Offers generic FXO/FXS support for any type of card supported by FreeTDM.,))
-$(eval $(call Package/libfreetdm/FTModule,analog_em,Analog EM,Offers generic E&M signaling for any type of card supported by FreeTDM.,))
-$(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))
-$(eval $(call Package/libfreetdm/FTModule,pritap,PRI tapping,This module is used to tap PRI lines.,+libfreetdm-ftmod-libpri))
-$(eval $(call Package/libfreetdm/FTModule,skel,Skeleton,ftmod_skel is an example module.,))
-$(eval $(call Package/libfreetdm/FTModule,zt,DAHDI I/O,This module supports the DAHDI interface. The DAHDI interface is used by\nseveral hardware vendors.,))
-
 ################################
 # FreeSWITCH language files
 # Params:
@@ -944,7 +875,7 @@ $(eval $(call Package/freeswitch/Module,abstraction,API abstraction,This module
 $(eval $(call Package/freeswitch/Module,alsa,ALSA endpoint,ALSA endpoint module.,+alsa-lib))
 $(eval $(call Package/freeswitch/Module,amr,AMR passthrough,Passthrough AMR codec support.,))
 $(eval $(call Package/freeswitch/Module,amrwb,AMR wideband passthrough,Passthrough AMR wideband codec support.,))
-$(eval $(call Package/freeswitch/Module,av,AV,Video codec and format support via FFmpeg.,+libffmpeg-full @x86_64))
+$(eval $(call Package/freeswitch/Module,av,AV,Video codec and format support via FFmpeg.,+libffmpeg-full @BROKEN @x86_64))
 $(eval $(call Package/freeswitch/Module,avmd,Voicemail detection,This module attempts to determine when a voicemail system has answered\nthe call.,))
 $(eval $(call Package/freeswitch/Module,b64,Base64,Transfers data Base64 encoded.,))
 $(eval $(call Package/freeswitch/Module,basic,BASIC,BASIC module for FreeSWITCH.,))
@@ -967,7 +898,6 @@ $(eval $(call Package/freeswitch/Module,db,DB,This module implements a simple db
 $(eval $(call Package/freeswitch/Module,dialplan_asterisk,Asterisk dialplan,Asterisk extensions.conf style dialplan parser.,))
 $(eval $(call Package/freeswitch/Module,dialplan_directory,Directory dialplan,Directory dialplan support.,))
 $(eval $(call Package/freeswitch/Module,dialplan_xml,XML dialplan,Standard FreeSWITCH XML dialplan support.,))
-$(eval $(call Package/freeswitch/Module,dingaling,Generic XMPP,Allows FreeSWITCH to be used as a client for XMPP Servers.,))
 $(eval $(call Package/freeswitch/Module,directory,Dial-by-name directory,This module implements a dial-by-name directory IVR.,))
 $(eval $(call Package/freeswitch/Module,distributor,Load distributor,This module implements a mechanism for performing load balancing.,))
 $(eval $(call Package/freeswitch/Module,dptools,Dialplan tools,This module implements basic dialplan tools.,))
@@ -979,12 +909,11 @@ $(eval $(call Package/freeswitch/Module,esl,Single ESL,This module adds an API f
 $(eval $(call Package/freeswitch/Module,event_multicast,Multicast Event,Multicast Event System for FreeSWITCH.,))
 $(eval $(call Package/freeswitch/Module,event_socket,Event socket,Sends events via a single socket. Needed for fs_cli.,))
 $(eval $(call Package/freeswitch/Module,event_test,Event test,Event demo module.,))
-$(eval $(call Package/freeswitch/Module,event_zmq,ZMQ event,ZMQ event module.,@!USE_UCLIBCXX))
+$(eval $(call Package/freeswitch/Module,event_zmq,ZMQ event,ZMQ event module.,))
 $(eval $(call Package/freeswitch/Module,expr,Expr,This module adds expr support for expression evaluation.,))
 $(eval $(call Package/freeswitch/Module,fail2ban,Fail2ban logging,Provides support for Fail2ban logging.,))
 $(eval $(call Package/freeswitch/Module,fifo,FIFO,This module adds a first-in first-out queue system.,))
 $(eval $(call Package/freeswitch/Module,format_cdr,Multiformat CDR,A superset of mod_json_cdr and mod_xml_cdr.,))
-$(eval $(call Package/freeswitch/Module,freetdm,FreeTDM endpoint,This module is the glue between FreeSWITCH and FreeTDM.,+libfreetdm))
 $(eval $(call Package/freeswitch/Module,fsk,FSK,This module adds frequency-shift keying support which can be used to\nsend and receive caller ID.,))
 $(eval $(call Package/freeswitch/Module,fsv,FSV,This module provides dialplan applications for recording and playing\nvideos.,))
 $(eval $(call Package/freeswitch/Module,g723_1,G.723.1 passthrough,G.723.1 codec passthrough.,))
@@ -1005,7 +934,7 @@ $(eval $(call Package/freeswitch/Module,local_stream,Local stream,Connects multi
 $(eval $(call Package/freeswitch/Module,logfile,File logger,Logs FreeSWITCH output to a file.,))
 $(eval $(call Package/freeswitch/Module,loopback,Loopback,A loopback channel driver.,))
 $(eval $(call Package/freeswitch/Module,lua,Lua,Lua language interface for FreeSWITCH.,+liblua))
-$(eval $(call Package/freeswitch/Module,mariadb,MariaDB,Adds MariaDB support.,+libmariadb @!USE_UCLIBCXX))
+$(eval $(call Package/freeswitch/Module,mariadb,MariaDB,Adds MariaDB support.,+libmariadb))
 $(eval $(call Package/freeswitch/Module,mp4v,MP4 video passthrough,MP4 video passthrough.,))
 $(eval $(call Package/freeswitch/Module,native_file,Native file,Plays files that are already encoded in the right format.,))
 $(eval $(call Package/freeswitch/Module,nibblebill,Nibblebill,This module allows for real-time accounting of a cash balance and\nusing that information for call routing.,))
@@ -1021,6 +950,7 @@ $(eval $(call Package/freeswitch/Module,portaudio,Portaudio,Voice through a loca
 $(eval $(call Package/freeswitch/Module,portaudio_stream,Portaudio streaming,Stream from an external audio source for Music on Hold.,+portaudio))
 $(eval $(call Package/freeswitch/Module,posix_timer,POSIX timer,Add POSIX timer support.,))
 $(eval $(call Package/freeswitch/Module,prefix,Prefix match,This module provides a data store with fast lookups by the longest\nprefix match rule.,))
+$(eval $(call Package/freeswitch/Module,python3,Python3,Python3 support module.,+python3-light))
 $(eval $(call Package/freeswitch/Module,radius_cdr,Radius CDR,Radius Call Detail Record handler.,))
 $(eval $(call Package/freeswitch/Module,random,Entropy,This module extracts entropy from FreeSWITCH and feeds it into\n/dev/random.,))
 $(eval $(call Package/freeswitch/Module,raven,Raven logging,Adds support for logging to Raven instances.,))
@@ -1067,9 +997,8 @@ $(eval $(call Package/freeswitch/Module,theora,Theora passthrough,Theora video c
 $(eval $(call Package/freeswitch/Module,tone_stream,Tone stream,Tone generation stream.,))
 $(eval $(call Package/freeswitch/Module,translate,Number translation,This module implements number translation.,))
 $(eval $(call Package/freeswitch/Module,tts_commandline,TTS command-line,Run a command-line and play the output file.,))
-$(eval $(call Package/freeswitch/Module,unimrcp,UniMRCP,Allows communication with Media Resource Control Protocol servers.,))
 $(eval $(call Package/freeswitch/Module,valet_parking,Valet parking,This module implements the valet call parking strategy.,))
-$(eval $(call Package/freeswitch/Module,verto,Verto,Verto signaling protocol.,))
+$(eval $(call Package/freeswitch/Module,verto,Verto,Verto signaling protocol.,+libks))
 $(eval $(call Package/freeswitch/Module,video_filter,Video filter chromakey,This module provides a media bug for chromakey functionality.,))
 $(eval $(call Package/freeswitch/Module,vmd,Voicemail detection,This module detects voicemail beeps.,))
 $(eval $(call Package/freeswitch/Module,voicemail,Voicemail,This module provides a voicemail system.,))