a8ce2d5f8c
Add more options to dhcrelay UCI and init script: - enabled - interfaces: Listen interfaces - relay_mode: What to do about packets that already have a relay option Also mark /etc/config/dhcrelay as conffile Signed-off-by: Bruno Randolf <br1@einfach.org> git-svn-id: svn://svn.openwrt.org/openwrt/packages@38446 3c298f89-4303-0410-b956-a3cf2f4a3e73
228 lines
6.3 KiB
Makefile
228 lines
6.3 KiB
Makefile
#
|
|
# Copyright (C) 2006-2012 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:=isc-dhcp
|
|
UPSTREAM_NAME:=dhcp
|
|
PKG_VERSION:=4.2.4
|
|
PKG_RELEASE:=3
|
|
|
|
PKG_SOURCE:=$(UPSTREAM_NAME)-$(PKG_VERSION).tar.gz
|
|
PKG_SOURCE_URL:=ftp://ftp.isc.org/isc/dhcp/$(PKG_VERSION)
|
|
PKG_MD5SUM:=c244cefe663d43100af757d8ff625a1f
|
|
|
|
PKG_FIXUP:=autoreconf
|
|
PKG_BUILD_PARALLEL:=1
|
|
|
|
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(UPSTREAM_NAME)-$(PKG_VERSION)
|
|
|
|
include $(INCLUDE_DIR)/package.mk
|
|
|
|
define Package/isc-dhcp/Default
|
|
SECTION:=net
|
|
CATEGORY:=Network
|
|
SUBMENU:=IP Addresses and Names
|
|
TITLE:=ISC's DHCP
|
|
URL:=https://www.isc.org/software/dhcp
|
|
endef
|
|
|
|
define Package/isc-dhcp-relay-ipv4
|
|
$(call Package/isc-dhcp/Default)
|
|
TITLE+= relay (without IPv6)
|
|
VARIANT:=ipv4
|
|
endef
|
|
|
|
define Package/isc-dhcp-relay-ipv6
|
|
$(call Package/isc-dhcp/Default)
|
|
DEPENDS:= @IPV6
|
|
TITLE+= relay (with IPv6)
|
|
VARIANT:=ipv6
|
|
endef
|
|
|
|
define Package/isc-dhcp-relay/description
|
|
provides a means for relaying DHCP and BOOTP requests from a subnet to which
|
|
no DHCP server is directly connected to one or more DHCP servers on other
|
|
subnets.
|
|
endef
|
|
|
|
define Package/isc-dhcp-relay-ipv4/description
|
|
$(call Package/isc-dhcp-relay-ipv6/description)
|
|
This package is compiled with IPv4 support only.
|
|
endef
|
|
|
|
define Package/isc-dhcp-relay-ipv4/conffiles
|
|
/etc/config/dhcrelay
|
|
endef
|
|
|
|
define Package/isc-dhcp-relay-ipv6/description
|
|
$(call Package/isc-dhcp-relay/description)
|
|
This package is compiled with IPv4 and IPv6 support.
|
|
endef
|
|
|
|
define Package/isc-dhcp-relay-ipv6/conffiles
|
|
/etc/config/dhcrelay
|
|
endef
|
|
|
|
define Package/isc-dhcp-client-ipv4
|
|
$(call Package/isc-dhcp/Default)
|
|
TITLE+= client (without IPv6)
|
|
VARIANT:=ipv4
|
|
endef
|
|
|
|
define Package/isc-dhcp-client-ipv6
|
|
$(call Package/isc-dhcp/Default)
|
|
DEPENDS:= @IPV6
|
|
TITLE+= client (with IPv6)
|
|
VARIANT:=ipv6
|
|
endef
|
|
|
|
define Package/isc-dhcp-client/description
|
|
provides a means for configuring one or more network interfaces using the
|
|
Dynamic Host Configuration Protocol, BOOTP protocol, or if these protocols
|
|
fail, by statically assigning an address.
|
|
endef
|
|
|
|
define Package/isc-dhcp-client-ipv4/description
|
|
$(call Package/isc-dhcp-client/description)
|
|
This package is compiled with IPv4 support only.
|
|
endef
|
|
|
|
define Package/isc-dhcp-client-ipv6/description
|
|
$(call Package/isc-dhcp-client/description)
|
|
This package is compiled with IPv4 and IPv6 support.
|
|
endef
|
|
|
|
define Package/isc-dhcp-server-ipv4
|
|
$(call Package/isc-dhcp/Default)
|
|
TITLE+= server (without IPv6)
|
|
VARIANT:=ipv4
|
|
endef
|
|
|
|
define Package/isc-dhcp-server-ipv6
|
|
$(call Package/isc-dhcp/Default)
|
|
DEPENDS:= @IPV6
|
|
TITLE+= server (with IPv6)
|
|
VARIANT:=ipv6
|
|
endef
|
|
|
|
define Package/isc-dhcp-server/description
|
|
implements the Dynamic Host Configuration Protocol (DHCP) and the Internet
|
|
Bootstrap Protocol (BOOTP).
|
|
endef
|
|
|
|
define Package/isc-dhcp-server-ipv4/description
|
|
$(call Package/isc-dhcp-server/description)
|
|
This package is compiled with IPv4 support only.
|
|
endef
|
|
|
|
define Package/isc-dhcp-server-ipv6/description
|
|
$(call Package/isc-dhcp-server/description)
|
|
This package is compiled with IPv4 and IPv6 support.
|
|
endef
|
|
|
|
define Package/isc-dhcp-omshell-ipv4
|
|
$(call Package/isc-dhcp/Default)
|
|
DEPENDS:= +isc-dhcp-server-ipv4
|
|
TITLE+= omshell (without IPv6)
|
|
VARIANT:=ipv4
|
|
endef
|
|
|
|
define Package/isc-dhcp-omshell-ipv6
|
|
$(call Package/isc-dhcp/Default)
|
|
DEPENDS:= @IPV6 +isc-dhcp-server-ipv6
|
|
TITLE+= omshell (with IPv6)
|
|
VARIANT:=ipv6
|
|
endef
|
|
|
|
define Package/isc-dhcp-omshell/description
|
|
provides an interactive way to connect to, query, and possibly change, the ISC
|
|
DHCP Server's state via OMAPI, the Object Management API.
|
|
endef
|
|
|
|
define Package/isc-dhcp-omshell-ipv4/description
|
|
$(call Package/isc-dhcp-omshell/description)
|
|
This package is compiled with IPv4 support only.
|
|
endef
|
|
|
|
define Package/isc-dhcp-omshell-ipv6/description
|
|
$(call Package/isc-dhcp-omshell/description)
|
|
This package is compiled with IPv4 and IPv6 support.
|
|
endef
|
|
|
|
CONFIGURE_ARGS += \
|
|
--disable-tracing \
|
|
--enable-paranoia \
|
|
--disable-dependency-tracking \
|
|
ac_cv_file__dev_random=yes
|
|
|
|
ifeq ($(BUILD_VARIANT),ipv4)
|
|
CONFIGURE_ARGS += --disable-dhcpv6
|
|
endif
|
|
ifeq ($(BUILD_VARIANT),ipv6)
|
|
CONFIGURE_ARGS += --enable-dhcpv6
|
|
endif
|
|
|
|
define Build/Compile
|
|
$(MAKE) -C $(PKG_BUILD_DIR) \
|
|
DESTDIR="$(PKG_INSTALL_DIR)" \
|
|
BUILD_CC="$(HOSTCC_NOCACHE)" \
|
|
host_alias="$(GNU_TARGET_NAME)" \
|
|
target_alias="$(GNU_TARGET_NAME)" \
|
|
build_alias="$(GNU_HOST_NAME)" \
|
|
ac_cv_file__dev_random=yes \
|
|
all install-exec
|
|
endef
|
|
|
|
define Package/isc-dhcp-relay-$(BUILD_VARIANT)/install
|
|
$(INSTALL_DIR) $(1)/usr/sbin
|
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/dhcrelay $(1)/usr/sbin
|
|
$(INSTALL_DIR) $(1)/etc/config
|
|
$(INSTALL_DATA) ./files/etc/config/dhcrelay $(1)/etc/config
|
|
$(INSTALL_DIR) $(1)/etc/init.d
|
|
$(INSTALL_BIN) ./files/dhcrelay4.init $(1)/etc/init.d/dhcrelay4
|
|
ifeq ($(BUILD_VARIANT),ipv6)
|
|
$(INSTALL_BIN) ./files/dhcrelay6.init $(1)/etc/init.d/dhcrelay6
|
|
endif
|
|
endef
|
|
|
|
define Package/isc-dhcp-server-$(BUILD_VARIANT)/install
|
|
$(INSTALL_DIR) $(1)/usr/sbin $(1)/etc/init.d
|
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/dhcpd $(1)/usr/sbin
|
|
$(INSTALL_BIN) ./files/dhcpd.init $(1)/etc/init.d/dhcpd
|
|
$(INSTALL_BIN) ./files/dhcpd.conf $(1)/etc
|
|
ifeq ($(BUILD_VARIANT),ipv6)
|
|
$(INSTALL_BIN) ./files/dhcpd6.init $(1)/etc/init.d/dhcpd6
|
|
$(INSTALL_BIN) ./files/dhcpd6.conf $(1)/etc
|
|
endif
|
|
endef
|
|
|
|
define Package/isc-dhcp-client-$(BUILD_VARIANT)/install
|
|
$(INSTALL_DIR) $(1)/usr/sbin $(1)/etc/init.d
|
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/dhclient $(1)/usr/sbin
|
|
$(INSTALL_BIN) ./files/dhclient-script $(1)/usr/sbin/
|
|
$(INSTALL_BIN) ./files/dhclient.init $(1)/etc/init.d/dhclient
|
|
ifeq ($(BUILD_VARIANT),ipv6)
|
|
$(INSTALL_BIN) ./files/dhclient6.init $(1)/etc/init.d/dhclient6
|
|
$(INSTALL_BIN) ./files/dhclient6.conf $(1)/etc
|
|
endif
|
|
endef
|
|
|
|
define Package/isc-dhcp-omshell-$(BUILD_VARIANT)/install
|
|
$(INSTALL_DIR) $(1)/usr/bin
|
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/omshell $(1)/usr/bin
|
|
endef
|
|
|
|
$(eval $(call BuildPackage,isc-dhcp-relay-ipv4))
|
|
$(eval $(call BuildPackage,isc-dhcp-server-ipv4))
|
|
$(eval $(call BuildPackage,isc-dhcp-client-ipv4))
|
|
$(eval $(call BuildPackage,isc-dhcp-omshell-ipv4))
|
|
$(eval $(call BuildPackage,isc-dhcp-relay-ipv6))
|
|
$(eval $(call BuildPackage,isc-dhcp-server-ipv6))
|
|
$(eval $(call BuildPackage,isc-dhcp-client-ipv6))
|
|
$(eval $(call BuildPackage,isc-dhcp-omshell-ipv6))
|