Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Use crtbeginT.o to statically link programs
  • Loading branch information
H.J. Lu committed Sep 6, 2012
1 parent 48bac3d commit a5055ad
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 5 deletions.
12 changes: 12 additions & 0 deletions ChangeLog
@@ -1,3 +1,15 @@
2012-09-06 H.J. Lu <hongjiu.lu@intel.com>

[BZ #14544]
* Makeconfig (link-static-before-libc): Replace $(+prector)
with $(+prectorT).
(link-static-after-libc): Replace $(+postctor) with
$(+postctorT).
(link-bounded): Replace $(+prector)/$(+postctor) with
$(+prectorT)/$(+postctorT).
(+prectorT): New macro.
(+postctorT): Likewise.

2012-09-06 Joseph Myers <joseph@codesourcery.com>

* stdlib/gen-tst-strtod-round.c: Include <assert.h>.
Expand Down
11 changes: 7 additions & 4 deletions Makeconfig
Expand Up @@ -445,13 +445,13 @@ ifndef +link-static
+link-static-before-libc = $(CC) -nostdlib -nostartfiles -static -o $@ \
$(sysdep-LDFLAGS) $(LDFLAGS) $(LDFLAGS-$(@F)) \
$(addprefix $(csu-objpfx),$(static-start-installed-name)) \
$(+preinit) $(+prector) \
$(+preinit) $(+prectorT) \
$(filter-out $(addprefix $(csu-objpfx),start.o \
$(start-installed-name))\
$(+preinit) $(link-extra-libs-static) \
$(common-objpfx)libc% $(+postinit),$^) \
$(link-extra-libs-static) $(link-libc-static)
+link-static-after-libc = $(+postctor) $(+postinit)
+link-static-after-libc = $(+postctorT) $(+postinit)
+link-static = $(+link-static-before-libc) $(link-libc-static) \
$(+link-static-after-libc)
+link-static-tests = $(+link-static-before-libc) $(link-libc-static-tests) \
Expand All @@ -462,12 +462,12 @@ ifndef +link-bounded
+link-bounded = $(CC) -nostdlib -nostartfiles -static -fbounded-pointers -o $@ \
$(sysdep-LDFLAGS) $(LDFLAGS) \
$(addprefix $(csu-objpfx),b$(static-start-installed-name)) \
$(+preinit) $(+prector) \
$(+preinit) $(+prectorT) \
$(filter-out $(addprefix $(csu-objpfx),start.ob \
$(start-installed-name))\
$(+preinit) $(link-extra-libs-bounded) \
$(common-objpfx)libc% $(+postinit),$^) \
$(link-extra-libs-bounded) $(link-libc-bounded) $(+postctor) $(+postinit)
$(link-extra-libs-bounded) $(link-libc-bounded) $(+postctorT) $(+postinit)
endif
ifndef config-LDFLAGS
ifeq (yes,$(build-shared))
Expand Down Expand Up @@ -579,6 +579,9 @@ endif
# 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`
# 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=crtendS.o`
+interp = $(addprefix $(elf-objpfx),interp.os)
csu-objpfx = $(common-objpfx)csu/
elf-objpfx = $(common-objpfx)elf/
Expand Down
2 changes: 1 addition & 1 deletion NEWS
Expand Up @@ -13,7 +13,7 @@ Version 2.17
13939, 13966, 14042, 14090, 14166, 14150, 14151, 14154, 14157, 14166,
14173, 14195, 14237, 14252, 14283, 14298, 14303, 14307, 14328, 14331,
14336, 14337, 14347, 14349, 14459, 14476, 14505, 14510, 14516, 14519,
14532, 14538
14532, 14538, 14544

* Support for STT_GNU_IFUNC symbols added for s390 and s390x.
Optimized versions of memcpy, memset, and memcmp added for System z10 and
Expand Down

0 comments on commit a5055ad

Please sign in to comment.