mirror of
https://github.com/openwrt/packages.git
synced 2026-01-10 11:44:48 +00:00
dhcrelay has the ability to monitor interfaces for requests in a single direction only rather than listening to all interfaces for requests. Doing this allows one to suppress the duplication of having the relay forward requests from the same network that the DHCP server is on. Signed-off-by: Brian J. Murrell <brian@interlinx.bc.ca>
253 lines
6.9 KiB
Makefile
253 lines
6.9 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.4.0
|
|
PKG_RELEASE:=4
|
|
|
|
PKG_LICENSE:=BSD-3-Clause
|
|
PKG_LICENSE_FILES:=LICENSE
|
|
PKG_MAINTAINER:=Philip Prindeville <philipp@redfish-solutions.com>
|
|
|
|
PKG_SOURCE:=$(UPSTREAM_NAME)-$(PKG_VERSION).tar.gz
|
|
PKG_SOURCE_URL:=ftp://ftp.isc.org/isc/dhcp/$(PKG_VERSION) \
|
|
http://ftp.funet.fi/pub/mirrors/ftp.isc.org/isc/dhcp/$(PKG_VERSION) \
|
|
http://ftp.iij.ad.jp/pub/network/isc/dhcp/$(PKG_VERSION)
|
|
PKG_HASH:=4a90be0f22ad81c987f5584661b60a594f1b21c581b82bfba3ae60f89ae44397
|
|
|
|
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
|
|
|
|
DISABLE_NLS:=
|
|
|
|
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
|
|
DEPENDS:=+zlib
|
|
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)
|
|
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)
|
|
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)
|
|
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:= +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 \
|
|
--with-randomdev=/dev/urandom \
|
|
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) \
|
|
BUILD_CC="$(HOSTCC_NOCACHE)" \
|
|
CROSS_CC="$(TARGET_CC)" \
|
|
host_alias="$(GNU_TARGET_NAME)" \
|
|
target_alias="$(GNU_TARGET_NAME)" \
|
|
build_alias="$(GNU_HOST_NAME)" \
|
|
all
|
|
$(MAKE) -C $(PKG_BUILD_DIR) \
|
|
DESTDIR="$(PKG_INSTALL_DIR)" \
|
|
BUILD_CC="$(HOSTCC_NOCACHE)" \
|
|
CROSS_CC="$(TARGET_CC)" \
|
|
host_alias="$(GNU_TARGET_NAME)" \
|
|
target_alias="$(GNU_TARGET_NAME)" \
|
|
build_alias="$(GNU_HOST_NAME)" \
|
|
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/dhcrelay.conf $(1)/etc/config
|
|
$(INSTALL_DIR) $(1)/etc/init.d
|
|
$(INSTALL_BIN) ./files/dhcrelay4.init $(1)/etc/init.d/dhcrelay4
|
|
endef
|
|
|
|
define Package/isc-dhcp-server-$(BUILD_VARIANT)/install
|
|
$(INSTALL_DIR) $(1)/usr/sbin $(1)/etc/init.d $(1)/etc/uci-defaults
|
|
$(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.defaults $(1)/etc/uci-defaults
|
|
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-server-ipv4/conffiles
|
|
/etc/dhcpd.conf
|
|
endef
|
|
|
|
define Package/isc-dhcp-server-ipv6/conffiles
|
|
/etc/dhcpd6.conf
|
|
endef
|
|
|
|
define Package/isc-dhcp-client-$(BUILD_VARIANT)/install
|
|
$(INSTALL_DIR) $(1)/usr/sbin $(1)/etc
|
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/dhclient $(1)/usr/sbin
|
|
$(INSTALL_BIN) ./files/dhclient-script $(1)/usr/sbin/
|
|
ifeq ($(BUILD_VARIANT),ipv6)
|
|
$(INSTALL_BIN) ./files/dhclient6.conf $(1)/etc
|
|
endif
|
|
endef
|
|
|
|
define Package/isc-dhcp-client-ipv4/conffiles
|
|
/etc/dhclient.conf
|
|
endef
|
|
|
|
define Package/isc-dhcp-client-ipv6/conffiles
|
|
/etc/dhclient6.conf
|
|
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))
|