diff --git a/package/Config.in b/package/Config.in index a4c567ea4a..ce56d4da65 100644 --- a/package/Config.in +++ b/package/Config.in @@ -95,6 +95,7 @@ source "package/pptp/Config.in" source "package/pptpd/Config.in" source "package/quagga/Config.in" source "package/radvd/Config.in" +source "package/rarpd/Config.in" source "package/robocfg/Config.in" source "package/rsync/Config.in" source "package/samba/Config.in" diff --git a/package/Makefile b/package/Makefile index c6ddc5d2ff..8b41cf6448 100644 --- a/package/Makefile +++ b/package/Makefile @@ -138,6 +138,7 @@ package-$(BR2_PACKAGE_PPTP) += pptp package-$(BR2_PACKAGE_PPTPD) += pptpd package-$(BR2_PACKAGE_QUAGGA) += quagga package-$(BR2_PACKAGE_RADVD) += radvd +package-$(BR2_PACKAGE_RARPD) += rarpd package-$(BR2_PACKAGE_READLINE) += readline package-$(BR2_PACKAGE_ROBOCFG) += robocfg package-$(BR2_PACKAGE_RP_PPPOE) += rp-pppoe @@ -246,6 +247,7 @@ portmap-compile: tcp_wrappers-compile postgresql-compile: zlib-compile ppp-compile: linux-atm-compile quagga-compile: readline-compile ncurses-compile +rarpd-compile: libnet-compile ifneq ($(BR2_PACKAGE_LIBRRD),) rrdcollect-compile: rrdtool-compile endif diff --git a/package/rarpd/Config.in b/package/rarpd/Config.in new file mode 100644 index 0000000000..d64cd56f32 --- /dev/null +++ b/package/rarpd/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_RARPD + tristate "rarpd - Reverse ARP Daemon" + default m if CONFIG_DEVEL + select BR2_PACKAGE_LIBNET + help + Rarpd is a daemon which responds to RARP requests. + RARP is used by some machines at boot time to discover their + IP address. They provide their Ethernet address and rarpd + responds with their IP address if it finds it in the ethers + database. + + ftp://ftp.dementia.org/pub/net-tools/ + diff --git a/package/rarpd/Makefile b/package/rarpd/Makefile new file mode 100644 index 0000000000..f8f6b75439 --- /dev/null +++ b/package/rarpd/Makefile @@ -0,0 +1,79 @@ +# $Id$ + +include $(TOPDIR)/rules.mk + +PKG_NAME:=rarpd +PKG_VERSION:=1.1 +PKG_RELEASE:=1 +PKG_MD5SUM:=04e2ca849e758d0b88c8281775ec3b58 + +PKG_SOURCE_URL:=ftp://ftp.dementia.org/pub/net-tools +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_CAT:=zcat + +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) +PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install + +# Hack Alert! +# The configure script for rarpd, when used with the --with-libnet option +# doesn't correctly detect and set -DNEW_LIBNET_INTERFACE. +EXTRA_CFLAGS = -DNEW_LIBNET_INTERFACE + +include $(TOPDIR)/package/rules.mk + +$(eval $(call PKG_template,RARPD,rarpd,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) + +$(PKG_BUILD_DIR)/.configured: $(PKG_BUILD_DIR)/.prepared + (cd $(PKG_BUILD_DIR); \ + $(TARGET_CONFIGURE_OPTS) \ + CFLAGS="$(TARGET_CFLAGS) $(EXTRA_CFLAGS)" \ + CPPFLAGS="-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include" \ + LDFLAGS="-I$(STAGING_DIR)/usr/lib -I$(STAGING_DIR)/lib" \ + ./configure \ + --target=$(GNU_TARGET_NAME) \ + --host=$(GNU_TARGET_NAME) \ + --build=$(GNU_HOST_NAME) \ + --program-prefix="" \ + --program-suffix="" \ + --prefix=/usr \ + --exec-prefix=/usr \ + --bindir=/usr/bin \ + --datadir=/usr/share \ + --includedir=/usr/include \ + --infodir=/usr/share/info \ + --libdir=/usr/lib \ + --libexecdir=/usr/lib \ + --localstatedir=/var \ + --mandir=/usr/share/man \ + --sbindir=/usr/sbin \ + --sysconfdir=/etc \ + $(DISABLE_LARGEFILE) \ + $(DISABLE_NLS) \ + --with-libnet="$(STAGING_DIR)/usr" \ + --with-pcap="$(STAGING_DIR)/usr" \ + ); + touch $@ + +$(PKG_BUILD_DIR)/.built: + rm -rf $(PKG_INSTALL_DIR) + mkdir -p $(PKG_INSTALL_DIR) + $(MAKE) -C $(PKG_BUILD_DIR) \ + $(TARGET_CONFIGURE_OPTS) \ + DESTDIR="$(PKG_INSTALL_DIR)" \ + all install + touch $@ + +$(IPKG_RARPD): + install -d -m0755 $(IDIR_RARPD)/usr/sbin + cp -fpR $(PKG_INSTALL_DIR)/usr/sbin/rarpd $(IDIR_RARPD)/usr/sbin/ + install -d -m0755 $(IDIR_RARPD)/etc/default + install -m644 ./files/rarpd.default $(IDIR_RARPD)/etc/default/rarpd + install -d -m0755 $(IDIR_RARPD)/etc/init.d + install -m755 ./files/rarpd.init $(IDIR_RARPD)/etc/init.d/rarpd + ln -sf rarpd $(IDIR_RARPD)/etc/init.d/S50rarpd + $(RSTRIP) $(IDIR_RARPD) + $(IPKG_BUILD) $(IDIR_RARPD) $(PACKAGE_DIR) + +mostlyclean: + -$(MAKE) -C $(PKG_BUILD_DIR) clean + rm -f $(PKG_BUILD_DIR)/.built diff --git a/package/rarpd/files/rarpd.default b/package/rarpd/files/rarpd.default new file mode 100644 index 0000000000..1dd41e9b37 --- /dev/null +++ b/package/rarpd/files/rarpd.default @@ -0,0 +1,4 @@ +# /etc/default/rarpd +# +# Only listen on vlan0 +#OPTIONS="-i vlan0" diff --git a/package/rarpd/files/rarpd.init b/package/rarpd/files/rarpd.init new file mode 100644 index 0000000000..04ca0b4f38 --- /dev/null +++ b/package/rarpd/files/rarpd.init @@ -0,0 +1,7 @@ +#!/bin/sh + +RARPD=/usr/sbin/rarpd +DEFAULT=/etc/default/rarpd +[ -f $DEFAULT ] && . $DEFAULT + +$RARPD $OPTIONS diff --git a/package/rarpd/ipkg/rarpd.conffiles b/package/rarpd/ipkg/rarpd.conffiles new file mode 100644 index 0000000000..067611849b --- /dev/null +++ b/package/rarpd/ipkg/rarpd.conffiles @@ -0,0 +1 @@ +/etc/default/rarpd diff --git a/package/rarpd/ipkg/rarpd.control b/package/rarpd/ipkg/rarpd.control new file mode 100644 index 0000000000..99834a86ce --- /dev/null +++ b/package/rarpd/ipkg/rarpd.control @@ -0,0 +1,7 @@ +Package: rarpd +Priority: optional +Section: net +Maintainer: OpenWrt Developers Team , Jeff Dairiki +Source: ftp://ftp.dementia.org/pub/net-tools/rarpd-1.1.tar.gz +Depends: libnet +Description: Reverse ARP Daemon \ No newline at end of file