From fd56ae43153b90c44ba40b888046df67dd4a96ad Mon Sep 17 00:00:00 2001 From: zhao Date: Sat, 17 Jan 2026 12:07:57 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20Makefile?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: zhao --- Makefile | 87 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 Makefile diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..f419a91 --- /dev/null +++ b/Makefile @@ -0,0 +1,87 @@ +# +# Copyright (C) 2013-2025 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:=odhcpd +PKG_RELEASE:=1 + +PKG_SOURCE_PROTO:=git +PKG_SOURCE_URL=$(PROJECT_GIT)/project/odhcpd.git +PKG_MIRROR_HASH:=059c93e48b74880882d80c590d1aa221c849c54814379396c634e5b1c2ccfac4 +PKG_SOURCE_DATE:=2025-12-18 +PKG_SOURCE_VERSION:=3fda5f8b121bf58f8ef8e797fe6bfd7f4f340653 + +PKG_MAINTAINER:=Álvaro Fernández Rojas +PKG_LICENSE:=GPL-2.0 + +PKG_ASLR_PIE_REGULAR:=1 + +include $(INCLUDE_DIR)/package.mk +include $(INCLUDE_DIR)/cmake.mk + +define Package/odhcpd/default + SECTION:=net + CATEGORY:=Network + DEPENDS:=+libjson-c +libubox +libuci +libubus +libnl-tiny +endef + +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 + $(Package/odhcpd/default) + TITLE:=OpenWrt DHCPv4/DHCPv6/NDP/RA server + VARIANT:=full +endef + +define Package/odhcpd/description + $(Package/odhcpd/default/description) + + This is a variant with support for RA, DHCPv4 and DHCPv6. It can also be used + to relay RA, DHCPv6 and NDP messages between routed (non-bridged) interfaces + in case no delegated prefixes are available. +endef + +define Package/odhcpd-ipv6only + $(Package/odhcpd/default) + TITLE:=OpenWrt DHCPv6/NDP/RA server (without DHCPv4) + VARIANT:=ipv6only + DEPENDS+=@IPV6 +endef + +define Package/odhcpd-ipv6only/description + $(Package/odhcpd/default/description) + + This is a variant with support for RA and DHCPv6. It can also be used to + relay RA, DHCPv6 and NDP messages 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 + +define Package/odhcpd/install + $(INSTALL_DIR) $(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 + $(INSTALL_DIR) $(1)/etc/uci-defaults + $(INSTALL_BIN) ./files/odhcpd.defaults $(1)/etc/uci-defaults/15_odhcpd +endef + +Package/odhcpd-ipv6only/install = $(Package/odhcpd/install) + +$(eval $(call BuildPackage,odhcpd)) +$(eval $(call BuildPackage,odhcpd-ipv6only)) \ No newline at end of file