classpath
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Getting Mauve running with Classpath+gcj/jikes+kissme


From: Mark Wielaard
Subject: Getting Mauve running with Classpath+gcj/jikes+kissme
Date: 10 Oct 2002 23:13:45 +0200

Hi,

Here are some instructions for getting the Mauve testsuite running with
GNU Classpath+gcj/jikes+kissme. 

# The compiler
- Get a recent gcj (>= 3.2) or jikes (>= 1.15)
  (See http://gcc.gnu.org/ or http://www.jikes.org/)

# The class libraries
- Get recent GNU Classpath sources from CVS.
  (See http://savannah.gnu.org/cvs/?group=classpath)
- Do the magic auto* dance:
  aclocal; autoheader; automake; autoconf
- Do either ./configure --with-jikes --enable-jni
  or ./configure --with-gcj --enable-jni
  (note that you can specify a path e.g.
   --with-gcj=/usr/local/gcc/bin/gcj)
- make
- make install

# The runtime
- Get recent Kissme sources from CVS (or maybe a recent build).
  (See http://kissme.sourceforge.net/)
- Do the magic auto* dance (note the -a for automake):
  aclocal; autoheader; automake -a; autoconf
- ./configure --enable-use-zips --with-gnu-classpath=/path/to/src/classpath
- make
- Check that it works correctly:
  jikes/gcj -C helloworld.java
  useful_scripts/kissme helloworld
- Add the kissme script to your PATH.
- More checks:
  make build-hitme && make run-hitme
  (Only ThreadInterrupts should fail.)

# The test suite
- Get recent Mauve sources from CVS.
  (See http://sources.redhat.com/mauve/download.html)
- Create a new empty directory "mauve-test"
  next to your new mauve directory and go into it.
- Do either:
  JAVA=kissme JAVAC="gcj -C -bootclasspath 
/usr/local/classpath/share/classpath/glibj.zip"  ../mauve/configure
  or
  JAVA=kissme JAVAC="jikes -bootclasspath 
/usr/local/classpath/share/classpath/glibj.zip"  ../mauve/configure
- Add the attached file mauve-kissme to the mauve directory.
  (This tells the build which tests should/shouldn't be compiled/run.)
- Run the tests:
  make check "KEYS=kissme"
- If the compile or tests don't seem to pickup the correct classes try:
  rm .save-keys choices; make check "KEYS=kissme"
  To make sure all old config is gone.
- If you want to also see the tests that succeed do:
  make check "KEYS=kissme "TESTFLAGS=-verbose"
- To get more debug output do:
  make check "KEYS=kissme "TESTFLAGS=-verbose -debug"

At the moment you will get the following results:
158 of 6276 tests failed
(Some of these are known failures, some still have to be investigated.)

If you want to run just one particular test then do something like:
echo gnu.testlet.java.util.Random.basic | kissme gnu.testlet.SimpleTestHarness 
-verbose -debug

Note that if you have the gcc source you can also run the Mauve tests
for [lib]gcj by doing:
- MAUVEDIR=/path/to/unconfigured/mauve make check-target-libjava

Let me know if this works or if you have any trouble setting this up.

Cheers,

Mark

P.S. Make sure you #undef DEBUG in include/config.h from classpath after
configure. It is currently always set to 1 which generates a lot of
debug output when using Kissme which makes the Mauve results unreadable.
(See Bug/Patch #562)
# Config file that tells mauve about the `kissme' tag.
JDK1.0
JDK1.1
JDK1.2
JDK1.3
JDK1.4
JLS1.0
JLS1.1
JLS1.2
JDBC2.0

# These 2 are tests that fail to compile with JDBC2.0 but the tags don't
# seem to have the right effect.
!java.sql.Connection.TestJdbc10
!java.sql.DatabaseMetaData.TestJdbc10

# We now implement JDBC3.0 which means the following tests don't compile
!java.sql.Blob.BlobTest
!java.sql.Clob.ClobTest
!java.sql.Connection.TestJdbc20
!java.sql.DatabaseMetaData.TestJdbc20

# Cannot be compiled
!java.text.ACIAttribute

# Character.unicode seems to be very broken (the test)
# Does not give meaningfull test results at the moment.
!java.lang.Character.unicode

# These are almost certainly buggy test cases.
# The behaviour of the garbarge collector cannot be predicted.
!java.lang.ref

# Strange behaviour (crash or hang)
!java.io.ObjectInputOutput

# Crashes when compiled with gcj
!java.lang.Math.min

# Not yet in GNU Classpath
!javax.naming.*

reply via email to

[Prev in Thread] Current Thread [Next in Thread]