|
|
|
@ -84,11 +84,11 @@ Running other DejaGnu commands |
|
|
|
|
|
|
|
Customizing DejaGnu |
|
|
|
|
|
|
|
* Global config file:: |
|
|
|
* Local config file:: |
|
|
|
* Board config file:: |
|
|
|
* Global configuration file:: |
|
|
|
* Local configuration file:: |
|
|
|
* Board configuration file:: |
|
|
|
* Remote host testing:: |
|
|
|
* Config file values:: |
|
|
|
* Configuration file values:: |
|
|
|
|
|
|
|
Extending DejaGnu |
|
|
|
|
|
|
|
@ -436,7 +436,7 @@ there is existing support in the @file{Makefile} of the tool being |
|
|
|
tested. This usually consists of a @emph{check} target. The other way is |
|
|
|
to execute the @code{runtest} program directly. To run @code{runtest} |
|
|
|
directly from the command line requires either all of the correct |
|
|
|
command line options, or a @ref{Local config file} must be set up |
|
|
|
command line options, or a @ref{Local configuration file} must be set up |
|
|
|
correctly. |
|
|
|
|
|
|
|
@menu |
|
|
|
@ -1201,15 +1201,15 @@ of any @file{site.exp}, or by setting variables on the @code{runtest} |
|
|
|
command line. |
|
|
|
|
|
|
|
@menu |
|
|
|
* Local config file:: |
|
|
|
* Global config file:: |
|
|
|
* Board config file:: |
|
|
|
* Local configuration file:: |
|
|
|
* Global configuration file:: |
|
|
|
* Board configuration file:: |
|
|
|
* Remote host testing:: |
|
|
|
* Config file values:: |
|
|
|
* Configuration file values:: |
|
|
|
@end menu |
|
|
|
|
|
|
|
@node Global config file, Local config file, , Customizing DejaGnu |
|
|
|
@section Global config file |
|
|
|
@node Global configuration file, Local configuration file, , Customizing DejaGnu |
|
|
|
@section Global configuration file |
|
|
|
@cindex configuration file, global |
|
|
|
|
|
|
|
The global configuration file is where all the target specific |
|
|
|
@ -1269,8 +1269,8 @@ initial comma so that the set of combinations includes no options at |
|
|
|
all. Needless to say, this last target example is mostly specific to |
|
|
|
compiler testing. |
|
|
|
|
|
|
|
@node Local config file, Board config file, Global config file, Customizing DejaGnu |
|
|
|
@section Local config file |
|
|
|
@node Local configuration file, Board configuration file, Global configuration file, Customizing DejaGnu |
|
|
|
@section Local configuration file |
|
|
|
@cindex configuration file, local |
|
|
|
|
|
|
|
It is usually more convenient to keep these @emph{manual overrides} in |
|
|
|
@ -1311,16 +1311,16 @@ to override any defaults. |
|
|
|
|
|
|
|
You can make any changes under this line. If you wish to redefine a |
|
|
|
variable in the top section, then just put a duplicate value in this |
|
|
|
second section. Usually the values defined in this config file are |
|
|
|
related to the configuration of the test run. This is the ideal place to |
|
|
|
set the variables @code{host_triplet}, @code{build_triplet}, |
|
|
|
second section. Usually the values defined in this configuration file |
|
|
|
are related to the configuration of the test run. This is the ideal |
|
|
|
place to set the variables @code{host_triplet}, @code{build_triplet}, |
|
|
|
@code{target_triplet}. All other variables are tool dependent, i.e., for |
|
|
|
testing a compiler, the value for @code{CC} might be set to a freshly |
|
|
|
built binary, as opposed to one in the user's path. |
|
|
|
|
|
|
|
Here's an example local site.exp file, as used for GCC/G++ testing. |
|
|
|
|
|
|
|
@strong{Local Config File} |
|
|
|
@strong{Local Configuration File} |
|
|
|
|
|
|
|
@example |
|
|
|
## these variables are automatically generated by make ## |
|
|
|
@ -1339,12 +1339,12 @@ set srcdir "$@{srcdir@}/testsuite" |
|
|
|
## All variables above are generated by configure. Do Not Edit ## |
|
|
|
@end example |
|
|
|
|
|
|
|
This file defines the required fields for a local config file, namely |
|
|
|
the three system triplets, and the srcdir. It also defines several other |
|
|
|
Tcl variables that are used exclusively by the GCC testsuite. For most |
|
|
|
test cases, the CXXFLAGS and LDFLAGS are supplied by DejaGnu itself for |
|
|
|
cross testing, but to test a compiler, GCC needs to manipulate these |
|
|
|
itself. |
|
|
|
This file defines the required fields for a local configuration file, |
|
|
|
namely the three system triplets, and the srcdir. It also defines |
|
|
|
several other Tcl variables that are used exclusively by the GCC |
|
|
|
testsuite. For most test cases, the CXXFLAGS and LDFLAGS are supplied by |
|
|
|
DejaGnu itself for cross testing, but to test a compiler, GCC needs to |
|
|
|
manipulate these itself. |
|
|
|
|
|
|
|
@vindex test_timeout |
|
|
|
The local @file{site.exp} may also set Tcl variables such as |
|
|
|
@ -1352,7 +1352,7 @@ The local @file{site.exp} may also set Tcl variables such as |
|
|
|
wait for a remote test to complete. If not specified, |
|
|
|
@code{test_timeout} defaults to 300 seconds. |
|
|
|
|
|
|
|
@node Board config file, Remote host testing, Local config file, Customizing DejaGnu |
|
|
|
@node Board configuration file, Remote host testing, Local configuration file, Customizing DejaGnu |
|
|
|
@section Board configuration file |
|
|
|
@cindex configuration file, board |
|
|
|
|
|
|
|
@ -1436,7 +1436,7 @@ library for embedded systems comprising of non-GPL'd code |
|
|
|
|
|
|
|
@end itemize |
|
|
|
|
|
|
|
@node Remote host testing, Config file values, Board config file, Customizing DejaGnu |
|
|
|
@node Remote host testing, Configuration file values, Board configuration file, Customizing DejaGnu |
|
|
|
@section Remote host testing |
|
|
|
@cindex testing on remote hosts |
|
|
|
|
|
|
|
@ -1545,8 +1545,8 @@ Note: if you are testing a cross-compiler, put in the correct target |
|
|
|
board. You'll also have to download more .exp files and modify them for |
|
|
|
your local configuration. The -v's are optional. |
|
|
|
|
|
|
|
@node Config file values, , Remote host testing, Customizing DejaGnu |
|
|
|
@section Config file values |
|
|
|
@node Configuration file values, , Remote host testing, Customizing DejaGnu |
|
|
|
@section Configuration file values |
|
|
|
@cindex configuration values |
|
|
|
|
|
|
|
@vindex target_info |
|
|
|
@ -1561,7 +1561,7 @@ part of the array. |
|
|
|
* User configuration file:: |
|
|
|
@end menu |
|
|
|
|
|
|
|
@node Command line option variables, User configuration file, , Config file values |
|
|
|
@node Command line option variables, User configuration file, , Configuration file values |
|
|
|
@subsection Command line option variables |
|
|
|
|
|
|
|
In the user editable second section of the @ref{User configuration |
|
|
|
@ -1641,7 +1641,7 @@ Option@tab Tcl variable@tab Description |
|
|
|
|
|
|
|
@end multitable |
|
|
|
|
|
|
|
@node User configuration file, , Command line option variables, Config file values |
|
|
|
@node User configuration file, , Command line option variables, Configuration file values |
|
|
|
@subsection Per-user configuration file (.dejagnurc) |
|
|
|
|
|
|
|
The per-user configuration file is named @file{.dejagnurc} in the user's |
|
|
|
@ -1738,9 +1738,9 @@ target. |
|
|
|
|
|
|
|
You also need to include two targets important to DejaGnu: @emph{check}, |
|
|
|
to run the tests, and @emph{site.exp}, to set up the Tcl copies of |
|
|
|
configuration-dependent values. This is called the @ref{Local config |
|
|
|
file} The @emph{check} target must invoke the @code{runtest} program to |
|
|
|
run the tests. |
|
|
|
configuration-dependent values. This is called the @ref{Local |
|
|
|
configuration file} The @emph{check} target must invoke the |
|
|
|
@code{runtest} program to run the tests. |
|
|
|
|
|
|
|
The @emph{site.exp} target should usually set up (among other things) |
|
|
|
the @emph{$tool} variable for the name of your program. If the local |
|
|
|
@ -1921,8 +1921,8 @@ install DejaGnu. You can test it by: |
|
|
|
There is a crude inheritance scheme going on with board files, so you |
|
|
|
can include one board file into another, The two main procedures used to |
|
|
|
do this are @code{load_generic_config} and |
|
|
|
@code{load_base_board_description}. The generic config file contains |
|
|
|
other procedures used for a certain class of target. The board |
|
|
|
@code{load_base_board_description}. The generic configuration file |
|
|
|
contains other procedures used for a certain class of target. The board |
|
|
|
description file is where the board specific settings go. Commonly there |
|
|
|
are similar target environments with just different processors. |
|
|
|
|
|
|
|
|