summaryrefslogtreecommitdiffstats
path: root/make/dnsmasq.mk
diff options
context:
space:
mode:
authorManuel Novoa III2004-04-04 04:33:03 +0200
committerManuel Novoa III2004-04-04 04:33:03 +0200
commit1169162ab76e63dad6f186bd0c65596f3d8765e4 (patch)
tree1cbc05f9c457a5ba9496d975c57adb1c6819b09b /make/dnsmasq.mk
parentTurn off CONFIG_ASH_RANDOM_SUPPORT by default (diff)
downloadbuildroot-1169162ab76e63dad6f186bd0c65596f3d8765e4.tar.gz
buildroot-1169162ab76e63dad6f186bd0c65596f3d8765e4.tar.xz
buildroot-1169162ab76e63dad6f186bd0c65596f3d8765e4.zip
Ok... this is a bit painful. Both dnsmasq1 (1.18) and dnsmasq (2.6) share
a make target (the dnsmasq binary in root). So I made 2.6 the "default". It is _not_ enough to do "make dnsmasq1"... You must actually add dnsmasq1 to TARGETS if you want the older version. Better approaches welcome. Also, the config patch for 2.6 fixes the outdated/broken handling of uClibc by the dnsmasq config.h file.
Diffstat (limited to 'make/dnsmasq.mk')
-rw-r--r--make/dnsmasq.mk50
1 files changed, 50 insertions, 0 deletions
diff --git a/make/dnsmasq.mk b/make/dnsmasq.mk
new file mode 100644
index 000000000..7944d6211
--- /dev/null
+++ b/make/dnsmasq.mk
@@ -0,0 +1,50 @@
+#############################################################
+#
+# dnsmasq
+#
+#############################################################
+
+DNSMASQ_SITE=http://thekelleys.org.uk/dnsmasq
+ifeq ($(filter $(TARGETS),dnsmasq1),)
+DNSMASQ_SOURCE=dnsmasq-2.6.tar.gz
+DNSMASQ_DIR=$(BUILD_DIR)/dnsmasq-2.6
+DNSMASQ_VER=dnsmasq2
+else
+DNSMASQ_SOURCE=dnsmasq-1.18.tar.gz
+DNSMASQ_DIR=$(BUILD_DIR)/dnsmasq-1.18
+DNSMASQ_VER=dnsmasq1
+endif
+DNSMASQ_BINARY=dnsmasq
+DNSMASQ_TARGET_BINARY=usr/sbin/dnsmasq
+
+$(DL_DIR)/$(DNSMASQ_SOURCE):
+ $(WGET) -P $(DL_DIR) $(DNSMASQ_SITE)/$(DNSMASQ_SOURCE)
+
+$(DNSMASQ_DIR)/.source: $(DL_DIR)/$(DNSMASQ_SOURCE)
+ zcat $(DL_DIR)/$(DNSMASQ_SOURCE) | tar -C $(BUILD_DIR) -xvf -
+ $(SOURCE_DIR)/patch-kernel.sh $(DNSMASQ_DIR) $(SOURCE_DIR) \
+ $(DNSMASQ_VER)-*.patch
+ touch $(DNSMASQ_DIR)/.source
+
+$(DNSMASQ_DIR)/$(DNSMASQ_BINARY): $(DNSMASQ_DIR)/.source
+ $(MAKE) CC=$(TARGET_CC) CFLAGS="$(TARGET_CFLAGS)" \
+ BINDIR=/usr/sbin MANDIR=/usr/man -C $(DNSMASQ_DIR)
+
+$(TARGET_DIR)/$(DNSMASQ_TARGET_BINARY): $(DNSMASQ_DIR)/$(DNSMASQ_BINARY)
+ $(MAKE) BINDIR=/usr/sbin MANDIR=/usr/man \
+ DESTDIR=$(TARGET_DIR) -C $(DNSMASQ_DIR) install
+ $(STRIP) $(TARGET_DIR)/$(DNSMASQ_TARGET_BINARY)
+ rm -rf $(TARGET_DIR)/usr/man
+
+dnsmasq: uclibc $(TARGET_DIR)/$(DNSMASQ_TARGET_BINARY)
+
+dnsmasq1: uclibc $(TARGET_DIR)/$(DNSMASQ_TARGET_BINARY)
+
+dnsmasq-source: $(DL_DIR)/$(DNSMASQ_SOURCE)
+
+dnsmasq-clean:
+ #$(MAKE) prefix=$(TARGET_DIR)/usr -C $(DNSMASQ_DIR) uninstall
+ -$(MAKE) -C $(DNSMASQ_DIR) clean
+
+dnsmasq-dirclean:
+ rm -rf $(DNSMASQ_DIR)