This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH] web site build and test guides: interoperability testing
- From: Janis Johnson <janis187 at us dot ibm dot com>
- To: gcc-patches at gcc dot gnu dot org
- Date: Tue, 19 Nov 2002 10:39:12 -0800
- Subject: [PATCH] web site build and test guides: interoperability testing
I've modified four of the build and test guides in gcc.gnu.org/testing
to describe how to use those packages for interoperability testing.
The change logs for those files are:
* testing/testing-blitz.html: Describe how to use this package for
interoperability testing.
* testing/testing-boost.html: Ditto.
* testing/testing-lapack.html: Ditto.
* testing/testing-qt.html: Ditto.
Janis
Index: testing/testing-blitz.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/testing/testing-blitz.html,v
retrieving revision 1.1
diff -u -r1.1 testing-blitz.html
--- testing/testing-blitz.html 13 Nov 2002 22:53:36 -0000 1.1
+++ testing/testing-blitz.html 19 Nov 2002 18:21:31 -0000
@@ -87,6 +87,15 @@
as well as building and running the tests, do <code>make all</code>
instead of <code>make check</code>.</p>
+<h2>Interoperability testing</h2>
+
+<p>Before running the tests, <code>make check</code> builds the library
+<code>lib/libblitz.a</code> that is used by those tests. Use Blitz++
+to test interoperability of two compilers by first configuring to use
+one compiler, building the library with <code>make lib</code>, running
+<code>configure</code> a second time specifying the second compiler,
+and then running <code>make check</code>.</p>
+
<h2>Timing</h2>
<p>TBD</p>
Index: testing/testing-boost.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/testing/testing-boost.html,v
retrieving revision 1.1
diff -u -r1.1 testing-boost.html
--- testing/testing-boost.html 13 Nov 2002 22:53:36 -0000 1.1
+++ testing/testing-boost.html 19 Nov 2002 18:21:36 -0000
@@ -49,6 +49,14 @@
changed).</li>
</ul>
</li>
+<li>Change a configuration check to recognize GCC versions later than
+ 3.1; in file <code>boost/config/compiler/gcc.hpp</code>, change
+ <code>__GNUC_MINOR__ > 1</code> to
+ <code>__GNUC_MINOR__ > 4</code>.</li>
+<li>The test <code>libs/integer/integer_test.cpp</code> assumes that
+ types <code>int</code> and <code>long</code> are the same size.
+ If this isn't true for your target, modify the test file using
+ <code>sed '/PRIVATE_FIT_TESTS/s/LONG_MAX/INT_MAX/'</code>.</li>
</ul>
<h2>Configure</h2>
@@ -103,6 +111,12 @@
2.2.4 then tests
<code>libs/integer/integer_traits_test.cpp</code> and
<code>libs/regex/test/regress/wregex_test.cpp</code> will fail.</p>
+
+<h2>Interoperability testing</h2>
+
+<p>Boost can be used to test interoperability of two compilers by
+building the Boost class library with one compiler and the regression
+test with a different compiler.</p>
<h2>Time</h2>
Index: testing/testing-lapack.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/testing/testing-lapack.html,v
retrieving revision 1.1
diff -u -r1.1 testing-lapack.html
--- testing/testing-lapack.html 13 Nov 2002 22:53:36 -0000 1.1
+++ testing/testing-lapack.html 19 Nov 2002 18:21:41 -0000
@@ -99,6 +99,15 @@
<p>GCC 3.1 should not result in more failures than GCC 3.0.4</p>
+<h2>Interoperability testing</h2>
+
+<p>The make targets <code>testing</code> and <code>blas_testing</code>
+build tests that use libraries built for the previous targets. LAPACK
+can be used to test interoperability of two compilers by first editing
+the <code>make.inc</code> file to use one compiler and building all of
+the libraries with that, and then modifying <code>make.inc</code> to
+specify a second compiler and making the testing targets.</p>
+
<h2>Time</h2>
<p>TBD</p>
Index: testing/testing-qt.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/testing/testing-qt.html,v
retrieving revision 1.1
diff -u -r1.1 testing-qt.html
--- testing/testing-qt.html 13 Nov 2002 22:53:36 -0000 1.1
+++ testing/testing-qt.html 19 Nov 2002 18:21:45 -0000
@@ -47,16 +47,19 @@
<code>qt</code>).</li>
</ul>
</li>
-<li>By default, the Qt package uses the compiler flags <code>-pipe -O2</code>.
-You can specify different flags by changing the values of
-<code>SYSCONF_CXXFLAGS</code> and <code>SYSCONF_CFLAGS</code> in the
-configuration file. On a GNU/Linux system the configuration file is
-<code>configs/linux-g++-shared</code>.
-</li>
</ul>
<h2>Configure</h2>
+<p>The configuration file, which on a GNU/Linux system is
+<code>configs/linux-g++-shared</code>, the location of the compiler and
+libraries and the compiler flags used to build Qt. By default it uses
+compilers found in <code>PATH</code>, shared libraries found using
+<code>LD_LIBRARY_PATH</code>, and the compiler flags
+<code>-pipe -O2</code>. You can specify different flags by changing the
+values of <code>SYSCONF_CXXFLAGS</code> and <code>SYSCONF_CFLAGS</code>
+in the configuration file.</p>
+
<p>Run the configure script before building the first time or after
modifying the configuration file:</p>
@@ -92,6 +95,20 @@
<h2>Testing</h2>
<p>Qt has no automated tests.</p>
+
+<h2>Interoperability testing</h2>
+
+<p>Some of the Qt make targets depend on libraries built for earlier
+targets. Qt can be used to test interoperability of two compilers by
+doing the following:</p>
+<ul>
+ <li>Configure to use one compiler by modifying the configuration file
+ or by setting <code>PATH</code> and <code>LD_LIBRARY_PATH</code>
+ for that compiler and its libraries.</li>
+ <li><code>make src-mod src-mt src-sub</code></li>
+ <li>Configure to use a second compiler.</li>
+ <li><code>make sub-tools sub-tutorial sub-examples</code></li>
+</ul>
<h2>Timing</h2>