From 86502c46ba824dec1c624f233d74975bd23f793d Mon Sep 17 00:00:00 2001
From: Martin Weinelt <martin@darmstadt.freifunk.net>
Date: Sun, 15 Jan 2023 20:41:39 +0100
Subject: [PATCH] Migrate to dnsmasq-full to restore query caching

We migrate to dnsmasq-full, while disabling most of its features.
Notably, dhcp and dnssec are compiled in, while other features of the
full variant are deselected.
---
 package/gluon-setup-mode/Makefile  |  2 +-
 package/gluon-wan-dnsmasq/Makefile |  2 +-
 targets/generic                    | 10 ++++++++++
 3 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/package/gluon-setup-mode/Makefile b/package/gluon-setup-mode/Makefile
index 5ee9117c9..cb5aac40d 100644
--- a/package/gluon-setup-mode/Makefile
+++ b/package/gluon-setup-mode/Makefile
@@ -9,7 +9,7 @@ include ../gluon.mk
 
 define Package/gluon-setup-mode
   TITLE:=Setup mode
-  DEPENDS:=+gluon-core +gluon-lock-password +ubus +dnsmasq
+  DEPENDS:=+gluon-core +gluon-lock-password +ubus +dnsmasq-full
 endef
 
 define Package/gluon-setup-mode/description
diff --git a/package/gluon-wan-dnsmasq/Makefile b/package/gluon-wan-dnsmasq/Makefile
index da42cf016..44a68f3b1 100644
--- a/package/gluon-wan-dnsmasq/Makefile
+++ b/package/gluon-wan-dnsmasq/Makefile
@@ -6,7 +6,7 @@ include ../gluon.mk
 
 define Package/gluon-wan-dnsmasq
   TITLE:=Support for a secondary DNS server using the WAN interface
-  DEPENDS:=+gluon-core +libubus-lua +dnsmasq +libpacketmark
+  DEPENDS:=+gluon-core +libubus-lua +dnsmasq-full +libpacketmark
 endef
 
 define Package/gluon-wan-dnsmasq/description
diff --git a/targets/generic b/targets/generic
index 806e39d2b..c9bce1e0d 100644
--- a/targets/generic
+++ b/targets/generic
@@ -42,6 +42,15 @@ try_config('PACKAGE_usbip', false) -- fails to build
 
 try_config('PACKAGE_ATH_DEBUG', true)
 
+try_config('PACKAGE_dnsmasq_full_dhcpv6', false)
+try_config('PACKAGE_dnsmasq_full_auth', false)
+try_config('PACKAGE_dnsmasq_full_ipset', false)
+try_config('PACKAGE_dnsmasq_full_nftset', false)
+try_config('PACKAGE_dnsmasq_full_conntrack', false)
+try_config('PACKAGE_dnsmasq_full_noid', false)
+try_config('PACKAGE_dnsmasq_full_broken_rtc', false)
+try_config('PACKAGE_dnsmasq_full_rtc', false)
+
 try_config('TARGET_SQUASHFS_BLOCK_SIZE', 256)
 
 config('KERNEL_PROC_STRIPPED', true)
@@ -81,6 +90,7 @@ config('GLUON_MINIFY', istrue(env.GLUON_MINIFY))
 
 packages {
 	'-ca-bundle',
+	'-dnsmasq',
 	'-kmod-ipt-offload',
 	'-kmod-nft-offload',
 	'-libustream-wolfssl',
-- 
GitLab