summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--package/dnsmasq/Config.in13
-rw-r--r--package/dnsmasq/dnsmasq.mk26
2 files changed, 30 insertions, 9 deletions
diff --git a/package/dnsmasq/Config.in b/package/dnsmasq/Config.in
index f434b8ba5..e67aa4617 100644
--- a/package/dnsmasq/Config.in
+++ b/package/dnsmasq/Config.in
@@ -21,13 +21,14 @@ config BR2_PACKAGE_DNSMASQ_DHCP
Enable DHCP server support in dnsmasq.
config BR2_PACKAGE_DNSMASQ_IDN
- bool "IDN support (BIG!)"
+ bool "IDN support"
depends on BR2_USE_WCHAR
- select BR2_PACKAGE_LIBINTL
select BR2_PACKAGE_LIBIDN
+ select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE
+ select BR2_PACKAGE_LIBINTL if BR2_NEEDS_GETTEXT_IF_LOCALE
help
Enable IDN support in dnsmasq.
- This option is a big space taker since is pulls in many libraries.
+ This option is a big space taker since it pulls in many libraries.
config BR2_PACKAGE_DNSMASQ_LUA
bool "Lua scripting support"
@@ -35,4 +36,10 @@ config BR2_PACKAGE_DNSMASQ_LUA
help
Enable lua scripting for dnsmasq
+config BR2_PACKAGE_DNSMASQ_CONNTRACK
+ bool "conntrack marking support"
+ select BR2_PACKAGE_LIBNETFILTER_CONNTRACK
+ help
+ Enable DNS query connection marking in netfilter.
+
endif
diff --git a/package/dnsmasq/dnsmasq.mk b/package/dnsmasq/dnsmasq.mk
index c1995a0a6..2e3575ccb 100644
--- a/package/dnsmasq/dnsmasq.mk
+++ b/package/dnsmasq/dnsmasq.mk
@@ -4,7 +4,7 @@
#
#############################################################
-DNSMASQ_VERSION = 2.60
+DNSMASQ_VERSION = 2.61
DNSMASQ_SITE = http://thekelleys.org.uk/dnsmasq
DNSMASQ_MAKE_ENV = CC="$(TARGET_CC)"
DNSMASQ_MAKE_OPT = COPTS="$(DNSMASQ_COPTS)" PREFIX=/usr CFLAGS="$(TARGET_CFLAGS)"
@@ -22,10 +22,23 @@ ifneq ($(BR2_PACKAGE_DNSMASQ_TFTP),y)
DNSMASQ_COPTS += -DNO_TFTP
endif
+# NLS requires IDN so only enable it (i18n) when IDN is true
ifeq ($(BR2_PACKAGE_DNSMASQ_IDN),y)
- DNSMASQ_MAKE_OPT += all-i18n
- DNSMASQ_DEPENDENCIES += libidn libintl
- DNSMASQ_MAKE_OPT += LDFLAGS+="-lintl -lidn"
+ DNSMASQ_DEPENDENCIES += libidn $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext libintl)
+ DNSMASQ_MAKE_OPT += LDFLAGS+="-lidn $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),-lintl)"
+ DNSMASQ_COPTS += -DHAVE_IDN
+ DNSMASQ_I18N = $(if $(BR2_ENABLE_LOCALE),-i18n)
+endif
+
+ifeq ($(BR2_PACKAGE_DNSMASQ_CONNTRACK),y)
+ DNSMASQ_DEPENDENCIES += host-pkg-config libnetfilter_conntrack
+endif
+
+ifeq ($(BR2_PACKAGE_DNSMASQ_CONNTRACK),y)
+define DNSMASQ_ENABLE_CONNTRACK
+ $(SED) 's^.*#define HAVE_CONNTRACK.*^#define HAVE_CONNTRACK^' \
+ $(DNSMASQ_DIR)/src/config.h
+endef
endif
ifeq ($(BR2_PACKAGE_DNSMASQ_LUA),y)
@@ -70,11 +83,12 @@ define DNSMASQ_BUILD_CMDS
$(DNSMASQ_FIX_PKGCONFIG)
$(DNSMASQ_ENABLE_DBUS)
$(DNSMASQ_ENABLE_LUA)
- $(DNSMASQ_MAKE_ENV) $(MAKE) -C $(@D) $(DNSMASQ_MAKE_OPT)
+ $(DNSMASQ_ENABLE_CONNTRACK)
+ $(DNSMASQ_MAKE_ENV) $(MAKE) -C $(@D) $(DNSMASQ_MAKE_OPT) all$(DNSMASQ_I18N)
endef
define DNSMASQ_INSTALL_TARGET_CMDS
- $(DNSMASQ_MAKE_ENV) $(MAKE) -C $(@D) $(DNSMASQ_MAKE_OPT) install
+ $(DNSMASQ_MAKE_ENV) $(MAKE) -C $(@D) $(DNSMASQ_MAKE_OPT) install$(DNSMASQ_I18N)
mkdir -p $(TARGET_DIR)/var/lib/misc/
endef