diff options
Diffstat (limited to 'openwrt/package/dnsmasq')
-rw-r--r-- | openwrt/package/dnsmasq/Config.in | 2 | ||||
-rw-r--r-- | openwrt/package/dnsmasq/Makefile | 48 | ||||
-rw-r--r-- | openwrt/package/dnsmasq/dnsmasq.control | 8 | ||||
-rw-r--r-- | openwrt/package/dnsmasq/patches/100-config.patch | 49 |
4 files changed, 100 insertions, 7 deletions
diff --git a/openwrt/package/dnsmasq/Config.in b/openwrt/package/dnsmasq/Config.in index c0f05088e3..9c7bdef65b 100644 --- a/openwrt/package/dnsmasq/Config.in +++ b/openwrt/package/dnsmasq/Config.in @@ -1,5 +1,5 @@ config BR2_PACKAGE_DNSMASQ - bool "dnsmasq" + tristate "dnsmasq" default y help A lightweight DNS and DHCP server. It is intended to provide diff --git a/openwrt/package/dnsmasq/Makefile b/openwrt/package/dnsmasq/Makefile index cd4cae4be9..3b6acb49d9 100644 --- a/openwrt/package/dnsmasq/Makefile +++ b/openwrt/package/dnsmasq/Makefile @@ -1,9 +1,45 @@ +############################################################# +# +# ebtables +# +############################################################# include $(TOPDIR)/rules.mk -include ./dnsmasq.mk +PKG_NAME:=dnsmasq +PKG_VERSION:=2.15 +PKG_RELEASE:=1 +PKG_SOURCE_URL:=http://thekelleys.org.uk/dnsmasq +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) +PKG_CAT:=zcat +PKG_IPK:=$(PACKAGE_DIR)/$(PKG_NAME)_$(PKG_VERSION)-$(PKG_RELEASE)_$(ARCH).ipk +PKG_IPK_DIR:=$(PKG_BUILD_DIR)/ipkg -source: dnsmasq-source -prepare: $(DNSMASQ_DIR)/.unpacked -compile: $(DNSMASQ_DIR)/src/dnsmasq -install: dnsmasq -clean: dnsmasq-dirclean +$(DL_DIR)/$(PKG_SOURCE): + $(WGET) -P $(DL_DIR) $(PKG_SOURCE_URL)/$(PKG_SOURCE) + +$(PKG_BUILD_DIR)/.patched: $(DL_DIR)/$(PKG_SOURCE) + $(PKG_CAT) $(DL_DIR)/$(PKG_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) - + $(PATCH) $(PKG_BUILD_DIR) ./patches + touch $(PKG_BUILD_DIR)/.patched + +$(PKG_BUILD_DIR)/src/$(PKG_NAME): $(PKG_BUILD_DIR)/.patched + $(MAKE) CC=$(TARGET_CC) CFLAGS="$(TARGET_CFLAGS)" \ + BINDIR=/usr/sbin MANDIR=/usr/man -C $(PKG_BUILD_DIR) + +$(PKG_IPK): $(PKG_BUILD_DIR)/src/$(PKG_NAME) + $(SCRIPT_DIR)/make-ipkg-dir.sh $(PKG_IPK_DIR) $(PKG_NAME).control $(PKG_VERSION)-$(PKG_RELEASE) $(ARCH) + mkdir -p $(PKG_IPK_DIR)/usr/sbin + cp $(PKG_BUILD_DIR)/src/$(PKG_NAME) $(PKG_IPK_DIR)/usr/sbin/ + $(STRIP) $(PKG_IPK_DIR)/usr/sbin/* + mkdir -p $(PACKAGE_DIR) + $(IPKG_BUILD) $(PKG_IPK_DIR) $(PACKAGE_DIR) + +source: $(DL_DIR)/$(PKG_SOURCE) +prepare: $(PKG_BUILD_DIR)/.patched +compile: $(PKG_IPK) +install: + $(IPKG) install $(PKG_IPK) +clean: + rm -rf $(PKG_BUILD_DIR) + rm -f $(PKG_IPK) diff --git a/openwrt/package/dnsmasq/dnsmasq.control b/openwrt/package/dnsmasq/dnsmasq.control new file mode 100644 index 0000000000..ef6bd0db30 --- /dev/null +++ b/openwrt/package/dnsmasq/dnsmasq.control @@ -0,0 +1,8 @@ +Package: dnsmasq +Priority: essential +Section: net +Version: 2.15-1 +Architecture: mipsel +Maintainer: Felix Fietkau <nbd@vd-s.ath.cx> +Source: buildroot internal +Description: A lightweight DNS and DHCP server diff --git a/openwrt/package/dnsmasq/patches/100-config.patch b/openwrt/package/dnsmasq/patches/100-config.patch new file mode 100644 index 0000000000..270c22740e --- /dev/null +++ b/openwrt/package/dnsmasq/patches/100-config.patch @@ -0,0 +1,49 @@ +diff -ur dnsmasq-2.15.orig/src/config.h dnsmasq-2.15/src/config.h +--- dnsmasq-2.15.orig/src/config.h 2004-10-08 11:41:34.757371880 -0400 ++++ dnsmasq-2.15/src/config.h 2004-10-08 11:43:49.074952504 -0400 +@@ -78,6 +78,11 @@ + /* We assume that systems which don't have IPv6 + headers don't have ntop and pton either */ + ++#if defined(__UCLIBC__) && !defined(__UCLIBC_HAS_IPV6__) ++# undef NO_IPV6 ++# define NO_IPV6 ++#endif ++ + #if defined(INET6_ADDRSTRLEN) && defined(IPV6_V6ONLY) && !defined(NO_IPV6) + # define HAVE_IPV6 + # define ADDRSTRLEN INET6_ADDRSTRLEN +@@ -194,7 +199,7 @@ + /* platform dependent options. */ + + /* Must preceed __linux__ since uClinux defines __linux__ too. */ +-#if defined(__uClinux__) || defined(__UCLIBC__) ++#if defined(__uClinux__) + #undef HAVE_LINUX_IPV6_PROC + #define HAVE_GETOPT_LONG + #undef HAVE_ARC4RANDOM +@@ -208,6 +213,24 @@ + # define NO_FORK + #endif + ++#elif defined(__linux__) && defined(__UCLIBC__) ++# define HAVE_LINUX_IPV6_PROC ++# if defined(__UCLIBC_HAS_GNU_GETOPT__) || \ ++ ((__UCLIBC_MAJOR__==0) && (__UCLIBC_MINOR__==9) && (__UCLIBC_SUBLEVEL__<21)) ++# define HAVE_GETOPT_LONG ++# else ++# undef HAVE_GETOPT_LONG ++# endif ++#undef HAVE_ARC4RANDOM ++#define HAVE_RANDOM ++#define HAVE_DEV_URANDOM ++#define HAVE_DEV_RANDOM ++#undef HAVE_SOCKADDR_SA_LEN ++#undef HAVE_PSELECT ++#if !defined(__ARCH_HAS_MMU__) ++# define NO_FORK ++#endif ++ + /* libc5 - must precede __linux__ too */ + /* Note to build a libc5 binary on a modern Debian system: + install the packages altgcc libc5 and libc5-altdev |