summaryrefslogtreecommitdiff
path: root/gnu/usr.bin/gcc/INSTALL/test.html
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/usr.bin/gcc/INSTALL/test.html')
-rw-r--r--gnu/usr.bin/gcc/INSTALL/test.html162
1 files changed, 162 insertions, 0 deletions
diff --git a/gnu/usr.bin/gcc/INSTALL/test.html b/gnu/usr.bin/gcc/INSTALL/test.html
new file mode 100644
index 00000000000..2abc431384c
--- /dev/null
+++ b/gnu/usr.bin/gcc/INSTALL/test.html
@@ -0,0 +1,162 @@
+<html lang="en">
+<head>
+<title>Installing GCC: Testing</title>
+<meta http-equiv="Content-Type" content="text/html">
+<meta name=description content="Installing GCC: Testing">
+<meta name=generator content="makeinfo 4.2">
+<link href="http://www.gnu.org/software/texinfo/" rel=generator-home>
+<!--
+Copyright &copy; 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
+1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+<br><p>
+<p>Permission is granted to copy, distribute and/or modify this document
+under the terms of the GNU Free Documentation License, Version 1.2 or
+any later version published by the Free Software Foundation; with no
+Invariant Sections, the Front-Cover texts being (a) (see below), and
+with the Back-Cover Texts being (b) (see below). A copy of the
+license is included in the section entitled "<a href="./gfdl.html">GNU Free Documentation License</a>".
+
+<p>(a) The FSF's Front-Cover Text is:
+
+<p>A GNU Manual
+
+<p>(b) The FSF's Back-Cover Text is:
+
+<p>You have freedom to copy and modify this GNU Manual, like GNU
+ software. Copies published by the Free Software Foundation raise
+ funds for GNU development.-->
+</head>
+<body>
+<h1>Installing GCC: Testing</h1>
+Before you install GCC, we encourage you to run the testsuites and to
+compare your results with results from a similar configuration that have
+been submitted to the
+<a href="http://gcc.gnu.org/ml/gcc-testresults/">gcc-testresults mailing list</a>.
+Some of these archived results are linked from the build status lists
+at <a href="http://gcc.gnu.org/buildstat.html">http://gcc.gnu.org/buildstat.html</a>, although not everyone who
+reports a successful build runs the testsuites and submits the results.
+This step is optional and may require you to download additional software,
+but it can give you confidence in your new GCC installation or point out
+problems before you install and start using your new GCC.
+
+<p>First, you must have <a href="download.html">downloaded the testsuites</a>.
+These are part of the full distribution, but if you downloaded the
+"core" compiler plus any front ends, you must download the testsuites
+separately.
+
+<p>Second, you must have the testing tools installed. This includes
+<a href="http://www.gnu.org/software/dejagnu/">DejaGnu</a> 1.4.1 or 1.4.3
+and later, Tcl, and Expect; the DejaGnu site has links to these.
+
+<p>If the directories where <code>runtest</code> and <code>expect</code> were
+installed are not in the <code>PATH</code>, you may need to set the following
+environment variables appropriately, as in the following example (which
+assumes that DejaGnu has been installed under <code>/usr/local</code>):
+
+<br><pre> TCL_LIBRARY = /usr/local/share/tcl8.0
+ DEJAGNULIBS = /usr/local/share/dejagnu
+</pre>
+
+<p>(On systems such as Cygwin, these paths are required to be actual
+paths, not mounts or links; presumably this is due to some lack of
+portability in the DejaGnu code.)
+
+<p>Finally, you can run the testsuite (which may take a long time):
+<br><pre> cd <var>objdir</var>; make -k check
+</pre>
+
+<p>This will test various components of GCC, such as compiler
+front ends and runtime libraries. While running the testsuite, DejaGnu
+might emit some harmless messages resembling
+<code>WARNING: Couldn't find the global config file.</code> or
+<code>WARNING: Couldn't find tool init file</code> that can be ignored.
+
+<h3><a name="TOC0"></a>How can I run the test suite on selected tests?</h3>
+
+<p>In order to run sets of tests selectively, there are targets
+<code>make check-gcc</code> and <code>make check-g++</code>
+in the <code>gcc</code> subdirectory of the object directory. You can also
+just run <code>make check</code> in a subdirectory of the object directory.
+
+<p>A more selective way to just run all <code>gcc</code> execute tests in the
+testsuite is to use
+
+<br><pre> make check-gcc RUNTESTFLAGS="execute.exp <var>other-options</var>"
+</pre>
+
+<p>Likewise, in order to run only the <code>g++</code> "old-deja" tests in
+the testsuite with filenames matching <code>9805*</code>, you would use
+
+<br><pre> make check-g++ RUNTESTFLAGS="old-deja.exp=9805* <var>other-options</var>"
+</pre>
+
+<p>The <code>*.exp</code> files are located in the testsuite directories of the GCC
+source, the most important ones being <code>compile.exp</code>,
+<code>execute.exp</code>, <code>dg.exp</code> and <code>old-deja.exp</code>.
+To get a list of the possible <code>*.exp</code> files, pipe the
+output of <code>make check</code> into a file and look at the
+<code>Running <small>...</small> .exp</code> lines.
+
+<p>The Java runtime tests can be executed via <code>make check</code>
+in the <code><var>target</var>/libjava/testsuite</code> directory in
+the build tree.
+
+<h3><a name="TOC1"></a>Additional testing for Java Class Libraries</h3>
+
+<p>The <a href="http://sources.redhat.com/mauve/">Mauve Project</a> provides
+a suite of tests for the Java Class Libraries. This suite can be run
+as part of libgcj testing by placing the Mauve tree within the libjava
+testsuite at <code>libjava/testsuite/libjava.mauve/mauve</code>, or by
+specifying the location of that tree when invoking <code>make</code>, as in
+<code>make MAUVEDIR=~/mauve check</code>.
+
+<a href="http://www-124.ibm.com/developerworks/oss/cvs/jikes/~checkout~/jacks/jacks.html">Jacks</a>
+is a free test suite that tests Java compiler front ends. This suite
+can be run as part of libgcj testing by placing the Jacks tree within
+the libjava testsuite at <code>libjava/testsuite/libjava.jacks/jacks</code>.
+
+<h3><a name="TOC2"></a>How to interpret test results</h3>
+
+<p>The result of running the testsuite are various <code>*.sum</code> and <code>*.log</code>
+files in the testsuite subdirectories. The <code>*.log</code> files contain a
+detailed log of the compiler invocations and the corresponding
+results, the <code>*.sum</code> files summarize the results. These summaries
+contain status codes for all tests:
+
+<ul>
+<li>PASS: the test passed as expected
+<li>XPASS: the test unexpectedly passed
+<li>FAIL: the test unexpectedly failed
+<li>XFAIL: the test failed as expected
+<li>UNSUPPORTED: the test is not supported on this platform
+<li>ERROR: the testsuite detected an error
+<li>WARNING: the testsuite detected a possible problem
+</ul>
+
+<p>It is normal for some tests to report unexpected failures. At the
+current time our testing harness does not allow fine grained control
+over whether or not a test is expected to fail. We expect to fix this
+problem in future releases.
+
+<h3><a name="TOC3"></a>Submitting test results</h3>
+
+<p>If you want to report the results to the GCC project, use the
+<code>contrib/test_summary</code> shell script. Start it in the <var>objdir</var> with
+
+<br><pre> <var>srcdir</var>/contrib/test_summary -p your_commentary.txt \
+ -m gcc-testresults@gcc.gnu.org |sh
+</pre>
+
+<p>This script uses the <code>Mail</code> program to send the results, so
+make sure it is in your <code>PATH</code>. The file <code>your_commentary.txt</code> is
+prepended to the testsuite summary and should contain any special
+remarks you have on your results or your build environment. Please
+do not edit the testsuite result block or the subject line, as these
+messages may be automatically processed.
+
+<hr />
+<p>
+<a href="./index.html">Return to the GCC Installation page</a>
+
+</body></html>
+