blob: 33322d04ee45391e6fddf23fc549833175a5787b [file] [log] [blame]
DejaGnu is a framework for testing other programs. Its purpose is to
provide a single front end for all tests. Beyond this, DejaGnu offers
several advantages for testing:
- The flexibility and consistency of the DejaGnu framework
make it easy to write tests for any program.
- DejaGnu provides a layer of abstraction which makes all
tests (if correctly written) portable to any host or target
where a program must be tested. For instance, a test for
GDB can run (from any Unix based host) on any target
architecture supported by DejaGnu. Currently DejaGnu runs
tests on several single board computers, whose operating
software ranges from just a boot monitor to a full-fledged,
Unix-like realtime OS.
- DejaGnu is written in expect, which in turn uses Tcl
(Tool command language). The framework comprises two parts:
the testing framework and the testsuites themselves. Tests
are usually written in expect using Tcl.
If you think you have found a bug in DejaGnu, then please send a bug
report according to the guidelines outlined at:
<http://www.gnu.org/software/dejagnu/#bug>
How To Configure and Build
To build DejaGnu, run the ``configure'' script here, e.g.:
./configure MYHOSTTYPE
followed by running ``make''. (MYHOSTTYPE is a name for your host computer,
for instance "sun4". You can use the script ``config.sub'' to test whether
a name is recognized; if it is, config.sub translates it to a triplet
specifying CPU, vendor, and OS.) This is used when you plan to
configure and build in the source tree.
If you use a separate tree for object files, (the recommended way),
then the --srcdir option must also be specified. This would also
require that the configure script be run from the top level directory.
PATH/configure MYHOSTYPE
where PATH is is the directory that the contains the sources.
To configure it so it gets installed somewhere other than the
default of /usr/local, use the --prefix option.
configure MYHOSTYPE --prefix [PATH]
where PATH is the prefix used to install the programs.
The configure testing and building will use the native compiler "cc"
on your host machine. To change which compiler gets used (like gcc)
set a the variable "CC" in your environment to point to it.
For csh users: "setenv CC gcc"
For bourne shell users: "CC=gcc;export CC"
Then when you compile, use "make CC=$CC".
See /usr/doc/dejagnu-$version/overview/book1.html or
/usr/doc/dejagnu-$version/overview.ps for for more details.
As DejaGnu is a Tcl program, there is little to build. However, the
documentation is not built by default. Use these targets:
"make overview.html" - Generate the html formatted documentation from
the SGML source.
"make overview.ps" - Generate the Postscript formatted documentation from
the SGML source.
"make overview.pdf" - Generate the PDF formatted documentation from
the SGML source.
"make install" - This installs DejaGnu based on the --prefix option
when configuring. Otherwise it defaults to
/usr/local. See the DejaGnu manual for more
information on installation.