diff --git a/admin/netdata/Makefile b/admin/netdata/Makefile index 5bee33424..f4d00786d 100644 --- a/admin/netdata/Makefile +++ b/admin/netdata/Makefile @@ -24,7 +24,7 @@ PKG_BUILD_DIR=$(BUILD_DIR)/$(PKG_NAME)-v$(PKG_VERSION) PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 PKG_FIXUP:=autoreconf -PKG_BUILD_FLAGS:=no-mips16 +PKG_BUILD_FLAGS:=no-mips16 gc-sections include $(INCLUDE_DIR)/package.mk @@ -44,9 +44,7 @@ define Package/netdata/description python3-urllib3 endef -TARGET_CFLAGS := $(filter-out -O%,$(TARGET_CFLAGS)) -TARGET_CFLAGS += -ffunction-sections -fdata-sections -O3 -TARGET_LDFLAGS += -Wl,--gc-sections +TARGET_CFLAGS := $(filter-out -O%,$(TARGET_CFLAGS)) -O3 CONFIGURE_ARGS += \ --with-zlib \ diff --git a/ipv6/miredo/Makefile b/ipv6/miredo/Makefile index 9e1390a23..8527db824 100644 --- a/ipv6/miredo/Makefile +++ b/ipv6/miredo/Makefile @@ -14,6 +14,7 @@ PKG_CONFIG_DEPENDS:= \ PKG_BUILD_PARALLEL:=1 PKG_CHECK_FORMAT_SECURITY:=0 PKG_INSTALL:=1 +PKG_BUILD_FLAGS:=gc-sections PKG_MAINTAINER:= PKG_LICENSE:=GPL-2.0-or-later @@ -52,11 +53,7 @@ CONFIGURE_VARS += \ ac_cv_header_sys_capability_h=no TARGET_CFLAGS+= \ - $(FPIC) \ - -ffunction-sections \ - -fdata-sections - -TARGET_LDFLAGS += -Wl,--gc-sections + $(FPIC) define Package/miredo/install $(INSTALL_DIR) $(1)/usr/lib diff --git a/lang/lua-rs232/Makefile b/lang/lua-rs232/Makefile index a7b2d9505..654e21ca1 100644 --- a/lang/lua-rs232/Makefile +++ b/lang/lua-rs232/Makefile @@ -24,6 +24,7 @@ PKG_FIXUP:=autoreconf PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 PKG_BUILD_DEPENDS:=lua/host +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk @@ -40,8 +41,7 @@ define Package/lua-rs232/description multiplatform library for serial communications over RS-232 endef -TARGET_CFLAGS += -ffunction-sections -fdata-sections -TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed +TARGET_LDFLAGS += -Wl,--as-needed MAKE_FLAGS += luadir='$$$${prefix}/lib/lua' luaexecdir='$$$${exec_prefix}/lib/lua' define Build/InstallDev diff --git a/libs/boost/Makefile b/libs/boost/Makefile index bf72531fb..cb92e27a4 100644 --- a/libs/boost/Makefile +++ b/libs/boost/Makefile @@ -29,7 +29,7 @@ HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/$(PKG_NAME)_$(PKG_SOURCE_VERSION) HOST_BUILD_PARALLEL:=1 PKG_BUILD_PARALLEL:=1 -PKG_BUILD_FLAGS:=no-mips16 +PKG_BUILD_FLAGS:=no-mips16 gc-sections include $(INCLUDE_DIR)/package.mk @@ -379,10 +379,10 @@ define Host/Compile endef CONFIGURE_PREFIX:=$(PKG_INSTALL_DIR) -TARGET_LDFLAGS += -pthread -lrt -lstdc++ -Wl,--gc-sections,--as-needed,--print-gc-sections +TARGET_LDFLAGS += -pthread -lrt -lstdc++ -Wl,--as-needed,--print-gc-sections TARGET_CFLAGS += \ - $(if $(CONFIG_SOFT_FLOAT),-DBOOST_NO_FENV_H) -fPIC -ffunction-sections -fdata-sections -flto + $(if $(CONFIG_SOFT_FLOAT),-DBOOST_NO_FENV_H) -fPIC -flto ifeq ($(word 1,$(subst ., ,$(call qstrip,$(CONFIG_GCC_VERSION)))),5) EXTRA_CXXFLAGS += -std=gnu++14 diff --git a/libs/giflib/Makefile b/libs/giflib/Makefile index 2f8eb4c53..a6174e982 100644 --- a/libs/giflib/Makefile +++ b/libs/giflib/Makefile @@ -22,6 +22,7 @@ PKG_CPE_ID:=cpe:/a:giflib_project:giflib PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk @@ -49,8 +50,8 @@ define Package/giflib-utils/description These are the utilities that come with giflib. endef -TARGET_CFLAGS += -ffunction-sections -fdata-sections $(FPIC) -TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed +TARGET_CFLAGS += $(FPIC) +TARGET_LDFLAGS += -Wl,--as-needed MAKE_FLAGS += \ CFLAGS="$(TARGET_CFLAGS)" \ diff --git a/libs/glib2/Makefile b/libs/glib2/Makefile index 5493e5e69..226242dc5 100644 --- a/libs/glib2/Makefile +++ b/libs/glib2/Makefile @@ -24,6 +24,7 @@ PKG_BUILD_DIR:=$(BUILD_DIR)/glib-$(PKG_VERSION) HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/glib-$(PKG_VERSION) PKG_CONFIG_DEPENDS:=CONFIG_BUILD_NLS PKG_FORTIFY_SOURCE:=0 +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/host-build.mk include $(INCLUDE_DIR)/package.mk @@ -42,9 +43,6 @@ define Package/glib2/description The GLib library of C routines endef -TARGET_CFLAGS += -ffunction-sections -fdata-sections -TARGET_LDFLAGS += -Wl,--gc-sections - COMP_ARGS= \ -Dselinux=disabled \ -Dlibmount=disabled \ diff --git a/libs/libdcwproto/Makefile b/libs/libdcwproto/Makefile index 37905b854..caaec8f79 100644 --- a/libs/libdcwproto/Makefile +++ b/libs/libdcwproto/Makefile @@ -21,6 +21,7 @@ PKG_LICENSE_FILES:=COPYING PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk @@ -37,8 +38,8 @@ define Package/libdcwproto/description Platform-independent C library for marshaling and serializing DCW messages endef -TARGET_CFLAGS += -ffunction-sections -fdata-sections -flto -TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed +TARGET_CFLAGS += -flto +TARGET_LDFLAGS += -Wl,--as-needed define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include diff --git a/libs/libdcwsocket/Makefile b/libs/libdcwsocket/Makefile index 28176a8ec..dc3bf3f1e 100644 --- a/libs/libdcwsocket/Makefile +++ b/libs/libdcwsocket/Makefile @@ -22,6 +22,7 @@ PKG_LICENSE_FILES:=COPYING PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk @@ -37,8 +38,8 @@ define Package/libdcwsocket/description User-land C library for sending and receiving DCW "EtherType"d messages endef -TARGET_CFLAGS += -std=c89 -ffunction-sections -fdata-sections -flto -TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed +TARGET_CFLAGS += -std=c89 -flto +TARGET_LDFLAGS += -Wl,--as-needed define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include diff --git a/libs/libmbim/Makefile b/libs/libmbim/Makefile index 8591b4337..0d74b542e 100644 --- a/libs/libmbim/Makefile +++ b/libs/libmbim/Makefile @@ -15,14 +15,15 @@ PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://gitlab.freedesktop.org/mobile-broadband/libmbim.git PKG_MIRROR_HASH:=7ecc6d1e565392817311254045337907bbad015b46ec88542ea63594f47778be +PKG_BUILD_FLAGS:=gc-sections + PKG_MAINTAINER:=Nicholas Smith include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/nls.mk include $(INCLUDE_DIR)/meson.mk -TARGET_CFLAGS += -ffunction-sections -fdata-sections -fno-merge-all-constants -fmerge-constants -TARGET_LDFLAGS += -Wl,--gc-sections +TARGET_CFLAGS += -fno-merge-all-constants -fmerge-constants MESON_ARGS += \ -Dintrospection=false \ diff --git a/libs/libqmi/Makefile b/libs/libqmi/Makefile index 8dac95155..21a7af1fc 100644 --- a/libs/libqmi/Makefile +++ b/libs/libqmi/Makefile @@ -15,14 +15,15 @@ PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://gitlab.freedesktop.org/mobile-broadband/libqmi.git PKG_MIRROR_HASH:=674f5848c56c11cdc2fbc82c52e5bc2a3a0fddb56315dc4220544688a7b0e17a +PKG_BUILD_FLAGS:=gc-sections + PKG_MAINTAINER:=Nicholas Smith include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/nls.mk include $(INCLUDE_DIR)/meson.mk -TARGET_CFLAGS += -ffunction-sections -fdata-sections -fno-merge-all-constants -fmerge-constants -TARGET_LDFLAGS += -Wl,--gc-sections +TARGET_CFLAGS += -fno-merge-all-constants -fmerge-constants define Package/libqmi/config source "$(SOURCE)/Config.in" diff --git a/libs/libqrtr-glib/Makefile b/libs/libqrtr-glib/Makefile index b5fabf31b..1796627a8 100644 --- a/libs/libqrtr-glib/Makefile +++ b/libs/libqrtr-glib/Makefile @@ -16,14 +16,15 @@ PKG_SOURCE_URL:=https://gitlab.freedesktop.org/mobile-broadband/libqrtr-glib.git PKG_SOURCE_VERSION:=$(PKG_VERSION) PKG_MIRROR_HASH:=ffb918edf96581d4ba310bd1e975297e9a7006a7e26f37934afde462585125f2 +PKG_BUILD_FLAGS:=gc-sections + PKG_MAINTAINER:=Nicholas Smith include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/nls.mk include $(INCLUDE_DIR)/meson.mk -TARGET_CFLAGS += -ffunction-sections -fdata-sections -fno-merge-all-constants -fmerge-constants -TARGET_LDFLAGS += -Wl,--gc-sections +TARGET_CFLAGS += -fno-merge-all-constants -fmerge-constants define Package/libqrtr-glib SECTION:=libs diff --git a/libs/libtasn1/Makefile b/libs/libtasn1/Makefile index b97a9cdbc..7e70b2212 100644 --- a/libs/libtasn1/Makefile +++ b/libs/libtasn1/Makefile @@ -23,6 +23,7 @@ PKG_CPE_ID:=cpe:/a:gnu:libtasn1 #PKG_FIXUP:=autoreconf PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/host-build.mk @@ -40,8 +41,6 @@ define Package/libtasn1/description endef HOST_CFLAGS += -std=gnu99 -TARGET_CFLAGS += -ffunction-sections -fdata-sections -TARGET_LDFLAGS += -Wl,--gc-sections HOST_CONFIGURE_ARGS += \ --disable-shared \ diff --git a/libs/libtins/Makefile b/libs/libtins/Makefile index 11b7c2f11..644eecdbf 100644 --- a/libs/libtins/Makefile +++ b/libs/libtins/Makefile @@ -20,6 +20,7 @@ PKG_LICENSE:=BSD-2-Clause PKG_LICENSE_FILES:=LICENSE CMAKE_INSTALL:=1 +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/cmake.mk @@ -52,8 +53,8 @@ CMAKE_OPTIONS += \ -DLIBTINS_ENABLE_TCP_STREAM_CUSTOM_DATA=$(if $(CONFIG_LIBTINS_ENABLE_TCP_STREAM_CUSTOM_DATA),ON,OFF) \ -DLIBTINS_ENABLE_WPA2=$(if $(CONFIG_LIBTINS_ENABLE_WPA2),ON,OFF) -TARGET_CXXFLAGS += -ffunction-sections -fdata-sections -flto -TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed +TARGET_CXXFLAGS += -flto +TARGET_LDFLAGS += -Wl,--as-needed define Package/libtins/install $(INSTALL_DIR) $(1)/usr/lib diff --git a/mail/emailrelay/Makefile b/mail/emailrelay/Makefile index 7ec681bc3..5b9704257 100644 --- a/mail/emailrelay/Makefile +++ b/mail/emailrelay/Makefile @@ -20,6 +20,7 @@ PKG_LICENSE:=GPL-3.0-or-later PKG_LICENSE_FILES:=COPYING PKG_CONFIG_DEPENDS:=CONFIG_EMAILRELAY_SUPPORT_VERBOSE_DBG CONFIG_EMAILRELAY_SSL +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk @@ -94,8 +95,8 @@ ifeq ($(CONFIG_EMAILRELAY_SUPPORT_VERBOSE_DBG),y) --enable-debug=yes endif -TARGET_CXXFLAGS += -ffunction-sections -fdata-sections -flto -TARGET_CXXFLAGS += -Wl,--gc-sections,--as-needed +TARGET_CXXFLAGS += -flto +TARGET_CXXFLAGS += -Wl,--as-needed define Package/emailrelay/install $(INSTALL_DIR) $(1)/usr/bin diff --git a/multimedia/v4l2rtspserver/Makefile b/multimedia/v4l2rtspserver/Makefile index 9ddcd1eaf..f93d0647e 100644 --- a/multimedia/v4l2rtspserver/Makefile +++ b/multimedia/v4l2rtspserver/Makefile @@ -16,6 +16,8 @@ PKG_SOURCE_URL:=https://github.com/mpromonet/v4l2rtspserver PKG_SOURCE_VERSION:=v$(PKG_VERSION) PKG_MIRROR_HASH:=f2eca75c8af9933f4ceb67cab74af488e1e9ec8af9cbef2534fda5b701b1d63d +PKG_BUILD_FLAGS:=gc-sections + LIVE555_VERSION:=2022.10.01 LIVE555_HASH:=429de73061e3fc6901c4d2f0b7562ae3f6233060ca4b5e182fe555d065cbdd45 LIVE555_FILE:=live.$(LIVE555_VERSION).tar.gz @@ -49,8 +51,8 @@ define Download/live555 HASH:=$(LIVE555_HASH) endef -TARGET_CFLAGS += -ffunction-sections -fdata-sections -flto -TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed +TARGET_CFLAGS += -flto +TARGET_LDFLAGS += -Wl,--as-needed CMAKE_OPTIONS += \ -DALSA=OFF \ diff --git a/net/aircrack-ng/Makefile b/net/aircrack-ng/Makefile index 3333aedd4..1323a0e6b 100644 --- a/net/aircrack-ng/Makefile +++ b/net/aircrack-ng/Makefile @@ -20,6 +20,7 @@ PKG_HASH:=4f0bfd486efc6ea7229f7fbc54340ff8b2094a0d73e9f617e0a39f878999a247 PKG_BUILD_PARALLEL:=1 PKG_INSTALL:=1 +PKG_BUILD_FLAGS:=gc-sections PKG_MAINTAINER:=Rick Farina @@ -90,15 +91,12 @@ CONFIGURE_ARGS += \ $(if $(CONFIG_AIRCRACK_NG_HWLOC),--enable-hwloc,--disable-hwloc) \ $(if $(CONFIG_AIRCRACK_NG_SQLITE3),--with-sqlite3=$(STAGING_DIR)/usr,--without-sqlite3) -TARGET_CFLAGS += -Wall -Wextra -ffunction-sections -fdata-sections -fcommon +TARGET_CFLAGS += -Wall -Wextra -fcommon ifeq ($(CONFIG_AIRCRACK_NG_OPTIMIZE_SPEED),y) TARGET_CFLAGS := $(filter-out -O%,$(TARGET_CFLAGS)) -O3 endif -TARGET_LDFLAGS+= \ - -Wl,--gc-sections - define Package/aircrack-ng/install $(INSTALL_DIR) $(1)/usr/bin $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/ diff --git a/net/aria2/Makefile b/net/aria2/Makefile index 726ca35d6..5004eff42 100644 --- a/net/aria2/Makefile +++ b/net/aria2/Makefile @@ -15,6 +15,7 @@ PKG_SOURCE_URL:=https://github.com/aria2/aria2/releases/download/release-$(PKG_V PKG_HASH:=58d1e7608c12404f0229a3d9a4953d0d00c18040504498b483305bcb3de907a5 PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 +PKG_BUILD_FLAGS:=gc-sections PKG_MAINTAINER:=Imre Kaloz , \ Hsing-Wang Liao @@ -83,8 +84,8 @@ CONFIGURE_ARGS += \ --without-libuv \ --with-libz -TARGET_CXXFLAGS += -ffunction-sections -fdata-sections -flto -TARGET_LDFLAGS += -Wl,--gc-sections -flto +TARGET_CXXFLAGS += -flto +TARGET_LDFLAGS += -flto define Package/aria2/conffiles /etc/config/aria2 diff --git a/net/clamav/Makefile b/net/clamav/Makefile index cf903f4ca..8d6e7676f 100644 --- a/net/clamav/Makefile +++ b/net/clamav/Makefile @@ -22,6 +22,7 @@ PKG_LICENSE_FILES:=COPYING* PKG_CPE_ID:=cpe:/a:clamav:clamav PKG_BUILD_DEPENDS:=ncurses +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/nls.mk @@ -72,8 +73,8 @@ CMAKE_OPTIONS += \ -DENABLE_SYSTEMD=OFF \ -DHAVE_SYSTEM_LFS_FTS=O$(if $(CONFIG_USE_GLIBC),N,FF) -TARGET_CXXFLAGS += -ffunction-sections -fdata-sections -fno-rtti -flto -TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed +TARGET_CXXFLAGS += -fno-rtti -flto +TARGET_LDFLAGS += -Wl,--as-needed define Package/clamav/conffiles /etc/config/clamav diff --git a/net/curl/Makefile b/net/curl/Makefile index c3ba55ac0..c79ca80d8 100644 --- a/net/curl/Makefile +++ b/net/curl/Makefile @@ -26,6 +26,7 @@ PKG_CPE_ID:=cpe:/a:haxx:libcurl PKG_FIXUP:=autoreconf PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 +PKG_BUILD_FLAGS:=gc-sections PKG_CONFIG_DEPENDS:= \ CONFIG_IPV6 \ @@ -105,9 +106,8 @@ define Package/libcurl/config source "$(SOURCE)/Config.in" endef -TARGET_CFLAGS += $(FPIC) -ffunction-sections -fdata-sections +TARGET_CFLAGS += $(FPIC) TARGET_CPPFLAGS += $(if $(CONFIG_LIBCURL_NTLM),,-DCURL_DISABLE_NTLM) -TARGET_LDFLAGS += -Wl,--gc-sections CONFIGURE_ARGS += \ --disable-debug \ diff --git a/net/dcstad/Makefile b/net/dcstad/Makefile index 3112b0c1c..bd07a8e4a 100644 --- a/net/dcstad/Makefile +++ b/net/dcstad/Makefile @@ -22,6 +22,7 @@ PKG_LICENSE_FILES:=COPYING PKG_FIXUP:=autoreconf PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk @@ -38,8 +39,7 @@ define Package/dcstad/description Implementation of the Dual-Channel WiFi client daemon endef -TARGET_CFLAGS += -ffunction-sections -fdata-sections -flto -TARGET_LDFLAGS += -Wl,--gc-sections +TARGET_CFLAGS += -flto define Package/dcstad/install $(INSTALL_DIR) $(1)/bin diff --git a/net/dcwapd/Makefile b/net/dcwapd/Makefile index 0599e5a60..34e2861af 100644 --- a/net/dcwapd/Makefile +++ b/net/dcwapd/Makefile @@ -22,6 +22,7 @@ PKG_LICENSE_FILES:=COPYING PKG_FIXUP:=autoreconf PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk @@ -42,8 +43,8 @@ CONFIGURE_ARGS += \ --enable-platform=linuxjsonstatic \ --enable-shared -TARGET_CXXFLAGS += -std=c++11 -DRAPIDJSON_HAS_CXX11_RVALUE_REFS=0 -ffunction-sections -fdata-sections -flto -TARGET_LDFLAGS += -ldcwproto -ldcwsocket -lmrmfilterparser -luci -Wl,--gc-sections,--as-needed +TARGET_CXXFLAGS += -std=c++11 -DRAPIDJSON_HAS_CXX11_RVALUE_REFS=0 -flto +TARGET_LDFLAGS += -ldcwproto -ldcwsocket -lmrmfilterparser -luci -Wl,--as-needed define Build/InstallDev $(INSTALL_DIR) $(1)/usr/lib diff --git a/net/dnscrypt-proxy/Makefile b/net/dnscrypt-proxy/Makefile index 9d8883aab..060f9acda 100644 --- a/net/dnscrypt-proxy/Makefile +++ b/net/dnscrypt-proxy/Makefile @@ -23,6 +23,7 @@ PKG_LICENSE_FILES:=COPYING PKG_FIXUP:=autoreconf PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 +PKG_BUILD_FLAGS:=gc-sections PKG_CONFIG_DEPENDS:= \ CONFIG_DNSCRYPT_ENABLE_PLUGINS @@ -84,12 +85,7 @@ define Build/Configure endef TARGET_CFLAGS += \ - -fomit-frame-pointer \ - -fdata-sections \ - -ffunction-sections - -TARGET_LDFLAGS += \ - -Wl,-gc-sections + -fomit-frame-pointer MAKE_FLAGS += \ CFLAGS="$(TARGET_CFLAGS)" \ diff --git a/net/foolsm/Makefile b/net/foolsm/Makefile index 2d67aa6e0..0cbe3f247 100644 --- a/net/foolsm/Makefile +++ b/net/foolsm/Makefile @@ -20,6 +20,7 @@ PKG_LICENSE:=GPL-2.0-only PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk @@ -43,8 +44,8 @@ endef MAKE_FLAGS += \ PREFIX="$(CONFIGURE_PREFIX)" -TARGET_CFLAGS += -ffunction-sections -fdata-sections -flto -TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed +TARGET_CFLAGS += -flto +TARGET_LDFLAGS += -Wl,--as-needed define Package/foolsm/install $(INSTALL_DIR) $(1)/usr/sbin diff --git a/net/kadnode/Makefile b/net/kadnode/Makefile index 1adfdf168..2b93f6a51 100644 --- a/net/kadnode/Makefile +++ b/net/kadnode/Makefile @@ -14,6 +14,7 @@ PKG_MAINTAINER:=Moritz Warning PKG_LICENSE:=MIT PKG_BUILD_PARALLEL:=1 +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk @@ -71,10 +72,6 @@ endif MAKE_FLAGS += FEATURES="$(FEATURES)" -# Make binary smaller -TARGET_CFLAGS += -ffunction-sections -fdata-sections -TARGET_LDFLAGS += -Wl,--gc-sections - define Package/kadnode/conffiles /etc/config/kadnode endef diff --git a/net/kea/Makefile b/net/kea/Makefile index 372ce54bc..a630f41c0 100644 --- a/net/kea/Makefile +++ b/net/kea/Makefile @@ -21,6 +21,7 @@ PKG_LICENSE:=MPL-2.0 PKG_LICENSE_FILES:=COPYING PKG_BUILD_PARALLEL:=1 +PKG_BUILD_FLAGS:=gc-sections PKG_INSTALL:=1 PKG_FIXUP:=autoreconf @@ -204,12 +205,10 @@ CONFIGURE_VARS += \ TARGET_CXXFLAGS += \ $(FPIC) \ - -fdata-sections \ - -ffunction-sections \ -std=c++17 TARGET_LDFLAGS += \ - -Wl,--gc-sections,--as-needed + -Wl,--as-needed define Package/kea-libs/install $(INSTALL_DIR) $(1)/usr/lib diff --git a/net/ksmbd-tools/Makefile b/net/ksmbd-tools/Makefile index 1612bd0d2..a526cfe2a 100644 --- a/net/ksmbd-tools/Makefile +++ b/net/ksmbd-tools/Makefile @@ -12,6 +12,7 @@ PKG_LICENSE:=GPL-2.0-or-later PKG_LICENSE_FILES:=COPYING PKG_BUILD_DEPENDS:=glib2 +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/nls.mk @@ -70,8 +71,7 @@ MESON_ARGS += \ -Db_lto=true \ -Dkrb5=disabled -TARGET_CFLAGS += -ffunction-sections -fdata-sections -TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed +TARGET_LDFLAGS += -Wl,--as-needed define Package/ksmbd-server/install $(INSTALL_DIR) $(1)/usr/libexec diff --git a/net/mac-telnet/Makefile b/net/mac-telnet/Makefile index 0e4e4c1b9..93b8d7c0b 100644 --- a/net/mac-telnet/Makefile +++ b/net/mac-telnet/Makefile @@ -13,13 +13,14 @@ PKG_SOURCE_DATE:=2015-09-02 PKG_SOURCE_VERSION:=37d83cbc9c07266d6c957d27bf75285b305eceab PKG_MIRROR_HASH:=ed414f3fb08f1e2bb4313d00fb99327df697de7c60284fe588fc7eb3769adb7a +PKG_BUILD_FLAGS:=gc-sections + PKG_LICENSE:=GPL-2.0-or-later PKG_MAINTAINER:=Jo-Philipp Wich include $(INCLUDE_DIR)/package.mk -TARGET_CFLAGS += -ffunction-sections -fdata-sections $(if $(CONFIG_MACTELNET_PLAIN_SUPPORT),-DTELNET_SUPPORT) -TARGET_LDFLAGS += -Wl,--gc-sections +TARGET_CFLAGS += $(if $(CONFIG_MACTELNET_PLAIN_SUPPORT),-DTELNET_SUPPORT) # 1: name # 2: executable diff --git a/net/modemmanager/Makefile b/net/modemmanager/Makefile index e27988733..a79f65f67 100644 --- a/net/modemmanager/Makefile +++ b/net/modemmanager/Makefile @@ -20,13 +20,13 @@ PKG_LICENSE:=GPL-2.0-or-later PKG_LICENSE_FILES:=COPYING PKG_BUILD_DEPENDS:=glib2/host libxslt/host +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/nls.mk include $(INCLUDE_DIR)/meson.mk -TARGET_CFLAGS += -ffunction-sections -fdata-sections -fno-merge-all-constants -fmerge-constants -TARGET_LDFLAGS += -Wl,--gc-sections +TARGET_CFLAGS += -fno-merge-all-constants -fmerge-constants define Package/modemmanager/config source "$(SOURCE)/Config.in" diff --git a/net/mosh/Makefile b/net/mosh/Makefile index 1c3341a32..53b8659f4 100644 --- a/net/mosh/Makefile +++ b/net/mosh/Makefile @@ -22,6 +22,7 @@ PKG_LICENSE_FILES:=COPYING PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 PKG_BUILD_DEPENDS:=protobuf/host +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk @@ -95,8 +96,8 @@ CONFIGURE_ARGS += \ CONFIGURE_VARS += \ ac_cv_have_decl_ffs=yes -TARGET_CXXFLAGS += -ffunction-sections -fdata-sections -flto -std=c++11 -TARGET_LDFLAGS += -Wl,--gc-sections -lncurses +TARGET_CXXFLAGS += -flto -std=c++11 +TARGET_LDFLAGS += -lncurses define Package/mosh-client/install $(INSTALL_DIR) $(1)/usr/bin diff --git a/net/mrmctl/Makefile b/net/mrmctl/Makefile index a595cecbe..3fdf4cb86 100644 --- a/net/mrmctl/Makefile +++ b/net/mrmctl/Makefile @@ -22,6 +22,7 @@ PKG_LICENSE_FILES:=userland/COPYING PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk @@ -43,8 +44,8 @@ CONFIGURE_PATH:=userland CONFIGURE_ARGS += \ --enable-shared -TARGET_CFLAGS += -std=c89 -ffunction-sections -fdata-sections -flto -TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed +TARGET_CFLAGS += -std=c89 -flto +TARGET_LDFLAGS += -Wl,--as-needed define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include diff --git a/net/mtr/Makefile b/net/mtr/Makefile index 5e20e4faa..a340898ce 100644 --- a/net/mtr/Makefile +++ b/net/mtr/Makefile @@ -23,6 +23,7 @@ PKG_CPE_ID:=cpe:/a:matt_kimball_and_roger_wolff:mtr PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 PKG_FIXUP:=autoreconf +PKG_BUILD_FLAGS:=gc-sections CONFIGURE_ARGS += \ --without-gtk \ @@ -68,8 +69,7 @@ define Package/mtr/description running statistics about each machine. endef -TARGET_CFLAGS += -ffunction-sections -fdata-sections -TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed +TARGET_LDFLAGS += -Wl,--as-needed CONFIGURE_VARS += ac_cv_lib_cap_cap_set_proc=no diff --git a/net/netifyd/Makefile b/net/netifyd/Makefile index 6695acc65..8f05f6b7c 100644 --- a/net/netifyd/Makefile +++ b/net/netifyd/Makefile @@ -13,6 +13,7 @@ PKG_LICENSE:=GPL-3.0-or-later PKG_BUILD_PARALLEL:=1 PKG_FIXUP:=autoreconf PKG_INSTALL:=1 +PKG_BUILD_FLAGS:=gc-sections PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://gitlab.com/netify.ai/public/netify-agent.git @@ -50,9 +51,8 @@ define Package/netifyd/conffiles /etc/netify.d/site.uuid endef -TARGET_CFLAGS+=-ffunction-sections -fdata-sections -Wno-psabi -TARGET_CXXFLAGS+=-std=c++11 -ffunction-sections -fdata-sections -Wno-psabi -TARGET_LDFLAGS+=-Wl,--gc-sections +TARGET_CFLAGS+=-Wno-psabi +TARGET_CXXFLAGS+=-std=c++11 -Wno-psabi CONFIGURE_ARGS+= \ --sharedstatedir=/var/run \ diff --git a/net/nginx/Makefile b/net/nginx/Makefile index 438ee8525..aa43193ca 100644 --- a/net/nginx/Makefile +++ b/net/nginx/Makefile @@ -23,6 +23,7 @@ PKG_CPE_ID:=cpe:/a:nginx:nginx PKG_FIXUP:=autoreconf PKG_BUILD_PARALLEL:=1 PKG_INSTALL:=1 +PKG_BUILD_FLAGS:=gc-sections PKG_CONFIG_DEPENDS := \ CONFIG_NGINX_DAV \ @@ -328,8 +329,7 @@ define Package/nginx-mod-luci/description endef -TARGET_CFLAGS += -fvisibility=hidden -ffunction-sections -fdata-sections -DNGX_LUA_NO_BY_LUA_BLOCK -TARGET_LDFLAGS += -Wl,--gc-sections +TARGET_CFLAGS += -fvisibility=hidden -DNGX_LUA_NO_BY_LUA_BLOCK ifeq ($(CONFIG_NGINX_LUA),y) CONFIGURE_VARS += LUA_INC=$(STAGING_DIR)/usr/include \ diff --git a/net/openvpn/Makefile b/net/openvpn/Makefile index a512e364f..fd6e7bd54 100644 --- a/net/openvpn/Makefile +++ b/net/openvpn/Makefile @@ -23,6 +23,7 @@ PKG_MAINTAINER:=Magnus Kroken PKG_INSTALL:=1 PKG_FIXUP:=autoreconf PKG_BUILD_PARALLEL:=1 +PKG_BUILD_FLAGS:=gc-sections PKG_LICENSE:=GPL-2.0 PKG_CPE_ID:=cpe:/a:openvpn:openvpn @@ -66,9 +67,6 @@ CONFIGURE_VARS += \ IPROUTE=/sbin/ip \ NETSTAT=/sbin/netstat -TARGET_CFLAGS += -ffunction-sections -fdata-sections -TARGET_LDFLAGS += -Wl,--gc-sections - define Build/Configure $(call Build/Configure/Default, \ $(if $(CONFIG_OPENVPN_$(BUILD_VARIANT)_ENABLE_SMALL),--enable-small) \ diff --git a/net/samba4/Makefile b/net/samba4/Makefile index ee1ac2620..cdd05443c 100644 --- a/net/samba4/Makefile +++ b/net/samba4/Makefile @@ -15,6 +15,8 @@ PKG_SOURCE_URL:= \ https://download.samba.org/pub/samba/stable/ PKG_HASH:=70348656ef807be9c8be4465ca157cef4d99818e234253d2c684cc18b8408149 +PKG_BUILD_FLAGS:=gc-sections + PKG_LICENSE:=GPL-3.0-only PKG_LICENSE_FILES:=COPYING PKG_CPE_ID:=cpe:/a:samba:samba @@ -125,8 +127,8 @@ define Package/samba4-utils/description Utilities collection endef -TARGET_CFLAGS += $(FPIC) -ffunction-sections -fdata-sections -TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed +TARGET_CFLAGS += $(FPIC) +TARGET_LDFLAGS += -Wl,--as-needed # dont mess with sambas private rpath! RSTRIP:=: diff --git a/net/tor/Makefile b/net/tor/Makefile index ad320ac3d..cd5946b46 100644 --- a/net/tor/Makefile +++ b/net/tor/Makefile @@ -23,6 +23,7 @@ PKG_CPE_ID:=cpe:/a:torproject:tor PKG_INSTALL:=1 PKG_FIXUP:=autoreconf PKG_BUILD_PARALLEL:=1 +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk @@ -140,10 +141,10 @@ ifeq ($(BUILD_VARIANT),basic) endif -TARGET_CFLAGS += -ffunction-sections -fdata-sections -flto \ +TARGET_CFLAGS += -flto \ $(if $(CONFIG_OPENSSL_ENGINE),,-DDISABLE_ENGINES) -TARGET_LDFLAGS += -Wl,--gc-sections -flto +TARGET_LDFLAGS += -flto CONFIGURE_VARS += \ CROSS_COMPILE="yes" \ diff --git a/net/transmission/Makefile b/net/transmission/Makefile index e0c03f3ca..dc4244c09 100644 --- a/net/transmission/Makefile +++ b/net/transmission/Makefile @@ -23,6 +23,7 @@ PKG_CPE_ID:=cpe:/a:transmissionbt:transmission PKG_INSTALL:=1 PKG_BUILD_DEPENDS:=libb64 node/host PKG_BUILD_PARALLEL:=1 +PKG_BUILD_FLAGS:=gc-sections PKG_CONFIG_DEPENDS:= \ CONFIG_LIBCURL_GNUTLS \ CONFIG_LIBCURL_MBEDTLS \ @@ -91,8 +92,8 @@ define Package/transmission-daemon/conffiles /etc/config/transmission endef -TARGET_CFLAGS += -ffunction-sections -fdata-sections -flto -DHAVE_SIZE_T -latomic -TARGET_LDFLAGS += -Wl,--gc-sections -Wl,--as-needed +TARGET_CFLAGS += -flto -DHAVE_SIZE_T -latomic +TARGET_LDFLAGS += -Wl,--as-needed CMAKE_OPTIONS += \ -DENABLE_CLI:BOOL=YES \ diff --git a/net/zerotier/Makefile b/net/zerotier/Makefile index 01ad05248..98551b062 100644 --- a/net/zerotier/Makefile +++ b/net/zerotier/Makefile @@ -20,6 +20,7 @@ PKG_LICENSE_FILES:=LICENSE.txt PKG_ASLR_PIE:=0 PKG_BUILD_PARALLEL:=1 +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk @@ -58,8 +59,8 @@ endif endef # Make binary smaller -TARGET_CFLAGS += -ffunction-sections -fdata-sections -Wl,-z,noexecstack -TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed -Wl,-z,noexecstack +TARGET_CFLAGS += -Wl,-z,noexecstack +TARGET_LDFLAGS += -Wl,--as-needed -Wl,-z,noexecstack define Package/zerotier/conffiles /etc/config/zerotier diff --git a/sound/espeak/Makefile b/sound/espeak/Makefile index 778647e5b..bcd768614 100644 --- a/sound/espeak/Makefile +++ b/sound/espeak/Makefile @@ -20,6 +20,7 @@ PKG_LICENSE_FILES:=License.txt PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk @@ -50,8 +51,8 @@ MAKE_FLAGS+= \ MAKE_PATH:=./src -TARGET_CXXFLAGS += -std=c++14 -ffunction-sections -fdata-sections -flto -TARGET_LDFLAGS += $(FPIC) $(if $(CONFIG_USE_GLIBC),-lm) -Wl,--gc-sections,--as-needed +TARGET_CXXFLAGS += -std=c++14 -flto +TARGET_LDFLAGS += $(FPIC) $(if $(CONFIG_USE_GLIBC),-lm) -Wl,--as-needed define Package/espeak/install $(INSTALL_DIR) $(1)/usr/bin diff --git a/utils/acpid/Makefile b/utils/acpid/Makefile index 9328cbd7e..ec1d41c8a 100644 --- a/utils/acpid/Makefile +++ b/utils/acpid/Makefile @@ -22,6 +22,7 @@ PKG_CPE_ID:=cpe:/a:tedfelix:acpid PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk @@ -37,8 +38,8 @@ define Package/acpid/description The ACPI Daemon (acpid) With Netlink Support endef -TARGET_CFLAGS += -ffunction-sections -fdata-sections -flto -TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed +TARGET_CFLAGS += -flto +TARGET_LDFLAGS += -Wl,--as-needed define Package/acpid/install $(INSTALL_DIR) $(1)/usr/sbin diff --git a/utils/bluez/Makefile b/utils/bluez/Makefile index c585593cc..bee4e79a9 100644 --- a/utils/bluez/Makefile +++ b/utils/bluez/Makefile @@ -22,6 +22,7 @@ PKG_CPE_ID:=cpe:/a:bluez:bluez PKG_BUILD_PARALLEL:=1 PKG_INSTALL:=1 +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/nls.mk @@ -79,8 +80,7 @@ define Package/bluez-daemon/conffiles /etc/config/bluetooth endef -TARGET_CFLAGS += -D_GNU_SOURCE -ffunction-sections -fdata-sections -TARGET_LDFLAGS += -Wl,--gc-sections +TARGET_CFLAGS += -D_GNU_SOURCE CONFIGURE_ARGS += \ --enable-static \ diff --git a/utils/btrfs-progs/Makefile b/utils/btrfs-progs/Makefile index 0db5d69ca..8e6f306cf 100644 --- a/utils/btrfs-progs/Makefile +++ b/utils/btrfs-progs/Makefile @@ -21,6 +21,7 @@ PKG_LICENSE_FILES:=COPYING PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 PKG_BUILD_DEPENDS:=acl +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk @@ -56,8 +57,7 @@ endef boxprogs = btrfsck mkfs.btrfs btrfs-image btrfstune btrfs-find-root progs = btrfs-map-logical btrfs-select-super -TARGET_CFLAGS += -ffunction-sections -fdata-sections -TARGET_LDFLAGS += -Wl,--gc-sections -Wl,--as-needed +TARGET_LDFLAGS += -Wl,--as-needed EXTRA_CFLAGS=$(TARGET_CPPFLAGS) diff --git a/utils/dump1090/Makefile b/utils/dump1090/Makefile index 26ec46b16..2f37cd06d 100644 --- a/utils/dump1090/Makefile +++ b/utils/dump1090/Makefile @@ -21,6 +21,7 @@ PKG_LICENSE_FILES:=COPYING LICENSE PKG_BUILD_DEPENDS:=libusb PKG_BUILD_PARALLEL:=1 +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk @@ -56,8 +57,8 @@ MAKE_FLAGS += \ CFLAGS="$(TARGET_CFLAGS)" \ UNAME="Linux" -TARGET_CFLAGS += -ffunction-sections -fdata-sections -flto -TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed +TARGET_CFLAGS += -flto +TARGET_LDFLAGS += -Wl,--as-needed define Package/dump1090/conffiles /etc/config/dump1090 diff --git a/utils/gptfdisk/Makefile b/utils/gptfdisk/Makefile index 68badcc14..7295b6f6c 100644 --- a/utils/gptfdisk/Makefile +++ b/utils/gptfdisk/Makefile @@ -20,6 +20,7 @@ PKG_LICENSE:=GPL-2.0-or-later PKG_LICENSE_FILES:=COPYING PKG_BUILD_PARALLEL:=1 +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk @@ -72,8 +73,8 @@ define Package/fixparts/description Master Boot Record (MBR) partition tables endef -TARGET_CXXFLAGS += -std=c++11 -ffunction-sections -fdata-sections -fno-rtti -flto -Wno-format-security -TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed +TARGET_CXXFLAGS += -std=c++11 -fno-rtti -flto -Wno-format-security +TARGET_LDFLAGS += -Wl,--as-needed define Package/gdisk/install $(INSTALL_DIR) $(1)/usr/bin diff --git a/utils/readsb/Makefile b/utils/readsb/Makefile index e9ed05bde..47b966728 100644 --- a/utils/readsb/Makefile +++ b/utils/readsb/Makefile @@ -20,6 +20,7 @@ PKG_MAINTAINER:=Stijn Tintel PKG_BUILD_DEPENDS:=!USE_GLIBC:argp-standalone PKG_BUILD_PARALLEL:=1 +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk @@ -48,10 +49,10 @@ MAKE_FLAGS += \ RTLSDR=yes \ UNAME="Linux" -TARGET_CFLAGS += -ffunction-sections -fdata-sections -flto +TARGET_CFLAGS += -flto TARGET_LDFLAGS += \ $(if $(CONFIG_USE_GLIBC),,-largp) \ - -Wl,--gc-sections,--as-needed + -Wl,--as-needed define Package/readsb/conffiles /etc/config/readsb diff --git a/utils/zsh/Makefile b/utils/zsh/Makefile index 8a95c1511..9ab461df7 100644 --- a/utils/zsh/Makefile +++ b/utils/zsh/Makefile @@ -22,6 +22,7 @@ PKG_CPE_ID:=cpe:/a:zsh_project:zsh PKG_BUILD_PARALLEL:=1 PKG_INSTALL:=1 +PKG_BUILD_FLAGS:=gc-sections include $(INCLUDE_DIR)/package.mk @@ -82,8 +83,8 @@ define Build/Configure $(MAKE) -C $(PKG_BUILD_DIR) DESTDIR="$(PKG_INSTALL_DIR)" prep endef -TARGET_CFLAGS += $(FPIC) -ffunction-sections -fdata-sections -flto -TARGET_LDFLAGS += $(FPIC) -Wl,--gc-sections -flto +TARGET_CFLAGS += $(FPIC) -flto +TARGET_LDFLAGS += $(FPIC) -flto define Package/zsh/postinst #!/bin/sh