summaryrefslogtreecommitdiff
path: root/libc/Makeconfig
diff options
context:
space:
mode:
Diffstat (limited to 'libc/Makeconfig')
-rw-r--r--libc/Makeconfig6
1 files changed, 5 insertions, 1 deletions
diff --git a/libc/Makeconfig b/libc/Makeconfig
index 4ff8cbe40..a75ae7f50 100644
--- a/libc/Makeconfig
+++ b/libc/Makeconfig
@@ -407,6 +407,10 @@ as-needed :=
no-as-needed :=
endif
+# Must be supported by the linker.
+no-whole-archive = -Wl,--no-whole-archive
+whole-archive = -Wl,--whole-archive
+
# Installed name of the startup code.
ifneq ($(have-initfini),yes)
# When not having init/fini, there is just one startfile, called crt0.o.
@@ -707,7 +711,7 @@ libio-include = -I$(..)libio
# Note that we can't use -std=* in CPPFLAGS, because it overrides
# the implicit -lang-asm and breaks cpp behavior for .S files--notably
# it causes cpp to stop predefining __ASSEMBLER__.
-CPPFLAGS = $($(subdir)-CPPFLAGS) $(+includes) $(defines) \
+CPPFLAGS = $(CPPFLAGS-config) $($(subdir)-CPPFLAGS) $(+includes) $(defines) \
-include $(..)include/libc-symbols.h $(sysdep-CPPFLAGS) \
$(CPPFLAGS-$(suffix $@)) \
$(foreach lib,$(libof-$(basename $(@F))) \