From 740b3dbee8ef034019b240dc4838b39dfa0c01e2 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Fri, 11 Jan 2013 07:14:18 -0800 Subject: [PATCH] Add --enable-hardcoded-path-in-tests configure option --- ChangeLog | 126 ++++++++++++++++++++++++++++++++++++ Makeconfig | 83 ++++++++++++++++++++---- Makefile | 2 +- Makerules | 8 +-- Rules | 23 +++++-- catgets/Makefile | 2 +- catgets/test-gencat.sh | 4 +- config.make.in | 1 + configure | 14 ++++ configure.in | 7 ++ elf/Makefile | 32 ++++----- grp/Makefile | 2 +- grp/tst_fgetgrent.sh | 10 +-- iconvdata/Makefile | 2 +- iconvdata/tst-table.sh | 6 +- iconvdata/tst-tables.sh | 4 +- intl/Makefile | 10 +-- intl/tst-gettext.sh | 4 +- intl/tst-gettext2.sh | 4 +- intl/tst-gettext4.sh | 4 +- intl/tst-gettext6.sh | 4 +- intl/tst-translit.sh | 4 +- io/Makefile | 2 +- libio/Makefile | 2 +- libio/test-freopen.sh | 4 +- localedata/ChangeLog | 27 ++++++++ localedata/Makefile | 21 +++--- localedata/sort-test.sh | 6 +- localedata/tst-fmon.sh | 5 +- localedata/tst-mbswcs.sh | 12 ++-- localedata/tst-numeric.sh | 4 +- localedata/tst-trans.sh | 3 +- malloc/Makefile | 2 +- malloc/tst-mtrace.sh | 4 +- manual/install.texi | 5 ++ nptl/ChangeLog | 17 ++++- nptl/Makefile | 12 ++-- nptl/tst-tls6.sh | 6 +- posix/Makefile | 12 ++-- posix/globtest.sh | 101 ++++++++++++++--------------- posix/wordexp-tst.sh | 22 +++---- rt/Makefile | 2 +- stdio-common/Makefile | 6 +- stdio-common/tst-printf.sh | 4 +- stdio-common/tst-unbputc.sh | 4 +- stdlib/Makefile | 2 +- stdlib/tst-fmtmsg.sh | 4 +- string/Makefile | 2 +- 48 files changed, 449 insertions(+), 198 deletions(-) diff --git a/ChangeLog b/ChangeLog index 8bf5772907..dc9ea9596e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,129 @@ +2013-01-11 H.J. Lu + + * Makeconfig (+link-pie-before-libc): New. + (+link-pie-after-libc): Likewise. + (+link-pie-tests): Likewise. + (+link-pie): Rewritten. + (link-before-libc): Remove $(config-LDFLAGS). + (+link): Add $(rtld-LDFLAGS) after $(+link-before-libc). + (+link-tests): Add $(rtld-tests-LDFLAGS) after $(+link-before-libc). + (config-LDFLAGS): Renamed to ... + (rtld-LDFLAGS): This. + (rtld-tests-LDFLAGS): New macro. + (link-libc-rpath-link): Likewise. + (link-libc-tests-rpath-link): Likewise. + (link-libc-before-gnulib): Remove -Wl,-rpath-link=$(rpath-link). + (link-libc): Prepand $(link-libc-rpath-link). + (link-libc-tests): Prepand $(link-libc-tests-rpath-link). + (test-program-prefix): New macro. + (test-via-rtld-prefix): Likewise. + (test-program-cmd): Likewise. + (host-test-program-cmd): Likewise. + * Makefile ($(common-objpfx)testrun.sh): Replace + $(run-program-prefix) with $(test-program-prefix). + * Makerules ($(LINK.o)): Replace $(config-LDFLAGS) with + $(rtld-LDFLAGS). + ($(common-objpfx)shlib.lds): Likewise. + (build-module-helper): Likewise. + ($(common-objpfx)format.lds): Likewise. + * Rules (binaries-pie-tests): New. + (binaries-pie-notests): Likewise. + (binaries-pie): Rewritten. + ($(addprefix $(objpfx),$(binaries-pie))): Renamed to ... + ($(addprefix $(objpfx),$(binaries-pie-notests))): This. + ($(addprefix $(objpfx),$(binaries-pie-tests))): New. + (make-test-out): Replace $(host-built-program-cmd) with + $(host-test-program-cmd). + * config.make.in (build-hardcoded-path-in-tests): New variable. + * configure.in (--enable-hardcoded-path-in-tests): New configure + option. + (hardcoded_path_in_tests): New AC_SUBST. + * configure: Regenerated. + * catgets/Makefile ($(objpfx)test-gencat.out): Replace + $(built-program-cmd) with $(test-program-cmd). + * catgets/test-gencat.sh (run_program_cmd): Renamed to ... + (test_program_cmd): This. + * elf/Makefile ($(objpfx)order.out): Run test with + $(test-program-prefix). + ($(objpfx)order2.out): Likewise. + ($(objpfx)tst-initorder.out): Likewise. + ($(objpfx)tst-initorder2.out): Likewise. + ($(objpfx)tst-array1.out): Replace $(built-program-cmd) with + $(test-program-cmd). + ($(objpfx)tst-array1-static.out): Likewise. + ($(objpfx)tst-array2.out): Likewise. + ($(objpfx)tst-array3.out): Likewise. + ($(objpfx)tst-array4.out): Likewise. + ($(objpfx)tst-array5.out): Likewise. + ($(objpfx)tst-array5-static.out): Likewise. + (tst-stackguard1-ARGS): Replace $(built-program-cmd) with + $(test-program-cmd). + * grp/Makefile ($(objpfx)tst_fgetgrent.out): Replace + $(run-program-prefix) with $(test-program-prefix). + * grp/tst_fgetgrent.sh (run_program_prefix): Renamed to ... + (test_program_prefix): This. + * iconvdata/Makefile ($(objpfx)tst-tables.out): Replace + $(run-program-prefix) with $(test-program-prefix). + * iconvdata/tst-table.sh (run_program_prefix): Renamed to ... + (test_program_prefix): This. + * iconvdata/tst-tables.sh: Likewise. + * intl/Makefile ($(objpfx)tst-gettext.out): Replace + $(run-program-prefix) with $(test-program-prefix). + ($(objpfx)tst-translit.out): Likewise. + ($(objpfx)tst-gettext2.out): Likewise. + ($(objpfx)tst-gettext4.out): Likewise. + ($(objpfx)tst-gettext6.out): Likewise. + * intl/tst-gettext.sh (run_program_prefix): Renamed to ... + (test_program_prefix): This. + * intl/tst-gettext2.sh: Likewise. + * intl/tst-gettext4.sh Likewise. + * intl/tst-gettext6.sh: Likewise. + * intl/tst-translit.sh: Likewise. + * io/Makefile ($(objpfx)ftwtest.out): Replace $(run-program-cmd) + with $(test-program-cmd). + * libio/Makefile ($(objpfx)test-freopen.out): Replace + $(run-program-prefix) with $(test-program-prefix). + * libio/test-freopen.sh (run_program_prefix): Renamed to ... + (test_program_prefix): This. + * malloc/Makefile ($(objpfx)tst-mtrace.out): Replace + $(run-program-prefix) with $(test-program-prefix). + * malloc/tst-mtrace.sh (run_program_prefix): Renamed to ... + (test_program_prefix): This. + * manual/install.texi: Document --enable-hardcoded-path-in-tests. + * posix/Makefile ($(objpfx)globtest.out): Replace + $(run-via-rtld-prefix) and $(test-wrapper) with + $(test-program-prefix) and $(test-via-rtld-prefix). + ($(objpfx)wordexp-tst.out): Replace $(run-program-prefix) with + $(test-program-prefix). + (tst-exec-ARGS): Replace $(host-built-program-cmd) with + $(host-test-program-cmd). + (tst-spawn-ARGS): Likewise. + ($(objpfx)tst-rxspencer-mem): Replace $(run-program-prefix) with + $(test-program-prefix). + * posix/globtest.sh (un_via_rtld_prefix): Renamed to ... + (test_via_rtld_prefix): This. + (test_wrapper): Renamed to ... + (test_program_prefix): This. + (run_program_prefix): Replaced by test_program_prefix. + * posix/wordexp-tst.sh (run_program_prefix): Renamed to ... + (test_program_prefix): This. + * rt/Makefile (tst-mqueue7-ARGS): Replace $(host-built-program-cmd) + with $(host-test-program-cmd). + * stdio-common/Makefile ($(objpfx)tst-unbputc.out): Replace + $(run-program-prefix) with $(test-program-prefix). + ($(objpfx)tst-printf.out): Likewise. + ($(objpfx)tst-setvbuf1.out): Replace $(built-program-cmd) with + $(test-program-cmd). + * stdio-common/tst-printf.sh (run_program_prefix): Renamed to ... + (test_program_prefix): This. + * stdio-common/tst-unbputc.sh: Likewise. + * stdlib/Makefile ($(objpfx)tst-fmtmsg.out): Replace + $(run-program-prefix) with $(test-program-prefix). + * stdlib/tst-fmtmsg.sh (run_program_prefix): Renamed to ... + (test_program_prefix): This. + * string/Makefile ($(objpfx)tst-svc.out): Replace + $(built-program-cmd) with $(test-program-cmd). + 2013-01-11 Andreas Jaeger [BZ #15003] diff --git a/Makeconfig b/Makeconfig index d2158f1e74..8da4ad3b4a 100644 --- a/Makeconfig +++ b/Makeconfig @@ -379,8 +379,8 @@ endif # Command for linking PIE programs with the C library. ifndef +link-pie -+link-pie = $(CC) -pie -Wl,-O1 -nostdlib -nostartfiles -o $@ \ - $(sysdep-LDFLAGS) $(config-LDFLAGS) $(LDFLAGS) $(LDFLAGS-$(@F)) \ ++link-pie-before-libc = $(CC) -pie -Wl,-O1 -nostdlib -nostartfiles -o $@ \ + $(sysdep-LDFLAGS) $(LDFLAGS) $(LDFLAGS-$(@F)) \ $(combreloc-LDFLAGS) $(relro-LDFLAGS) $(hashstyle-LDFLAGS) \ $(addprefix $(csu-objpfx),S$(start-installed-name)) \ $(+preinit) $(+prectorS) \ @@ -388,7 +388,12 @@ ifndef +link-pie S$(start-installed-name))\ $(+preinit) $(link-extra-libs) \ $(common-objpfx)libc% $(+postinit),$^) \ - $(link-extra-libs) $(link-libc) $(+postctorS) $(+postinit) + $(link-extra-libs) ++link-pie-after-libc = $(+postctorS) $(+postinit) ++link-pie = $(+link-pie-before-libc) $(rtld-LDFLAGS) $(link-libc) \ + $(+link-pie-after-libc) ++link-pie-tests = $(+link-pie-before-libc) $(rtld-tests-LDFLAGS) \ + $(link-libc-tests) $(+link-pie-after-libc) endif # Command for statically linking programs with the C library. ifndef +link-static @@ -411,7 +416,7 @@ endif ifndef +link ifeq (yes,$(build-shared)) +link-before-libc = $(CC) -nostdlib -nostartfiles -o $@ \ - $(sysdep-LDFLAGS) $(config-LDFLAGS) $(LDFLAGS) $(LDFLAGS-$(@F)) \ + $(sysdep-LDFLAGS) $(LDFLAGS) $(LDFLAGS-$(@F)) \ $(combreloc-LDFLAGS) $(relro-LDFLAGS) $(hashstyle-LDFLAGS) \ $(addprefix $(csu-objpfx),$(start-installed-name)) \ $(+preinit) $(+prector) \ @@ -421,8 +426,10 @@ ifeq (yes,$(build-shared)) $(common-objpfx)libc% $(+postinit),$^) \ $(link-extra-libs) +link-after-libc = $(+postctor) $(+postinit) -+link = $(+link-before-libc) $(link-libc) $(+link-after-libc) -+link-tests = $(+link-before-libc) $(link-libc-tests) $(+link-after-libc) ++link = $(+link-before-libc) $(rtld-LDFLAGS) $(link-libc) \ + $(+link-after-libc) ++link-tests = $(+link-before-libc) $(rtld-tests-LDFLAGS) \ + $(link-libc-tests) $(+link-after-libc) else +link = $(+link-static) +link-tests = $(+link-static-tests) @@ -440,9 +447,16 @@ ifndef +link-bounded $(common-objpfx)libc% $(+postinit),$^) \ $(link-extra-libs-bounded) $(link-libc-bounded) $(+postctorT) $(+postinit) endif -ifndef config-LDFLAGS ifeq (yes,$(build-shared)) -config-LDFLAGS = -Wl,-dynamic-linker=$(slibdir)/$(rtld-installed-name) +ifndef rtld-LDFLAGS +rtld-LDFLAGS = -Wl,-dynamic-linker=$(slibdir)/$(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 +else +rtld-tests-LDFLAGS = $(rtld-LDFLAGS) +endif endif endif ifndef link-libc @@ -450,12 +464,19 @@ ifeq (yes,$(build-shared)) # We need the versioned name of libc.so in the deps of $(others) et al # so that the symlink to libc.so is created before anything tries to # run the linked programs. -link-libc-before-gnulib = -Wl,-rpath-link=$(rpath-link) \ - $(common-objpfx)libc.so$(libc.so-version) \ - $(common-objpfx)$(patsubst %,$(libtype.oS),c) \ - $(as-needed) $(common-objpfx)elf/ld.so $(no-as-needed) -link-libc = $(link-libc-before-gnulib) $(gnulib) -link-libc-tests = $(link-libc-before-gnulib) $(gnulib-tests) +link-libc-rpath-link = -Wl,-rpath-link=$(rpath-link) +ifeq (yes,$(build-hardcoded-path-in-tests)) +link-libc-tests-rpath-link = -Wl,-rpath=$(rpath-link) +else +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 \ + $(no-as-needed) +link-libc = $(link-libc-rpath-link) $(link-libc-before-gnulib) $(gnulib) +link-libc-tests = $(link-libc-tests-rpath-link) \ + $(link-libc-before-gnulib) $(gnulib-tests) # This is how to find at build-time things that will be installed there. rpath-dirs = math elf dlfcn nss nis rt resolv crypt rpath-link = \ @@ -628,6 +649,40 @@ ifndef LD LD := ld -X endif +# $(test-via-rtld-prefix) is a command that, when prepended to the name +# of a test 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 as well as when test +# programs are hardcoded to the newly built libraries, it is empty. + +# $(test-program-prefix) is a command that, when prepended to the name +# of a test program built with the newly built library, produces a command +# that, executed on the build system on which "make" is run, runs that +# test program. + +# $(test-program-cmd) is a command that, executed on the build system +# on which "make" is run, runs the newly built test program that is the +# second dependency of the makefile target in which +# $(test-program-cmd) is used. + +# $(host-test-program-cmd) is a command that, executed on the host +# for which the library is built, runs the newly built test program that +# is the second dependency of the makefile target in which +# $(host-test-program-cmd) is used. + +ifeq (yes,$(build-hardcoded-path-in-tests)) +test-via-rtld-prefix = +test-program-prefix = $(test-wrapper) +test-program-cmd = $(test-wrapper) $(built-program-file) +host-test-program-cmd = $(built-program-file) +else +test-via-rtld-prefix = $(run-via-rtld-prefix) +test-program-prefix = $(run-program-prefix) +test-program-cmd = $(built-program-cmd) +host-test-program-cmd = $(host-built-program-cmd) +endif + # Extra flags to pass to GCC. ifeq ($(all-warnings),yes) +gccwarn := -Wall -Wwrite-strings -Winline -Wcast-qual -Wbad-function-cast -Wmissing-noreturn -Wmissing-prototypes -Wmissing-declarations -Wcomment -Wcomments -Wtrigraphs -Wsign-compare -Wfloat-equal -Wmultichar diff --git a/Makefile b/Makefile index 3ae5211833..c12e332503 100644 --- a/Makefile +++ b/Makefile @@ -155,7 +155,7 @@ $(common-objpfx)testrun.sh: $(common-objpfx)config.make \ echo 'builddir=`dirname "$$0"`'; \ echo 'GCONV_PATH="$${builddir}/iconvdata" \'; \ echo 'exec $(subst $(common-objdir),"$${builddir}",\ - $(run-program-prefix)) $${1+"$$@"}'; \ + $(test-program-prefix)) $${1+"$$@"}'; \ ) > $@T chmod a+x $@T mv -f $@T $@ diff --git a/Makerules b/Makerules index 0463244582..ce86d5085a 100644 --- a/Makerules +++ b/Makerules @@ -447,7 +447,7 @@ lib%.so: lib%_pic.a $(+preinit) $(+postinit) $(+interp) define build-shlib-helper $(LINK.o) -shared $(static-libgcc) -Wl,-O1 $(sysdep-LDFLAGS) \ - $(if $($(@F)-no-z-defs)$(no-z-defs),,-Wl,-z,defs) $(config-LDFLAGS) \ + $(if $($(@F)-no-z-defs)$(no-z-defs),,-Wl,-z,defs) $(rtld-LDFLAGS) \ $(extra-B-$(@F:lib%.so=%).so) -B$(csu-objpfx) \ $(extra-B-$(@F:lib%.so=%).so) $(load-map-file) \ -Wl,-soname=lib$(libprefix)$(@F:lib%.so=%).so$($(@F)-version) \ @@ -465,7 +465,7 @@ else $(common-objpfx)shlib.lds: $(common-objpfx)config.make $(..)Makerules $(LINK.o) -shared -Wl,-O1 \ -nostdlib -nostartfiles \ - $(sysdep-LDFLAGS) $(config-LDFLAGS) $(LDFLAGS.so) \ + $(sysdep-LDFLAGS) $(rtld-LDFLAGS) $(LDFLAGS.so) \ -Wl,--verbose 2>&1 | \ sed > $@T \ -e '/^=========/,/^=========/!d;/^=========/d' \ @@ -505,7 +505,7 @@ $(build-shlib-helper) -o $@ $(shlib-lds-flags) \ endef define build-module-helper -$(LINK.o) -shared $(static-libgcc) $(sysdep-LDFLAGS) $(config-LDFLAGS) \ +$(LINK.o) -shared $(static-libgcc) $(sysdep-LDFLAGS) $(rtld-LDFLAGS) \ $(if $($(@F)-no-z-defs)$(no-z-defs),,-Wl,-z,defs) \ -B$(csu-objpfx) $(load-map-file) \ $(LDFLAGS.so) $(LDFLAGS-$(@F:%.so=%).so) \ @@ -909,7 +909,7 @@ $(common-objpfx)format.lds: $(..)scripts/output-format.sed \ ifneq (unknown,$(output-format)) echo > $@.new 'OUTPUT_FORMAT($(output-format))' else - $(LINK.o) -shared $(sysdep-LDFLAGS) $(config-LDFLAGS) $(LDFLAGS.so) \ + $(LINK.o) -shared $(sysdep-LDFLAGS) $(rtld-LDFLAGS) $(LDFLAGS.so) \ -x c /dev/null -o $@.so -Wl,--verbose -v 2>&1 \ | sed -n -f $< > $@.new test -s $@.new diff --git a/Rules b/Rules index 5c5aa60844..5728d0955f 100644 --- a/Rules +++ b/Rules @@ -114,9 +114,11 @@ binaries-static-notests = $(others-static) binaries-static-tests = $(tests-static) $(xtests-static) binaries-static = $(binaries-static-notests) $(binaries-static-tests) ifeq (yesyes,$(have-fpie)$(build-shared)) -binaries-pie = $(others-pie) $(tests-pie) $(xtests-pie) +binaries-pie-tests = $(tests-pie) $(xtests-pie) +binaries-pie-notests = $(others-pie) else -binaries-pie = +binaries-pie-tests = +binaries-pie-notests = endif else binaries-all-notests = @@ -125,9 +127,11 @@ binaries-all = $(binaries-all-tests) binaries-static-notests = binaries-static-tests = binaries-static = -binaries-pie = +binaries-pie-tests = +binaries-pie-notests = endif +binaries-pie = $(binaries-pie-tests) $(binaries-pie-notests) binaries-shared-tests = $(filter-out $(binaries-pie) $(binaries-static), \ $(binaries-all-tests)) binaries-shared-notests = $(filter-out $(binaries-pie) $(binaries-static), \ @@ -147,8 +151,15 @@ $(addprefix $(objpfx),$(binaries-shared-tests)): %: %.o \ $(+link-tests) endif -ifneq "$(strip $(binaries-pie))" "" -$(addprefix $(objpfx),$(binaries-pie)): %: %.o \ +ifneq "$(strip $(binaries-pie-tests))" "" +$(addprefix $(objpfx),$(binaries-pie-tests)): %: %.o \ + $(sort $(filter $(common-objpfx)lib%,$(link-libc))) \ + $(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit) + $(+link-pie-tests) +endif + +ifneq "$(strip $(binaries-pie-notests))" "" +$(addprefix $(objpfx),$(binaries-pie-notests)): %: %.o \ $(sort $(filter $(common-objpfx)lib%,$(link-libc))) \ $(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit) $(+link-pie) @@ -182,7 +193,7 @@ ifneq "$(strip $(tests) $(xtests) $(test-srcs))" "" make-test-out = $(test-wrapper-env) \ GCONV_PATH=$(common-objpfx)iconvdata LC_ALL=C \ - $($*-ENV) $(host-built-program-cmd) $($*-ARGS) + $($*-ENV) $(host-test-program-cmd) $($*-ARGS) $(objpfx)%-bp.out: %.input $(objpfx)%-bp $(make-test-out) > $@ < $(word 1,$^) $(objpfx)%.out: %.input $(objpfx)% diff --git a/catgets/Makefile b/catgets/Makefile index 480ead9057..205cda7a73 100644 --- a/catgets/Makefile +++ b/catgets/Makefile @@ -75,7 +75,7 @@ $(objpfx)de.msg: xopen-msg.awk $(..)po/de.po $(objpfx)test-gencat.out: test-gencat.sh $(objpfx)test-gencat \ $(objpfx)sample.SJIS.cat - $(SHELL) $< $(common-objpfx) '$(built-program-cmd)' + $(SHELL) $< $(common-objpfx) '$(test-program-cmd)' $(objpfx)sample.SJIS.cat: sample.SJIS $(objpfx)gencat GCONV_PATH=$(common-objpfx)iconvdata LC_ALL=C \ diff --git a/catgets/test-gencat.sh b/catgets/test-gencat.sh index 7f36ec0e88..69bdb54e99 100755 --- a/catgets/test-gencat.sh +++ b/catgets/test-gencat.sh @@ -20,12 +20,12 @@ set -e common_objpfx=$1 -run_program_cmd=$2 +test_program_cmd=$2 # Run the test program. LOCPATH=${common_objpfx}localedata GCONV_PATH=${common_objpfx}iconvdata \ NLSPATH=${common_objpfx}catgets/%N.%c.cat LC_ALL=ja_JP.SJIS \ - ${run_program_cmd} \ + ${test_program_cmd} \ > ${common_objpfx}catgets/test-gencat.out # Compare with the expected result. diff --git a/config.make.in b/config.make.in index 7f1bbb51d5..ed27163859 100644 --- a/config.make.in +++ b/config.make.in @@ -101,6 +101,7 @@ force-install = @force_install@ link-obsolete-rpc = @link_obsolete_rpc@ build-nscd = @build_nscd@ use-nscd = @use_nscd@ +build-hardcoded-path-in-tests= @hardcoded_path_in_tests@ # Build tools. CC = @CC@ diff --git a/configure b/configure index bdca5b3958..89dfc9858e 100755 --- a/configure +++ b/configure @@ -659,6 +659,7 @@ libc_cv_nss_crypt all_warnings force_install bindnow +hardcoded_path_in_tests oldest_abi use_default_link sysheaders @@ -745,6 +746,7 @@ enable_shared enable_profile enable_versioning enable_oldest_abi +enable_hardcoded_path_in_tests enable_stackguard_randomization enable_add_ons enable_hidden_plt @@ -1397,6 +1399,9 @@ Optional Features: objects [default=yes if supported] --enable-oldest-abi=ABI configure the oldest ABI supported [e.g. 2.2] [default=glibc default] + --enable-hardcoded-path-in-tests + hardcode newly built glibc path in tests + [default=no] --enable-stackguard-randomization initialize __stack_chk_guard canary with a random number at program start @@ -3698,6 +3703,15 @@ _ACEOF fi +# Check whether --enable-hardcoded-path-in-tests was given. +if test "${enable_hardcoded_path_in_tests+set}" = set; then : + enableval=$enable_hardcoded_path_in_tests; hardcoded_path_in_tests=$enableval +else + hardcoded_path_in_tests=no +fi + + + # Check whether --enable-stackguard-randomization was given. if test "${enable_stackguard_randomization+set}" = set; then : enableval=$enable_stackguard_randomization; enable_stackguard_randomize=$enableval diff --git a/configure.in b/configure.in index 96da720426..4e584c6a45 100644 --- a/configure.in +++ b/configure.in @@ -146,6 +146,13 @@ else fi AC_SUBST(oldest_abi) +AC_ARG_ENABLE([hardcoded-path-in-tests], + AC_HELP_STRING([--enable-hardcoded-path-in-tests], + [hardcode newly built glibc path in tests @<:@default=no@:>@]), + [hardcoded_path_in_tests=$enableval], + [hardcoded_path_in_tests=no]) +AC_SUBST(hardcoded_path_in_tests) + AC_ARG_ENABLE([stackguard-randomization], AC_HELP_STRING([--enable-stackguard-randomization], [initialize __stack_chk_guard canary with a random number at program start]), diff --git a/elf/Makefile b/elf/Makefile index 0d52318c22..84f83974b4 100644 --- a/elf/Makefile +++ b/elf/Makefile @@ -642,9 +642,7 @@ $(objpfx)circlemod2a.so: $(objpfx)circlemod3a.so $(objpfx)order: $(addprefix $(objpfx),dep4.so dep3.so dep2.so dep1.so) $(objpfx)order.out: $(objpfx)order - $(test-wrapper) \ - $(elf-objpfx)$(rtld-installed-name) \ - --library-path $(rpath-link)$(patsubst %,:%,$(sysdep-library-path)) \ + $(test-program-prefix) \ $(objpfx)order > $@ (echo "0123456789" | cmp $@ -) > /dev/null @@ -852,36 +850,36 @@ LDFLAGS-tst-execstack-prog = -Wl,-z,execstack endif $(objpfx)tst-array1.out: tst-array1.exp $(objpfx)tst-array1 - $(built-program-cmd) > $@ + $(test-program-cmd) > $@ cmp $@ tst-array1.exp > /dev/null $(objpfx)tst-array1-static.out: tst-array1.exp $(objpfx)tst-array1-static - $(built-program-cmd) > $@ + $(test-program-cmd) > $@ cmp $@ tst-array1.exp > /dev/null $(objpfx)tst-array2: $(objpfx)tst-array2dep.so $(objpfx)tst-array2.out: tst-array2.exp $(objpfx)tst-array2 - $(built-program-cmd) > $@ + $(test-program-cmd) > $@ cmp $@ tst-array2.exp > /dev/null $(objpfx)tst-array3.out: tst-array1.exp $(objpfx)tst-array3 - $(built-program-cmd) > $@ + $(test-program-cmd) > $@ cmp $@ tst-array1.exp > /dev/null $(objpfx)tst-array4: $(libdl) $(objpfx)tst-array4.out: tst-array4.exp $(objpfx)tst-array4 \ $(objpfx)tst-array2dep.so - $(built-program-cmd) > $@ + $(test-program-cmd) > $@ cmp $@ tst-array4.exp > /dev/null $(objpfx)tst-array5: $(objpfx)tst-array5dep.so $(objpfx)tst-array5.out: tst-array5.exp $(objpfx)tst-array5 - $(built-program-cmd) > $@ + $(test-program-cmd) > $@ cmp $@ tst-array5.exp > /dev/null $(objpfx)tst-array5-static.out: tst-array5-static.exp \ $(objpfx)tst-array5-static - $(built-program-cmd) > $@ + $(test-program-cmd) > $@ cmp $@ tst-array5-static.exp > /dev/null CFLAGS-tst-pie1.c += $(pie-ccflag) @@ -1030,9 +1028,7 @@ $(objpfx)tst-global1.out: $(objpfx)testobj6.so $(objpfx)testobj2.so $(objpfx)order2: $(libdl) $(objpfx)order2.out: $(objpfx)order2 $(objpfx)order2mod1.so \ $(objpfx)order2mod2.so - $(test-wrapper) \ - $(elf-objpfx)$(rtld-installed-name) \ - --library-path $(rpath-link)$(patsubst %,:%,$(sysdep-library-path)) \ + $(test-program-prefix) \ $(objpfx)order2 > $@ (echo "12345" | cmp $@ -) > /dev/null $(objpfx)order2mod1.so: $(objpfx)order2mod4.so @@ -1042,7 +1038,7 @@ order2mod2.so-no-z-defs = yes LDFLAGS-order2mod1.so = $(no-as-needed) LDFLAGS-order2mod2.so = $(no-as-needed) -tst-stackguard1-ARGS = --command "$(host-built-program-cmd) --child" +tst-stackguard1-ARGS = --command "$(host-test-program-cmd) --child" tst-stackguard1-static-ARGS = --command "$(objpfx)tst-stackguard1-static --child" $(objpfx)tst-leaks1: $(libdl) @@ -1125,9 +1121,7 @@ $(objpfx)tst-unique3.out: $(objpfx)tst-unique3lib2.so $(objpfx)tst-unique4: $(objpfx)tst-unique4lib.so $(objpfx)tst-initorder.out: $(objpfx)tst-initorder - $(test-wrapper) \ - $(elf-objpfx)${rtld-installed-name} \ - --library-path $(rpath-link)$(patsubst %,:%,$(sysdep-library-path)) \ + $(test-program-prefix) \ $< > $@ cmp $@ tst-initorder.exp > /dev/null @@ -1147,9 +1141,7 @@ object-suffixes-left := a b c d include $(o-iterator) $(objpfx)tst-initorder2.out: $(objpfx)tst-initorder2 - $(test-wrapper) \ - $(elf-objpfx)${rtld-installed-name} \ - --library-path $(rpath-link)$(patsubst %,:%,$(sysdep-library-path)) \ + $(test-program-prefix) \ $< > $@ cmp $@ tst-initorder2.exp > /dev/null diff --git a/grp/Makefile b/grp/Makefile index 6b4810acae..d3549f0f0f 100644 --- a/grp/Makefile +++ b/grp/Makefile @@ -55,7 +55,7 @@ ifeq ($(run-built-tests),yes) ifeq (yes,$(build-shared)) tests: $(objpfx)tst_fgetgrent.out $(objpfx)tst_fgetgrent.out: tst_fgetgrent.sh $(objpfx)tst_fgetgrent - $(SHELL) $< $(common-objpfx) '$(run-program-prefix)' + $(SHELL) $< $(common-objpfx) '$(test-program-prefix)' endif endif diff --git a/grp/tst_fgetgrent.sh b/grp/tst_fgetgrent.sh index 35a7a76051..d4943db975 100644 --- a/grp/tst_fgetgrent.sh +++ b/grp/tst_fgetgrent.sh @@ -20,22 +20,22 @@ set -e common_objpfx=$1; shift -run_program_prefix=$1; shift +test_program_prefix=$1; shift testout=${common_objpfx}/grp/tst_fgetgrent.out result=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}grp/tst_fgetgrent 0 > ${testout} || result=1 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}grp/tst_fgetgrent 1 >> ${testout} || result=1 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}grp/tst_fgetgrent 2 >> ${testout} || result=1 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}grp/tst_fgetgrent 3 >> ${testout} || result=1 exit $result diff --git a/iconvdata/Makefile b/iconvdata/Makefile index edf7b093b1..7752013f5b 100644 --- a/iconvdata/Makefile +++ b/iconvdata/Makefile @@ -305,7 +305,7 @@ $(objpfx)tst-tables.out: tst-tables.sh $(objpfx)gconv-modules \ $(addprefix $(objpfx),$(modules.so)) \ $(objpfx)tst-table-from $(objpfx)tst-table-to $(SHELL) $< $(common-objpfx) $(common-objpfx)iconvdata/ \ - '$(run-program-prefix)' > $@ + '$(test-program-prefix)' > $@ do-tests-clean common-mostlyclean: tst-tables-clean diff --git a/iconvdata/tst-table.sh b/iconvdata/tst-table.sh index 59166ca511..b0e667d2a9 100755 --- a/iconvdata/tst-table.sh +++ b/iconvdata/tst-table.sh @@ -23,7 +23,7 @@ common_objpfx=$1 objpfx=$2 -run_program_prefix=$3 +test_program_prefix=$3 charset=$4 charmap=$5 @@ -60,12 +60,12 @@ else fi # iconv in one direction. -${run_program_prefix} \ +${test_program_prefix} \ ${objpfx}tst-table-from ${charset} \ > ${objpfx}tst-${charset}.table # iconv in the other direction. -${run_program_prefix} \ +${test_program_prefix} \ ${objpfx}tst-table-to ${charset} | sort \ > ${objpfx}tst-${charset}.inverse.table diff --git a/iconvdata/tst-tables.sh b/iconvdata/tst-tables.sh index ff21aa8082..8f4debdd6b 100755 --- a/iconvdata/tst-tables.sh +++ b/iconvdata/tst-tables.sh @@ -23,7 +23,7 @@ common_objpfx=$1 objpfx=$2 -run_program_prefix=$3 +test_program_prefix=$3 status=0 @@ -262,7 +262,7 @@ while read charset charmap; do if test "$charset" = GB18030; then echo "This might take a while" 1>&2; fi case ${charset} in \#*) continue;; esac echo -n "Testing ${charset}" 1>&2 - if ./tst-table.sh ${common_objpfx} ${objpfx} "${run_program_prefix}" \ + if ./tst-table.sh ${common_objpfx} ${objpfx} "${test_program_prefix}" \ ${charset} ${charmap} < /dev/null; then echo 1>&2 else diff --git a/intl/Makefile b/intl/Makefile index 3469f02337..d8bff4a799 100644 --- a/intl/Makefile +++ b/intl/Makefile @@ -74,18 +74,18 @@ $(codeset_mo): tstcodeset.po $(objpfx)mtrace-tst-gettext: $(objpfx)tst-gettext.out $(common-objpfx)malloc/mtrace $(objpfx)tst-gettext.mtrace > $@ $(objpfx)tst-gettext.out: tst-gettext.sh $(objpfx)tst-gettext - $(SHELL) $< $(common-objpfx) '$(run-program-prefix)' \ + $(SHELL) $< $(common-objpfx) '$(test-program-prefix)' \ $(common-objpfx)intl/ $(objpfx)tst-gettext.mtrace $(objpfx)tst-translit.out: tst-translit.sh $(objpfx)tst-translit - $(SHELL) $< $(common-objpfx) '$(run-program-prefix)' \ + $(SHELL) $< $(common-objpfx) '$(test-program-prefix)' \ $(common-objpfx)intl/ $(objpfx)tst-gettext2.out: tst-gettext2.sh $(objpfx)tst-gettext2 - $(SHELL) $< $(common-objpfx) '$(run-program-prefix)' \ + $(SHELL) $< $(common-objpfx) '$(test-program-prefix)' \ $(common-objpfx)intl/ $(objpfx)tst-gettext4.out: tst-gettext4.sh $(objpfx)tst-gettext4 - $(SHELL) $< $(common-objpfx) '$(run-program-prefix)' $(common-objpfx)intl/ + $(SHELL) $< $(common-objpfx) '$(test-program-prefix)' $(common-objpfx)intl/ $(objpfx)tst-gettext6.out: tst-gettext6.sh $(objpfx)tst-gettext6 - $(SHELL) $< $(common-objpfx) '$(run-program-prefix)' $(common-objpfx)intl/ + $(SHELL) $< $(common-objpfx) '$(test-program-prefix)' $(common-objpfx)intl/ $(objpfx)tst-codeset.out: $(codeset_mo) $(objpfx)tst-gettext3.out: $(codeset_mo) diff --git a/intl/tst-gettext.sh b/intl/tst-gettext.sh index f622840789..87ebe7cf66 100755 --- a/intl/tst-gettext.sh +++ b/intl/tst-gettext.sh @@ -20,7 +20,7 @@ set -e common_objpfx=$1 -run_program_prefix=$2 +test_program_prefix=$2 objpfx=$3 malloc_trace=$4 @@ -54,7 +54,7 @@ export LOCPATH # Now run the test. MALLOC_TRACE=$malloc_trace LOCPATH=${objpfx}localedir:$LOCPATH \ -${run_program_prefix} \ +${test_program_prefix} \ ${objpfx}tst-gettext > ${objpfx}tst-gettext.out ${objpfx}domaindir exit $? diff --git a/intl/tst-gettext2.sh b/intl/tst-gettext2.sh index 9c8f298e44..c99ca4d3f3 100644 --- a/intl/tst-gettext2.sh +++ b/intl/tst-gettext2.sh @@ -20,7 +20,7 @@ set -e common_objpfx=$1 -run_program_prefix=$2 +test_program_prefix=$2 objpfx=$3 LC_ALL=C @@ -67,7 +67,7 @@ LOCPATH=${objpfx}domaindir export LOCPATH # Now run the test. -${run_program_prefix} \ +${test_program_prefix} \ ${objpfx}tst-gettext2 > ${objpfx}tst-gettext2.out ${objpfx}domaindir && cmp ${objpfx}tst-gettext2.out - < ${objpfx}tst-gettext4.out +${test_program_prefix} ${objpfx}tst-gettext4 > ${objpfx}tst-gettext4.out exit $? diff --git a/intl/tst-gettext6.sh b/intl/tst-gettext6.sh index 9b7dc4717d..ab570e782c 100644 --- a/intl/tst-gettext6.sh +++ b/intl/tst-gettext6.sh @@ -20,7 +20,7 @@ set -e common_objpfx=$1 -run_program_prefix=$2 +test_program_prefix=$2 objpfx=$3 LC_ALL=C @@ -36,6 +36,6 @@ export GCONV_PATH LOCPATH=${common_objpfx}localedata export LOCPATH -${run_program_prefix} ${objpfx}tst-gettext6 > ${objpfx}tst-gettext6.out +${test_program_prefix} ${objpfx}tst-gettext6 > ${objpfx}tst-gettext6.out exit $? diff --git a/intl/tst-translit.sh b/intl/tst-translit.sh index 90bfd9bb22..154ac1f905 100755 --- a/intl/tst-translit.sh +++ b/intl/tst-translit.sh @@ -20,7 +20,7 @@ set -e common_objpfx=$1 -run_program_prefix=$2 +test_program_prefix=$2 objpfx=$3 LC_ALL=C @@ -37,7 +37,7 @@ export GCONV_PATH LOCPATH=${common_objpfx}localedata export LOCPATH -${run_program_prefix} \ +${test_program_prefix} \ ${objpfx}tst-translit > ${objpfx}tst-translit.out ${objpfx}domaindir exit $? diff --git a/io/Makefile b/io/Makefile index bbe989aebf..86453d45bc 100644 --- a/io/Makefile +++ b/io/Makefile @@ -104,5 +104,5 @@ ifeq ($(run-built-tests),yes) tests: $(objpfx)ftwtest.out $(objpfx)ftwtest.out: ftwtest-sh $(objpfx)ftwtest - $(SHELL) $< $(common-objpfx) '$(built-program-cmd)' > $@ + $(SHELL) $< $(common-objpfx) '$(test-program-cmd)' > $@ endif diff --git a/libio/Makefile b/libio/Makefile index 900196691d..e15cd40911 100644 --- a/libio/Makefile +++ b/libio/Makefile @@ -186,7 +186,7 @@ endif endif $(objpfx)test-freopen.out: test-freopen.sh $(objpfx)test-freopen - $(SHELL) $< $(common-objpfx) '$(run-program-prefix)' \ + $(SHELL) $< $(common-objpfx) '$(test-program-prefix)' \ $(common-objpfx)libio/ $(objpfx)tst-fopenloc.check: $(objpfx)tst-fopenloc.out diff --git a/libio/test-freopen.sh b/libio/test-freopen.sh index 2cb274d480..3b05614f70 100755 --- a/libio/test-freopen.sh +++ b/libio/test-freopen.sh @@ -20,10 +20,10 @@ set -e common_objpfx=$1 -run_program_prefix=$2 +test_program_prefix=$2 objpfx=$3 -${run_program_prefix} ${objpfx}test-freopen ${objpfx}test-freopen.out && +${test_program_prefix} ${objpfx}test-freopen ${objpfx}test-freopen.out && cmp ${objpfx}test-freopen.out - <<"EOF" Hello world (mb) Hello world (wc) diff --git a/localedata/ChangeLog b/localedata/ChangeLog index 0c0f2e8b5a..22798619c3 100644 --- a/localedata/ChangeLog +++ b/localedata/ChangeLog @@ -1,3 +1,30 @@ +2013-01-11 H.J. Lu + + * Makefile ($(objpfx)sort-test.out): Replace + $(run-program-prefix) with $(test-program-prefix). + ($(objpfx)tst-numeric.out): Likewise. + ($(objpfx)tst-mbswcs.out): Likewise. + ($(objpfx)tst-fmon.out): Add $(test-program-prefix). + ($(objpfx)tst-trans.out): Likewise. + ($(objpfx)tst-rpmatch.out): Replace $(built-program-cmd) with + $(test-program-cmd). + ($(objpfx)tst-ctype.out): Likewise. + ($(objpfx)tst-wctype.out): Likewise. + ($(objpfx)tst-langinfo.out): Likewise. + (bug-setlocale1-ARGS): Replace $(built-program-cmd) with + $(test-program-cmd). + * sort-test.sh (run_program_prefix): Renamed to ... + (test_program_prefix): This. + * tst-mbswcs.sh: Likewise. + * tst-numeric.sh: Likewise. + * tst-wctype.sh: Likewise. + * tst-fmon.sh (test_program_prefix): New. Replace + ${run_program_prefix} with ${test_program_prefix} when running. + tst-fmon. + * tst-trans.sh: (test_program_prefix): New. Replace + ${run_program_prefix} with ${test_program_prefix} when running + tst-trans. + 2013-01-10 H.J. Lu * Makefile (tests-static): New variable. diff --git a/localedata/Makefile b/localedata/Makefile index 923916438a..11a6a79829 100644 --- a/localedata/Makefile +++ b/localedata/Makefile @@ -147,17 +147,18 @@ tests: $(objpfx)sort-test.out $(objpfx)tst-fmon.out $(objpfx)tst-locale.out \ $(objpfx)sort-test.out: sort-test.sh $(objpfx)collate-test $(objpfx)xfrm-test \ $(test-input-data) $(addprefix $(objpfx),$(CTYPE_FILES)) - $(SHELL) $< $(common-objpfx) '$(run-program-prefix)' $(test-input) \ + $(SHELL) $< $(common-objpfx) '$(test-program-prefix)' $(test-input) \ > $@ $(objpfx)tst-fmon.out: tst-fmon.sh $(objpfx)tst-fmon tst-fmon.data \ $(objpfx)sort-test.out \ $(addprefix $(objpfx),$(CTYPE_FILES)) - $(SHELL) $< $(common-objpfx) '$(run-program-prefix)' tst-fmon.data \ + $(SHELL) $< $(common-objpfx) '$(run-program-prefix)' \ + '$(test-program-prefix)' tst-fmon.data \ > $@ $(objpfx)tst-numeric.out: tst-numeric.sh $(objpfx)tst-numeric tst-numeric.data \ $(objpfx)sort-test.out \ $(addprefix $(objpfx),$(CTYPE_FILES)) - $(SHELL) $< $(common-objpfx) '$(run-program-prefix)' tst-numeric.data \ + $(SHELL) $< $(common-objpfx) '$(test-program-prefix)' tst-numeric.data \ > $@ $(objpfx)tst-locale.out: tst-locale.sh $(common-objpfx)locale/localedef \ $(ld-test-srcs) $(addprefix $(objpfx),$(CTYPE_FILES)) @@ -165,27 +166,27 @@ $(objpfx)tst-locale.out: tst-locale.sh $(common-objpfx)locale/localedef \ $(objpfx)tst-rpmatch.out: tst-rpmatch.sh $(objpfx)tst-rpmatch \ $(objpfx)tst-fmon.out \ $(addprefix $(objpfx),$(CTYPE_FILES)) - $(SHELL) $< $(common-objpfx) '$(built-program-cmd)' > $@ + $(SHELL) $< $(common-objpfx) '$(test-program-cmd)' > $@ $(objpfx)tst-trans.out: tst-trans.sh $(objpfx)tst-trans \ $(addprefix $(objpfx),$(CTYPE_FILES)) - $(SHELL) $< $(common-objpfx) '$(run-program-prefix)' + $(SHELL) $< $(common-objpfx) '$(run-program-prefix)' '$(test-program-prefix)' $(objpfx)tst-mbswcs.out: tst-mbswcs.sh $(objpfx)tst-mbswcs1 \ $(objpfx)tst-mbswcs2 $(objpfx)tst-mbswcs3 \ $(objpfx)tst-mbswcs4 $(objpfx)tst-mbswcs5 \ $(addprefix $(objpfx),$(CTYPE_FILES)) - $(SHELL) $< $(common-objpfx) '$(run-program-prefix)' + $(SHELL) $< $(common-objpfx) '$(test-program-prefix)' $(objpfx)tst-ctype.out: tst-ctype.sh $(objpfx)tst-ctype \ $(objpfx)sort-test.out \ $(addprefix $(objpfx),$(CTYPE_FILES)) - $(SHELL) $< $(common-objpfx) '$(built-program-cmd)' + $(SHELL) $< $(common-objpfx) '$(test-program-cmd)' $(objpfx)tst-wctype.out: tst-wctype.sh $(objpfx)tst-wctype \ $(objpfx)sort-test.out tst-wctype.input \ $(addprefix $(objpfx),$(CTYPE_FILES)) - $(SHELL) $< $(common-objpfx) '$(built-program-cmd)' + $(SHELL) $< $(common-objpfx) '$(test-program-cmd)' $(objpfx)tst-langinfo.out: tst-langinfo.sh $(objpfx)tst-langinfo \ $(objpfx)sort-test.out \ $(addprefix $(objpfx),$(CTYPE_FILES)) - $(SHELL) $< $(common-objpfx) '$(built-program-cmd)' + $(SHELL) $< $(common-objpfx) '$(test-program-cmd)' $(objpfx)tst-digits.out: $(objpfx)tst-locale.out $(objpfx)tst-mbswcs6.out: $(addprefix $(objpfx),$(CTYPE_FILES)) endif @@ -287,7 +288,7 @@ $(objpfx)mtrace-tst-leaks: $(objpfx)tst-leaks.out $(common-objpfx)malloc/mtrace $(objpfx)tst-leaks.mtrace > $@ bug-setlocale1-ENV = LOCPATH=$(common-objpfx)localedata -bug-setlocale1-ARGS = -- $(built-program-cmd) +bug-setlocale1-ARGS = -- $(test-program-cmd) bug-setlocale1-static-ENV = $(bug-setlocale1-ENV) bug-setlocale1-static-ARGS = $(bug-setlocale1-ARGS) tst-setlocale2-ENV = LOCPATH=$(common-objpfx)localedata diff --git a/localedata/sort-test.sh b/localedata/sort-test.sh index 5506a75e8f..b74ae9d17a 100644 --- a/localedata/sort-test.sh +++ b/localedata/sort-test.sh @@ -20,7 +20,7 @@ set -e common_objpfx=$1; shift -run_program_prefix=$1; shift +test_program_prefix=$1; shift lang=$* id=${PPID:-100} @@ -32,7 +32,7 @@ for l in $lang; do here=0 cns=`echo $l | sed 's/\(.*\)[.][^.]*/\1/'` LOCPATH=${common_objpfx}localedata GCONV_PATH=${common_objpfx}/iconvdata \ - LC_ALL=$l ${run_program_prefix} \ + LC_ALL=$l ${test_program_prefix} \ ${common_objpfx}localedata/collate-test $id < $cns.in \ > ${common_objpfx}localedata/$cns.out || here=1 cmp -s $cns.in ${common_objpfx}localedata/$cns.out || here=1 @@ -45,7 +45,7 @@ for l in $lang; do fi LOCPATH=${common_objpfx}localedata GCONV_PATH=${common_objpfx}/iconvdata \ - LC_ALL=$l ${run_program_prefix} \ + LC_ALL=$l ${test_program_prefix} \ ${common_objpfx}localedata/xfrm-test $id < $cns.in \ > ${common_objpfx}localedata/$cns.xout || here=1 cmp -s $cns.in ${common_objpfx}localedata/$cns.xout || here=1 diff --git a/localedata/tst-fmon.sh b/localedata/tst-fmon.sh index fa006fa183..b3d8085521 100755 --- a/localedata/tst-fmon.sh +++ b/localedata/tst-fmon.sh @@ -22,7 +22,8 @@ set -e common_objpfx=$1 run_program_prefix=$2 -datafile=$3 +test_program_prefix=$3 +datafile=$4 here=`pwd` @@ -47,7 +48,7 @@ while IFS=" " read locale format value expect; do expect=`echo "$expect" | sed 's/^\"\(.*\)\"$/\1/'` LOCPATH=${common_objpfx}localedata \ GCONV_PATH=${common_objpfx}/iconvdata \ - ${run_program_prefix} ${common_objpfx}localedata/tst-fmon \ + ${test_program_prefix} ${common_objpfx}localedata/tst-fmon \ "$locale" "$format" "$value" "$expect" < /dev/null || errcode=$? fi diff --git a/localedata/tst-mbswcs.sh b/localedata/tst-mbswcs.sh index bc4423638a..af3b3ae844 100755 --- a/localedata/tst-mbswcs.sh +++ b/localedata/tst-mbswcs.sh @@ -20,29 +20,29 @@ set -e common_objpfx=$1; shift -run_program_prefix=$1; shift +test_program_prefix=$1; shift status=0 # Run the test programs. LOCPATH=${common_objpfx}localedata GCONV_PATH=${common_objpfx}iconvdata \ -${run_program_prefix} ${common_objpfx}localedata/tst-mbswcs1 \ +${test_program_prefix} ${common_objpfx}localedata/tst-mbswcs1 \ > ${common_objpfx}localedata/tst-mbswcs.out || status=1 LOCPATH=${common_objpfx}localedata GCONV_PATH=${common_objpfx}iconvdata \ -${run_program_prefix} ${common_objpfx}localedata/tst-mbswcs2 \ +${test_program_prefix} ${common_objpfx}localedata/tst-mbswcs2 \ >> ${common_objpfx}localedata/tst-mbswcs.out || status=1 LOCPATH=${common_objpfx}localedata GCONV_PATH=${common_objpfx}iconvdata \ -${run_program_prefix} ${common_objpfx}localedata/tst-mbswcs3 \ +${test_program_prefix} ${common_objpfx}localedata/tst-mbswcs3 \ >> ${common_objpfx}localedata/tst-mbswcs.out || status=1 LOCPATH=${common_objpfx}localedata GCONV_PATH=${common_objpfx}iconvdata \ -${run_program_prefix} ${common_objpfx}localedata/tst-mbswcs4 \ +${test_program_prefix} ${common_objpfx}localedata/tst-mbswcs4 \ >> ${common_objpfx}localedata/tst-mbswcs.out || status=1 LOCPATH=${common_objpfx}localedata GCONV_PATH=${common_objpfx}iconvdata \ -${run_program_prefix} ${common_objpfx}localedata/tst-mbswcs5 \ +${test_program_prefix} ${common_objpfx}localedata/tst-mbswcs5 \ >> ${common_objpfx}localedata/tst-mbswcs.out || status=1 exit $status diff --git a/localedata/tst-numeric.sh b/localedata/tst-numeric.sh index 3c3ed268d7..035f3b44b5 100644 --- a/localedata/tst-numeric.sh +++ b/localedata/tst-numeric.sh @@ -21,7 +21,7 @@ set -e common_objpfx=$1 -run_program_prefix=$2 +test_program_prefix=$2 datafile=$3 # Run the tests. @@ -32,7 +32,7 @@ while IFS=" " read locale format value expect; do if [ -n "$format" ]; then if LOCPATH=${common_objpfx}localedata \ GCONV_PATH=${common_objpfx}/iconvdata \ - ${run_program_prefix} ${common_objpfx}localedata/tst-numeric \ + ${test_program_prefix} ${common_objpfx}localedata/tst-numeric \ "$locale" "$format" "$value" "$expect" < /dev/null then echo "Locale: \"${locale}\" Format: \"${format}\"" \ diff --git a/localedata/tst-trans.sh b/localedata/tst-trans.sh index e083c6183f..2037994cd4 100755 --- a/localedata/tst-trans.sh +++ b/localedata/tst-trans.sh @@ -21,6 +21,7 @@ set -e common_objpfx=$1 run_program_prefix=$2 +test_program_prefix=$3 # Generate the necessary locale data. I18NPATH=. GCONV_PATH=${common_objpfx}/iconvdata \ @@ -32,7 +33,7 @@ exit 1 # Run the test program. LOCPATH=${common_objpfx}localedata GCONV_PATH=${common_objpfx}iconvdata \ -LC_ALL=tt_TT ${run_program_prefix} \ +LC_ALL=tt_TT ${test_program_prefix} \ ${common_objpfx}localedata/tst-trans > ${common_objpfx}localedata/tst-trans.out exit $? diff --git a/malloc/Makefile b/malloc/Makefile index e54df3e1a6..05f9b15e89 100644 --- a/malloc/Makefile +++ b/malloc/Makefile @@ -109,7 +109,7 @@ ifeq (yes,$(build-shared)) ifneq ($(PERL),no) tests: $(objpfx)tst-mtrace.out $(objpfx)tst-mtrace.out: tst-mtrace.sh $(objpfx)tst-mtrace - $(SHELL) $< $(common-objpfx) '$(run-program-prefix)' + $(SHELL) $< $(common-objpfx) '$(test-program-prefix)' endif endif endif diff --git a/malloc/tst-mtrace.sh b/malloc/tst-mtrace.sh index ac3916101b..a86ecf03b1 100755 --- a/malloc/tst-mtrace.sh +++ b/malloc/tst-mtrace.sh @@ -20,14 +20,14 @@ set -e common_objpfx=$1; shift -run_program_prefix=$1; shift +test_program_prefix=$1; shift status=0 trap "rm -f ${common_objpfx}malloc/tst-mtrace.leak; exit 1" 1 2 15 MALLOC_TRACE=${common_objpfx}malloc/tst-mtrace.leak \ LOCPATH=${common_objpfx}localedata GCONV_PATH=${common_objpfx}iconvdata \ -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}malloc/tst-mtrace || status=1 if test $status -eq 0 && test -f ${common_objpfx}malloc/mtrace; then diff --git a/manual/install.texi b/manual/install.texi index 1b54051de3..e36fb052ab 100644 --- a/manual/install.texi +++ b/manual/install.texi @@ -155,6 +155,11 @@ if the used tools support it. By using @samp{--without-tls} this can be prevented though there generally is no reason since it creates compatibility problems. +@item --enable-hardcoded-path-in-tests +By default, dynamic tests are linked to run with the installed C library. +This option hardcodes the newly built C library path in dynamic tests +so that they can be invoked directly. + @item --build=@var{build-system} @itemx --host=@var{host-system} These options are for cross-compiling. If you specify both options and diff --git a/nptl/ChangeLog b/nptl/ChangeLog index f4cd57a919..33152e2550 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,16 @@ +2013-01-11 H.J. Lu + + * Makefile (tst-cancel7-ARGS: Replace $(host-built-program-cmd) + with $(host-test-program-cmd). + (tst-exec4-ARGS): Likewise. + (tst-stackguard1-ARGS): Likewise. + ($(objpfx)tst-tls6.out): Don't pass $(elf-objpfx) to tst-tls6.sh. + Replace $(rtld-installed-name) with $(test-via-rtld-prefix). + * tst-tls6.sh (elf_objpfx): Removed. + (rtld_installed_name): Renamed to ... + (test_via_rtld_prefix): This. + (tst_tls5): Prepend ${test_via_rtld_prefix}. + 2013-01-02 Joseph Myers * All files with FSF copyright notices: Update copyright dates @@ -10,9 +23,9 @@ 2012-12-28 Andi Kleen - * pthread_rwlock_tryrdlock.c (__pthread_rwlock_tryrdlock): Convert + * pthread_rwlock_tryrdlock.c (__pthread_rwlock_tryrdlock): Convert to prototype. - * pthread_rwlock_trywrlock.c (__pthread_rwlock_trywrlock): + * pthread_rwlock_trywrlock.c (__pthread_rwlock_trywrlock): Likewise. 2012-12-27 David S. Miller diff --git a/nptl/Makefile b/nptl/Makefile index 7568ae0d35..6af4b37af4 100644 --- a/nptl/Makefile +++ b/nptl/Makefile @@ -437,7 +437,7 @@ CFLAGS-tst-initializers1-c99.c = $(CFLAGS-tst-initializers1-<) CFLAGS-tst-initializers1-gnu89.c = $(CFLAGS-tst-initializers1-<) CFLAGS-tst-initializers1-gnu99.c = $(CFLAGS-tst-initializers1-<) -tst-cancel7-ARGS = --command "exec $(host-built-program-cmd)" +tst-cancel7-ARGS = --command "exec $(host-test-program-cmd)" tst-cancelx7-ARGS = $(tst-cancel7-ARGS) tst-umask1-ARGS = $(objpfx)tst-umask1.temp @@ -477,8 +477,8 @@ $(objpfx)tst-tls6.out: tst-tls6.sh $(objpfx)tst-tls5 \ $(objpfx)tst-tls5moda.so $(objpfx)tst-tls5modb.so \ $(objpfx)tst-tls5modc.so $(objpfx)tst-tls5modd.so \ $(objpfx)tst-tls5mode.so $(objpfx)tst-tls5modf.so - $(BASH) $< $(common-objpfx) $(elf-objpfx) \ - $(rtld-installed-name) '$(test-wrapper-env)' + $(BASH) $< $(common-objpfx) '$(test-via-rtld-prefix)' \ + '$(test-wrapper-env)' endif $(objpfx)tst-dlsym1: $(libdl) $(shared-thread-library) @@ -580,7 +580,7 @@ $(objpfx)tst-cancel-wrappers.out: tst-cancel-wrappers.sh endif endif -tst-exec4-ARGS = $(host-built-program-cmd) +tst-exec4-ARGS = $(host-test-program-cmd) $(objpfx)tst-execstack: $(libdl) $(objpfx)tst-execstack.out: $(objpfx)tst-execstack-mod.so @@ -588,14 +588,14 @@ LDFLAGS-tst-execstack = -Wl,-z,noexecstack $(objpfx)tst-fini1mod.so: $(shared-thread-library) -tst-stackguard1-ARGS = --command "$(host-built-program-cmd) --child" +tst-stackguard1-ARGS = --command "$(host-test-program-cmd) --child" tst-stackguard1-static-ARGS = --command "$(objpfx)tst-stackguard1-static --child" ifeq ($(run-built-tests),yes) tests: $(objpfx)tst-oddstacklimit.out $(objpfx)tst-oddstacklimit.out: $(objpfx)tst-oddstacklimit $(objpfx)tst-basic1 - $(run-program-prefix) $< --command '$(host-built-program-cmd)' > $@ + $(test-program-prefix) $< --command '$(host-test-program-cmd)' > $@ endif # The tests here better do not run in parallel diff --git a/nptl/tst-tls6.sh b/nptl/tst-tls6.sh index d5513a5e9e..fb2351208f 100755 --- a/nptl/tst-tls6.sh +++ b/nptl/tst-tls6.sh @@ -20,15 +20,13 @@ set -e common_objpfx=$1; shift -elf_objpfx=$1; shift -rtld_installed_name=$1; shift +test_via_rtld_prefix=$1; shift test_wrapper_env=$1; shift logfile=$common_objpfx/nptl/tst-tls6.out # We have to find libc and nptl library_path=${common_objpfx}:${common_objpfx}nptl -tst_tls5="${elf_objpfx}${rtld_installed_name} --library-path ${library_path} \ - ${common_objpfx}/nptl/tst-tls5" +tst_tls5="${test_via_rtld_prefix} ${common_objpfx}/nptl/tst-tls5" LC_ALL=C export LC_ALL diff --git a/posix/Makefile b/posix/Makefile index fda6e13bda..57672d8837 100644 --- a/posix/Makefile +++ b/posix/Makefile @@ -119,10 +119,10 @@ ifeq ($(run-built-tests),yes) ifeq (yes,$(build-shared)) tests: $(objpfx)globtest.out $(objpfx)wordexp-tst.out $(objpfx)globtest.out: globtest.sh $(objpfx)globtest - $(SHELL) $< $(common-objpfx) '$(run-via-rtld-prefix)' \ - '$(test-wrapper)' '$(test-wrapper-env)' + $(SHELL) $< $(common-objpfx) '$(test-via-rtld-prefix)' \ + '$(test-program-prefix)' '$(test-wrapper-env)' $(objpfx)wordexp-tst.out: wordexp-tst.sh $(objpfx)wordexp-test - $(SHELL) $< $(common-objpfx) '$(run-program-prefix)' + $(SHELL) $< $(common-objpfx) '$(test-program-prefix)' endif endif @@ -173,9 +173,9 @@ CFLAGS-execlp.os = -fomit-frame-pointer tstgetopt-ARGS = -a -b -cfoobar --required foobar --optional=bazbug \ --none random --col --color --colour -tst-exec-ARGS = -- $(host-built-program-cmd) +tst-exec-ARGS = -- $(host-test-program-cmd) tst-exec-static-ARGS = $(tst-exec-ARGS) -tst-spawn-ARGS = -- $(host-built-program-cmd) +tst-spawn-ARGS = -- $(host-test-program-cmd) tst-spawn-static-ARGS = $(tst-spawn-ARGS) tst-dir-ARGS = `pwd` `cd $(common-objdir)/$(subdir); pwd` `cd $(common-objdir); pwd` $(objpfx)tst-dir tst-chmod-ARGS = $(objdir) @@ -268,7 +268,7 @@ $(objpfx)tst-vfork3-mem: $(objpfx)tst-vfork3.out # time to process. $(objpfx)tst-rxspencer-mem: $(objpfx)tst-rxspencer.out MALLOC_TRACE=$(objpfx)tst-rxspencer.mtrace $(tst-rxspencer-ENV) \ - $(run-program-prefix) $(objpfx)tst-rxspencer rxspencer/tests \ + $(test-program-prefix) $(objpfx)tst-rxspencer rxspencer/tests \ > /dev/null $(common-objpfx)malloc/mtrace $(objpfx)tst-rxspencer.mtrace > $@ diff --git a/posix/globtest.sh b/posix/globtest.sh index 24a1641bdb..6f3eaddd8f 100755 --- a/posix/globtest.sh +++ b/posix/globtest.sh @@ -20,10 +20,9 @@ set -e common_objpfx=$1; shift -run_via_rtld_prefix=$1; shift -test_wrapper=$1; shift +test_via_rtld_prefix=$1; shift +test_program_prefix=$1; shift test_wrapper_env=$1; shift -run_program_prefix="${test_wrapper} ${run_via_rtld_prefix}" logfile=$common_objpfx/posix/globtest.out #CMP=cmp @@ -78,7 +77,7 @@ rm -f $logfile # Normal test failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest "$testdir" "*" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -105,7 +104,7 @@ fi # Don't let glob sort it failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -s "$testdir" "*" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -132,7 +131,7 @@ fi # Mark directories failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -m "$testdir" "*" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -159,7 +158,7 @@ fi # Find files starting with . failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -p "$testdir" "*" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -189,7 +188,7 @@ fi # Test braces failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -b "$testdir" "file{1,2}" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -202,7 +201,7 @@ if test $failed -ne 0; then fi failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -b "$testdir" "{file{1,2},-file3}" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -216,7 +215,7 @@ if test $failed -ne 0; then fi failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -b "$testdir" "{" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -229,7 +228,7 @@ fi # Test NOCHECK failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -c "$testdir" "abc" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -242,7 +241,7 @@ fi # Test NOMAGIC without magic characters failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -g "$testdir" "abc" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -255,7 +254,7 @@ fi # Test NOMAGIC with magic characters failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -g "$testdir" "abc*" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -268,7 +267,7 @@ fi # Test NOMAGIC for subdirs failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -g "$testdir" "*/does-not-exist" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -281,7 +280,7 @@ fi # Test subdirs correctly failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest "$testdir" "*/*" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -297,7 +296,7 @@ fi # Test subdirs for invalid names failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest "$testdir" "*/1" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -310,7 +309,7 @@ fi # Test subdirs with wildcard failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest "$testdir" "*/*1_1" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -324,7 +323,7 @@ fi # Test subdirs with ? failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest "$testdir" "*/*?_?" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -339,7 +338,7 @@ if test $failed -ne 0; then fi failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest "$testdir" "*/file1_1" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -352,7 +351,7 @@ if test $failed -ne 0; then fi failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest "$testdir" "*-/*" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -364,7 +363,7 @@ if test $failed -ne 0; then fi failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest "$testdir" "*-" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -377,7 +376,7 @@ fi # Test subdirs with ? failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest "$testdir" "*/*?_?" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -393,7 +392,7 @@ fi # Test subdirs with [ .. ] failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest "$testdir" "*/file1_[12]" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -409,7 +408,7 @@ fi # Test ']' inside bracket expression failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest "$testdir" "dir1/file1_[]12]" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -423,7 +422,7 @@ fi # Test tilde expansion failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -q -t "$testdir" "~" | sort >$testout echo ~ | $CMP - $testout >> $logfile || failed=1 @@ -438,7 +437,7 @@ fi # Test tilde expansion with trailing slash failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -q -t "$testdir" "~/" | sort > $testout # Some shell incorrectly(?) convert ~/ into // if ~ expands to /. @@ -458,7 +457,7 @@ fi # Test tilde expansion with username failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -q -t "$testdir" "~"$USER | sort > $testout eval echo ~$USER | $CMP - $testout >> $logfile || failed=1 @@ -473,7 +472,7 @@ fi # Tilde expansion shouldn't match a file failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -T "$testdir" "~file4" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -486,7 +485,7 @@ fi # Matching \** should only find *file6 failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest "$testdir" "\**" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -500,7 +499,7 @@ fi # ... unless NOESCAPE is used, in which case it should entries with a # leading \. failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -e "$testdir" "\**" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -515,7 +514,7 @@ fi # Matching \*file6 should find *file6 failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest "$testdir" "\*file6" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -528,7 +527,7 @@ fi # GLOB_BRACE alone failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -b "$testdir" '\{file7\,\}' | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -541,7 +540,7 @@ fi # GLOB_BRACE and GLOB_NOESCAPE failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -b -e "$testdir" '\{file9\,file9b\}' | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -554,7 +553,7 @@ fi # Escaped comma failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -b "$testdir" '{filea\,}' | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -567,7 +566,7 @@ fi # Escaped closing brace failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -b "$testdir" '{fileb\}c}' | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -580,7 +579,7 @@ fi # Try a recursive failed search failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -e "$testdir" "a*/*" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -593,7 +592,7 @@ fi # ... with GLOB_ERR failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -E "$testdir" "a*/*" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -606,7 +605,7 @@ fi # Try a recursive search in unreadable directory failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest "$testdir" "noread/*" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -618,7 +617,7 @@ if test $failed -ne 0; then fi failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest "$testdir" "noread*/*" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -636,14 +635,14 @@ if test -z "$user"; then fi if test "$user" != root; then # ... with GLOB_ERR - ${run_program_prefix} \ + ${test_program_prefix} \ ${common_objpfx}posix/globtest -E "$testdir" "noread/*" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 GLOB_ABORTED EOF - ${run_program_prefix} \ + ${test_program_prefix} \ ${common_objpfx}posix/globtest -E "$testdir" "noread*/*" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -657,7 +656,7 @@ fi # not run as root # Try multiple patterns (GLOB_APPEND) failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest "$testdir" "file1" "*/*" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -674,7 +673,7 @@ fi # Try multiple patterns (GLOB_APPEND) with offset (GLOB_DOOFFS) failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -o "$testdir" "file1" "*/*" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -692,7 +691,7 @@ fi # Test NOCHECK with non-existing file in subdir. failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -c "$testdir" "*/blahblah" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -705,7 +704,7 @@ fi # Test [[:punct:]] not matching leading period. failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -c "$testdir" "[[:punct:]]*" | sort > $testout cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 @@ -734,10 +733,10 @@ mkdir $testdir/dir6 echo 6 > $testdir/dir6/'file1[a' echo 7 > $testdir/dir6/'file1[ab]' failed=0 -v=`${run_program_prefix} \ +v=`${test_program_prefix} \ ${common_objpfx}posix/globtest "$testdir" 'dir3\*/file2'` test "$v" != 'GLOB_NOMATCH' && echo "$v" >> $logfile && failed=1 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/globtest -c "$testdir" \ 'dir3\*/file1' 'dir3\*/file2' 'dir1/file\1_1' 'dir1/file\1_9' \ 'dir2\/' 'nondir\/' 'dir4[a/fil*1' 'di*r4[a/file2' 'dir5[ab]/file[12]' \ @@ -763,7 +762,7 @@ cat <<"EOF" | $CMP - $testout >> $logfile || failed=1 EOF ${test_wrapper_env} \ HOME="$testdir" \ -${run_via_rtld_prefix} \ +${test_via_rtld_prefix} \ ${common_objpfx}posix/globtest -ct "$testdir" \ '~/dir1/file1_1' '~/dir1/file1_9' '~/dir3\*/file1' '~/dir3\*/file2' \ '~\/dir1/file1_2' | @@ -778,15 +777,15 @@ EOF if eval test -d ~"$USER"/; then user=`echo "$USER" | sed -n -e 's/^\([^\\]\)\([^\\][^\\]*\)$/~\1\\\\\2/p'` if test -n "$user"; then - ${run_program_prefix} \ + ${test_program_prefix} \ ${common_objpfx}posix/globtest -ctq "$testdir" "$user/" | sort > $testout eval echo ~$USER/ | $CMP - $testout >> $logfile || failed=1 - ${run_program_prefix} \ + ${test_program_prefix} \ ${common_objpfx}posix/globtest -ctq "$testdir" "$user\\/" | sort > $testout eval echo ~$USER/ | $CMP - $testout >> $logfile || failed=1 - ${run_program_prefix} \ + ${test_program_prefix} \ ${common_objpfx}posix/globtest -ctq "$testdir" "$user" | sort > $testout eval echo ~$USER | $CMP - $testout >> $logfile || failed=1 diff --git a/posix/wordexp-tst.sh b/posix/wordexp-tst.sh index 93b507787f..5dff727e34 100755 --- a/posix/wordexp-tst.sh +++ b/posix/wordexp-tst.sh @@ -24,7 +24,7 @@ set -e # The others are just there to be parameters. common_objpfx=$1; shift -run_program_prefix=$1; shift +test_program_prefix=$1; shift logfile=${common_objpfx}posix/wordexp-tst.out testout=${common_objpfx}posix/wordexp-test-result @@ -38,7 +38,7 @@ IFS=" \ export IFS failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/wordexp-test '$*' > ${testout}1 cat <<"EOF" | cmp - ${testout}1 >> $logfile || failed=1 wordexp returned 0 @@ -50,7 +50,7 @@ if test $failed -ne 0; then fi failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/wordexp-test '${*}' unquoted > ${testout}2 cat <<"EOF" | cmp - ${testout}2 >> $logfile || failed=1 wordexp returned 0 @@ -63,7 +63,7 @@ if test $failed -ne 0; then fi failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/wordexp-test '$@' unquoted > ${testout}3 cat <<"EOF" | cmp - ${testout}3 >> $logfile || failed=1 wordexp returned 0 @@ -76,7 +76,7 @@ if test $failed -ne 0; then fi failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/wordexp-test '"$* quoted"' param > ${testout}4 cat <<"EOF" | cmp - ${testout}4 >> $logfile || failed=1 wordexp returned 0 @@ -88,7 +88,7 @@ if test $failed -ne 0; then fi failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/wordexp-test '"$@ quoted"' param > ${testout}5 cat <<"EOF" | cmp - ${testout}5 >> $logfile || failed=1 wordexp returned 0 @@ -102,7 +102,7 @@ fi # Why? Because bash does it that way.. failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/wordexp-test '$#' 2 3 4 5 > ${testout}6 cat <<"EOF" | cmp - ${testout}6 >> $logfile || failed=1 wordexp returned 0 @@ -114,7 +114,7 @@ if test $failed -ne 0; then fi failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/wordexp-test '$2 ${3} $4' 2nd 3rd "4 th" > ${testout}7 cat <<"EOF" | cmp - ${testout}7 >> $logfile || failed=1 wordexp returned 0 @@ -129,7 +129,7 @@ if test $failed -ne 0; then fi failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/wordexp-test '${11}' 2 3 4 5 6 7 8 9 10 11 > ${testout}8 cat <<"EOF" | cmp - ${testout}8 >> $logfile || failed=1 wordexp returned 0 @@ -141,7 +141,7 @@ if test $failed -ne 0; then fi failed=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/wordexp-test '"a $@ b"' c d > ${testout}9 cat <<"EOF" | cmp - ${testout}9 >> $logfile || failed=1 wordexp returned 0 @@ -154,7 +154,7 @@ if test $failed -ne 0; then status=1 fi -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}posix/wordexp-test '${#@} ${#2} *$**' two 3 4 > ${testout}10 cat <<"EOF" | cmp - ${testout}10 || failed=1 wordexp returned 0 diff --git a/rt/Makefile b/rt/Makefile index e723fdbbe0..6a98c81514 100644 --- a/rt/Makefile +++ b/rt/Makefile @@ -80,4 +80,4 @@ ifeq (yes,$(build-bounded)) $(tests:%=$(objpfx)%-bp): $(objpfx)librt_b.a $(bounded-thread-library) endif -tst-mqueue7-ARGS = -- $(host-built-program-cmd) +tst-mqueue7-ARGS = -- $(host-test-program-cmd) diff --git a/stdio-common/Makefile b/stdio-common/Makefile index a0377dfce2..f64a8ba2d9 100644 --- a/stdio-common/Makefile +++ b/stdio-common/Makefile @@ -69,11 +69,11 @@ tests: do-tst-unbputc do-tst-printf do-tst-unbputc: $(objpfx)tst-unbputc.out $(objpfx)tst-unbputc.out: tst-unbputc.sh $(objpfx)tst-unbputc - $(SHELL) $< $(common-objpfx) '$(run-program-prefix)' + $(SHELL) $< $(common-objpfx) '$(test-program-prefix)' do-tst-printf: $(objpfx)tst-printf.out $(objpfx)tst-printf.out: tst-printf.sh $(objpfx)tst-printf - $(SHELL) $< $(common-objpfx) '$(run-program-prefix)' + $(SHELL) $< $(common-objpfx) '$(test-program-prefix)' endif CFLAGS-vfprintf.c = -Wno-uninitialized @@ -127,7 +127,7 @@ tst-grouping-ENV = LOCPATH=$(common-objpfx)localedata CPPFLAGS += $(libio-mtsafe) $(objpfx)tst-setvbuf1.out: tst-setvbuf1.expect $(objpfx)tst-setvbuf1 - $(built-program-cmd) > $@ 2>&1 + $(test-program-cmd) > $@ 2>&1 cmp tst-setvbuf1.expect $@ ifeq ($(build-shared),yes) diff --git a/stdio-common/tst-printf.sh b/stdio-common/tst-printf.sh index 6986c5800e..81e1e24af0 100644 --- a/stdio-common/tst-printf.sh +++ b/stdio-common/tst-printf.sh @@ -20,12 +20,12 @@ set -e common_objpfx=$1; shift -run_program_prefix=$1; shift +test_program_prefix=$1; shift status=0 LOCPATH=${common_objpfx}localedata GCONV_PATH=${common_objpfx}iconvdata \ -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}stdio-common/tst-printf \ > ${common_objpfx}stdio-common/tst-printf.out || status=1 diff --git a/stdio-common/tst-unbputc.sh b/stdio-common/tst-unbputc.sh index 07da54e791..3ce8696400 100755 --- a/stdio-common/tst-unbputc.sh +++ b/stdio-common/tst-unbputc.sh @@ -20,11 +20,11 @@ set -e common_objpfx=$1; shift -run_program_prefix=$1; shift +test_program_prefix=$1; shift status=0 -${run_program_prefix} \ +${test_program_prefix} \ ${common_objpfx}stdio-common/tst-unbputc \ 2> ${common_objpfx}stdio-common/tst-unbputc.out || status=1 diff --git a/stdlib/Makefile b/stdlib/Makefile index 68ffd888f8..4bfd4b9bca 100644 --- a/stdlib/Makefile +++ b/stdlib/Makefile @@ -136,7 +136,7 @@ $(objpfx)isomac: isomac.c $(native-compile) $(objpfx)tst-fmtmsg.out: tst-fmtmsg.sh $(objpfx)tst-fmtmsg - $(SHELL) $< $(common-objpfx) '$(run-program-prefix)' $(common-objpfx)stdlib/ + $(SHELL) $< $(common-objpfx) '$(test-program-prefix)' $(common-objpfx)stdlib/ $(objpfx)tst-putenv: $(objpfx)tst-putenvmod.so LDFLAGS-tst-putenv = $(no-as-needed) diff --git a/stdlib/tst-fmtmsg.sh b/stdlib/tst-fmtmsg.sh index 5227015d70..963c522bb7 100755 --- a/stdlib/tst-fmtmsg.sh +++ b/stdlib/tst-fmtmsg.sh @@ -20,10 +20,10 @@ set -e common_objpfx=$1 -run_program_prefix=$2 +test_program_prefix=$2 objpfx=$3 -test="${run_program_prefix} ${objpfx}tst-fmtmsg" +test="${test_program_prefix} ${objpfx}tst-fmtmsg" out=${objpfx}tst-fmtmsg.out LC_ALL=C diff --git a/string/Makefile b/string/Makefile index 83d3af8bee..44bbd0c843 100644 --- a/string/Makefile +++ b/string/Makefile @@ -82,6 +82,6 @@ ifeq ($(run-built-tests),yes) tests: $(objpfx)tst-svc.out $(objpfx)tst-svc.out: tst-svc.input $(objpfx)tst-svc GCONV_PATH=$(common-objpfx)iconvdata LC_ALL=C \ - $(built-program-cmd) < $(word 1,$^) > $@ + $(test-program-cmd) < $(word 1,$^) > $@ @cmp tst-svc.expect $(objpfx)tst-svc.out endif