From 3fc11d3e80ff4229745e2185a9ee77c780220f3d Mon Sep 17 00:00:00 2001 From: Jason Molenda Date: Mon, 7 Feb 2000 00:19:45 +0000 Subject: import insight-2000-02-04 snapshot (2nd try) --- gdb/testsuite/ChangeLog | 91 ++++++++++++++++++++++++++++++++++++++++ gdb/testsuite/configure | 36 ++++++++++++++++ gdb/testsuite/configure.in | 32 ++++++++++++++ gdb/testsuite/lib/gdb.exp | 101 +++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 260 insertions(+) (limited to 'gdb/testsuite') diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index cfc2c90..a48ff61 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -991,6 +991,80 @@ Fri Mar 12 18:06:21 1999 Stan Shebs commands. They're not germane to this test, and they don't work that way on remote targets. +1999-03-03 James Ingham + + * browser.test: Fixed up to match the new function browser. + This is not done yet... + + * srcwin.test: Check for errors when the bbox is called for a text + item that is not on screen (so bbox is ""). Return something more + useful. + +1999-03-01 James Ingham + + * Changelog entries merged over from gdb development branch. + + 1999-01-12 Martin Hunt + + * gdb.gdbtk/srcwin.test: Add a bunch of tests for the source + window filename and function comboboxes. Add in stack tests. + + 1999-01-11 Martin Hunt + + * gdb.gdbtk/srcwin.test: New file. Source Window tests. + * gdb.gdbtk/srcwin.exp: New file. Source Window tests. + + Wed Jan 6 09:22:52 1999 Keith Seitz + + * gdb.gdbtk/c_variable.test (c_variable-1.9): Add new + test to check for creation of a variable that is really a type. + (c_variable-7.81): Use "output" instead of "print" to get PC. + Include missing bits of test. + + * gdb.gdbtk/cpp_variable.test (cpp_variable-1.6): Default format + is now "natural", not "hexadecimal" + (cpp_variable-2.22): Ditto. + (cpp_variable-2.24): Force format to hex before getting value. + + * gdb.gdbtk/cpp_variable.exp: Supply missing arg to gdbtk_analyze_results. + + Tue Jan 5 12:40:52 1999 Keith Seitz + + * gdb.gdbtk/c_variable.c, c_variable.test, c_variable.exp: New C + language tests for variable object interface. + + * gdb.gdbtk/cpp_variable.h, cpp_variable.cc, cpp_variable.test, + cpp_variable.exp: New C++ language tests for variable object + interface. + + * gdb.gdbtk/Makefile.in (EXECUTABLES): Add c_variable and cpp_variable. + + Tue Jan 5 12:33:47 1999 Keith Seitz + + * lib/gdb.exp (gdbtk_analyze_results): Generic function + for outputting results of test run. + + * gdb.gdbtk/defs (gdbtk_test): Handle xpass and xfail. + (gdbtk_test_error): New proc which handles error aborts. + + * gdb.gdbtk/console.exp: Use gdbtk_analyze_results. + Check if we have a valid DISPLAY before running. + * gdb.gdbtk/browser.exp: Ditto. + + 1998-12-07 Martin M. Hunt + + * lib/gdb.exp (gdbtk_start): Fix path for itcl library. + * gdb.gdbtk/browser.test: Change "manage open" to ManagedWin::open. + * gdb.gdbtk/console.test: Same. + * gdb.gdbtk/*: Update from devo. + + Fri Jul 24 14:57:19 1998 Keith Seitz + + * gdb.gdbtk/Makefile.in: Add new example program "stack". + * gdb.gdbtk/browser.test,browser.exp: Add browser window + tests. + * gdb.gdbtk/stack1.c,stack2.c: Test case for browser window. + 1999-02-25 Felix Lee * lib/gdb.exp (debug_format): initialize @@ -1519,6 +1593,23 @@ Thurs Jul 9 11:08:31 1998 Dawn Perchik * gdb.base/commands.exp: Break up infrun_breakpoint_command_test into two parts to get around a synchronization problem in expect. +Sun Jun 28 22:34:34 1998 Martin M. Hunt + + * gdb.gdbtk/simple.c (main): Make main return an + int so compiler will stop complaining. + +Fri Jun 26 14:27:13 1998 Keith Seitz + + * lib/gdb.exp (gdbtk_start): Add startup for gdbtk. + + * configure.in: Add options for gdbtk testsuite. + + * configure: Regenerate. + + * gdb.gdbtk: New directory to hold gdbtk tests. + + * gdb.gdbtk/console.{exp, test}: New console window tests. + Fri Jun 26 14:52:47 1998 Peter Schauer diff --git a/gdb/testsuite/configure b/gdb/testsuite/configure index 19ddd89..a64d42e 100755 --- a/gdb/testsuite/configure +++ b/gdb/testsuite/configure @@ -709,6 +709,42 @@ if test "${shared}" = "true"; then fi # End stuff to support --enable-shared +# Start stuff to support --enable-gdbtk +# Check whether --enable-gdbtk or --disable-gdbtk was given. +if test "${enable_gdbtk+set}" = set; then + enableval="$enable_gdbtk" + case "${enableval}" in + yes) + case "$host" in + *go32*) + enable_gdbtk=no ;; + *windows*) + enable_gdbtk=no ;; + *) + enable_gdbtk=yes ;; + esac ;; + no) + enable_gdbtk=no ;; + *) + { echo "configure: error: bad value ${enableval} given for gdbtk option" 1>&2; exit 1; } ;; +esac +else + +# Default is on for everything but go32 and windows +case "$host" in + *go32* | *windows*) + ;; + *) + enable_gdbtk=yes ;; + esac + +fi + + +if test "${enable_gdbtk}" = "yes"; then + configdirs="${configdirs} gdb.gdbtk" +fi +# End stuff to support --enable-shared # configure the subdirectories too subdirs="$configdirs" diff --git a/gdb/testsuite/configure.in b/gdb/testsuite/configure.in index 96e9de7..b69c051 100644 --- a/gdb/testsuite/configure.in +++ b/gdb/testsuite/configure.in @@ -71,6 +71,38 @@ if test "${shared}" = "true"; then fi AC_SUBST(RPATH_ENVVAR) # End stuff to support --enable-shared +# Start stuff to support --enable-gdbtk +AC_ARG_ENABLE(gdbtk, +[ --enable-gdbtk ], +[case "${enableval}" in + yes) + case "$host" in + *go32*) + enable_gdbtk=no ;; + *windows*) + enable_gdbtk=no ;; + *) + enable_gdbtk=yes ;; + esac ;; + no) + enable_gdbtk=no ;; + *) + AC_MSG_ERROR(bad value ${enableval} given for gdbtk option) ;; +esac], +[ +# Default is on for everything but go32 and windows +case "$host" in + *go32* | *windows*) + ;; + *) + enable_gdbtk=yes ;; + esac +]) + +if test "${enable_gdbtk}" = "yes"; then + configdirs="${configdirs} gdb.gdbtk" +fi +# End stuff to support --enable-shared # configure the subdirectories too AC_CONFIG_SUBDIRS($configdirs) diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp index 2ef42bf..94cd40a 100644 --- a/gdb/testsuite/lib/gdb.exp +++ b/gdb/testsuite/lib/gdb.exp @@ -1584,3 +1584,104 @@ proc rerun_to_main {} { } } +# From dejagnu: +# srcdir = testsuite src dir (e.g., devo/gdb/testsuite) +# objdir = testsuite obj dir (e.g., gdb/testsuite) +# subdir = subdir of testsuite (e.g., gdb.gdbtk) +# +# To gdbtk: +# env(DEFS)=the "defs" files (e.g., devo/gdb/testsuite/gdb.gdbtk/defs) +# env(SRCDIR)=directory containing the test code (e.g., *.test) +# env(OBJDIR)=directory which contains any executables +# (e.g., gdb/testsuite/gdb.gdbtk) +proc gdbtk_start {test} { + global verbose + global GDB + global GDBFLAGS + global env srcdir subdir objdir + + gdb_stop_suppressing_tests; + + verbose "Starting $GDB -nx -q --tclcommand=$test" + + set real_test [which $test] + if {$real_test == 0} { + perror "$test is not found" + exit 1 + } + + if {![is_remote host]} { + if { [which $GDB] == 0 } { + perror "$GDB does not exist." + exit 1 + } + } + + set wd [pwd] + cd [file join $srcdir .. gdbtcl2] + set env(GDBTK_LIBRARY) [pwd] + cd [file join $srcdir .. .. tcl library] + set env(TCL_LIBRARY) [pwd] + cd [file join $srcdir .. .. tk library] + set env(TK_LIBRARY) [pwd] + cd [file join $srcdir .. .. tix library] + set env(TIX_LIBRARY) [pwd] + cd [file join $srcdir .. .. itcl itcl library] + set env(ITCL_LIBRARY) [pwd] + cd [file join .. $srcdir .. .. libgui library] + set env(CYGNUS_GUI_LIBRARY) [pwd] + cd $wd + cd [file join $srcdir $subdir] + set env(DEFS) [file join [pwd] defs] + cd $wd + cd [file join $objdir $subdir] + set env(OBJDIR) [pwd] + cd $wd + cd $srcdir + set env(SRCDIR) [pwd] + cd $wd + set env(GDBTK_VERBOSE) 1 + set env(GDBTK_LOGFILE) [file join $objdir gdb.log] + set env(GDBTK_TEST_RUNNING) 1 + set err [catch {exec $GDB -nx -q --tclcommand=$test} res] + if { $err } { + perror "Execing $GDB failed: $res" + exit 1; + } + return $res +} + +# gdbtk tests call this function to print out the results of the +# tests. The argument is a proper list of lists of the form: +# {status name description msg}. All of these things typically +# come from the testsuite harness. +proc gdbtk_analyze_results {results} { + foreach test $results { + set status [lindex $test 0] + set name [lindex $test 1] + set description [lindex $test 2] + set msg [lindex $test 3] + + switch $status { + PASS { + pass "$description ($name)" + } + + FAIL { + fail "$description ($name)" + } + + ERROR { + perror "$name" + } + + XFAIL { + xfail "$description ($name)" + } + + XPASS { + xpass "$description ($name)" + } + } + } +} -- cgit v1.1