asterisk-11.x and asterisk-13.x: Disable LOW_MEMORY by default
authorSebastian Kemper <sebastian_ml@gmx.net>
Thu, 3 Aug 2017 19:15:59 +0000 (21:15 +0200)
committerSebastian Kemper <sebastian_ml@gmx.net>
Thu, 3 Aug 2017 19:16:03 +0000 (21:16 +0200)
In issue #173 a segmentation fault occuring during a simple SIP call was
reported. Compiling with LOW_MEMORY disabled the reproducible segfault
disappeared.

This commits adds a switch for LOW_MEMORY. Default is off. If anybody
wants to debug the segfault s/he can enable it.

The segfault was reported for Asterisk 11. Disable LOW_MEMORY on
Asterisk 13 anyway, better safe than sorry.

Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
net/asterisk-11.x/Config.in [new file with mode: 0644]
net/asterisk-11.x/Makefile
net/asterisk-13.x/Config.in [new file with mode: 0644]
net/asterisk-13.x/Makefile

diff --git a/net/asterisk-11.x/Config.in b/net/asterisk-11.x/Config.in
new file mode 100644 (file)
index 0000000..38e2c47
--- /dev/null
@@ -0,0 +1,11 @@
+menu "Advanced configuration"
+       depends on PACKAGE_asterisk11
+
+config ASTERISK11_LOW_MEMORY
+       bool "Optimize Asterisk 11 for low memory usage"
+       default n
+       help
+         Warning: this feature is known to cause problems with some modules.
+         Disable it if you experience problems like segmentation faults.
+
+endmenu
index e9349cd9a80c72e5fe31503f25e76085b57e5a6a..395c7b087889cdef5d7948b91c8ac949f76ed884 100644 (file)
@@ -51,6 +51,10 @@ define Package/asterisk11/install/sounds
        $(CP) $(PKG_INSTALL_DIR)/usr/lib/asterisk/sounds/en/$(2) $(1)/usr/lib/asterisk/sounds/
 endef
 
        $(CP) $(PKG_INSTALL_DIR)/usr/lib/asterisk/sounds/en/$(2) $(1)/usr/lib/asterisk/sounds/
 endef
 
+define Package/$(PKG_NAME)/config
+       source "$(SOURCE)/Config.in"
+endef
+
 define BuildAsterisk11Module
   define Package/asterisk11-$(1)
   $$(call Package/asterisk11/Default)
 define BuildAsterisk11Module
   define Package/asterisk11-$(1)
   $$(call Package/asterisk11/Default)
@@ -327,7 +331,7 @@ define Build/Compile
        cd "$(PKG_BUILD_DIR)" && \
                ./menuselect/menuselect \
                        --disable BUILD_NATIVE \
        cd "$(PKG_BUILD_DIR)" && \
                ./menuselect/menuselect \
                        --disable BUILD_NATIVE \
-                       --enable LOW_MEMORY \
+                       $(if $(CONFIG_ASTERISK11_LOW_MEMORY),--enable LOW_MEMORY) \
                        menuselect.makeopts
        $(MAKE) -C "$(PKG_BUILD_DIR)" include/asterisk/version.h \
                include/asterisk/buildopts.h defaults.h \
                        menuselect.makeopts
        $(MAKE) -C "$(PKG_BUILD_DIR)" include/asterisk/version.h \
                include/asterisk/buildopts.h defaults.h \
diff --git a/net/asterisk-13.x/Config.in b/net/asterisk-13.x/Config.in
new file mode 100644 (file)
index 0000000..fd38585
--- /dev/null
@@ -0,0 +1,11 @@
+menu "Advanced configuration"
+       depends on PACKAGE_asterisk13
+
+config ASTERISK13_LOW_MEMORY
+       bool "Optimize Asterisk 13 for low memory usage"
+       default n
+       help
+         Warning: this feature is known to cause problems with some modules.
+         Disable it if you experience problems like segmentation faults.
+
+endmenu
index e0bb47989db3751b8e0c1dfdf2d4417739b6ee1f..f7b59f37b75b0c991c12ce2b49c8850bc353f16a 100644 (file)
@@ -52,6 +52,10 @@ define Package/asterisk13/install/sounds
        $(CP) $(PKG_INSTALL_DIR)/usr/lib/asterisk/sounds/en/$(2) $(1)/usr/lib/asterisk/sounds/
 endef
 
        $(CP) $(PKG_INSTALL_DIR)/usr/lib/asterisk/sounds/en/$(2) $(1)/usr/lib/asterisk/sounds/
 endef
 
+define Package/$(PKG_NAME)/config
+       source "$(SOURCE)/Config.in"
+endef
+
 define BuildAsterisk13Module
   define Package/asterisk13-$(1)
   $$(call Package/asterisk13/Default)
 define BuildAsterisk13Module
   define Package/asterisk13-$(1)
   $$(call Package/asterisk13/Default)
@@ -269,7 +273,7 @@ define Build/Compile
        cd "$(PKG_BUILD_DIR)" && \
                ./menuselect/menuselect \
                        --disable BUILD_NATIVE \
        cd "$(PKG_BUILD_DIR)" && \
                ./menuselect/menuselect \
                        --disable BUILD_NATIVE \
-                       --enable LOW_MEMORY \
+                       $(if $(CONFIG_ASTERISK13_LOW_MEMORY),--enable LOW_MEMORY) \
                        menuselect.makeopts
        $(MAKE) -C "$(PKG_BUILD_DIR)" \
                include/asterisk/version.h \
                        menuselect.makeopts
        $(MAKE) -C "$(PKG_BUILD_DIR)" \
                include/asterisk/version.h \