From b3dff13a0778effa64d576befd32e3570a5a1dfe Mon Sep 17 00:00:00 2001 From: Sebastian Kemper Date: Sat, 17 Feb 2018 18:39:23 +0100 Subject: [PATCH 1/4] net/yate: Disable FORTIFY_SOURCE properly This reverts commit 4cc2afdcdc6891c5546e94e8a15bb9c96864acd6 which disabled FORTIFY_SOURCE by removing OpenWrt's CPPFLAGS from the built. Instead PKG_FORTIFY_SOURCE:=0 is defined, which is the proper way to do it. Signed-off-by: Sebastian Kemper --- net/yate/Makefile | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/net/yate/Makefile b/net/yate/Makefile index 738953c..ca92770 100644 --- a/net/yate/Makefile +++ b/net/yate/Makefile @@ -27,6 +27,9 @@ PKG_FIXUP:=autoreconf PKG_INSTALL:=1 +# Yate currently does not compile with FORTIFY_SOURCE enabled +PKG_FORTIFY_SOURCE:=0 + include $(INCLUDE_DIR)/uclibc++.mk include $(INCLUDE_DIR)/package.mk @@ -83,6 +86,9 @@ define Package/$(PKG_NAME)-collection-basic TITLE := Basic Yate Server endef +# Otherwise yate ignores CPPFLAGS +TARGET_CFLAGS += $(TARGET_CPPFLAGS) + CONFIGURE_ARGS+= \ $(if $(CONFIG_x86_64),--enable-sse2) \ --disable-sctp \ From b8b9818a13366e69eb769aeee973db18eecfcca8 Mon Sep 17 00:00:00 2001 From: Sebastian Kemper Date: Sun, 18 Feb 2018 10:04:18 +0100 Subject: [PATCH 2/4] net/yate: Remove uclibc++.mk include With this include libuClibc++.so.0 gets added as a lib depend, even on musl. readelf shows: Dynamic section at offset 0x10ea60 contains 23 entries: Tag Type Name/Value 0x0000000000000001 (NEEDED) Shared library: [libuClibc++.so.0] 0x0000000000000001 (NEEDED) Shared library: [libc.so] 0x0000000000000001 (NEEDED) Shared library: [libgcc_s.so.1] 0x000000000000000e (SONAME) Library soname: [libyate.so.6.0.0] Remove the include from the Makefile and add a depend on libstdcpp instead. Signed-off-by: Sebastian Kemper --- net/yate/Makefile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/net/yate/Makefile b/net/yate/Makefile index ca92770..72d898e 100644 --- a/net/yate/Makefile +++ b/net/yate/Makefile @@ -30,7 +30,6 @@ PKG_INSTALL:=1 # Yate currently does not compile with FORTIFY_SOURCE enabled PKG_FORTIFY_SOURCE:=0 -include $(INCLUDE_DIR)/uclibc++.mk include $(INCLUDE_DIR)/package.mk define Package/$(PKG_NAME)/Default @@ -42,7 +41,7 @@ endef define Package/$(PKG_NAME) $(call Package/yate/Default) - DEPENDS:=+libpthread $(CXX_DEPENDS) + DEPENDS:=+libpthread +libstdcpp TITLE:=Yet Another Telephony Engine MENU:=1 endef From 326df0e414a6f6440a4eac4a69f4ced7246f97ba Mon Sep 17 00:00:00 2001 From: Sebastian Kemper Date: Sun, 18 Feb 2018 10:07:16 +0100 Subject: [PATCH 3/4] net/yate: Disable RTTI Yate is the only package in OpenWrt which manually enables RTTI (run-time type information). There's no explanation in the Makefile as to why that would be needed or advisable. Remove it. Signed-off-by: Sebastian Kemper --- net/yate/Makefile | 1 - 1 file changed, 1 deletion(-) diff --git a/net/yate/Makefile b/net/yate/Makefile index 72d898e..b89e899 100644 --- a/net/yate/Makefile +++ b/net/yate/Makefile @@ -98,7 +98,6 @@ CONFIGURE_ARGS+= \ --disable-wanpipe \ --enable-ilbc \ $(if $(CONFIG_PACKAGE_$(PKG_NAME)-mod-ilbcwebrtc),--enable-ilbc-webrtc,--disable-ilbc-webrtc) \ - --enable-rtti \ $(if $(CONFIG_PACKAGE_$(PKG_NAME)-mod-pgsqldb),--with-libpq="$(STAGING_DIR)/usr",--without-libpq) \ $(if $(CONFIG_PACKAGE_$(PKG_NAME)-mod-mysqldb),--with-mysql="$(STAGING_DIR)/usr",--without-mysql) \ --without-wphwec \ From 91e90c7f9b4be6755ea7522efcbb77530d7ad697 Mon Sep 17 00:00:00 2001 From: Sebastian Kemper Date: Sun, 18 Feb 2018 10:11:26 +0100 Subject: [PATCH 4/4] net/yate: Add some plugins Add some plugins which are built by default anyway. Signed-off-by: Sebastian Kemper --- net/yate/Makefile | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/net/yate/Makefile b/net/yate/Makefile index b89e899..0ad7319 100644 --- a/net/yate/Makefile +++ b/net/yate/Makefile @@ -12,7 +12,7 @@ RELEASEVER:=6.0.0 PKG_NAME:=yate PKG_VERSION:=$(RELEASEVER)-1 -PKG_RELEASE:=3 +PKG_RELEASE:=4 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://yate.null.ro/tarballs/yate6/ @@ -213,6 +213,7 @@ $(eval $(call BuildPlugin,cache,server,CNAM and LNP memory caches,,,y)) $(eval $(call BuildPlugin,callcounters,server,Count Active Call Legs,,,y)) $(eval $(call BuildPlugin,callfork,,Call Forker,,,y)) $(eval $(call BuildPlugin,callgen,,Call Generator,)) +$(eval $(call BuildPlugin,camel_map,sig,MAP/CAMEL TCAP <-> XML translators,,,y)) $(eval $(call BuildPlugin,ccongestion,server,Accept Status from Installed Engine Monitors,,,y)) $(eval $(call BuildPlugin,cdrbuild,,Call Detail Record Builder,,,y)) $(eval $(call BuildPlugin,cdrcombine,,Call Detail Records per call instead of per call leg,)) @@ -228,6 +229,7 @@ $(eval $(call BuildPlugin,enumroute,,ENUM Routing,,,y)) $(eval $(call BuildPlugin,eventlogs,server,Write events and alarms to log files,,,y)) $(eval $(call BuildPlugin,extmodule,,External Module Handler,,/usr/share/yate/scripts/echo.sh,y)) $(eval $(call BuildPlugin,faxchan,,Spandsp Fax Channel,+libspandsp)) +$(eval $(call BuildPlugin,fileinfo,,File Info Holder,,,y)) $(eval $(call BuildPlugin,filetransfer,,File Transfer Driver,,,y)) $(eval $(call BuildPlugin,gvoice,,Google Voice support,,,y)) $(eval $(call BuildPlugin,heartbeat,server,Linux-HA compatible heartbeat,,,y)) @@ -264,6 +266,8 @@ $(eval $(call BuildPlugin,rmanager,,Yate Remote Management,,,y)) $(eval $(call BuildPlugin,sigtransport,server,SIGTRAN (SS7 over IP) connection provider,,,y)) $(eval $(call BuildPlugin,sip_cnam_lnp,sip,Query CNAM and LNP databases using SIP INVITE,,,y)) $(eval $(call BuildPlugin,sipfeatures,server,SIP Features (SUBSCRIBE/NOTIFY),,,y)) +$(eval $(call BuildPlugin,sqlitedb,server,SQLite Support,+libsqlite3,,y)) +$(eval $(call BuildPlugin,ss7_lnp_ansi,sig,Query LNP Databases,,,y)) $(eval $(call BuildPlugin,subscription,server,Subcription handler and presence notifier,,,y)) $(eval $(call BuildPlugin,tdmcard,server,TDM Cards Signalling and Data Driver,@BROKEN)) # Missing TDM libraries $(eval $(call BuildPlugin,tonedetect,,Detectors for Various Tones,))