summaryrefslogtreecommitdiff
path: root/scripts/move-if-change
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2017-10-29 12:03:03 -0700
committerH.J. Lu <hjl.tools@gmail.com>2017-10-29 12:03:03 -0700
commitd7ca99d742d11803ab0e2b594ab828886bc069dc (patch)
tree67937374332e2f56b870d306f18e671e6f759df3 /scripts/move-if-change
parent3242db2138de7e0786ee3806f8bd016925d06099 (diff)
downloadglibc-hjl/pr22362/symlink.tar.gz
nptl: Simplify libpthread.so ruleshjl/pr22362/symlink
libpthread.so must be created against a special crti.o and when multi-lib GCC is used to build glibc, the special crti.o must be placed under the `gcc -print-multi-directory` subdirectory so that -B$(common-objpfx)nptl/ will pick it up. This patch compiles the special crti.o directly with "-include pt-crti.h" and uses the new make-link-multidir from the fix for [BZ #22362] to create the symlink for the multi-lib subdirectory. It simplifies libpthread.so rules to support -B$(common-objpfx)nptl/ and -B$(common-objpfx)/ for correct crt*.o files. Tested on x86-64 for x86-64, i686 and x32. * nptl/Makefile (multidir.mk): Don't generate. ($(objpfx)multidir.mk): Removed. (crtn-objs): Likewise. (generated-dirs): Don't add $(multidir). (multilib-crti-objs): New. (extra-objs): Use $(multilib-crti-objs). Don't add pt-crti.o. ($(objpfx)libpthread.so): Removed. (CPPFLAGS-crti.o): New. ($(objpfx)crti.o): Removed. ($(objpfx)$(multidir)/crti.o): Likewise. ($(objpfx)$(multidir)/crtn.o): Likewise. ($(addprefix $(objpfx)$(multidir)/, $(crti-objs))): New target. (generated): Remove multidir.mk. * nptl/pt-crti.S: Renamed to ... * nptl/pt-crti.h: This. Don't include <crti.S>.
Diffstat (limited to 'scripts/move-if-change')
0 files changed, 0 insertions, 0 deletions