mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-24 02:24:46 +08:00
* lib/gdb.exp (gdb_compile_test): New.
(skip_ada_tests, skip_java_tests): New. (gdb_compile): Use gdb_compile_test for f77. * lib/ada.exp (gdb_compile_ada): Use gdb_compile_test to record result. * lib/java.exp (compile_java_from_source): Remove runtests check, use gdb_compile_test to record result. * gdb.ada/packed_array.exp, gdb.ada/fixed_points.exp, gdb.ada/exec_changed.exp, gdb.ada/start.exp, gdb.ada/watch_arg.exp, gdb.ada/null_record.exp, gdb.ada/array_return.exp, gdb.ada/arrayidx.exp, gdb.mi/mi-var-child-f.exp, gdb.fortran/types.exp, gdb.fortran/array-element.exp, gdb.fortran/subarray.exp, gdb.fortran/derived-type.exp, gdb.fortran/exprs.exp, gdb.java/jmisc.exp, gdb.java/jmisc1.exp, gdb.java/jprint.exp, gdb.java/jv-print.exp, gdb.java/jmain.exp: Add language skip, adjust gdb_compile invocations.
This commit is contained in:
parent
ee143e8142
commit
ec3c07fc0f
@ -1,3 +1,22 @@
|
||||
2009-11-10 Nathan Sidwell <nathan@codesourcery.com>
|
||||
|
||||
* lib/gdb.exp (gdb_compile_test): New.
|
||||
(skip_ada_tests, skip_java_tests): New.
|
||||
(gdb_compile): Use gdb_compile_test for f77.
|
||||
* lib/ada.exp (gdb_compile_ada): Use gdb_compile_test to record result.
|
||||
* lib/java.exp (compile_java_from_source): Remove runtests check,
|
||||
use gdb_compile_test to record result.
|
||||
* gdb.ada/packed_array.exp, gdb.ada/fixed_points.exp,
|
||||
gdb.ada/exec_changed.exp, gdb.ada/start.exp,
|
||||
gdb.ada/watch_arg.exp, gdb.ada/null_record.exp,
|
||||
gdb.ada/array_return.exp, gdb.ada/arrayidx.exp,
|
||||
gdb.mi/mi-var-child-f.exp, gdb.fortran/types.exp,
|
||||
gdb.fortran/array-element.exp, gdb.fortran/subarray.exp,
|
||||
gdb.fortran/derived-type.exp, gdb.fortran/exprs.exp,
|
||||
gdb.java/jmisc.exp, gdb.java/jmisc1.exp, gdb.java/jprint.exp,
|
||||
gdb.java/jv-print.exp, gdb.java/jmain.exp: Add language skip,
|
||||
adjust gdb_compile invocations.
|
||||
|
||||
2009-11-09 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||
|
||||
* Makefile.in (abs_builddir): New.
|
||||
|
@ -19,14 +19,16 @@ if $tracelevel then {
|
||||
|
||||
load_lib "ada.exp"
|
||||
|
||||
if { [skip_ada_tests] } { return -1 }
|
||||
|
||||
set testdir "array_return"
|
||||
set testfile "${testdir}/p"
|
||||
set srcfile ${srcdir}/${subdir}/${testfile}.adb
|
||||
set binfile ${objdir}/${subdir}/${testfile}
|
||||
|
||||
file mkdir ${objdir}/${subdir}/${testdir}
|
||||
if {[gdb_compile_ada "${srcfile}" "${binfile}" executable [list debug ]] != "" } {
|
||||
return -1
|
||||
if {[gdb_compile_ada "${srcfile}" "${binfile}" executable {debug}] != ""} {
|
||||
return -1
|
||||
}
|
||||
|
||||
gdb_exit
|
||||
|
@ -19,14 +19,16 @@ if $tracelevel then {
|
||||
|
||||
load_lib "ada.exp"
|
||||
|
||||
if { [skip_ada_tests] } { return -1 }
|
||||
|
||||
set testdir "arrayidx"
|
||||
set testfile "${testdir}/p"
|
||||
set srcfile ${srcdir}/${subdir}/${testfile}.adb
|
||||
set binfile ${objdir}/${subdir}/${testfile}
|
||||
|
||||
file mkdir ${objdir}/${subdir}/${testdir}
|
||||
if {[gdb_compile_ada "${srcfile}" "${binfile}" executable [list debug ]] != "" } {
|
||||
return -1
|
||||
if {[gdb_compile_ada "${srcfile}" "${binfile}" executable {debug}] != ""} {
|
||||
return -1
|
||||
}
|
||||
|
||||
gdb_exit
|
||||
|
@ -19,6 +19,8 @@ if $tracelevel then {
|
||||
|
||||
load_lib "ada.exp"
|
||||
|
||||
if { [skip_ada_tests] } { return -1 }
|
||||
|
||||
set testdir "exec_changed"
|
||||
file mkdir ${objdir}/${subdir}/${testdir}
|
||||
|
||||
@ -27,8 +29,8 @@ set testfile1 "${testdir}/first"
|
||||
set srcfile1 ${srcdir}/${subdir}/${testfile1}.adb
|
||||
set binfile1 ${objdir}/${subdir}/${testfile1}$EXEEXT
|
||||
|
||||
if {[gdb_compile_ada "${srcfile1}" "${binfile1}" executable [list debug ]] != "" } {
|
||||
return -1
|
||||
if {[gdb_compile_ada "${srcfile1}" "${binfile1}" executable {debug}] != ""} {
|
||||
return -1
|
||||
}
|
||||
|
||||
# Build the second test program
|
||||
@ -36,8 +38,8 @@ set testfile2 "${testdir}/second"
|
||||
set srcfile2 ${srcdir}/${subdir}/${testfile2}.adb
|
||||
set binfile2 ${objdir}/${subdir}/${testfile2}$EXEEXT
|
||||
|
||||
if {[gdb_compile_ada "${srcfile2}" "${binfile2}" executable [list debug ]] != "" } {
|
||||
return -1
|
||||
if {[gdb_compile_ada "${srcfile2}" "${binfile2}" executable {debug}] != ""} {
|
||||
return -1
|
||||
}
|
||||
|
||||
# Start with a fresh gdb.
|
||||
|
@ -19,14 +19,16 @@ if $tracelevel then {
|
||||
|
||||
load_lib "ada.exp"
|
||||
|
||||
if { [skip_ada_tests] } { return -1 }
|
||||
|
||||
set testdir "fixed_points"
|
||||
set testfile "${testdir}/fixed_points"
|
||||
set srcfile ${srcdir}/${subdir}/${testfile}.adb
|
||||
set binfile ${objdir}/${subdir}/${testfile}
|
||||
|
||||
file mkdir ${objdir}/${subdir}/${testdir}
|
||||
if {[gdb_compile_ada "${srcfile}" "${binfile}" executable [list debug ]] != "" } {
|
||||
return -1
|
||||
if {[gdb_compile_ada "${srcfile}" "${binfile}" executable {debug}] != ""} {
|
||||
return -1
|
||||
}
|
||||
|
||||
gdb_exit
|
||||
|
@ -19,14 +19,16 @@ if $tracelevel then {
|
||||
|
||||
load_lib "ada.exp"
|
||||
|
||||
if { [skip_ada_tests] } { return -1 }
|
||||
|
||||
set testdir "null_record"
|
||||
set testfile "${testdir}/null_record"
|
||||
set srcfile ${srcdir}/${subdir}/${testfile}.adb
|
||||
set binfile ${objdir}/${subdir}/${testfile}
|
||||
|
||||
file mkdir ${objdir}/${subdir}/${testdir}
|
||||
if {[gdb_compile_ada "${srcfile}" "${binfile}" executable [list debug ]] != "" } {
|
||||
return -1
|
||||
if {[gdb_compile_ada "${srcfile}" "${binfile}" executable {debug}] != ""} {
|
||||
return -1
|
||||
}
|
||||
|
||||
gdb_exit
|
||||
|
@ -19,14 +19,16 @@ if $tracelevel then {
|
||||
|
||||
load_lib "ada.exp"
|
||||
|
||||
if { [skip_ada_tests] } { return -1 }
|
||||
|
||||
set testdir "packed_array"
|
||||
set testfile "${testdir}/pa"
|
||||
set srcfile ${srcdir}/${subdir}/${testfile}.adb
|
||||
set binfile ${objdir}/${subdir}/${testfile}
|
||||
|
||||
file mkdir ${objdir}/${subdir}/${testdir}
|
||||
if {[gdb_compile_ada "${srcfile}" "${binfile}" executable [list debug ]] != "" } {
|
||||
return -1
|
||||
if {[gdb_compile_ada "${srcfile}" "${binfile}" executable {debug}] != ""} {
|
||||
return -1
|
||||
}
|
||||
|
||||
gdb_exit
|
||||
|
@ -19,14 +19,16 @@ if $tracelevel then {
|
||||
|
||||
load_lib "ada.exp"
|
||||
|
||||
if { [skip_ada_tests] } { return -1 }
|
||||
|
||||
set testdir "start"
|
||||
set testfile "${testdir}/dummy"
|
||||
set srcfile ${srcdir}/${subdir}/${testfile}.adb
|
||||
set binfile ${objdir}/${subdir}/${testfile}
|
||||
|
||||
file mkdir ${objdir}/${subdir}/${testdir}
|
||||
if {[gdb_compile_ada "${srcfile}" "${binfile}" executable [list debug ]] != "" } {
|
||||
return -1
|
||||
if {[gdb_compile_ada "${srcfile}" "${binfile}" executable {debug}] != ""} {
|
||||
return -1
|
||||
}
|
||||
|
||||
gdb_exit
|
||||
|
@ -19,14 +19,16 @@ if $tracelevel then {
|
||||
|
||||
load_lib "ada.exp"
|
||||
|
||||
if { [skip_ada_tests] } { return -1 }
|
||||
|
||||
set testdir "watch_arg"
|
||||
set testfile "${testdir}/watch"
|
||||
set srcfile ${srcdir}/${subdir}/${testfile}.adb
|
||||
set binfile ${objdir}/${subdir}/${testfile}
|
||||
|
||||
file mkdir ${objdir}/${subdir}/${testdir}
|
||||
if {[gdb_compile_ada "${srcfile}" "${binfile}" executable [list debug ]] != "" } {
|
||||
return -1
|
||||
if {[gdb_compile_ada "${srcfile}" "${binfile}" executable {debug}] != ""} {
|
||||
return -1
|
||||
}
|
||||
|
||||
gdb_exit
|
||||
|
@ -22,12 +22,14 @@ if $tracelevel then {
|
||||
strace $tracelevel
|
||||
}
|
||||
|
||||
if { [skip_fortran_tests] } { return -1 }
|
||||
|
||||
set testfile "array-element"
|
||||
set srcfile ${testfile}.f
|
||||
set binfile ${objdir}/${subdir}/${testfile}
|
||||
|
||||
if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug f77 quiet}] != "" } {
|
||||
untested "Couldn't compile ${srcfile}"
|
||||
if {[gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" \
|
||||
executable {debug f77}] != ""} {
|
||||
return -1
|
||||
}
|
||||
|
||||
|
@ -22,12 +22,14 @@ if $tracelevel then {
|
||||
strace $tracelevel
|
||||
}
|
||||
|
||||
if { [skip_fortran_tests] } { return -1 }
|
||||
|
||||
set testfile "derived-type"
|
||||
set srcfile ${testfile}.f90
|
||||
set binfile ${objdir}/${subdir}/${testfile}
|
||||
|
||||
if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug f77 quiet}] != "" } {
|
||||
untested "Couldn't compile ${srcfile}"
|
||||
if {[gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" \
|
||||
executable {debug f77}] != ""} {
|
||||
return -1
|
||||
}
|
||||
|
||||
|
@ -21,6 +21,8 @@ if $tracelevel then {
|
||||
strace $tracelevel
|
||||
}
|
||||
|
||||
if { [skip_fortran_tests] } { continue }
|
||||
|
||||
set prms_id 0
|
||||
set bug_id 0
|
||||
|
||||
|
@ -22,12 +22,14 @@ if $tracelevel then {
|
||||
strace $tracelevel
|
||||
}
|
||||
|
||||
if { [skip_fortran_tests] } { return -1 }
|
||||
|
||||
set testfile "subarray"
|
||||
set srcfile ${testfile}.f
|
||||
set binfile ${objdir}/${subdir}/${testfile}
|
||||
|
||||
if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug f77 quiet}] != "" } {
|
||||
untested "Couldn't compile ${srcfile}"
|
||||
if {[gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" \
|
||||
executable {debug f77}] != ""} {
|
||||
return -1
|
||||
}
|
||||
|
||||
|
@ -21,6 +21,8 @@ if $tracelevel then {
|
||||
strace $tracelevel
|
||||
}
|
||||
|
||||
if { [skip_fortran_tests] } { continue }
|
||||
|
||||
set prms_id 0
|
||||
set bug_id 0
|
||||
|
||||
|
@ -22,12 +22,13 @@ if $tracelevel then {
|
||||
|
||||
load_lib "java.exp"
|
||||
|
||||
if { [skip_java_tests] } { continue }
|
||||
|
||||
set testfile "jmain"
|
||||
set srcfile ${srcdir}/$subdir/${testfile}.java
|
||||
set binfile ${objdir}/${subdir}/${testfile}
|
||||
if { [compile_java_from_source ${srcfile} ${binfile} "-g"] != "" } {
|
||||
untested "Couldn't compile ${srcfile}"
|
||||
return -1
|
||||
if {[compile_java_from_source ${srcfile} ${binfile} "-g"] != ""} {
|
||||
continue
|
||||
}
|
||||
|
||||
set prms_id 0
|
||||
|
@ -22,12 +22,13 @@ if $tracelevel then {
|
||||
|
||||
load_lib "java.exp"
|
||||
|
||||
if { [skip_java_tests] } { continue }
|
||||
|
||||
set testfile "jmisc"
|
||||
set srcfile ${srcdir}/$subdir/${testfile}.java
|
||||
set binfile ${objdir}/${subdir}/${testfile}
|
||||
if { [compile_java_from_source ${srcfile} ${binfile} "-g"] != "" } {
|
||||
untested "Couldn't compile ${srcfile}"
|
||||
return -1
|
||||
if {[compile_java_from_source ${srcfile} ${binfile} "-g"] != ""} {
|
||||
continue
|
||||
}
|
||||
|
||||
# Set the current language to java. This counts as a test. If it
|
||||
|
@ -22,12 +22,13 @@ if $tracelevel then {
|
||||
|
||||
load_lib "java.exp"
|
||||
|
||||
if { [skip_java_tests] } { continue }
|
||||
|
||||
set testfile "jprint"
|
||||
set srcfile ${srcdir}/$subdir/${testfile}.java
|
||||
set binfile ${objdir}/${subdir}/${testfile}
|
||||
if { [compile_java_from_source ${srcfile} ${binfile} "-g"] != "" } {
|
||||
untested "Couldn't compile ${srcfile}"
|
||||
return -1
|
||||
if {[compile_java_from_source ${srcfile} ${binfile} "-g"] != ""} {
|
||||
continue
|
||||
}
|
||||
|
||||
# Set the current language to java. This counts as a test. If it
|
||||
|
@ -17,6 +17,10 @@ if $tracelevel then {
|
||||
strace $tracelevel
|
||||
}
|
||||
|
||||
load_lib "java.exp"
|
||||
|
||||
if { [skip_java_tests] } { continue }
|
||||
|
||||
set prms_id 0
|
||||
set bug_id 0
|
||||
|
||||
|
@ -18,6 +18,8 @@
|
||||
load_lib mi-support.exp
|
||||
set MIFLAGS "-i=mi"
|
||||
|
||||
if { [skip_fortran_tests] } { return -1 }
|
||||
|
||||
gdb_exit
|
||||
if [mi_gdb_start] {
|
||||
continue
|
||||
@ -26,8 +28,8 @@ if [mi_gdb_start] {
|
||||
set testfile "array"
|
||||
set srcfile ${testfile}.f
|
||||
set binfile ${objdir}/${subdir}/${testfile}
|
||||
if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug f77 quiet}] != "" } {
|
||||
untested "Couldn't compile ${srcfile}"
|
||||
if {[gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" \
|
||||
executable {debug f77}] != ""} {
|
||||
return -1
|
||||
}
|
||||
|
||||
|
@ -423,9 +423,8 @@ proc gdb_compile_ada {source dest type options} {
|
||||
# gdb_compile to determine whether the build has succeeded or not.
|
||||
# We therefore simply check whether the dest file has been created
|
||||
# or not. Unless not present, the build has succeeded.
|
||||
if ![file exists $dest] {
|
||||
unsupported "Ada compilation failed: $result"
|
||||
return "Ada compilation failed."
|
||||
}
|
||||
if [file exists $dest] { set result "" }
|
||||
gdb_compile_test $source $result
|
||||
return $result
|
||||
}
|
||||
|
||||
|
@ -1241,6 +1241,24 @@ proc default_gdb_start { } {
|
||||
return 0;
|
||||
}
|
||||
|
||||
# Examine the output of compilation to determine whether compilation
|
||||
# failed or not. If it failed determine whether it is due to missing
|
||||
# compiler or due to compiler error. Report pass, fail or unsupported
|
||||
# as appropriate
|
||||
|
||||
proc gdb_compile_test {src output} {
|
||||
if { $output == "" } {
|
||||
pass "compilation [file tail $src]"
|
||||
} elseif { [regexp {^[a-zA-Z_0-9]+: Can't find [^ ]+\.$} $output] } {
|
||||
unsupported "compilation [file tail $src]"
|
||||
} elseif { [regexp {.*: command not found[\r|\n]*$} $output] } {
|
||||
unsupported "compilation [file tail $src]"
|
||||
} else {
|
||||
verbose -log "compilation failed: $output" 2
|
||||
fail "compilation [file tail $src]"
|
||||
}
|
||||
}
|
||||
|
||||
# Return a 1 for configurations for which we don't even want to try to
|
||||
# test C++.
|
||||
|
||||
@ -1266,6 +1284,18 @@ proc skip_fortran_tests {} {
|
||||
return 0
|
||||
}
|
||||
|
||||
# Return a 1 if I don't even want to try to test ada.
|
||||
|
||||
proc skip_ada_tests {} {
|
||||
return 0
|
||||
}
|
||||
|
||||
# Return a 1 if I don't even want to try to test java.
|
||||
|
||||
proc skip_java_tests {} {
|
||||
return 0
|
||||
}
|
||||
|
||||
# Return a 1 if we should skip shared library tests.
|
||||
|
||||
proc skip_shlib_tests {} {
|
||||
@ -1836,9 +1866,15 @@ proc gdb_compile {source dest type options} {
|
||||
|
||||
regsub "\[\r\n\]*$" "$result" "" result;
|
||||
regsub "^\[\r\n\]*" "$result" "" result;
|
||||
|
||||
if { $result != "" && [lsearch $options quiet] == -1} {
|
||||
clone_output "gdb compile failed, $result"
|
||||
|
||||
if {[lsearch $options quiet] < 0} {
|
||||
# We shall update this on a per language basis, to avoid
|
||||
# changing the entire testsuite in one go.
|
||||
if {[lsearch $options f77] >= 0} {
|
||||
gdb_compile_test $source $result
|
||||
} elseif { $result != "" } {
|
||||
clone_output "gdb compile failed, $result"
|
||||
}
|
||||
}
|
||||
return $result;
|
||||
}
|
||||
|
@ -90,31 +90,19 @@ proc java_init { args } {
|
||||
#
|
||||
proc compile_java_from_source { srcfile binfile compile_args } {
|
||||
global GCJ_UNDER_TEST
|
||||
global runtests
|
||||
global java_initialized
|
||||
|
||||
if { $java_initialized != 1 } { java_init }
|
||||
|
||||
set errname [file rootname [file tail $srcfile]]
|
||||
if {! [runtest_file_p $runtests $errname]} {
|
||||
return
|
||||
}
|
||||
|
||||
set args "compiler=$GCJ_UNDER_TEST"
|
||||
lappend args "additional_flags=--main=[file rootname [file tail $srcfile]]"
|
||||
if { $compile_args != "" } {
|
||||
lappend args "additional_flags=$compile_args"
|
||||
}
|
||||
|
||||
if { $compile_args != "" } {
|
||||
set errname "$errname $compile_args"
|
||||
}
|
||||
|
||||
set x [target_compile $srcfile ${binfile} executable $args]
|
||||
if { $x != "" } {
|
||||
verbose "target_compile failed: $x" 2
|
||||
return "$errname compilation from source";
|
||||
}
|
||||
set result [target_compile $srcfile ${binfile} executable $args]
|
||||
gdb_compile_test $srcfile $result
|
||||
return $result
|
||||
}
|
||||
|
||||
# Local Variables:
|
||||
|
Loading…
Reference in New Issue
Block a user