aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Config.in8
-rw-r--r--Makefile.flags3
2 files changed, 10 insertions, 1 deletions
diff --git a/Config.in b/Config.in
index ac5b13b8d..a98a8b15b 100644
--- a/Config.in
+++ b/Config.in
@@ -529,6 +529,14 @@ config STACK_OPTIMIZATION_386
do not work with it (they use SSE instructions without
ensuring stack alignment).
+config STATIC_LIBGCC
+ bool "Use -static-libgcc"
+ default y
+ help
+ This option instructs gcc to link in a static version of its
+ support library, libgcc. This means that the binary will require
+ one fewer dynamic library at run time.
+
comment 'Installation Options ("make install" behavior)'
choice
diff --git a/Makefile.flags b/Makefile.flags
index cff935ff5..6ff4d7239 100644
--- a/Makefile.flags
+++ b/Makefile.flags
@@ -58,7 +58,8 @@ CFLAGS += $(call cc-option,-fno-builtin-strlen -fomit-frame-pointer -ffunction-s
CFLAGS += $(call cc-option,-fno-guess-branch-probability,)
CFLAGS += $(call cc-option,-funsigned-char,)
-ifneq ($(CC),clang)
+ifeq ($(CONFIG_STATIC_LIBGCC),y)
+# Disable it, for example, if you get
# "clang-9: warning: argument unused during compilation: '-static-libgcc'"
CFLAGS += $(call cc-option,-static-libgcc,)
endif