diff --git a/package/dnsmasq/Makefile b/package/dnsmasq/Makefile
index 493797fa28378926138b97e6485706f5d11f6561..b71db58587a68f098fbea17ebc4bce192f44289f 100644
--- a/package/dnsmasq/Makefile
+++ b/package/dnsmasq/Makefile
@@ -33,12 +33,15 @@ define Package/dnsmasq/conffiles
 /etc/dnsmasq.conf
 endef
 
+TARGET_CFLAGS += -ffunction-sections -fdata-sections
+
 define Build/Compile
 	$(MAKE) -C $(PKG_BUILD_DIR) \
 		$(TARGET_CONFIGURE_OPTS) \
 		CFLAGS="$(TARGET_CFLAGS)" \
 		BINDIR="/usr/sbin" MANDIR="/usr/man" \
 		AWK="awk" \
+		LDFLAGS="-Wl,--gc-sections" \
 		all
 endef