freeswitch: revisit build setup 569/head
authorSebastian Kemper <sebastian_ml@gmx.net>
Tue, 8 Sep 2020 17:35:32 +0000 (19:35 +0200)
committerSebastian Kemper <sebastian_ml@gmx.net>
Tue, 8 Sep 2020 17:35:35 +0000 (19:35 +0200)
1. Upstream fixed the parallel build issue in
   90ea0b7a1fdd7d8c5adaac87d74ed1c3c74086d0, so no need to force it off
   anymore.

2. The same sed script for uncommenting modules in modules.conf is used
   multiple times. This commit puts the script into a define that can be
   reused.

3. Some ifdefs removed. They only clutter up the Makefile. The sed
   script can run a few extra times, it does not matter.

4. Add a few extra dependencies that came to light.

Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
net/freeswitch/Makefile

index 37d26a00ae685d45dda83b8683e2dccb04f85e1d..29f38bffb3a5ab506d910d305975b2ad79399d79 100644 (file)
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=freeswitch
 PKG_VERSION:=1.10.5
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 PKG_MAINTAINER:=Sebastian Kemper <sebastian_ml@gmx.net>
 
 PKG_SOURCE:=freeswitch-$(PKG_VERSION).-release.tar.xz
@@ -24,8 +24,7 @@ PKG_BUILD_DEPENDS:=perl/host
 
 PKG_FIXUP:=autoreconf
 
-# With mod_ssml and mod_rayo enabled the parallel compiles always failed
-PKG_BUILD_PARALLEL:=0
+PKG_BUILD_PARALLEL:=1
 PKG_INSTALL:=1
 
 PKG_LICENSE:= \
@@ -270,6 +269,10 @@ endef
 $$(eval $$(call Download,$(1)))
 endef
 
+define Package/freeswitch/enable/plugin
+       $(SED) '/$(1)$$$$/s/^#//' $(PKG_BUILD_DIR)/modules.conf
+endef
+
 define Package/freeswitch/install/bin
        $(INSTALL_DIR) $(1)$(FS_BIN_DIR)
        $(INSTALL_BIN) $(PKG_INSTALL_DIR)$(FS_BIN_DIR)/$(2) \
@@ -757,27 +760,36 @@ define Build/Configure
        $(SED) '/^#/!s/^/#/' $(PKG_BUILD_DIR)/modules.conf
        $(foreach m,$(FS_MOD_AVAILABLE),
                $(if $(CONFIG_PACKAGE_freeswitch-mod-$(subst _,-,$(m))),
-               $(SED) '/mod_$(m)$$$$/s/^#//' $(PKG_BUILD_DIR)/modules.conf))
+               $(call Package/freeswitch/enable/plugin,mod_$(m))))
+
+# Some of the dependencies that necessitate below hacks are documented in
+# src/mod/Makefile.am.
 
 # Hack for misc-grammar - needs mod_pocketsphinx to provide grammar files
 ifneq ($(CONFIG_PACKAGE_freeswitch-misc-grammar),)
-ifeq ($(CONFIG_PACKAGE_freeswitch-mod-pocketsphinx),)
-       $(SED) '/mod_pocketsphinx$$$$/s/^#//' $(PKG_BUILD_DIR)/modules.conf
-endif
+       $(call Package/freeswitch/enable/plugin,mod_pocketsphinx)
 endif
 
 # Hack for mod_gsmopen - it has a build-time dep on mod_spandsp
 ifneq ($(CONFIG_PACKAGE_freeswitch-mod-gsmopen),)
-ifeq ($(CONFIG_PACKAGE_freeswitch-mod-spandsp),)
-       $(SED) '/mod_spandsp$$$$/s/^#//' $(PKG_BUILD_DIR)/modules.conf
+       $(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 :)
+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),)
-ifeq ($(CONFIG_PACKAGE_freeswitch-mod-sofia),)
-       $(SED) '/mod_sofia$$$$/s/^#//' $(PKG_BUILD_DIR)/modules.conf
-endif
+       $(call Package/freeswitch/enable/plugin,mod_sofia)
 endif
 
        $(call Build/Configure/Default)