# # 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.3.5 PKG_RELEASE:=2 PKG_SOURCE_URL:=https://miniupnp.tuxfamily.org/files PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_HASH:=9637a412c33d2778cdae561058933b4e0b67465ff134e96761a7b19751b2fa0f 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 & PCP/NAT-PMP 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) $(INSTALL_DIR) $(1)/usr/share/nftables.d $(CP) ./files/nftables.d/* $(1)/usr/share/nftables.d/ endef $(eval $(call BuildPackage,miniupnpd-iptables)) $(eval $(call BuildPackage,miniupnpd-nftables))