#
|
|
# Copyright (C) 2006-2014 OpenWrt.org
|
|
#
|
|
# This is free software, licensed under the GNU General Public License v2.
|
|
# See /LICENSE for more information.
|
|
#
|
|
|
|
include $(TOPDIR)/rules.mk
|
|
|
|
PKG_NAME:=miniupnpd
|
|
PKG_VERSION:=2.2.3
|
|
PKG_RELEASE:=$(AUTORELEASE)
|
|
|
|
PKG_SOURCE_URL:=https://miniupnp.tuxfamily.org/files
|
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
|
PKG_HASH:=f89c310ce9575183af3fec61af65e548f85114133df8caaaa9e204c13b7a9da5
|
|
|
|
PKG_MAINTAINER:=
|
|
PKG_LICENSE:=BSD-3-Clause
|
|
PKG_LICENSE_FILES:=LICENSE
|
|
PKG_CPE_ID:=cpe:/a:miniupnp_project:miniupnpd
|
|
|
|
PKG_INSTALL:=1
|
|
PKG_BUILD_PARALLEL:=1
|
|
|
|
include $(INCLUDE_DIR)/package.mk
|
|
include $(INCLUDE_DIR)/version.mk
|
|
|
|
define Package/miniupnpd/Default
|
|
SECTION:=net
|
|
CATEGORY:=Network
|
|
DEPENDS:= \
|
|
+libcap-ng \
|
|
+libmnl \
|
|
+libuuid
|
|
PROVIDES:=miniupnpd
|
|
TITLE:=Lightweight UPnP IGD, NAT-PMP & PCP daemon
|
|
SUBMENU:=Firewall
|
|
URL:=https://miniupnp.tuxfamily.org/
|
|
endef
|
|
|
|
define Package/miniupnpd-iptables
|
|
$(call Package/miniupnpd/Default)
|
|
DEPENDS+= \
|
|
+IPV6:ip6tables \
|
|
+IPV6:libip6tc \
|
|
+iptables \
|
|
+libip4tc \
|
|
+libnetfilter-conntrack
|
|
TITLE+= (iptables)
|
|
VARIANT:=iptables
|
|
endef
|
|
|
|
define Package/miniupnpd-nftables
|
|
$(call Package/miniupnpd/Default)
|
|
DEPENDS+= \
|
|
+libnftnl
|
|
TITLE+= (nftables)
|
|
VARIANT:=nftables
|
|
DEFAULT_VARIANT:=1
|
|
CONFLICTS:=miniupnpd-iptables
|
|
endef
|
|
|
|
define Package/miniupnpd/conffiles/Default
|
|
/etc/config/upnpd
|
|
endef
|
|
|
|
Package/miniupnpd-iptables/conffiles = $(Package/miniupnpd/conffiles/Default)
|
|
Package/miniupnpd-nftables/conffiles = $(Package/miniupnpd/conffiles/Default)
|
|
|
|
define Build/Prepare
|
|
$(call Build/Prepare/Default)
|
|
echo "$(VERSION_NUMBER)" | tr '() ' '_' >$(PKG_BUILD_DIR)/os.openwrt
|
|
endef
|
|
|
|
CONFIGURE_ARGS = \
|
|
$(if $(CONFIG_IPV6),--ipv6) \
|
|
--igd2 \
|
|
--leasefile \
|
|
--portinuse \
|
|
--firewall=$(BUILD_VARIANT) \
|
|
--disable-fork
|
|
|
|
TARGET_CFLAGS += $(FPIC)
|
|
TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed
|
|
|
|
ifeq ($(BUILD_VARIANT),iptables)
|
|
TARGET_CFLAGS += -flto
|
|
endif
|
|
|
|
define Package/miniupnpd/install/Default
|
|
$(INSTALL_DIR) $(1)/usr/sbin
|
|
$(INSTALL_DIR) $(1)/etc/init.d
|
|
$(INSTALL_DIR) $(1)/etc/config
|
|
$(INSTALL_DIR) $(1)/etc/hotplug.d/iface
|
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/miniupnpd $(1)/usr/sbin/miniupnpd
|
|
$(INSTALL_BIN) ./files/miniupnpd.init $(1)/etc/init.d/miniupnpd
|
|
$(INSTALL_CONF) ./files/upnpd.config $(1)/etc/config/upnpd
|
|
$(INSTALL_DATA) ./files/miniupnpd.hotplug $(1)/etc/hotplug.d/iface/50-miniupnpd
|
|
endef
|
|
|
|
define Package/miniupnpd-iptables/install
|
|
$(call Package/miniupnpd/install/Default,$1)
|
|
$(INSTALL_DIR) $(1)/etc/uci-defaults
|
|
$(INSTALL_DIR) $(1)/usr/share/miniupnpd
|
|
$(INSTALL_BIN) ./files/miniupnpd.defaults.iptables $(1)/etc/uci-defaults/99-miniupnpd
|
|
$(INSTALL_DATA) ./files/firewall3.include $(1)/usr/share/miniupnpd/firewall.include
|
|
endef
|
|
|
|
define Package/miniupnpd-nftables/install
|
|
$(call Package/miniupnpd/install/Default,$1)
|
|
endef
|
|
|
|
$(eval $(call BuildPackage,miniupnpd-iptables))
|
|
$(eval $(call BuildPackage,miniupnpd-nftables))
|