43 lines
1.7 KiB
Diff
43 lines
1.7 KiB
Diff
2012-11-11 Magnus Granberg <zorry@gentoo.org>
|
|
|
|
#442712
|
|
* Makeconfig (+link): Set to +link-pie.
|
|
(+link-static-before-libc): Change $(static-start-installed-name) to
|
|
S$(static-start-installed-name).
|
|
(+prector): Set to +prectorS.
|
|
(+postctor): Set to +postctorS.
|
|
|
|
--- libc/Makeconfig
|
|
+++ libc/Makeconfig
|
|
@@ -447,11 +447,12 @@
|
|
$(common-objpfx)libc% $(+postinit),$^) \
|
|
$(link-extra-libs) $(link-libc) $(+postctorS) $(+postinit)
|
|
endif
|
|
++link = $(+link-pie)
|
|
# Command for statically linking programs with the C library.
|
|
ifndef +link-static
|
|
+link-static-before-libc = $(CC) -nostdlib -nostartfiles -static -o $@ \
|
|
$(sysdep-LDFLAGS) $(LDFLAGS) $(LDFLAGS-$(@F)) \
|
|
- $(addprefix $(csu-objpfx),$(static-start-installed-name)) \
|
|
+ $(addprefix $(csu-objpfx),S$(static-start-installed-name)) \
|
|
$(+preinit) $(+prectorT) \
|
|
$(filter-out $(addprefix $(csu-objpfx),start.o \
|
|
$(start-installed-name))\
|
|
@@ -549,11 +550,10 @@
|
|
ifeq ($(elf),yes)
|
|
+preinit = $(addprefix $(csu-objpfx),crti.o)
|
|
+postinit = $(addprefix $(csu-objpfx),crtn.o)
|
|
-+prector = `$(CC) $(sysdep-LDFLAGS) --print-file-name=crtbegin.o`
|
|
-+postctor = `$(CC) $(sysdep-LDFLAGS) --print-file-name=crtend.o`
|
|
-# Variants of the two previous definitions for linking PIE programs.
|
|
+prectorS = `$(CC) $(sysdep-LDFLAGS) --print-file-name=crtbeginS.o`
|
|
+postctorS = `$(CC) $(sysdep-LDFLAGS) --print-file-name=crtendS.o`
|
|
++prector = $(+prectorS)
|
|
++postctor = $(+postctorS)
|
|
# Variants of the two previous definitions for statically linking programs.
|
|
+prectorT = `$(CC) $(sysdep-LDFLAGS) --print-file-name=crtbeginT.o`
|
|
+postctorT = `$(CC) $(sysdep-LDFLAGS) --print-file-name=crtend.o`
|
|
+interp = $(addprefix $(elf-objpfx),interp.os)
|
|
endif
|
|
csu-objpfx = $(common-objpfx)csu/
|