From 6e68dcdb97ca222876d6132673d4b775d681fdcf Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Sat, 13 Apr 2019 15:32:08 -0700 Subject: [PATCH] miniupnpc: Update to 2.1.20190408 Switched to CMake. This allows getting rid of several patches and hacks. Added PKG_LICENSE information Rearranged some stuff for consistency between packages. Added some linked flags for smaller size. Saves around 500 bytes on MIPS. Signed-off-by: Rosen Penev --- net/miniupnpc/Makefile | 24 ++++++++++--------- net/miniupnpc/patches/100-no-fPIC.patch | 15 ++++++++++++ .../patches/100-no_minixml_test.patch | 13 ---------- .../300-add-listdevices-to-cmake.patch | 21 ++++++++++++++++ 4 files changed, 49 insertions(+), 24 deletions(-) create mode 100644 net/miniupnpc/patches/100-no-fPIC.patch delete mode 100644 net/miniupnpc/patches/100-no_minixml_test.patch create mode 100644 net/miniupnpc/patches/300-add-listdevices-to-cmake.patch diff --git a/net/miniupnpc/Makefile b/net/miniupnpc/Makefile index 63e55ca9a..7e7fddab5 100644 --- a/net/miniupnpc/Makefile +++ b/net/miniupnpc/Makefile @@ -8,17 +8,21 @@ include $(TOPDIR)/rules.mk PKG_NAME:=miniupnpc -PKG_VERSION:=2.1 -PKG_RELEASE:=1 +PKG_VERSION:=2.1.20190408 +PKG_RELEASE:=2 -PKG_SOURCE_URL:=https://miniupnp.tuxfamily.org/files PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_HASH:=e19fb5e01ea5a707e2a8cb96f537fbd9f3a913d53d804a3265e3aeab3d2064c6 +PKG_SOURCE_URL:=https://miniupnp.tuxfamily.org/files +PKG_HASH:=a0c46bcf6065d6351a8fa6a0a18dc57d10a16908dbb470908fd2e423511514ec + PKG_MAINTAINER:=Steven Barth +PKG_LICENSE:=BSD-3c +PKG_LICENSE_FILES:=LICENSE PKG_INSTALL:=1 include $(INCLUDE_DIR)/package.mk +include $(INCLUDE_DIR)/cmake.mk define Package/miniupnpc/Default TITLE:=Lightweight UPnP @@ -41,10 +45,10 @@ define Package/libminiupnpc TITLE+= library endef -TARGET_CFLAGS += $(FPIC) +CMAKE_OPTIONS += -DUPNPC_BUILD_TESTS=OFF -MAKE_FLAGS += \ - OS="Linux" \ +TARGET_CFLAGS += $(FPIC) +TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include/miniupnpc @@ -59,15 +63,13 @@ endef define Package/miniupnpc/install $(INSTALL_DIR) $(1)/usr/bin - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/upnpc $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_BUILD_DIR)/upnpc-shared $(1)/usr/bin/upnpc $(INSTALL_BIN) $(PKG_BUILD_DIR)/listdevices $(1)/usr/bin/ endef define Package/libminiupnpc/install $(INSTALL_DIR) $(1)/usr/lib - $(INSTALL_BIN) \ - $(PKG_INSTALL_DIR)/usr/lib/libminiupnpc.so.* \ - $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libminiupnpc.so.* $(1)/usr/lib/ endef $(eval $(call BuildPackage,miniupnpc)) diff --git a/net/miniupnpc/patches/100-no-fPIC.patch b/net/miniupnpc/patches/100-no-fPIC.patch new file mode 100644 index 000000000..1e8b96487 --- /dev/null +++ b/net/miniupnpc/patches/100-no-fPIC.patch @@ -0,0 +1,15 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -38,12 +38,6 @@ if (CMAKE_SYSTEM_NAME STREQUAL "Darwin") + target_compile_definitions(miniupnpc-private INTERFACE _DARWIN_C_SOURCE) + endif () + +-# Set compiler specific build flags +-if (CMAKE_COMPILER_IS_GNUCC AND NOT CMAKE_SYSTEM_NAME STREQUAL "AmigaOS") +- set(CMAKE_POSITION_INDEPENDENT_CODE ON) +- target_compile_options(miniupnpc-private INTERFACE -Wall) +-endif () +- + # Suppress noise warnings + if (MSVC) + target_compile_definitions(miniupnpc-private INTERFACE _CRT_SECURE_NO_WARNINGS) diff --git a/net/miniupnpc/patches/100-no_minixml_test.patch b/net/miniupnpc/patches/100-no_minixml_test.patch deleted file mode 100644 index dd1d01649..000000000 --- a/net/miniupnpc/patches/100-no_minixml_test.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- a/Makefile -+++ b/Makefile -@@ -186,8 +186,8 @@ installpythonmodule3: pythonmodule3 - MAKE=$(MAKE) python3 setup.py install - - validateminixml: minixmlvalid -- @echo "minixml validation test" -- ./minixmlvalid -+ @echo "(skipping) minixml validation test" -+# ./minixmlvalid - touch $@ - - validateminiwget: testminiwget minihttptestserver testminiwget.sh diff --git a/net/miniupnpc/patches/300-add-listdevices-to-cmake.patch b/net/miniupnpc/patches/300-add-listdevices-to-cmake.patch new file mode 100644 index 000000000..e8d790058 --- /dev/null +++ b/net/miniupnpc/patches/300-add-listdevices-to-cmake.patch @@ -0,0 +1,21 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -66,6 +66,7 @@ set (MINIUPNPC_SOURCES + connecthostport.c + portlistingparse.c + receivedata.c ++ listdevices.c + connecthostport.h + igd_desc_parse.h + minisoap.h +@@ -142,6 +143,10 @@ if (UPNPC_BUILD_SHARED) + add_executable (upnpc-shared upnpc.c) + target_link_libraries (upnpc-shared PRIVATE libminiupnpc-shared) + target_include_directories(upnpc-shared PRIVATE ${CMAKE_CURRENT_BINARY_DIR}) ++ ++ add_executable (listdevices listdevices.c) ++ target_link_libraries (listdevices PRIVATE libminiupnpc-shared) ++ target_include_directories(listdevices PRIVATE ${CMAKE_CURRENT_BINARY_DIR}) + endif () + endif () +