opkg: Fix PKG_MIRROR_HASH
[openwrt/openwrt.git] / package / network / services / odhcpd / Makefile
index 48f2b33dc5655b84687093e02b8ba7a6f92216e1..ccc4f14e9d8201395503078399100293f28531c1 100644 (file)
@@ -8,56 +8,93 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=odhcpd
-PKG_VERSION:=2016-11-21
-PKG_RELEASE=$(PKG_SOURCE_VERSION)
+PKG_RELEASE:=3
 
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
-PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
-PKG_SOURCE_URL:=git://git.lede-project.org/project/odhcpd.git
 PKG_SOURCE_PROTO:=git
-PKG_SOURCE_VERSION:=371a80c7257d9207e242db15e257b12d4c0238b2
-PKG_MIRROR_MD5SUM:=90b872f5b079be5b12d21c470746d5adbc88ae9ddb1800a97aa0d31574de677c
+PKG_SOURCE_URL=$(PROJECT_GIT)/project/odhcpd.git
+PKG_SOURCE_DATE:=2020-05-03
+PKG_SOURCE_VERSION:=49e4949c6dee4a7e528e9bc51e9813228c3c16d8
+PKG_MIRROR_HASH:=5e23b60211a171d17d7015ce604b5fa128f0fbe4d7e7ddd48063b40590e17d4c
 
-PKG_MAINTAINER:=Steven Barth <steven@midlink.org>
+PKG_MAINTAINER:=Hans Dedecker <dedeckeh@gmail.com>
 PKG_LICENSE:=GPL-2.0
 
+PKG_INSTALL:=1
+PKG_CONFIG_DEPENDS:=CONFIG_PACKAGE_odhcpd_$(BUILD_VARIANT)_ext_cer_id
+
 include $(INCLUDE_DIR)/package.mk
 include $(INCLUDE_DIR)/cmake.mk
 
-CMAKE_OPTIONS += -DUBUS=1
+define Package/odhcpd/default
+  SECTION:=net
+  CATEGORY:=Network
+  TITLE:=OpenWrt DHCPv6(-PD)/RA Server & Relay
+  DEPENDS:=+libubox +libuci +libubus +libnl-tiny
+endef
 
-ifneq ($(CONFIG_PACKAGE_odhcpd_ext_cer_id),0)
-  CMAKE_OPTIONS += -DEXT_CER_ID=$(CONFIG_PACKAGE_odhcpd_ext_cer_id)
-endif
+define Package/odhcpd/default/description
+ odhcpd is a daemon for serving and relaying IP management protocols to
+ configure clients and downstream routers. It tries to follow the RFC 6204
+ requirements for IPv6 home routers.
+endef
 
+define Package/odhcpd/default/config
+menu "Configuration"
+       depends on PACKAGE_$(1)
 
-define Package/odhcpd
-  SECTION:=net
-  CATEGORY:=Network
-  TITLE:=OpenWrt DHCP/DHCPv6(-PD)/RA Server & Relay
-  DEPENDS:=+libubox +libuci +libubus
+config PACKAGE_odhcpd_$(2)_ext_cer_id
+       int
+       default 0
+       prompt "CER-ID Extension ID (0 = disabled)"
+endmenu
 endef
 
-define Package/odhcpd/config
-  config PACKAGE_odhcpd_ext_cer_id
-    int "CER-ID Extension ID (0 = disabled)"
-    depends on PACKAGE_odhcpd
-    default 0
+define Package/odhcpd
+  $(call Package/odhcpd/default)
+  TITLE += and DHCPv4 server
+  VARIANT:=full
 endef
 
+Package/odhcpd/config=$(call Package/odhcpd/default/config,odhcpd,full)
+
 define Package/odhcpd/description
- odhcpd is a daemon for serving and relaying IP management protocols to
- configure clients and downstream routers. It tries to follow the RFC 6204
- requirements for IPv6 home routers.
- odhcpd provides server services for DHCP, RA, stateless and stateful DHCPv6,
- prefix delegation and can be used to relay RA, DHCPv6 and NDP between routed
- (non-bridged) interfaces in case no delegated prefixes are available.
+ $(call Package/odhcpd/default/description)
+
+ This is a variant providing server services for DHCPv4, RA, stateless and
+ stateful DHCPv6,  prefix delegation and can be used to relay RA, DHCPv6 and
+ NDP between routed (non-bridged) interfaces in case no delegated prefixes
+ are available.
+endef
+
+define Package/odhcpd-ipv6only
+  $(call Package/odhcpd/default)
+  VARIANT:=ipv6only
+  DEPENDS+= @IPV6
+endef
+
+Package/odhcpd-ipv6only/config=$(call Package/odhcpd/default/config,odhcpd-ipv6only,ipv6only)
+
+define Package/odhcpd-ipv6only/description
+ $(call Package/odhcpd/default/description)
+
+ This is a variant providing server services for RA, stateless and stateful
+ DHCPv6,  prefix delegation and can be used to relay RA, DHCPv6 and NDP between
+ routed (non-bridged) interfaces in case no delegated prefixes are available.
 endef
 
+CMAKE_OPTIONS += -DUBUS=1
+
+ifeq ($(BUILD_VARIANT),full)
+  CMAKE_OPTIONS += -DDHCPV4_SUPPORT=1
+endif
+
+ifneq ($(CONFIG_PACKAGE_odhcpd_$(BUILD_VARIANT)_ext_cer_id),0)
+  CMAKE_OPTIONS += -DEXT_CER_ID=$(CONFIG_PACKAGE_odhcpd_$(BUILD_VARIANT)_ext_cer_id)
+endif
+
 define Package/odhcpd/install
        $(INSTALL_DIR) $(1)/usr/sbin/
-       $(INSTALL_BIN) $(PKG_BUILD_DIR)/odhcpd $(1)/usr/sbin/
+       $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/odhcpd $(1)/usr/sbin/
        $(INSTALL_BIN) ./files/odhcpd-update $(1)/usr/sbin/
        $(INSTALL_DIR) $(1)/etc/init.d
        $(INSTALL_BIN) ./files/odhcpd.init $(1)/etc/init.d/odhcpd
@@ -65,4 +102,7 @@ define Package/odhcpd/install
        $(INSTALL_BIN) ./files/odhcpd.defaults $(1)/etc/uci-defaults
 endef
 
+Package/odhcpd-ipv6only/install = $(Package/odhcpd/install)
+
 $(eval $(call BuildPackage,odhcpd))
+$(eval $(call BuildPackage,odhcpd-ipv6only))