From 4134b50d6789c333707b1861a32314805bd0de5e Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Wed, 21 May 2014 16:52:08 +0000 Subject: [PATCH] Consistently use $(elf-objpfx). As previously noted , $(elf-objpfx) and $(elfobjdir) are redundant and should be consolidated. This patch consolidates on $(elf-objpfx) (for consistency with $(csu-objpfx)), also changing direct uses of $(common-objpfx)elf/ to use $(elf-objpfx). Tested x86_64, including that installed shared libraries are unchanged by the patch. * Makeconfig [$(build-hardcoded-path-in-tests) = yes] (rtld-tests-LDFLAGS): Use $(elf-objpfx) instead of $(common-objpfx)elf/. (link-libc-before-gnulib): Likewise. (elfobjdir): Remove variable. * Makefile (install): Use $(elf-objpfx) instead of $(common-objpfx)elf/. * Makerules (link-libc-args): Use $(elf-objpfx) instead of $(elfobjdir)/. (link-libc-deps): Likewise. ($(common-objpfx)libc.so): Likewise. ($(common-objpfx)linkobj/libc.so): Likewise. [$(cross-compiling) = no] (symbolic-link-prog): Use $(elf-objpfx) instead of $(common-objpfx)elf/. (symbolic-link-list): Likewise. * iconvdata/Makefile ($(inst_gconvdir)/gconv-modules) [$(cross-compiling) = no]: Likewise. * sysdeps/arm/Makefile (gnulib-arch): Use $(elf-objpfx) instead of $(elfobjdir)/. (static-gnulib-arch): Likewise. * sysdeps/s390/s390-64/Makefile ($(inst_gconvdir)/gconv-modules) [$(cross-compiling) = no]: Use $(elf-objpfx) instead of $(common-objpfx)elf/. localedata/ChangeLog: * Makefile (LOCALEDEF): Use $(elf-objpfx) instead of $(common-objpfx)elf/. --- ChangeLog | 26 ++++++++++++++++++++++++++ Makeconfig | 6 ++---- Makefile | 6 +++--- Makerules | 24 ++++++++++++------------ iconvdata/Makefile | 2 +- localedata/ChangeLog | 5 +++++ localedata/Makefile | 2 +- sysdeps/arm/Makefile | 4 ++-- sysdeps/s390/s390-64/Makefile | 2 +- 9 files changed, 53 insertions(+), 24 deletions(-) diff --git a/ChangeLog b/ChangeLog index f25bd3f10f..a5a6623460 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,29 @@ +2014-05-21 Joseph Myers + + * Makeconfig [$(build-hardcoded-path-in-tests) = yes] + (rtld-tests-LDFLAGS): Use $(elf-objpfx) instead of + $(common-objpfx)elf/. + (link-libc-before-gnulib): Likewise. + (elfobjdir): Remove variable. + * Makefile (install): Use $(elf-objpfx) instead of + $(common-objpfx)elf/. + * Makerules (link-libc-args): Use $(elf-objpfx) instead of + $(elfobjdir)/. + (link-libc-deps): Likewise. + ($(common-objpfx)libc.so): Likewise. + ($(common-objpfx)linkobj/libc.so): Likewise. + [$(cross-compiling) = no] (symbolic-link-prog): Use $(elf-objpfx) + instead of $(common-objpfx)elf/. + (symbolic-link-list): Likewise. + * iconvdata/Makefile ($(inst_gconvdir)/gconv-modules) + [$(cross-compiling) = no]: Likewise. + * sysdeps/arm/Makefile (gnulib-arch): Use $(elf-objpfx) instead of + $(elfobjdir)/. + (static-gnulib-arch): Likewise. + * sysdeps/s390/s390-64/Makefile ($(inst_gconvdir)/gconv-modules) + [$(cross-compiling) = no]: Use $(elf-objpfx) instead of + $(common-objpfx)elf/. + 2014-05-21 Richard Henderson * sysdeps/unix/sysv/linux/aarch64/nptl/sysdep-cancel.h diff --git a/Makeconfig b/Makeconfig index 2df4c88e1a..736190bc10 100644 --- a/Makeconfig +++ b/Makeconfig @@ -451,7 +451,7 @@ rtld-LDFLAGS = -Wl,-dynamic-linker=$(rtlddir)/$(rtld-installed-name) endif ifndef rtld-tests-LDFLAGS ifeq (yes,$(build-hardcoded-path-in-tests)) -rtld-tests-LDFLAGS = -Wl,-dynamic-linker=$(common-objpfx)elf/ld.so +rtld-tests-LDFLAGS = -Wl,-dynamic-linker=$(elf-objpfx)ld.so else rtld-tests-LDFLAGS = $(rtld-LDFLAGS) endif @@ -470,7 +470,7 @@ link-libc-tests-rpath-link = $(link-libc-rpath-link) endif link-libc-before-gnulib = $(common-objpfx)libc.so$(libc.so-version) \ $(common-objpfx)$(patsubst %,$(libtype.oS),c) \ - $(as-needed) $(common-objpfx)elf/ld.so \ + $(as-needed) $(elf-objpfx)ld.so \ $(no-as-needed) link-libc = $(link-libc-rpath-link) $(link-libc-before-gnulib) $(gnulib) link-libc-tests = $(link-libc-tests-rpath-link) \ @@ -485,8 +485,6 @@ link-libc-tests = $(common-objpfx)libc.a $(otherlibs) $(gnulib-tests) $(common-o endif endif -elfobjdir := $(patsubst ../$(subdir),.,$(common-objpfx)elf) - # Differences in the linkers on the various platforms. LDFLAGS-rpath-ORIGIN = -Wl,-rpath,'$$ORIGIN' LDFLAGS-soname-fname = -Wl,-soname,$(@F) diff --git a/Makefile b/Makefile index e026fb18c3..2eab98c3f6 100644 --- a/Makefile +++ b/Makefile @@ -105,9 +105,9 @@ install-symbolic-link: subdir_install rm -f $(symbolic-link-list) install: - -test ! -x $(common-objpfx)elf/ldconfig || LC_ALL=C LANGUAGE=C \ - $(common-objpfx)elf/ldconfig $(addprefix -r ,$(install_root)) \ - $(slibdir) $(libdir) + -test ! -x $(elf-objpfx)ldconfig || LC_ALL=C LANGUAGE=C \ + $(elf-objpfx)ldconfig $(addprefix -r ,$(install_root)) \ + $(slibdir) $(libdir) ifneq (no,$(PERL)) ifeq (/usr,$(prefix)) ifeq (,$(install_root)) diff --git a/Makerules b/Makerules index 4427f4eb03..817d07ed4a 100644 --- a/Makerules +++ b/Makerules @@ -417,7 +417,7 @@ endif link-libc-args = -Wl,--start-group \ $(libc-for-link) \ $(common-objpfx)libc_nonshared.a \ - $(as-needed) $(elfobjdir)/ld.so $(no-as-needed) \ + $(as-needed) $(elf-objpfx)ld.so $(no-as-needed) \ -Wl,--end-group # The corresponding shared libc to use. This may be modified for a @@ -428,7 +428,7 @@ libc-for-link = $(common-objpfx)libc.so # not just commands, they cannot use target-specific variables so need # to name both possible libc.so objects. link-libc-deps = $(common-objpfx)libc.so $(common-objpfx)linkobj/libc.so \ - $(common-objpfx)libc_nonshared.a $(elfobjdir)/ld.so + $(common-objpfx)libc_nonshared.a $(elf-objpfx)ld.so # Pattern rule to build a shared object from an archive of PIC objects. # This must come after the installation rules so Make doesn't try to @@ -592,19 +592,19 @@ $(common-objpfx)linkobj/libc.so: link-libc-deps = # empty # Use our own special initializer and finalizer files for the libc.so # libraries. -$(common-objpfx)libc.so: $(elfobjdir)/soinit.os \ +$(common-objpfx)libc.so: $(elf-objpfx)soinit.os \ $(common-objpfx)libc_pic.os$(libc_pic_clean) \ - $(elfobjdir)/sofini.os \ - $(elfobjdir)/interp.os \ - $(elfobjdir)/ld.so \ + $(elf-objpfx)sofini.os \ + $(elf-objpfx)interp.os \ + $(elf-objpfx)ld.so \ $(shlib-lds) $(build-shlib) -$(common-objpfx)linkobj/libc.so: $(elfobjdir)/soinit.os \ +$(common-objpfx)linkobj/libc.so: $(elf-objpfx)soinit.os \ $(common-objpfx)linkobj/libc_pic.a \ - $(elfobjdir)/sofini.os \ - $(elfobjdir)/interp.os \ - $(elfobjdir)/ld.so \ + $(elf-objpfx)sofini.os \ + $(elf-objpfx)interp.os \ + $(elf-objpfx)ld.so \ $(shlib-lds) $(build-shlib) @@ -895,8 +895,8 @@ endif ifeq (yes,$(build-shared)) ifeq (no,$(cross-compiling)) -symbolic-link-prog := $(common-objpfx)elf/sln -symbolic-link-list := $(common-objpfx)elf/symlink.list +symbolic-link-prog := $(elf-objpfx)sln +symbolic-link-list := $(elf-objpfx)symlink.list define make-shlib-link echo `$(..)scripts/rellns-sh -p $< $@` $@ >> $(symbolic-link-list) endef diff --git a/iconvdata/Makefile b/iconvdata/Makefile index 60d8bd3b81..074d330c75 100644 --- a/iconvdata/Makefile +++ b/iconvdata/Makefile @@ -255,7 +255,7 @@ ifeq (no,$(cross-compiling)) # if this libc has more gconv modules than the previously installed one. if test -f "$(inst_gconvdir)/gconv-modules.cache"; then \ LC_ALL=C LANGUAGE=C \ - $(common-objpfx)elf/ld.so --library-path $(rpath-link) \ + $(elf-objpfx)ld.so --library-path $(rpath-link) \ $(common-objpfx)iconv/iconvconfig \ $(addprefix --prefix=,$(install_root)); \ fi diff --git a/localedata/ChangeLog b/localedata/ChangeLog index 7db10fb9ef..35dd877a9e 100644 --- a/localedata/ChangeLog +++ b/localedata/ChangeLog @@ -1,3 +1,8 @@ +2014-05-21 Joseph Myers + + * Makefile (LOCALEDEF): Use $(elf-objpfx) instead of + $(common-objpfx)elf/. + 2014-03-07 Joseph Myers * Makefile (LOCALES): Move definition above include of Rules. diff --git a/localedata/Makefile b/localedata/Makefile index 48ec3de9c9..d7ab445676 100644 --- a/localedata/Makefile +++ b/localedata/Makefile @@ -216,7 +216,7 @@ INSTALL-SUPPORTED-LOCALES=$(addprefix install-, $(SUPPORTED-LOCALES)) # Sometimes the whole collection of locale files should be installed. LOCALEDEF=I18NPATH=. GCONV_PATH=$(common-objpfx)iconvdata LC_ALL=C \ -$(common-objpfx)elf/ld.so --library-path $(rpath-link) $(common-objpfx)locale/localedef +$(elf-objpfx)ld.so --library-path $(rpath-link) $(common-objpfx)locale/localedef install-locales: $(INSTALL-SUPPORTED-LOCALES) install-locales-dir: diff --git a/sysdeps/arm/Makefile b/sysdeps/arm/Makefile index b218e76eac..daaf4aa922 100644 --- a/sysdeps/arm/Makefile +++ b/sysdeps/arm/Makefile @@ -1,5 +1,5 @@ -gnulib-arch = $(elfobjdir)/libgcc-stubs.a -static-gnulib-arch = $(elfobjdir)/libgcc-stubs.a +gnulib-arch = $(elf-objpfx)libgcc-stubs.a +static-gnulib-arch = $(elf-objpfx)libgcc-stubs.a ifeq ($(subdir),elf) sysdep-dl-routines += tlsdesc dl-tlsdesc diff --git a/sysdeps/s390/s390-64/Makefile b/sysdeps/s390/s390-64/Makefile index 37f021c5e0..9fee71b515 100644 --- a/sysdeps/s390/s390-64/Makefile +++ b/sysdeps/s390/s390-64/Makefile @@ -77,7 +77,7 @@ ifeq (no,$(cross-compiling)) # if this libc has more gconv modules than the previously installed one. if test -f "$(inst_gconvdir)/gconv-modules.cache"; then \ LC_ALL=C LANGUAGE=C \ - $(common-objpfx)elf/ld.so --library-path $(rpath-link) \ + $(elf-objpfx)ld.so --library-path $(rpath-link) \ $(common-objpfx)iconv/iconvconfig \ $(addprefix --prefix=,$(install_root)); \ fi