* [testsuite] Avoid absolute paths in .sum files (PR testsuite/21164)
@ 2011-04-11 12:15 Rainer Orth
0 siblings, 0 replies; only message in thread
From: Rainer Orth @ 2011-04-11 12:15 UTC (permalink / raw)
To: gcc-patches; +Cc: java-patches, Mike Stump
When comparing gcc testsuite results from two (slightly) different
source tree with dg-cmp-results.sh, I ran into an old issue: some
testsuites log absolute paths for either sources or executables,
rendering comparison difficult. The libjava side of this problem was
logged as PR libgcj/21164, but the issue also occurs in lto.exp and
compat.exp.
This patch fixes this.
Bootstrapped without regressions on i386-pc-solaris2.11 and comparing
gcc.sum, g++.sum and libjava.sum.
Will install shortly unless someone objects.
Rainer
2011-04-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
libjava:
PR testsuite/21164
* testsuite/lib/libjava.exp: Load dg.exp.
* testsuite/libjava.jar/jar.exp (gcj_jar_interpret): Strip srcdir
from jarfile.
Use result for messages.
* testsuite/libjava.loader/loader.exp (gcj_loader_test_one): Pass
errname to libjava_invoke, fix testname.
gcc:
PR testsuite/21164
* lib/compat.exp (compat-execute): Declare unsupported after
stripping path from src1.
* lib/lto.exp (lto-execute): Likewise.
diff --git a/gcc/testsuite/lib/compat.exp b/gcc/testsuite/lib/compat.exp
--- a/gcc/testsuite/lib/compat.exp
+++ b/gcc/testsuite/lib/compat.exp
@@ -1,4 +1,4 @@
-# Copyright (C) 2002, 2003, 2004, 2005, 2007, 2008
+# Copyright (C) 2002, 2003, 2004, 2005, 2007, 2008, 2011
# Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
@@ -260,13 +260,6 @@ proc compat-execute { src1 sid use_alt }
set dg-do-what [list ${dg-do-what-default} "" P]
set extra_flags_1 [compat-get-options-main $src1]
- # Check whether this test is supported for this target.
- if { [lindex ${dg-do-what} 1 ] == "N" } {
- unsupported "$src1"
- verbose "$src1 not supported on this target, skipping it" 3
- return
- }
-
# Set up the names of the other source files.
set dir [file dirname $src1]
set ext [file extension $src1]
@@ -314,10 +307,6 @@ proc compat-execute { src1 sid use_alt }
set testcase [string range "$testcase" [string length "$tmpdir/"] end]
set testcase "tmpdir-$testcase"
}
- regsub "_main.*" $testcase "" testcase
- # Set up the base name of executable files so they'll be unique.
- regsub -all "\[./\]" $testcase "-" execbase
-
# If we couldn't rip $srcdir out of `src1' then just do the best we can.
# The point is to reduce the unnecessary noise in the logs. Don't strip
# out too much because different testcases with the same name can confuse
@@ -326,6 +315,17 @@ proc compat-execute { src1 sid use_alt }
set testcase "[file tail [file dirname $src1]]/[file tail $src1]"
}
+ # Check whether this test is supported for this target.
+ if { [lindex ${dg-do-what} 1 ] == "N" } {
+ unsupported "$testcase"
+ verbose "$testcase not supported on this target, skipping it" 3
+ return
+ }
+
+ regsub "_main.*" $testcase "" testcase
+ # Set up the base name of executable files so they'll be unique.
+ regsub -all "\[./\]" $testcase "-" execbase
+
# Loop through all of the option lists used for this test.
set count 0
diff --git a/gcc/testsuite/lib/lto.exp b/gcc/testsuite/lib/lto.exp
--- a/gcc/testsuite/lib/lto.exp
+++ b/gcc/testsuite/lib/lto.exp
@@ -410,13 +410,6 @@ proc lto-execute { src1 sid } {
set lto_option_list $LTO_OPTIONS
}
- # Check whether this test is supported for this target.
- if { [lindex ${dg-do-what} 1 ] == "N" } {
- unsupported "$src1"
- verbose "$src1 not supported on this target, skipping it" 3
- return
- }
-
# Set up the names of the other source files.
set dir [file dirname $src1]
set base [file rootname $src1]
@@ -470,11 +463,6 @@ proc lto-execute { src1 sid } {
set testcase [string range "$testcase" [string length "$tmpdir/"] end]
set testcase "tmpdir-$testcase"
}
- regsub "_0.*" $testcase "" testcase
-
- # Set up the base name of executable files so they'll be unique.
- regsub -all "\[./\]" $testcase "-" execbase
-
# If we couldn't rip $srcdir out of `src1' then just do the best we can.
# The point is to reduce the unnecessary noise in the logs. Don't strip
# out too much because different testcases with the same name can confuse
@@ -483,6 +471,18 @@ proc lto-execute { src1 sid } {
set testcase "[file tail [file dirname $src1]]/[file tail $src1]"
}
+ # Check whether this test is supported for this target.
+ if { [lindex ${dg-do-what} 1 ] == "N" } {
+ unsupported "$testcase"
+ verbose "$testcase not supported on this target, skipping it" 3
+ return
+ }
+
+ regsub "_0.*" $testcase "" testcase
+
+ # Set up the base name of executable files so they'll be unique.
+ regsub -all "\[./\]" $testcase "-" execbase
+
# Loop through all of the option lists used for this test.
set count 0
foreach option $lto_option_list {
diff --git a/libjava/testsuite/lib/libjava.exp b/libjava/testsuite/lib/libjava.exp
--- a/libjava/testsuite/lib/libjava.exp
+++ b/libjava/testsuite/lib/libjava.exp
@@ -1,4 +1,5 @@
-# Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2006, 2007 Free Software Foundation
+# Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2006, 2007, 2011
+# Free Software Foundation
proc load_gcc_lib { filename } {
global srcdir
@@ -6,6 +7,7 @@ proc load_gcc_lib { filename } {
}
load_lib libgloss.exp
+load_lib dg.exp
load_gcc_lib target-libpath.exp
# GCJ_UNDER_TEST is the compiler under test.
diff --git a/libjava/testsuite/libjava.jar/jar.exp b/libjava/testsuite/libjava.jar/jar.exp
--- a/libjava/testsuite/libjava.jar/jar.exp
+++ b/libjava/testsuite/libjava.jar/jar.exp
@@ -20,17 +20,18 @@ proc gcj_jar_interpret {jarfile} {
global INTERPRETER srcdir
set gij [libjava_find_gij]
+ set errname [dg-trim-dirname $srcdir $jarfile]
# libjava_find_gij will return "" if it couldn't find the
# program; in this case we want to skip the test.
if {$INTERPRETER != "yes" || $gij == ""} {
- untested "$jarfile execution - gij test"
- untested "$jarfile output - gij test"
+ untested "$errname execution - gij test"
+ untested "$errname output - gij test"
return
}
set opts(_) {}
set out [file rootname $jarfile].out
- libjava_invoke $jarfile "gij test" opts $gij {} $out \
+ libjava_invoke $errname "gij test" opts $gij {} $out \
"" -jar $jarfile
}
diff --git a/libjava/testsuite/libjava.loader/loader.exp b/libjava/testsuite/libjava.loader/loader.exp
--- a/libjava/testsuite/libjava.loader/loader.exp
+++ b/libjava/testsuite/libjava.loader/loader.exp
@@ -34,7 +34,7 @@ proc gcj_loader_test_one {srcfile} {
}
pass "$errname compilation from source"
- libjava_invoke $executable $executable "" $executable "" $resfile ""
+ libjava_invoke $errname "source compiled test" "" $executable "" $resfile ""
return 1
}
--
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2011-04-11 12:15 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-04-11 12:15 [testsuite] Avoid absolute paths in .sum files (PR testsuite/21164) Rainer Orth
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).