2003-07-25 Jim Dein <jdein@deinji5.apple.com>
authorRob Savoye <rob@welcomehome.org>
Mon, 28 Jul 2003 14:45:35 +0000 (14:45 +0000)
committerRob Savoye <rob@welcomehome.org>
Mon, 28 Jul 2003 14:45:35 +0000 (14:45 +0000)
         * lib/utils.exp: fix double recursion bug in proc find.
2002-02-25  Jackie Smith Cashion  <jsmith@redhat.com>
        * baseboards/am33_2.0-libremote.exp: New file.
2000-11-21  Drew Moseley  <dmoseley@redhat.com>
        * baseboards/mn10300-cygmon.exp: Use the am33-2 flag for the
        ASB2303 board.
2000-08-10  Drew Moseley  <dmoseley@cygnus.com>
        * baseboards/mn10300-cygmon.exp: Added support for Cygmon based
ASB2303 board.
2003-06-13  Phil Edwards <pme@devphil.com>
* baseboards/mips64-sim.exp, baseboards/mips-sim.exp,
baseboards/mips-sim-idt32.exp, baseboards/mips-sim-idt64.exp: Use
only -T[linker] instead of -Wl,-T[linker].
2003-06-13  Jason Thorpe  <thorpej@wasabisystems.com>
         * lib/target.exp (prune_warnings): Add two more linker
         warning patterns for warnings generated by modern verions
         of NetBSD.
2003-05-12  H.J. Lu <hongjiu.lu@intel.com>
        * lib/libgloss.exp (build_wrapper): Add -Wl,-wrap,_exit.
2003-05-09  H.J. Lu <hongjiu.lu@intel.com>
        * runtest: Fix a typo.
2003-05-03  Nitin Dhavale <nitinpdhavale@indiatimes.com>
* doc/user.sgml: Clarify how to set the verbose option.
2003-03-28 Chris Demetriou <cgd@broadcom.com>
        * lib/framework.exp (check_conditional_xfail): Adjust so that
        an empty 'includes' list matches all sets of flags.
        * doc/dejagnu.texi: Document the above.
        * doc/ref.sgml: Likewise.
2003-03-27  David Heine <dlheine@tensilica.com>
        * baseboards/xtensa-sim.exp: Fix a syntax error.
2003-03-16  Rob Savoye  <rob@direwolf.welcomehome.org>
* lib/unix.exp: Preserve the value of LD_LIBRARY_PATH, rather
than stomp on it. This is based on a patch from Brendan Conoboy
<blc@redhat.com>.
* Most files: Update copyright dates.

17 files changed:
ChangeLog
acinclude.m4
baseboards/mips-sim-idt32.exp
baseboards/mips-sim-idt64.exp
baseboards/mips-sim.exp
baseboards/mips64-sim.exp
baseboards/mn10300-cygmon.exp
baseboards/xtensa-sim.exp
doc/dejagnu.texi
doc/ref.sgml
doc/user.sgml
lib/framework.exp
lib/libgloss.exp
lib/target.exp
lib/utils.exp
runtest
runtest.exp

index 10aefcb..07a78f4 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -7,12 +7,59 @@
 
        * config.guess: Update to most recent version.
        * config.sub: Ditto.
-
        * AUTHORS: Add self to list of maintainers.
 
+2003-07-25  Jim Dein  <jdein@deinji5.apple.com>
+                                                                                
+         * lib/utils.exp: fix double recursion bug in proc find.
+                                                                                
+2002-02-25  Jackie Smith Cashion  <jsmith@redhat.com>
+        * baseboards/am33_2.0-libremote.exp: New file.
+                                                                                
+2000-11-21  Drew Moseley  <dmoseley@redhat.com>
+        * baseboards/mn10300-cygmon.exp: Use the am33-2 flag for the
+        ASB2303 board.
+
+2000-08-10  Drew Moseley  <dmoseley@cygnus.com>
+        * baseboards/mn10300-cygmon.exp: Added support for Cygmon based
+       ASB2303 board.
+                                                                                
+2003-06-13  Phil Edwards <pme@devphil.com>
+       * baseboards/mips64-sim.exp, baseboards/mips-sim.exp,
+       baseboards/mips-sim-idt32.exp, baseboards/mips-sim-idt64.exp: Use
+       only -T[linker] instead of -Wl,-T[linker].
+       
+2003-06-13  Jason Thorpe  <thorpej@wasabisystems.com>
+                                                                                
+         * lib/target.exp (prune_warnings): Add two more linker
+         warning patterns for warnings generated by modern verions
+         of NetBSD.
+                                                                                
+2003-05-12  H.J. Lu <hongjiu.lu@intel.com>
+                                                                                
+        * lib/libgloss.exp (build_wrapper): Add -Wl,-wrap,_exit.
+                                                                                
+2003-05-09  H.J. Lu <hongjiu.lu@intel.com>
+
+        * runtest: Fix a typo.
+
+2003-05-03  Nitin Dhavale <nitinpdhavale@indiatimes.com>
+
+       * doc/user.sgml: Clarify how to set the verbose option.
+
+2003-03-28 Chris Demetriou <cgd@broadcom.com>
+
+        * lib/framework.exp (check_conditional_xfail): Adjust so that
+        an empty 'includes' list matches all sets of flags.
+        * doc/dejagnu.texi: Document the above.
+        * doc/ref.sgml: Likewise.
+
+2003-03-27  David Heine <dlheine@tensilica.com>
+        * baseboards/xtensa-sim.exp: Fix a syntax error.
+
 2003-03-16  Rob Savoye  <rob@direwolf.welcomehome.org>
 
-       * lib/unix.exp: Preservce the value of LD_LIBRARY_PATH, rather
+       * lib/unix.exp: Preserve the value of LD_LIBRARY_PATH, rather
        than stomp on it. This is based on a patch from Brendan Conoboy
        <blc@redhat.com>.
        * Most files: Update copyright dates.
index 8b50e14..c84d0d3 100644 (file)
@@ -27,8 +27,7 @@ dirlist=".. ../../ ../../../ ../../../../ ../../../../../ ../../../../../../ ../
 /../../../../../.."
 no_itcl=true
 AC_MSG_CHECKING(for the tclsh program)
-AC_ARG_WITH(tclinclude, [  --with-tclinclude       directory where tcl header
-s are], with_tclinclude=${withval})
+AC_ARG_WITH(tclinclude, [  --with-tclinclude       directory where tcl headers are], with_tclinclude=${withval})
 AC_CACHE_VAL(ac_cv_path_tclsh,[
 dnl first check to see if --with-itclinclude was specified
 if test x"${with_tclinclude}" != x ; then
index 110d499..98e6ea8 100644 (file)
@@ -21,9 +21,9 @@ set_board_info ldflags "[libgloss_link_flags] [newlib_link_flags]";
 
 # Use idt.
 if { [board_info $board obj_format] == "ecoff" } {
-    set_board_info ldscript "-Wl,-Tidtecoff.ld";
+    set_board_info ldscript "-Tidtecoff.ld";
 } else {
-    set_board_info ldscript "-Wl,-Tidt32.ld";
+    set_board_info ldscript "-Tidt32.ld";
 }
 
 # And, it can't do arguments, and doesn't have real signals.
index a72e743..a0f9d0c 100644 (file)
@@ -21,9 +21,9 @@ set_board_info ldflags "[libgloss_link_flags] [newlib_link_flags]";
 
 # Use idt.
 if { [board_info $board obj_format] == "ecoff" } {
-    set_board_info ldscript "-Wl,-Tidtecoff.ld";
+    set_board_info ldscript "-Tidtecoff.ld";
 } else {
-    set_board_info ldscript "-Wl,-Tidt64.ld";
+    set_board_info ldscript "-Tidt64.ld";
 }
 
 # And, it can't do arguments, and doesn't have real signals.
index 104188a..1df7e97 100644 (file)
@@ -20,9 +20,9 @@ set_board_info ldflags "[libgloss_link_flags] [newlib_link_flags]";
 
 # Use idt.
 if { [board_info $board obj_format] == "ecoff" } {
-    set_board_info ldscript "-Wl,-Tidtecoff.ld";
+    set_board_info ldscript "-Tidtecoff.ld";
 } else {
-    set_board_info ldscript "-Wl,-Tidt.ld";
+    set_board_info ldscript "-Tidt.ld";
 }
 
 # And, it can't do arguments, and doesn't have real signals.
index 3315619..99f8831 100644 (file)
@@ -22,7 +22,7 @@ set_board_info compiler  "[find_gcc]";
 set_board_info cflags  "[libgloss_include_flags] [newlib_include_flags]";
 set_board_info ldflags  "[libgloss_link_flags] [newlib_link_flags]";
 # PMON linker script.
-set_board_info ldscript  "-Wl,-Tpmon.ld"
+set_board_info ldscript  "-Tpmon.ld"
 
 # And, it can't do arguments or signals in GDB.
 set_board_info noargs  1;
index 86c65e1..2f0b45f 100644 (file)
@@ -16,6 +16,12 @@ set_board_info ldflags  "[libgloss_link_flags] [newlib_link_flags] [board_info $
 # CygMON linker script.
 set_board_info ldscript "-Teval.ld"
 
+if {[string compare [board_info $board boardtype] "asb2303"] == 0} {
+    set_board_info ldflags "[libgloss_link_flags] [newlib_link_flags] [board_info $board addl_link_flags] -mno-crt0 -mam33-2";
+    set_board_info ldscript "-mam33-2 -Tasb2303.ld"
+}
+                                                                                
+
 # Standard remote protocol.
 set_board_info gdb_protocol "remote";
 # We can't do input in GDB (yet! HA!). It *will* do output, hurrah.
index 8764c67..190ef61 100644 (file)
@@ -12,7 +12,7 @@ process_multilib_options ""
 # with what compiler is tested if we're testing gcc.
 set_board_info compiler       "[find_gcc]"
 set_board_info cflags         "[libgloss_include_flags]
-newlib_include_flags]"
+[newlib_include_flags]"
 set_board_info ldflags        "[libgloss_link_flags] [newlib_link_flags]"
 # This board doesn't use a linker script.
 set_board_info ldscript "";
index c1473f4..47443a1 100644 (file)
@@ -1985,7 +1985,7 @@ results.
 @cindex failure, conditional expected
 @cindex conditional expected failure
 
-This procedure adds a condition xfail, based on compiler options used to
+This procedure adds a conditional xfail, based on compiler options used to
 create a test case executable. If an include options is found in the
 compiler flags, and it's the right architecture, it'll trigger an
 XFAIL. Otherwise it'll produce an ordinary FAIL. You can also specify
@@ -2008,8 +2008,10 @@ is a string with the targets to activate this conditional on.
 
 @item includes
 is a list of sets of options to search for in the compiler options to
-activate this conditional. If any set of the options matches, then this
-conditional is true.
+activate this conditional. If the list of sets of options is empty or
+if any set of the options matches, then this conditional is true.
+(It may be useful to specify an empty list of include sets if the
+conditional is always true unless one of the exclude sets matches.)
 
 @item excludes
 is a list of sets of options to search for in the compiler options to
index 79ef109..71c0054 100644 (file)
        <sect3 id=checkconditionalxfail xreflabel="check_conditional_xfail procedure">
          <title>Check_conditional_xfail Procedure</title>
 
-         <para>This procedure adds a condition xfail, based on compiler
+         <para>This procedure adds a conditional xfail, based on compiler
          options used to create a test case executable. If an include options
          is found in the compiler flags, and it's the right architecture,
          it'll trigger an <emphasis>XFAIL</emphasis>. Otherwise it'll produce
          <varlistentry>
            <term><parameter>includes</parameter></term>
            <listitem><para>This is a list of sets of options to search for in
-           the compiler options to activate this conditional. If any set of
-           the options matches, then this conditional is
-           true.</para></listitem>
+           the compiler options to activate this conditional.  If the list of
+           sets of options is empty or if any set of the options matches,
+           then this conditional is true.  (It may be useful to specify an
+           empty list of include sets if the conditional is always true
+           unless one of the exclude sets matches.)</para></listitem>
           </varlistentry>
          <varlistentry>
            <term><parameter>excludes</parameter></term>
index 1ed0313..6360cd3 100644 (file)
@@ -389,7 +389,8 @@ runtest -v -v -v --tool calc CALC=`pwd`/calc --srcdir ./testsuite
 
 <para>Calling runtest with the '--debug'-flag logs a lot of details to dbg.log where you can analyse it afterwards. </para>
 
-<para>In all test cases you can temporary adjust the verbosity of information by adding the following Tcl-command:</para>
+<para>In all test cases you can temporary adjust the verbosity of information by adding the following Tcl-command to any tcl file that gets loaded by
+dejagnu, for instance, ~/.dejagnurc:</para>
 
 <programlisting>
 set verbose 9
index 8aa0641..e4fe609 100644 (file)
@@ -579,6 +579,11 @@ proc check_conditional_xfail { args } {
            # list, regardless of order to make sure they're found.
            # So we look for lists in side of lists, and make sure all 
            # the elements match before we decide this is legit.
+           # Se we 'incl_hit' to 1 before the loop so that if the 'includes'
+           # list is empty, this test will report a hit.  (This can be
+           # useful if a target will always fail unless certain flags,
+           # specified in the 'excludes' list, are used.)
+           set incl_hit 1
            for { set i 0 } { $i < [llength $includes] } { incr i } {
                set incl_hit 0
                set opt [lindex $includes $i]
index 9497f0d..ebb9ed4 100644 (file)
@@ -832,12 +832,14 @@ proc build_wrapper { gluefile } {
        set result "";
     } elseif [target_info exists uses_underscores] {
        set flags "additional_flags=-DUNDERSCORES";
-       set result "-Wl,-wrap,__exit -Wl,-wrap,_main -Wl,-wrap,_abort";
+       set result "-Wl,-wrap,_exit -Wl,-wrap,__exit -Wl,-wrap,_main -Wl,-wrap,_abort";
+
     } else {
        set flags "";
        if [target_info exists is_vxworks] {
            set flags "additional_flags=-DVXWORKS";
            set result "-Wl,-wrap,exit -Wl,-wrap,main -Wl,-wrap,abort";
+           set result "-Wl,-wrap,exit -Wl,-wrap,_exit -Wl,-wrap,main -Wl,-wrap,abort";
        } else {
            set result "-Wl,-wrap,exit -Wl,-wrap,_exit -Wl,-wrap,main -Wl,-wrap,abort";
        }
index 0cc3c9f..a5d5f47 100644 (file)
@@ -262,7 +262,9 @@ proc prune_warnings { text } {
     regsub -all "(^|\n)(ld(|32|64): Giving up.*Use -wall\[^\n\]*\n?)+" $text "\\1" text
 
     # Or the NetBSD ones.
-    regsub -all "(^|\n)(\[^\n\]*:\[0-9\]+: warning: \[^\n\]* possibly used unsafely, use \[^\n\]*\n?)" $text "\\1" text
+     regsub -all "(^|\n)(\[^\n\]*: In function\[^\n\]*\n\[^\n\]\[^\n\]*warning:this program uses \[^\n\]*)" $text "\\1" text
+     regsub -all "(^|\n)(\[^\n\]*: In function\[^\n\]*\n\[^\n\]\[^\n\]*warning:reference to compatibility \[^\n\]*)" $text "\\1" text
+     regsub -all "(^|\n)(\[^\n\]*:\[0-9\]+: warning: \[^\n\]* possibly used unsafely, use \[^\n\]*\n?)" $text "\\1" text
     regsub -all "(^|\n)(\[^\n\]*: warning: reference to compatibility glob\[^\n\]*\n?)" $text "\\1" text
 
     # GNU ld warns about functions marked as dangerous in GNU libc.
index fcac507..8c5d338 100644 (file)
 #
 
 #
-# Gets the directories in a directory
+# Gets the directories in a directory, or in a directory tree.
 #     args: the first is the dir to look in, the next
 #         is the pattern to match. It
 #         defaults to *. Patterns are csh style
 #        globbing rules
-#     returns: a list of dirs or NULL
+#     options: -all  search the tree recursively
+#     returns: a list of dirs or NULL; the root directory is not returned.
 #
 proc getdirs { args } {
     if { [lindex $args 0] == "-all" } {
@@ -86,54 +87,32 @@ proc getdirs { args } {
 }
 
 #
-# Finds all the files recursively
-#     rootdir - this is the directory to start the search
-#        from. This is and all subdirectories are search for
-#        filenames. Directory names are not included in the
-#        list, but the filenames have path information. 
-#     pattern - this is the pattern to match. Patterns are csh style
-#        globbing rules.
-#     returns: a list or a NULL.
+# Finds paths of all non-directory files, recursively, whose names match
+# a pattern.  Certain directory name are not searched (see proc getdirs).
+#     rootdir - search in this directory and its subdirectories, recursively.
+#     pattern - specified with Tcl string match "globbing" rules.
+#     returns: a possibly empty list of pathnames.
 #
 proc find { rootdir pattern } {
-    # first find all the directories
-    set dirs "$rootdir "
-    while 1 {
-       set tmp $rootdir
-       set rootdir ""
-       if [string match "" $tmp] {
-           break
-       }
-       foreach i $tmp {
-           set j [getdirs -all $i]
-           if ![string match "" $j] {
-               append dirs "$j "
-               set rootdir $j
-               unset j
-           } else {
-               set rootdir ""
-           }
-       }
-       set tmp ""
+    set files [list]
+    if { [string length $rootdir] == 0 || [string length $pattern] == 0 } {
+       return $files
     }
+
+    # find all the directories
+    set dirs [concat [getdirs -all $rootdir] $rootdir]
     
-    # find all the files that match the pattern
+    # find all the files in the directories that match the pattern
     foreach i $dirs {
        verbose "Looking in $i" 3
-       set tmp [glob -nocomplain $i/$pattern]
-       if { [llength $tmp] != 0 } {
-           foreach j $tmp {
-               if ![file isdirectory $j] {
-                   lappend files $j
-                   verbose "Adding $j to file list" 3
-               }
+       foreach match [glob -nocomplain $i/$pattern] {
+           if ![file isdirectory $match] {
+               lappend files $match
+               verbose "Adding $match to file list" 3
            }
        }
     }
-    
-    if ![info exists files] {
-       lappend files ""
-    }
+
     return $files
 }
 
diff --git a/runtest b/runtest
index 014595a..b663612 100755 (executable)
--- a/runtest
+++ b/runtest
@@ -104,8 +104,8 @@ for i in `echo ${execpath} | sed  -e 's@/[^/]*$@/share/dejagnu@'` `echo ${execpa
        runpath=$i
        if expr $verbose \> 0 > /dev/null ; then
            echo Using $i/runtest.exp as main test driver
-           break;
        fi
+        break;
     fi
 done
 # check for an environment variable
index de4de7f..5409da6 100755 (executable)
@@ -20,7 +20,7 @@
 
 # This file was written by Rob Savoye. (rob@welcomehome.org)
 
-set frame_version      1.4.3
+set frame_version      1.4.3.x
 if ![info exists argv0] {
     send_error "Must use a version of Expect greater than 5.0\n"
     exit 1