summaryrefslogtreecommitdiff
path: root/make
diff options
context:
space:
mode:
authorManuel Novoa III <mjn3@codepoet.org>2004-04-04 02:33:03 +0000
committerManuel Novoa III <mjn3@codepoet.org>2004-04-04 02:33:03 +0000
commit1169162ab76e63dad6f186bd0c65596f3d8765e4 (patch)
tree1cbc05f9c457a5ba9496d975c57adb1c6819b09b /make
parent9f8739658f9de0ebbfb023e7f8bfed8332650089 (diff)
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')
-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)