miniupnpc: Update to 2.1.20190408 8703/head
authorRosen Penev <rosenp@gmail.com>
Sat, 13 Apr 2019 22:32:08 +0000 (15:32 -0700)
committerRosen Penev <rosenp@gmail.com>
Wed, 17 Apr 2019 18:29:08 +0000 (11:29 -0700)
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 <rosenp@gmail.com>
net/miniupnpc/Makefile
net/miniupnpc/patches/100-no-fPIC.patch [new file with mode: 0644]
net/miniupnpc/patches/100-no_minixml_test.patch [deleted file]
net/miniupnpc/patches/300-add-listdevices-to-cmake.patch [new file with mode: 0644]

index 63e55ca9ad4d0cb65f1f0031d274e5dbdfbf1132..7e7fddab5dbf11cb80987a686d0372fc4d23a9fd 100644 (file)
@@ -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 <cyrus@openwrt.org>
+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 (file)
index 0000000..1e8b964
--- /dev/null
@@ -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 (file)
index dd1d016..0000000
+++ /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 (file)
index 0000000..e8d7900
--- /dev/null
@@ -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 ()