From 473e3d124679431b64145e7d07d5167a7000d867 Mon Sep 17 00:00:00 2001 From: Sebastian Kemper Date: Wed, 9 Aug 2017 22:09:27 +0200 Subject: [PATCH 1/7] chan-sccp-b: fix variant build, misc fixes - Set PKG_BUILD_DIR for each variant. Without it only one variant gets built and put into both packages. - Add libiconv to build deps. Some iconv m4 files are required. Possibly fixes issue #121. - Replace recently added configure args with the ones suggested by upstream @dkgroot in issue #167. This again shaves some bytes off the package. Signed-off-by: Sebastian Kemper --- net/chan-sccp-b/Makefile | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/net/chan-sccp-b/Makefile b/net/chan-sccp-b/Makefile index e78e64a..31a4a14 100644 --- a/net/chan-sccp-b/Makefile +++ b/net/chan-sccp-b/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2016 OpenWrt.org +# Copyright (C) 2016 - 2017 OpenWrt.org # Copyright (C) 2016 Cesnet, z.s.p.o. # # This is free software, licensed under the GNU General Public License v2. @@ -11,7 +11,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=chan-sccp-b PKG_REV:=6728 PKG_VERSION:=v4.2.3-r$(PKG_REV) -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://svn.code.sf.net/p/chan-sccp-b/code/branches/v4.2 @@ -27,6 +27,8 @@ PKG_MAINTAINER:=Jiri Slachta PKG_INSTALL:=1 +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) + include $(INCLUDE_DIR)/package.mk define Package/chan-sccp-b/Default @@ -35,7 +37,8 @@ define Package/chan-sccp-b/Default CATEGORY:=Network TITLE:=SCCP channel provider support URL:=http://chan-sccp-b.sourceforge.net/ - DEPENDS:= +libltdl + DEPENDS:=+libltdl + PKG_BUILD_DEPENDS:=libiconv endef define Package/asterisk13-chan-sccp-b @@ -61,8 +64,8 @@ Package/asterisk11-chan-sccp-b/description = $(Package/description/Default) Package/asterisk13-chan-sccp-b/description = $(Package/description/Default) CONFIGURE_ARGS += \ - --enable-debug=no \ - --enable-optimization=no \ + --enable-static \ + --enable-section-relocation \ --enable-conference \ --enable-advanced-functions \ --enable-video From a4513b7bd91e8ecd447d94b63f3f52a05f9e5f61 Mon Sep 17 00:00:00 2001 From: Sebastian Kemper Date: Wed, 9 Aug 2017 22:11:23 +0200 Subject: [PATCH 2/7] asterisk-g72x: fix variant build Set PKG_BUILD_DIR for each variant. Without it only one variant gets built and put into both packages. This fixes issue #150. Signed-off-by: Sebastian Kemper --- net/asterisk-g72x/Makefile | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/net/asterisk-g72x/Makefile b/net/asterisk-g72x/Makefile index a5fd2ac..67c7ddb 100644 --- a/net/asterisk-g72x/Makefile +++ b/net/asterisk-g72x/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=asterisk-g72x PKG_VERSION:=1.4.1 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=asterisk-g72x-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://asterisk.hosting.lv/src/ @@ -23,6 +23,8 @@ PKG_LICENSE:=GPL-3.0 PKG_LICENSE_FILES:=README.md PKG_MAINTAINER:=Alex Samorukov +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) + include $(INCLUDE_DIR)/package.mk define Package/asterisk-g72x/Default From d8469c8750ec9a2b48da1219b52b975c86f8df67 Mon Sep 17 00:00:00 2001 From: Sebastian Kemper Date: Wed, 9 Aug 2017 22:17:15 +0200 Subject: [PATCH 3/7] pjproject: sort configure args, remove duplicates This commit is only meant to make the following commits easier to follow. Signed-off-by: Sebastian Kemper --- libs/pjproject/Makefile | 36 ++++++++++++++++-------------------- 1 file changed, 16 insertions(+), 20 deletions(-) diff --git a/libs/pjproject/Makefile b/libs/pjproject/Makefile index 34eb867..64682fa 100644 --- a/libs/pjproject/Makefile +++ b/libs/pjproject/Makefile @@ -55,37 +55,33 @@ $(call Package/pjproject/install/lib,$$(1),$2) endef CONFIGURE_ARGS += \ - --enable-shared \ + --disable-ffmpeg \ --disable-floating-point \ - --enable-g711-codec \ - --disable-l16-codec \ + --disable-g711-codec \ --disable-g722-codec \ --disable-g7221-codec \ --disable-gsm-codec \ + --disable-ilbc-codec \ --disable-ilbc-coder \ --disable-ipp \ - --disable-ssl \ - --disable-oss \ - --disable-sound \ + --disable-l16-codec \ + --disable-large-filter \ --disable-libwebrtc \ --disable-libyuv \ - --with-external-srtp="$(STAGING_DIR)/usr" \ - --without-external-gsm \ - --disable-small-filter \ - --disable-large-filter \ - --disable-speex-aec \ - --disable-g711-codec \ - --disable-l16-codec \ - --disable-gsm-codec \ - --disable-g722-codec \ - --disable-g7221-codec \ - --disable-speex-codec \ - --disable-ilbc-codec \ --disable-opus \ + --disable-oss \ --disable-resample-dll \ --disable-sdl \ - --disable-ffmpeg \ - --disable-v4l2 + --disable-small-filter \ + --disable-sound \ + --disable-speex-aec \ + --disable-speex-codec \ + --disable-ssl \ + --disable-v4l2 \ + --enable-g711-codec \ + --enable-shared \ + --with-external-srtp="$(STAGING_DIR)/usr" \ + --without-external-gsm TARGET_LDFLAGS+=-lc $(LIBGCC) -lm TARGET_CFLAGS+=$(EXTRA_CFLAGS) $(TARGET_CPPFLAGS) $(EXTRA_CPPFLAGS) From ae177a2f5f7799bfe47d2a40fafc279884d3aeef Mon Sep 17 00:00:00 2001 From: Sebastian Kemper Date: Wed, 9 Aug 2017 22:45:32 +0200 Subject: [PATCH 4/7] pjproject: align with Asterisk requirements, misc improvements - Make "--disable-floating-point" depend on SOFT_FLOAT - Remove "--disable-ilbc-coder" as configure no longer recognizes it. - Align args with the ones used by Asterisk (for their bundled pjproject); this includes adding "--disable-resample". - With libresample removed remove the dep from asterisk13 accordingly. - Note: the disabled items are _not_ used by Asterisk anyway. - Drop speex dep as pjproject does not link against it the way it is configured. Signed-off-by: Sebastian Kemper --- libs/pjproject/Makefile | 32 +++++++++++++++++--------------- net/asterisk-13.x/Makefile | 2 +- 2 files changed, 18 insertions(+), 16 deletions(-) diff --git a/libs/pjproject/Makefile b/libs/pjproject/Makefile index 64682fa..bafb468 100644 --- a/libs/pjproject/Makefile +++ b/libs/pjproject/Makefile @@ -55,33 +55,36 @@ $(call Package/pjproject/install/lib,$$(1),$2) endef CONFIGURE_ARGS += \ + $(if $(CONFIG_SOFT_FLOAT),--disable-floating-point) \ + --disable-ext-sound \ --disable-ffmpeg \ - --disable-floating-point \ --disable-g711-codec \ --disable-g722-codec \ --disable-g7221-codec \ --disable-gsm-codec \ --disable-ilbc-codec \ - --disable-ilbc-coder \ --disable-ipp \ --disable-l16-codec \ - --disable-large-filter \ --disable-libwebrtc \ --disable-libyuv \ + --disable-opencore-amr \ + --disable-openh264 \ --disable-opus \ --disable-oss \ - --disable-resample-dll \ + --disable-resample \ --disable-sdl \ - --disable-small-filter \ + --disable-silk \ --disable-sound \ --disable-speex-aec \ --disable-speex-codec \ --disable-ssl \ --disable-v4l2 \ - --enable-g711-codec \ + --disable-video \ --enable-shared \ --with-external-srtp="$(STAGING_DIR)/usr" \ - --without-external-gsm + --without-external-gsm \ + --without-external-pa \ + --without-external-webrtc TARGET_LDFLAGS+=-lc $(LIBGCC) -lm TARGET_CFLAGS+=$(EXTRA_CFLAGS) $(TARGET_CPPFLAGS) $(EXTRA_CPPFLAGS) @@ -92,7 +95,7 @@ endef PJPROJECT_LIBS = \ libpj libpjlib-util libpjmedia libpjnath libpjsip-simple \ - libpjsip-ua libpjsip libpjsua libpjsua2 libresample + libpjsip-ua libpjsip libpjsua libpjsua2 define Build/InstallDev $(INSTALL_DIR) $(1)/usr/{include,lib} @@ -106,11 +109,10 @@ endef $(eval $(call PJSIPpackage,libpj,libpj,+librt)) $(eval $(call PJSIPpackage,libpjlib-util,libpjlib-util,+libpj +librt)) -$(eval $(call PJSIPpackage,libpjmedia,libpjmedia*,+libpj +libpjlib-util +libpjnath +libresample +librt +libspeex +libsrtp)) +$(eval $(call PJSIPpackage,libpjmedia,libpjmedia*,+libpj +libpjlib-util +libpjnath +librt +libsrtp)) $(eval $(call PJSIPpackage,libpjnath,libpjnath,+libpj +libpjlib-util +librt)) -$(eval $(call PJSIPpackage,libpjsip-simple,libpjsip-simple,+libpj +libpjlib-util +libpjsip +libresample +librt +libspeex +libsrtp)) -$(eval $(call PJSIPpackage,libpjsip-ua,libpjsip-ua,+libpj +libpjlib-util +libpjmedia +libpjsip-simple +libpjsip +libresample +librt +libspeex +libsrtp)) -$(eval $(call PJSIPpackage,libpjsip,libpjsip,+libpj +libpjlib-util +libresample +librt +libspeex +libsrtp)) -$(eval $(call PJSIPpackage,libpjsua,libpjsua,+libpj +libpjlib-util +libpjmedia +libpjnath +libpjsip-simple +libpjsip-ua +libpjsip +libresample +librt +libspeex +libsrtp)) -$(eval $(call PJSIPpackage,libpjsua2,libpjsua2,+libpj +libpjlib-util +libpjmedia +libpjnath +libpjsip-simple +libpjsip-ua +libpjsip +libresample +librt +libspeex +libsrtp +libpjsua)) -$(eval $(call PJSIPpackage,libresample,libresample,)) +$(eval $(call PJSIPpackage,libpjsip-simple,libpjsip-simple,+libpj +libpjlib-util +libpjsip +librt +libsrtp)) +$(eval $(call PJSIPpackage,libpjsip-ua,libpjsip-ua,+libpj +libpjlib-util +libpjmedia +libpjsip-simple +libpjsip +librt +libsrtp)) +$(eval $(call PJSIPpackage,libpjsip,libpjsip,+libpj +libpjlib-util +librt +libsrtp)) +$(eval $(call PJSIPpackage,libpjsua,libpjsua,+libpj +libpjlib-util +libpjmedia +libpjnath +libpjsip-simple +libpjsip-ua +libpjsip +librt +libsrtp)) +$(eval $(call PJSIPpackage,libpjsua2,libpjsua2,+libpj +libpjlib-util +libpjmedia +libpjnath +libpjsip-simple +libpjsip-ua +libpjsip +librt +libsrtp +libpjsua)) diff --git a/net/asterisk-13.x/Makefile b/net/asterisk-13.x/Makefile index 49e0718..dec833d 100644 --- a/net/asterisk-13.x/Makefile +++ b/net/asterisk-13.x/Makefile @@ -424,7 +424,7 @@ $(eval $(call BuildAsterisk13Module,res-monitor,Provide Monitor,Cryptographic Si $(eval $(call BuildAsterisk13Module,res-musiconhold,MOH,Music On Hold support,,musiconhold.conf,res_musiconhold,,)) $(eval $(call BuildAsterisk13Module,res-parking,Phone Parking,Phone Parking application,,res_parking.conf,res_parking,,)) $(eval $(call BuildAsterisk13Module,res-phoneprov,Phone Provisioning,Phone provisioning application for the asterisk internal http server,,phoneprov.conf,res_phoneprov,,)) -$(eval $(call BuildAsterisk13Module,res-pjproject,Bridge PJPROJECT to Asterisk logging,,+libpj +libpjlib-util +libpjmedia +libpjmedia +libpjnath +libpjsip-simple +libpjsip-ua +libpjsip +libpjsua +libpjsua2 +libresample +libsrtp,pjproject.conf,res_pjproject,,)) +$(eval $(call BuildAsterisk13Module,res-pjproject,Bridge PJPROJECT to Asterisk logging,,+libpj +libpjlib-util +libpjmedia +libpjmedia +libpjnath +libpjsip-simple +libpjsip-ua +libpjsip +libpjsua +libpjsua2 +libsrtp,pjproject.conf,res_pjproject,,)) $(eval $(call BuildAsterisk13Module,res-realtime,RealTime CLI,RealTime CLI,,,res_realtime,,)) $(eval $(call BuildAsterisk13Module,res-rtp-asterisk,RTP stack,Supports RTP and RTCP with Symmetric RTP support for NAT traversal,+libpjsip +libpjmedia +libpjnath +libpjsip-simple +libpjsip-ua +libpjsua +libpjsua2,rtp.conf,res_rtp_asterisk,,)) $(eval $(call BuildAsterisk13Module,res-rtp-multicast,RTP multicast engine,Multicast RTP Engine,,,res_rtp_multicast,,)) From 29cb5debb3ed0d6a3ac9cc51667e383a469eb679 Mon Sep 17 00:00:00 2001 From: Sebastian Kemper Date: Wed, 9 Aug 2017 22:48:08 +0200 Subject: [PATCH 5/7] pjproject: enable ssl support Enable SSL support as Asterisk relies on it. Some Asterisk modules cannot load without it. Signed-off-by: Sebastian Kemper --- libs/pjproject/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libs/pjproject/Makefile b/libs/pjproject/Makefile index bafb468..4d9764f 100644 --- a/libs/pjproject/Makefile +++ b/libs/pjproject/Makefile @@ -32,7 +32,7 @@ define Package/pjproject/Default CATEGORY:=Libraries SUBMENU:=Telephony URL:=http://www.pjsip.org/ - DEPENDS:=+libuuid +libstdcpp +libpthread + DEPENDS:=+libopenssl +libuuid +libstdcpp +libpthread endef define Package/pjproject/install/lib @@ -77,11 +77,11 @@ CONFIGURE_ARGS += \ --disable-sound \ --disable-speex-aec \ --disable-speex-codec \ - --disable-ssl \ --disable-v4l2 \ --disable-video \ --enable-shared \ --with-external-srtp="$(STAGING_DIR)/usr" \ + --with-ssl="$(STAGING_DIR)/usr" \ --without-external-gsm \ --without-external-pa \ --without-external-webrtc From 45e0c6a7211c58ce8f7e80a33fbf868197322d4b Mon Sep 17 00:00:00 2001 From: Sebastian Kemper Date: Wed, 9 Aug 2017 22:52:22 +0200 Subject: [PATCH 6/7] pjproject: add config_site.h Copied from Asterisk, sets some sane values. For instance it enables IPv6 support. Also it disables DEBUG. With debug enabled 'pjproject enables "assert" functions which can cause Asterisk to crash unexpectedly' (quote from Asterisk wiki). This probably fixes issue #140. With this config_site.h in place the libsrtp dep can be dropped from select sub packages. Signed-off-by: Sebastian Kemper --- libs/pjproject/Makefile | 10 +-- libs/pjproject/patches/150-config_site.patch | 95 ++++++++++++++++++++ 2 files changed, 100 insertions(+), 5 deletions(-) create mode 100644 libs/pjproject/patches/150-config_site.patch diff --git a/libs/pjproject/Makefile b/libs/pjproject/Makefile index 4d9764f..0d2a299 100644 --- a/libs/pjproject/Makefile +++ b/libs/pjproject/Makefile @@ -11,7 +11,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=pjproject PKG_VERSION:=2.6 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=pjproject-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://www.pjsip.org/release/$(PKG_VERSION)/ @@ -111,8 +111,8 @@ $(eval $(call PJSIPpackage,libpj,libpj,+librt)) $(eval $(call PJSIPpackage,libpjlib-util,libpjlib-util,+libpj +librt)) $(eval $(call PJSIPpackage,libpjmedia,libpjmedia*,+libpj +libpjlib-util +libpjnath +librt +libsrtp)) $(eval $(call PJSIPpackage,libpjnath,libpjnath,+libpj +libpjlib-util +librt)) -$(eval $(call PJSIPpackage,libpjsip-simple,libpjsip-simple,+libpj +libpjlib-util +libpjsip +librt +libsrtp)) -$(eval $(call PJSIPpackage,libpjsip-ua,libpjsip-ua,+libpj +libpjlib-util +libpjmedia +libpjsip-simple +libpjsip +librt +libsrtp)) +$(eval $(call PJSIPpackage,libpjsip-simple,libpjsip-simple,+libpj +libpjlib-util +libpjsip +librt)) +$(eval $(call PJSIPpackage,libpjsip-ua,libpjsip-ua,+libpj +libpjlib-util +libpjmedia +libpjsip-simple +libpjsip +librt)) $(eval $(call PJSIPpackage,libpjsip,libpjsip,+libpj +libpjlib-util +librt +libsrtp)) -$(eval $(call PJSIPpackage,libpjsua,libpjsua,+libpj +libpjlib-util +libpjmedia +libpjnath +libpjsip-simple +libpjsip-ua +libpjsip +librt +libsrtp)) -$(eval $(call PJSIPpackage,libpjsua2,libpjsua2,+libpj +libpjlib-util +libpjmedia +libpjnath +libpjsip-simple +libpjsip-ua +libpjsip +librt +libsrtp +libpjsua)) +$(eval $(call PJSIPpackage,libpjsua,libpjsua,+libpj +libpjlib-util +libpjmedia +libpjnath +libpjsip-simple +libpjsip-ua +libpjsip +librt)) +$(eval $(call PJSIPpackage,libpjsua2,libpjsua2,+libpj +libpjlib-util +libpjmedia +libpjnath +libpjsip-simple +libpjsip-ua +libpjsip +librt +libpjsua)) diff --git a/libs/pjproject/patches/150-config_site.patch b/libs/pjproject/patches/150-config_site.patch new file mode 100644 index 0000000..5805137 --- /dev/null +++ b/libs/pjproject/patches/150-config_site.patch @@ -0,0 +1,95 @@ +--- /dev/null ++++ b/pjlib/include/pj/config_site.h +@@ -0,0 +1,92 @@ ++/* ++ * Asterisk config_site.h ++ */ ++ ++#include ++ ++/* ++ * Since both pjproject and asterisk source files will include config_site.h, ++ * we need to make sure that only pjproject source files include asterisk_malloc_debug.h. ++ */ ++ ++/* #if defined(MALLOC_DEBUG) && !defined(_ASTERISK_ASTMM_H) ++ * #include "asterisk_malloc_debug.h" ++ * #endif ++ */ ++ ++/* ++ * Defining PJMEDIA_HAS_SRTP to 0 does NOT disable Asterisk's ability to use srtp. ++ * It only disables the pjmedia srtp transport which Asterisk doesn't use. ++ * The reason for the disable is that while Asterisk works fine with older libsrtp ++ * versions, newer versions of pjproject won't compile with them. ++ */ ++ ++/* ++ * This doesn't disable SRTP completely, so we have to keep using the external ++ * libsrtp, otherwise pjsip would just build the internal one. ++ */ ++ ++#define PJMEDIA_HAS_SRTP 0 ++ ++/* ++ * Defining PJMEDIA_HAS_WEBRTC_AEC to 0 does NOT disable Asterisk's ability to use ++ * webrtc. It only disables the pjmedia webrtc transport which Asterisk doesn't use. ++ */ ++#define PJMEDIA_HAS_WEBRTC_AEC 0 ++ ++#define PJ_HAS_IPV6 1 ++#define NDEBUG 1 ++#define PJ_MAX_HOSTNAME (256) ++#define PJSIP_MAX_URL_SIZE (512) ++#ifdef PJ_HAS_LINUX_EPOLL ++#define PJ_IOQUEUE_MAX_HANDLES (5000) ++#else ++#define PJ_IOQUEUE_MAX_HANDLES (FD_SETSIZE) ++#endif ++#define PJ_IOQUEUE_HAS_SAFE_UNREG 1 ++#define PJ_IOQUEUE_MAX_EVENTS_IN_SINGLE_POLL (16) ++ ++#define PJ_SCANNER_USE_BITWISE 0 ++#define PJ_OS_HAS_CHECK_STACK 0 ++ ++#ifndef PJ_LOG_MAX_LEVEL ++#define PJ_LOG_MAX_LEVEL 6 ++#endif ++ ++#define PJ_ENABLE_EXTRA_CHECK 1 ++#define PJSIP_MAX_TSX_COUNT ((64*1024)-1) ++#define PJSIP_MAX_DIALOG_COUNT ((64*1024)-1) ++#define PJSIP_UDP_SO_SNDBUF_SIZE (512*1024) ++#define PJSIP_UDP_SO_RCVBUF_SIZE (512*1024) ++#define PJ_DEBUG 0 ++#define PJSIP_SAFE_MODULE 0 ++#define PJ_HAS_STRICMP_ALNUM 0 ++ ++/* ++ * Do not ever enable PJ_HASH_USE_OWN_TOLOWER because the algorithm is ++ * inconsistently used when calculating the hash value and doesn't ++ * convert the same characters as pj_tolower()/tolower(). Thus you ++ * can get different hash values if the string hashed has certain ++ * characters in it. (ASCII '@', '[', '\\', ']', '^', and '_') ++ */ ++#undef PJ_HASH_USE_OWN_TOLOWER ++ ++/* ++ It is imperative that PJSIP_UNESCAPE_IN_PLACE remain 0 or undefined. ++ Enabling it will result in SEGFAULTS when URIs containing escape sequences are encountered. ++*/ ++#undef PJSIP_UNESCAPE_IN_PLACE ++#define PJSIP_MAX_PKT_LEN 6000 ++ ++#undef PJ_TODO ++#define PJ_TODO(x) ++ ++/* Defaults too low for WebRTC */ ++#define PJ_ICE_MAX_CAND 32 ++#define PJ_ICE_MAX_CHECKS (PJ_ICE_MAX_CAND * PJ_ICE_MAX_CAND) ++ ++/* Increase limits to allow more formats */ ++#define PJMEDIA_MAX_SDP_FMT 64 ++#define PJMEDIA_MAX_SDP_BANDW 4 ++#define PJMEDIA_MAX_SDP_ATTR (PJMEDIA_MAX_SDP_FMT*2 + 4) ++#define PJMEDIA_MAX_SDP_MEDIA 16 From 08fd9340ffda0165198b5de312faa22413a8bfaf Mon Sep 17 00:00:00 2001 From: Sebastian Kemper Date: Wed, 9 Aug 2017 23:04:16 +0200 Subject: [PATCH 7/7] asterisk-13.x: fix missing symbols issue - add some pjsip modules that were missing. - sort pjsip modules alphabetically. - add a patch from ASTERISK-26518 to fix the unresolved symbol issue. The patch is also included in Debian. The patch fixes issue #77 (the problem was also mentioned in #88). Signed-off-by: Sebastian Kemper --- net/asterisk-13.x/Makefile | 5 ++-- .../patches/054-pjsip_unresolved_symbol.patch | 25 +++++++++++++++++++ 2 files changed, 28 insertions(+), 2 deletions(-) create mode 100644 net/asterisk-13.x/patches/054-pjsip_unresolved_symbol.patch diff --git a/net/asterisk-13.x/Makefile b/net/asterisk-13.x/Makefile index dec833d..a4b0cf6 100644 --- a/net/asterisk-13.x/Makefile +++ b/net/asterisk-13.x/Makefile @@ -11,7 +11,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=asterisk13 PKG_VERSION:=13.17.0 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=asterisk-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://downloads.asterisk.org/pub/telephony/asterisk/releases/ @@ -408,7 +408,7 @@ $(eval $(call BuildAsterisk13Module,pbx-dundi,Dundi,provides Dundi Lookup servic $(eval $(call BuildAsterisk13Module,pbx-realtime,Realtime Switch,realtime switch support,,,pbx_realtime,,)) $(eval $(call BuildAsterisk13Module,pbx-spool,Call Spool,outgoing call spool support,,,pbx_spool,,)) $(eval $(call BuildAsterisk13Module,pgsql,PostgreSQL,PostgreSQL support,+libpq @!arc,cel_pgsql.conf cdr_pgsql.conf res_pgsql.conf,cel_pgsql cdr_pgsql res_config_pgsql,,)) -$(eval $(call BuildAsterisk13Module,pjsip,pjsip channel,the channel pjsip,+asterisk13-res-sorcery +asterisk13-res-pjproject +libpjsip +libpjmedia +libpjnath +libpjsip-simple +libpjsip-ua +libpjsua +libpjsua2,pjsip.conf pjsip_notify.conf,func_pjsip_endpoint chan_pjsip res_pjsip_acl res_pjsip_authenticator_digest res_pjsip_caller_id res_pjsip_dialog_info_body_generator res_pjsip_diversion res_pjsip_dtmf_info res_pjsip_endpoint_identifier_anonymous res_pjsip_endpoint_identifier_ip res_pjsip_endpoint_identifier_user res_pjsip_exten_state res_pjsip_header_funcs res_pjsip_log_forwarder res_pjsip_logger res_pjsip_messaging res_pjsip_multihomed res_pjsip_mwi_body_generator res_pjsip_mwi res_pjsip_nat res_pjsip_notify res_pjsip_one_touch_record_info res_pjsip_outbound_authenticator_digest res_pjsip_outbound_publish res_pjsip_outbound_registration res_pjsip_path res_pjsip_pidf_body_generator res_pjsip_pidf_digium_body_supplement res_pjsip_pidf_eyebeam_body_supplement res_pjsip_publish_asterisk res_pjsip_pubsub res_pjsip_refer res_pjsip_registrar_expire res_pjsip_registrar res_pjsip_rfc3326 res_pjsip_sdp_rtp res_pjsip_send_to_voicemail res_pjsip_session res_pjsip res_pjsip_transport_websocket res_pjsip_t38 res_pjsip_xpidf_body_generator,,)) +$(eval $(call BuildAsterisk13Module,pjsip,pjsip channel,the channel pjsip,+asterisk13-res-sorcery +asterisk13-res-pjproject +libpjsip +libpjmedia +libpjnath +libpjsip-simple +libpjsip-ua +libpjsua +libpjsua2,pjsip.conf pjsip_notify.conf,chan_pjsip func_pjsip_aor func_pjsip_contact func_pjsip_endpoint res_pjsip res_pjsip_acl res_pjsip_authenticator_digest res_pjsip_caller_id res_pjsip_config_wizard res_pjsip_dialog_info_body_generator res_pjsip_diversion res_pjsip_dlg_options res_pjsip_dtmf_info res_pjsip_empty_info res_pjsip_endpoint_identifier_anonymous res_pjsip_endpoint_identifier_ip res_pjsip_endpoint_identifier_user res_pjsip_exten_state res_pjsip_header_funcs res_pjsip_history res_pjsip_log_forwarder res_pjsip_logger res_pjsip_messaging res_pjsip_multihomed res_pjsip_mwi res_pjsip_mwi_body_generator res_pjsip_nat res_pjsip_notify res_pjsip_one_touch_record_info res_pjsip_outbound_authenticator_digest res_pjsip_outbound_publish res_pjsip_outbound_registration res_pjsip_path res_pjsip_pidf_body_generator res_pjsip_pidf_digium_body_supplement res_pjsip_pidf_eyebeam_body_supplement res_pjsip_publish_asterisk res_pjsip_pubsub res_pjsip_refer res_pjsip_registrar res_pjsip_registrar_expire res_pjsip_rfc3326 res_pjsip_sdp_rtp res_pjsip_send_to_voicemail res_pjsip_session res_pjsip_sips_contact res_pjsip_t38 res_pjsip_transport_management res_pjsip_transport_websocket res_pjsip_xpidf_body_generator,,)) $(eval $(call BuildAsterisk13Module,res-adsi,Provide ADSI,Analog Display Services Interface capability,,,res_adsi,,)) $(eval $(call BuildAsterisk13Module,res-ael-share,Shareable AEL code,support for shareable AEL code mainly between internal and external modules,,,res_ael_share,,)) $(eval $(call BuildAsterisk13Module,res-agi,Asterisk Gateway Interface,Support for the Asterisk Gateway Interface extension,+asterisk13-res-speech,,res_agi,,)) @@ -424,6 +424,7 @@ $(eval $(call BuildAsterisk13Module,res-monitor,Provide Monitor,Cryptographic Si $(eval $(call BuildAsterisk13Module,res-musiconhold,MOH,Music On Hold support,,musiconhold.conf,res_musiconhold,,)) $(eval $(call BuildAsterisk13Module,res-parking,Phone Parking,Phone Parking application,,res_parking.conf,res_parking,,)) $(eval $(call BuildAsterisk13Module,res-phoneprov,Phone Provisioning,Phone provisioning application for the asterisk internal http server,,phoneprov.conf,res_phoneprov,,)) +$(eval $(call BuildAsterisk13Module,res-pjsip-phoneprov,PJSIP Phone Provisioning,PJSIP Phone Provisioning,+asterisk13-pjsip +asterisk13-res-phoneprov,,res_pjsip_phoneprov_provider,,)) $(eval $(call BuildAsterisk13Module,res-pjproject,Bridge PJPROJECT to Asterisk logging,,+libpj +libpjlib-util +libpjmedia +libpjmedia +libpjnath +libpjsip-simple +libpjsip-ua +libpjsip +libpjsua +libpjsua2 +libsrtp,pjproject.conf,res_pjproject,,)) $(eval $(call BuildAsterisk13Module,res-realtime,RealTime CLI,RealTime CLI,,,res_realtime,,)) $(eval $(call BuildAsterisk13Module,res-rtp-asterisk,RTP stack,Supports RTP and RTCP with Symmetric RTP support for NAT traversal,+libpjsip +libpjmedia +libpjnath +libpjsip-simple +libpjsip-ua +libpjsua +libpjsua2,rtp.conf,res_rtp_asterisk,,)) diff --git a/net/asterisk-13.x/patches/054-pjsip_unresolved_symbol.patch b/net/asterisk-13.x/patches/054-pjsip_unresolved_symbol.patch new file mode 100644 index 0000000..5708c00 --- /dev/null +++ b/net/asterisk-13.x/patches/054-pjsip_unresolved_symbol.patch @@ -0,0 +1,25 @@ +Description: Fix unresolved symbol ast_sip_session_unregister_supplement in PJSIP +Origin: other, https://issues.asterisk.org/jira/secure/attachment/54695/ast.diff +Bug: https://issues.asterisk.org/jira/browse/ASTERISK-26518 + +--- a/res/res_pjsip/pjsip_message_ip_updater.c ++++ b/res/res_pjsip/pjsip_message_ip_updater.c +@@ -362,15 +362,15 @@ void ast_res_pjsip_cleanup_message_ip_up + { + ast_sip_unregister_service(&multihomed_module); + ast_sip_unregister_supplement(&multihomed_supplement); +- ast_sip_session_unregister_supplement(&multihomed_session_supplement); ++ //ast_sip_session_unregister_supplement(&multihomed_session_supplement); + } + + int ast_res_pjsip_init_message_ip_updater(void) + { +- if (ast_sip_session_register_supplement(&multihomed_session_supplement)) { ++ /*if (ast_sip_session_register_supplement(&multihomed_session_supplement)) { + ast_log(LOG_ERROR, "Could not register multihomed session supplement for outgoing requests\n"); + return -1; +- } ++ }*/ + + if (ast_sip_register_supplement(&multihomed_supplement)) { + ast_log(LOG_ERROR, "Could not register multihomed supplement for outgoing requests\n");