Classpath release 0.06, when we upgraded to GTK+2.
Classpath's AWT peers use GTK+. GTK+ uses GLIB. GLIB by default uses
the platform's native threading model -- pthreads in most cases.
If the Java runtime doesn't use the native threading model, then you should
specify --portable-native-sync when configuring Classpath, so that GLIB will
use the Java threading primitives instead. (For a superior alternative,
see below.)

The VM can set the system property

gnu.classpath.awt.gtk.portable.native.sync instead of using the
--portable-native-sync configure-type option.
See doc/vmintegration.texinfo for details.

We intend that the next release of GNU Classpath will require the VM

to provide JNI 1.2. Classpath currently uses only JNI 1.1, except for
one JNI 1.2 function: GetEnv(), in the JNI Invocation API.
If this poses problems, please raise them on the classpath mailing list.

The reference implementation of VMThread.holdsLock(Object) now has

a default implementation written in java. For efficiency and to
prevent spurious wakeups a real 'native' runtime version can be supplied.

There is a new java.security.VMAccessController class that runtimes need

to implement to properly support SecurityManagers. The default
implementation that comes with GNU Classpath makes sure that ANY attempt
to access a protected resource is denied when a SecurityManager is
installed. Which is pretty secure, but also no very useful.
Please see the documentation in
vm/reference/java/security/VMAccessController.java,
and please give feedback on the GNU Classpath mailinglist whether or not
the current AccessController framework is flexible enough.

Here are answers to some questions you might have about this project and
this release.

1). What is required to build/install/run?

GNU Classpath requires a working GNU build environment and a byte code
compiler such as jikes, gcj or kjc. When creating native code you will
also need a working C compiler and up to date Gnome development
libraries (gtk+, libart and gdk-pixbuf). More information on the
precise version numbers for the tools and libraries can be found in
the INSTALL file.

You will also need a runtime environment. The following environments
have been tested to work out of the box with this release:

For other environments that might need modified version of the current
release see the README file. A complete list of virtual machines and
compilers known to be based on GNU Classpath can be found at our
website: http://www.gnu.org/software/classpath/stories.htm

2). What platforms are supported?

GNU/Linux is the only platform that has been tested.
We plan to eventually support many others.

3). Who should use this software?

Although GNU Classpath is already capable of supporting many
applications written in the java programming language, this is a
development release. As such, there are still some unfinished
components, and some problems are to be expected. You should install it
if you are interested in GNU Classpath development or reporting bugs.
We appreciate both.

For end users we recommend to use one of the development environments
based on GNU Classpath which combine the core libraries with compilers
and other tools needed for creating applications and libraries.