diff options
Diffstat (limited to 'elf/Makefile')
-rw-r--r-- | elf/Makefile | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/elf/Makefile b/elf/Makefile index 41c19668c3..72004484db 100644 --- a/elf/Makefile +++ b/elf/Makefile @@ -36,7 +36,7 @@ dl-routines = $(addprefix dl-,load lookup object reloc deps \ exception sort-maps lookup-direct \ call-libc-early-init write \ thread_gscope_wait tls_init_tp \ - debug-symbols) + debug-symbols minimal-malloc) ifeq (yes,$(use-ldconfig)) dl-routines += dl-cache endif @@ -75,6 +75,11 @@ CFLAGS-dl-runtime.c += -fexceptions -fasynchronous-unwind-tables CFLAGS-dl-lookup.c += -fexceptions -fasynchronous-unwind-tables CFLAGS-dl-iteratephdr.c += $(uses-callbacks) +# Called during static library initialization, so turn stack-protection +# off for non-shared builds. +CFLAGS-dl-minimal-malloc.o = $(no-stack-protector) +CFLAGS-dl-minimal-malloc.op = $(no-stack-protector) + # On targets without __builtin_memset, rtld.c uses a hand-coded loop # in _dl_start. Make sure this isn't turned into a call to regular memset. ifeq (yes,$(have-loop-to-function)) |