commit 3f97c13982932dc2961ca96fe745f155b24ff631
parent 278a06a2dc58677b8dfd47e7a739050602c95d81
Author: Laurent Bercot <ska-skaware@skarnet.org>
Date: Mon, 26 Oct 2015 11:52:34 +0000
Separate sections for smaller static binaries (thanks Denys Vlasenko)
Diffstat:
1 file changed, 6 insertions(+), 0 deletions(-)
diff --git a/configure b/configure
@@ -297,6 +297,11 @@ tryflag CPPFLAGS_AUTO -Werror=implicit-function-declaration
tryflag CPPFLAGS_AUTO -Werror=implicit-int
tryflag CPPFLAGS_AUTO -Werror=pointer-sign
tryflag CPPFLAGS_AUTO -Werror=pointer-arith
+tryflag CFLAGS_AUTO -ffunction-sections
+tryflag CFLAGS_AUTO -fdata-sections
+
+tryldflag LDFLAGS_AUTO -Wl,--sort-section=alignment
+tryldflag LDFLAGS_AUTO -Wl,--sort-common
if $evenmorestatic ; then
LDFLAGS_NOSHARED=-static
@@ -310,6 +315,7 @@ LDFLAGS_SHARED="${LDFLAGS_SHARED}${addlibdpath}"
if $allstatic ; then
LDFLAGS_NOSHARED="${LDFLAGS_NOSHARED}${addlibspath}"
+ tryldflag LDFLAGS_NOSHARED -Wl,--gc-sections
else
LDFLAGS_NOSHARED="${LDFLAGS_NOSHARED}${addlibdpath}"
fi