openwrt-packages/net/dhcp-forwarder/Makefile

75 lines
2.0 KiB
Makefile

#
# Copyright (C) 2016 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:=dhcp-forwarder
PKG_VERSION:=0.11
PKG_RELEASE:=1
PKG_SOURCE_URL:=@SAVANNAH/dhcp-fwd/
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_HASH:=6abf8e6a72ad01df90efba543c9a18c149b24d50d000e66ce55209780dc04cd5
PKG_LICENSE:=GPL-2.0
PKG_LICENSE_FILES:=COPYING
PKG_MAINTAINER:=Scott K Logan <logans@cottsay.net>
PKG_BUILD_PARALLEL:=1
PKG_INSTALL:=1
include $(INCLUDE_DIR)/package.mk
define Package/dhcp-forwarder
SECTION:=net
CATEGORY:=Network
SUBMENU:=IP Addresses and Names
TITLE:=DHCP relay agent
URL:=http://www.nongnu.org/dhcp-fwd/
USERID:=dhcp-fwd=375:dhcp-fwd=375
endef
define Package/dhcp-forwarder/description
This program forwards DHCP messages between subnets with different sublayer
broadcast domains. It is similarly to the DHCP relay agent dhcrelay of ISC's
DHCP, but has the following features which are important for me:
- Runs as non-root in a chroot-jail
- Uses "normal" AF_INET sockets; this allows to uses packetfilters to filter
incoming messages.
- The DHCP agent IDs can be defined freely
- Has a small memory footprint when using dietlibc
It tries to be RFC 2131/2132 and 3046 compliant. Probably it works with BOOTP
(RFC 951) also, but since the handling of the giaddr field is described
misleading (see RFC 1542), there may occur problems.
endef
define Package/dhcp-forwarder/conffiles
/etc/dhcp-fwd.conf
endef
CONFIGURE_ARGS += \
--disable-dietlibc \
define Build/Compile
$(MAKE) -C $(PKG_BUILD_DIR) \
DESTDIR="$(PKG_INSTALL_DIR)" \
cfg_filename="/etc/dhcp-fwd.conf" \
all install
endef
define Package/dhcp-forwarder/install
$(INSTALL_DIR) $(1)/usr/bin $(1)/etc $(1)/etc/init.d
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/dhcp-fwd $(1)/usr/bin/
$(INSTALL_CONF) $(PKG_BUILD_DIR)/contrib/dhcp-fwd.conf $(1)/etc/
$(INSTALL_BIN) ./files/dhcp-fwd.init $(1)/etc/init.d/dhcp-fwd
endef
$(eval $(call BuildPackage,dhcp-forwarder))