* 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.
* 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.
/../../../../../.."
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
# 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.
# 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.
# 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.
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;
# 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.
# 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 "";
@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
@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
<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>
<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
# 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]
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";
}
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.
#
#
-# 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" } {
}
#
-# 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
}
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
# 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