From 88866099db3973a1b4d3bb0fb3f45efea067e4e8 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Tue, 23 Oct 2012 22:05:28 +0000 Subject: [PATCH] Refactor parts of run-program-prefix and built-program-cmd into new run-via-rtld-prefix. --- ChangeLog | 7 +++++++ Makeconfig | 31 ++++++++++++++++++++++--------- 2 files changed, 29 insertions(+), 9 deletions(-) diff --git a/ChangeLog b/ChangeLog index a3a6d34269..19791f6395 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2012-10-23 Joseph Myers + Jim Blandy + + * Makeconfig (run-via-rtld-prefix): New variable. + (run-program-prefix): Define in terms of $(run-via-rtld-prefix). + (built-program-cmd): Likewise. + 2012-10-22 Andreas Jaeger * sysdeps/unix/sysv/linux/bits/fcntl-linux.h (O_RSYNC): Define to diff --git a/Makeconfig b/Makeconfig index 9dadc3f177..0a78b76e3a 100644 --- a/Makeconfig +++ b/Makeconfig @@ -573,17 +573,30 @@ sysdep-library-path = \ $(subst $(empty) ,:,$(strip $(patsubst -Wl$(comma)-rpath-link=%, %,\ $(filter -Wl$(comma)-rpath-link=%,\ $(sysdep-LDFLAGS))))) -run-program-prefix = $(if $(filter $(notdir $(built-program-file)),\ - $(tests-static) $(xtests-static)),, \ - $(elf-objpfx)$(rtld-installed-name) \ - --library-path $(rpath-link)$(patsubst %,:%,$(sysdep-library-path))) +# $(run-via-rtld-prefix) is a command that, when prepended to the name +# of a program built with the newly built library, produces a command +# that, executed on the host for which the library is built, runs that +# program. For the statically-linked %-bp test programs, and for +# tests listed in tests-static or xtests-static, it is empty. +run-via-rtld-prefix = \ + $(if $(strip $(filter $(notdir $(built-program-file)), \ + $(tests-static) $(xtests-static)) \ + $(filter %-bp,$(built-program-file))),, \ + $(elf-objpfx)$(rtld-installed-name) \ + --library-path $(rpath-link)$(patsubst %,:%,$(sysdep-library-path))) else -run-program-prefix = +run-via-rtld-prefix = endif -# Never use $(run-program-prefix) for the statically-linked %-bp test programs -built-program-cmd = $(patsubst %,$(run-program-prefix),\ - $(filter-out %-bp,$(built-program-file))) \ - $(built-program-file) +# $(run-via-rtld-prefix) is a command that, when prepended to the name +# of a program built with the newly built library, produces a command +# that, executed on the build system on which "make" is run, runs that +# program. +run-program-prefix = $(run-via-rtld-prefix) +# $(built-program-cmd) is a command that, executed on the build system +# on which "make" is run, runs the newly built program that is the +# second dependency of the makefile target in which +# $(built-program-cmd) is used. +built-program-cmd = $(run-via-rtld-prefix) $(built-program-file) ifndef LD LD := ld -X