[binutils-gdb] binutils testsuite: canonicalize subtest names in libctf

Frank Ch. Eigler fche@sourceware.org
Wed Sep 25 01:51:01 GMT 2024


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=4eb048d448835e9a612643858b2ec49c6b520b65

commit 4eb048d448835e9a612643858b2ec49c6b520b65 (HEAD -> master)
Author: Frank Ch. Eigler <fche@redhat.com>
Date:   Fri Sep 20 16:23:48 2024 -0400

    binutils testsuite: canonicalize subtest names in libctf
    
    Previous code included the full $srcdir pathnames in the individual
    subtest PASS/FAIL names, which makes it difficult to compute
    comparisons or regressions between test runs on different machines.
    This version switches to the basename only, which are common.
    
    Signed-off-by: Frank Ch. Eigler <fche@redhat.com>

Diff:
---
 libctf/testsuite/lib/ctf-lib.exp                        | 15 +++++++--------
 libctf/testsuite/libctf-regression/libctf-repeat-cu.exp |  2 +-
 2 files changed, 8 insertions(+), 9 deletions(-)

diff --git a/libctf/testsuite/lib/ctf-lib.exp b/libctf/testsuite/lib/ctf-lib.exp
index cfd36bee339..966c5a950a6 100644
--- a/libctf/testsuite/lib/ctf-lib.exp
+++ b/libctf/testsuite/lib/ctf-lib.exp
@@ -136,11 +136,13 @@ proc run_lookup_test { name } {
     } else {
 	set file "$srcdir/$subdir/$name"
     }
+    # strip off the srcdir, which contains build host specific pathnames
+    set file4log [string map [list $srcdir/ ""] $file]
 
     set opt_array [slurp_options "${file}.lk"]
     if { $opt_array == -1 } {
 	perror "error reading options from $file.lk"
-	unresolved $subdir/$name
+	unresolved $file4log
 	return
     }
     set run_ld 0
@@ -166,7 +168,7 @@ proc run_lookup_test { name } {
 	}
 	if ![info exists opts($opt_name)] {
 	    perror "unknown option $opt_name in file $file.lk"
-	    unresolved $subdir/$name
+	    unresolved $file4log
 	    return
 	}
 
@@ -175,12 +177,12 @@ proc run_lookup_test { name } {
 
     if { [llength $opts(no_cross)] != 0
 	 && "$TEST_CROSS" eq "yes" } {
-	untested "$subdir/$name not tested when cross-compiling"
+	untested "$file4log not tested when cross-compiling"
 	return
     }
 
     if { [llength $opts(host)] != 0 && ![ishost $opts(host)] } {
-	untested "$subdir/$name only runs on $opts(host)"
+	untested "$file4log only runs on $opts(host)"
 	return
     }
 
@@ -203,10 +205,7 @@ proc run_lookup_test { name } {
 	set shared ""
     }
 
-    set testname $opts(name)
-    if { $opts(name) == "" } {
-	set testname "$subdir/$name"
-    }
+    set testname $file4log
 
     # Compile and link the lookup program.
     set comp_output [prune_warnings [compile_link_one_host_cc $opts(lookup) "tmpdir/lookup" "libctf.la $opts(lookup_link)"]]
diff --git a/libctf/testsuite/libctf-regression/libctf-repeat-cu.exp b/libctf/testsuite/libctf-regression/libctf-repeat-cu.exp
index 2f141198016..6bfeac3cf1e 100644
--- a/libctf/testsuite/libctf-regression/libctf-repeat-cu.exp
+++ b/libctf/testsuite/libctf-regression/libctf-repeat-cu.exp
@@ -25,7 +25,7 @@ global testname
 global subsrcdir
 
 set subsrcdir "$srcdir/$subdir/"
-set testname "$dir/libctf-repeat-cu.exp"
+set testname "libctf-repeat-cu.exp"
 
 if ![is_elf_format] {
     unsupported "CTF needs bfd changes to be emitted on non-ELF"


More information about the Binutils-cvs mailing list