diff options
author | Andre Heider <a.heider@gmail.com> | 2023-02-02 21:16:21 +0100 |
---|---|---|
committer | Christian Marangi <ansuelsmth@gmail.com> | 2023-03-21 18:28:22 +0100 |
commit | da3700988d9e34e380bae21ee23d5458a7e972b4 (patch) | |
tree | 20d82e514ac77f4f0de8deb7f1274a8f409646df /package/network/config | |
parent | 5c545bdb365a78b8995ddfa441a6018f7ff3c011 (diff) | |
download | upstream-da3700988d9e34e380bae21ee23d5458a7e972b4.tar.gz upstream-da3700988d9e34e380bae21ee23d5458a7e972b4.tar.bz2 upstream-da3700988d9e34e380bae21ee23d5458a7e972b4.zip |
treewide: add support for "gc-sections" in PKG_BUILD_FLAGS
This reduces open coding and allows to easily add a knob to
enable it treewide, where chosen packages can still opt-out via
"no-gc-sections".
Note: libnl, mbedtls and opkg only used the CFLAGS part without the
LDFLAGS counterpart. That doesn't help at all if the goal is to produce
smaller binaries. I consider that an accident, and this fixes it.
Note: there are also packages using only the LDFLAGS part. I didn't
touch those, as gc might have been disabled via CFLAGS intentionally.
Signed-off-by: Andre Heider <a.heider@gmail.com>
Diffstat (limited to 'package/network/config')
-rw-r--r-- | package/network/config/firewall/Makefile | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/package/network/config/firewall/Makefile b/package/network/config/firewall/Makefile index e4a3ad97f7..95e2ae4b67 100644 --- a/package/network/config/firewall/Makefile +++ b/package/network/config/firewall/Makefile @@ -21,6 +21,8 @@ PKG_LICENSE:=ISC PKG_CONFIG_DEPENDS := CONFIG_IPV6 +PKG_BUILD_FLAGS:=gc-sections + include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/cmake.mk @@ -42,8 +44,8 @@ define Package/firewall/conffiles /etc/firewall.user endef -TARGET_CFLAGS += -ffunction-sections -fdata-sections -flto -TARGET_LDFLAGS += -Wl,--gc-sections -flto +TARGET_CFLAGS += -flto +TARGET_LDFLAGS += -flto CMAKE_OPTIONS += $(if $(CONFIG_IPV6),,-DDISABLE_IPV6=1) define Package/firewall/install |