Commit 4d936aca by Janis Johnson Committed by Janis Johnson

re PR testsuite/38526 (WARNING: Could not compile gcc.dg/compat/struct-layout-1 generator)

gcc/
	PR testsuite/38526
	* Makefile.in (site.exp): Rename TEST_GCC_EXEC_PREFIX and comment
	its use.
	(check-%): Don't set GCC_EXEC_PREFIX when invoking runtest.
	(check-parallel-%): Ditto.
	(check-consistency): Ditto.
testsuite/
	PR testsuite/38526
	* lib/target-libpath.exp (set_ld_library_path_env_vars): Save
	existing GCC_EXEC_PREFIX, set to TEST_GCC_EXEC_PREFIX if that
	is defined.
	(restore_ld_library_path_env_vars): Restore GCC_EXEC_PREFIX to
	its original value, or unset if it was not defined.
	* gcc.dg/compat/struct-layout-1.exp: Use set/restore library
	path procs around use of HOSTCC.
	* g++.dg/compat/struct-layout-1.exp: Ditto.
	* objc.dg/gnu-encoding/gnu-encoding.exp: Ditto.

From-SVN: r144908
parent 4e9b2e50
2009-03-17 Janis Johnson <janis187@us.ibm.com>
PR testsuite/38526
* Makefile.in (site.exp): Rename TEST_GCC_EXEC_PREFIX and comment
its use.
(check-%): Don't set GCC_EXEC_PREFIX when invoking runtest.
(check-parallel-%): Ditto.
(check-consistency): Ditto.
2009-03-17 Kai Tietz <kai.tietz@onevision.com>
* ipa-struct-reorg.c (create_general_new_stmt): Initialize
......
......@@ -4418,9 +4418,13 @@ site.exp: ./config.status Makefile
@echo "set CXXFLAGS \"\"" >> ./tmp0
@echo "set HOSTCC \"$(CC)\"" >> ./tmp0
@echo "set HOSTCFLAGS \"$(CFLAGS)\"" >> ./tmp0
# When running the tests we set GCC_EXEC_PREFIX to the install tree so that
# files that have already been installed there will be found. The -B option
# overrides it, so use of GCC_EXEC_PREFIX will not result in using GCC files
# from the install tree.
@echo "set TEST_GCC_EXEC_PREFIX \"$(libdir)/gcc/\"" >> ./tmp0
@echo "set TESTING_IN_BUILD_TREE 1" >> ./tmp0
@echo "set HAVE_LIBSTDCXX_V3 1" >> ./tmp0
@echo "set GCC_EXEC_PREFIX \"$(libdir)/gcc/\"" >> ./tmp0
# If newlib has been configured, we need to pass -B to gcc so it can find
# newlib's crt0.o if it exists. This will cause a "path prefix not used"
# message if it doesn't, but the testsuite is supposed to ignore the message -
......@@ -4505,7 +4509,6 @@ $(filter-out $(lang_checks_parallelized),$(lang_checks)): check-% : site.exp
if [ -f $${rootme}/../expect/expect ] ; then \
TCL_LIBRARY=`cd .. ; cd $${srcdir}/../tcl/library ; ${PWD_COMMAND}` ; \
export TCL_LIBRARY ; fi ; \
GCC_EXEC_PREFIX="$(libdir)/gcc/" ; export GCC_EXEC_PREFIX ; \
$(RUNTEST) --tool $* $(RUNTESTFLAGS))
$(patsubst %,%-subtargets,$(filter-out $(lang_checks_parallelized),$(lang_checks))): check-%-subtargets:
......@@ -4593,7 +4596,6 @@ check-parallel-% : site.exp
if [ -f $${rootme}/../expect/expect ] ; then \
TCL_LIBRARY=`cd .. ; cd $${srcdir}/../tcl/library ; ${PWD_COMMAND}` ; \
export TCL_LIBRARY ; fi ; \
GCC_EXEC_PREFIX="$(libdir)/gcc/" ; export GCC_EXEC_PREFIX ; \
runtestflags= ; \
if [ -n "$(check_p_subno)" ] ; then \
runtestflags="$(check_p_subwork)"; \
......@@ -4618,7 +4620,6 @@ check-consistency: testsuite/site.exp
if [ -f $${rootme}/../expect/expect ] ; then \
TCL_LIBRARY=`cd .. ; cd $${srcdir}/../tcl/library ; ${PWD_COMMAND}` ; \
export TCL_LIBRARY ; fi ; \
GCC_EXEC_PREFIX="$(libdir)/gcc/" ; export GCC_EXEC_PREFIX ; \
$(RUNTEST) --tool consistency $(RUNTESTFLAGS)
# QMTest targets
......
2009-03-17 Janis Johnson <janis187@us.ibm.com>
PR testsuite/38526
* lib/target-libpath.exp (set_ld_library_path_env_vars): Save
existing GCC_EXEC_PREFIX, set to TEST_GCC_EXEC_PREFIX if that
is defined.
(restore_ld_library_path_env_vars): Restore GCC_EXEC_PREFIX to
its original value, or unset if it was not defined.
* gcc.dg/compat/struct-layout-1.exp: Use set/restore library
path procs around use of HOSTCC.
* g++.dg/compat/struct-layout-1.exp: Ditto.
* objc.dg/gnu-encoding/gnu-encoding.exp: Ditto.
2009-03-16 H.J. Lu <hongjiu.lu@intel.com>
* gcc.target/x86_64/abi/callabi/func-indirect.c (main): Return 0.
......
......@@ -129,20 +129,11 @@ set generator_src "$generator_src $srcdir/$subdir/../../gcc.dg/compat/generate-r
set generator_src "$generator_src $srcdir/$subdir/../../gcc.dg/compat/generate-random_r.c"
set generator_cmd "-o $generator $generator_src"
# Temporarily unset GCC_EXEC_PREFIX from environment, as that might
# confuse the $HOSTCC.
set orig_gcc_exec_prefix_saved 0
if [info exists env(GCC_EXEC_PREFIX)] {
set orig_gcc_exec_prefix "$env(GCC_EXEC_PREFIX)"
set orig_gcc_exec_prefix_saved 1
unsetenv GCC_EXEC_PREFIX
}
# Temporarily switch to the environment of the host compiler.
restore_ld_library_path_env_vars
set status [remote_exec build "$HOSTCC $HOSTCFLAGS $generator_cmd"]
set status [lindex $status 0]
if { $orig_gcc_exec_prefix_saved } {
set orig_gcc_exec_prefix_saved 0
setenv GCC_EXEC_PREFIX "$orig_gcc_exec_prefix"
}
set_ld_library_path_env_vars
if { $status == 0 } then {
file delete -force $tstobjdir
file mkdir $tstobjdir
......
......@@ -43,6 +43,7 @@ global compat_have_dfp
# Load procedures from common libraries.
load_lib standard.exp
load_lib gcc.exp
load_lib target-libpath.exp
# Load the language-dependent compabibility support procedures.
load_lib c-compat.exp
......@@ -90,20 +91,12 @@ set generator_src "$generator_src $srcdir/$subdir/generate-random.c"
set generator_src "$generator_src $srcdir/$subdir/generate-random_r.c"
set generator_cmd "-o $generator $skip_dfp $generator_src"
# Temporarily unset GCC_EXEC_PREFIX from environment, as that might
# confuse the $HOSTCC.
set orig_gcc_exec_prefix_saved 0
if [info exists env(GCC_EXEC_PREFIX)] {
set orig_gcc_exec_prefix "$env(GCC_EXEC_PREFIX)"
set orig_gcc_exec_prefix_saved 1
unsetenv GCC_EXEC_PREFIX
}
# Temporarily switch to the environment for the host compiler.
restore_ld_library_path_env_vars
set status [remote_exec build "$HOSTCC $HOSTCFLAGS $generator_cmd"]
set status [lindex $status 0]
if { $orig_gcc_exec_prefix_saved } {
set orig_gcc_exec_prefix_saved 0
setenv GCC_EXEC_PREFIX "$orig_gcc_exec_prefix"
}
set_ld_library_path_env_vars
if { $status == 0 } then {
file delete -force $tstobjdir
file mkdir $tstobjdir
......
......@@ -25,6 +25,8 @@ set orig_ld_library64_path_saved 0
set orig_ld_library_path_32_saved 0
set orig_ld_library_path_64_saved 0
set orig_dyld_library_path_saved 0
set orig_gcc_exec_prefix_saved 0
set orig_gcc_exec_prefix_checked 0
#######################################
......@@ -42,6 +44,8 @@ proc set_ld_library_path_env_vars { } {
global orig_ld_library_path_32_saved
global orig_ld_library_path_64_saved
global orig_dyld_library_path_saved
global orig_gcc_exec_prefix_saved
global orig_gcc_exec_prefix_checked
global orig_ld_library_path
global orig_ld_run_path
global orig_shlib_path
......@@ -50,11 +54,23 @@ proc set_ld_library_path_env_vars { } {
global orig_ld_library_path_32
global orig_ld_library_path_64
global orig_dyld_library_path
global GCC_EXEC_PREFIX
global orig_gcc_exec_prefix
global TEST_GCC_EXEC_PREFIX
global env
# Set the relocated compiler prefix, but only if the user hasn't specified one.
if { [info exists GCC_EXEC_PREFIX] && ![info exists env(GCC_EXEC_PREFIX)] } {
setenv GCC_EXEC_PREFIX "$GCC_EXEC_PREFIX"
# Save the original GCC_EXEC_PREFIX.
if { $orig_gcc_exec_prefix_checked == 0 } {
if [info exists env(GCC_EXEC_PREFIX)] {
set orig_gcc_exec_prefix "$env(GCC_EXEC_PREFIX)"
set orig_gcc_exec_prefix_saved 1
}
set orig_gcc_exec_prefix_checked 1
}
# Set GCC_EXEC_PREFIX for the compiler under test to pick up files not in
# the build tree from a specified location (normally the install tree).
if [info exists env(TEST_GCC_EXEC_PREFIX)] {
setenv GCC_EXEC_PREFIX "$TEST_GCC_EXEC_PREFIX"
}
# Setting the ld library path causes trouble when testing cross-compilers.
......@@ -63,8 +79,6 @@ proc set_ld_library_path_env_vars { } {
}
if { $orig_environment_saved == 0 } {
global env
set orig_environment_saved 1
# Save the original environment.
......@@ -187,6 +201,7 @@ proc restore_ld_library_path_env_vars { } {
global orig_ld_library_path_32_saved
global orig_ld_library_path_64_saved
global orig_dyld_library_path_saved
global orig_gcc_exec_prefix_saved
global orig_ld_library_path
global orig_ld_run_path
global orig_shlib_path
......@@ -195,11 +210,19 @@ proc restore_ld_library_path_env_vars { } {
global orig_ld_library_path_32
global orig_ld_library_path_64
global orig_dyld_library_path
global orig_gcc_exec_prefix
global env
if { $orig_environment_saved == 0 } {
return
}
if { $orig_gcc_exec_prefix_saved } {
setenv GCC_EXEC_PREFIX "$orig_gcc_exec_prefix"
} elseif [info exists env(GCC_EXEC_PREFIX)] {
unsetenv GCC_EXEC_PREFIX
}
if { $orig_ld_library_path_saved } {
setenv LD_LIBRARY_PATH "$orig_ld_library_path"
} elseif [info exists env(LD_LIBRARY_PATH)] {
......
......@@ -17,6 +17,7 @@
# Load support procs.
load_lib objc-dg.exp
load_lib target-libpath.exp
# If a testcase doesn't have special options, use these.
global DEFAULT_CFLAGS
......@@ -37,20 +38,11 @@ set generator_src "$srcdir/$subdir/struct-layout-encoding-1_generate.c"
set generator_src "$generator_src $srcdir/$subdir/generate-random.c"
set generator_src "$generator_src $srcdir/$subdir/generate-random_r.c"
set generator_cmd "-o $generator $generator_src"
# Temporarily unset GCC_EXEC_PREFIX from environment, as that might
# confuse the $HOSTCC.
set orig_gcc_exec_prefix_saved 0
if [info exists env(GCC_EXEC_PREFIX)] {
set orig_gcc_exec_prefix "$env(GCC_EXEC_PREFIX)"
set orig_gcc_exec_prefix_saved 1
unsetenv GCC_EXEC_PREFIX
}
# Temporarily switch to the environment of the host compiler.
restore_ld_library_path_env_vars
set status [remote_exec build "$HOSTCC $HOSTCFLAGS $generator_cmd"]
set status [lindex $status 0]
if { $orig_gcc_exec_prefix_saved } {
set orig_gcc_exec_prefix_saved 0
setenv GCC_EXEC_PREFIX "$orig_gcc_exec_prefix"
}
set_ld_library_path_env_vars
if { $status == 0 } then {
file delete -force $tstobjdir
file mkdir $tstobjdir
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment