
			 =======================

			 KAFFE OpenVM 1.0 Beta 2

			 =======================

This is of "Kaffe OpenVM", a complete virtual machine and class library
set which allows the execution of Java code without any code from Javasoft.
It comes with a virtual machine and a set of class libraries including beans,
and the all important AWT graphics system.

Why use Kaffe?
--------------

Because Kaffe is distributed under the terms of the GNU Public License
which means the source code is free for you to download, modify and use.

What systems does Kaffe support?
-------------------------------

Most of the porting issues of Kaffe are in the virtual machine itself
(after all the rests in Java an inherently portable) so we may not
support all the platforms you might want, but we support an amazing number
and we'll add more as we can.  Take a look at the list below to see if
Kaffe will run on your system ('J' means 'just-in-time' while 'I' means
'interpreter'):

  ========================================================================
  uProc     | Mode |    Systems
  ========================================================================
  i386      | J+I  |    Linux 2.x       FreeBSD 2.x +   NetBSD 1.x
            |      |    Solaris 2.x     BSDI 2.x        Unixware
            |      |    SCO 3.2v5       NeXTStep 3.x    Windows '95/98/NT
            |      |    DG/UX		OpenBSD 2.x	OpenStep 4.x
            |      |    QNX 4.x		NCR MP-RAS 3.x
  ------------------------------------------------------------------------
  Sparc     | J+I  |    Linux 2.x       SunOS 4.x       NetBSD 1.x
            |      |    NeXTStep 3.x    Solaris 2.x	Fujitsu UXP/DS
            |      |    BSDI 3.x
  ------------------------------------------------------------------------
  ARM       | I    |    Linux/Netwinder NetBSD 1.x
  ------------------------------------------------------------------------
  MIPS      | I    |    Linux/Cobalt    IRIX 5 & 6	NetBSD 1.x
  ------------------------------------------------------------------------
  PARISC    | I    |    HPUX 10.x
  ========================================================================

Kaffe also ships with some code which used to work but has now fallen
behind recent changes.  If you wanted to update these ports feel free:

  ========================================================================
  Alpha     | J+I  |    Linux		OSF/1		NetBSD 1.x
  ------------------------------------------------------------------------
  M68K      | J+I  |    AmigaOS         NeXTStep 3.x    NetBSD 1.x
            |      |    SunOS 4.x	Linux		AUX
            |      |    OpenBSD 2.x
  ------------------------------------------------------------------------
  PowerPC   | I    |    MkLinux         MachTen 4.0.3	AIX
  ========================================================================

Who can use Kaffe?
------------------

Kaffe OpenVM is distributed under the GPL (GNU Public License).  Please
read the license to make sure it's okay to use it in your circumstances.  If
not, you can always contact us at Transvirtual and ask about alternatives.

Where do I find new copies of Kaffe?
------------------------------------

Kaffe is available from various sites.  The primary site is:

        ftp://ftp.transvirtual.com/pub/kaffe/

While Kaffe is being developed, look for daily snapshots of the latest
version, including the most recent bug fixes, at:

        ftp://ftp.transvirtual.com/pub/kaffe/kaffe-snap.tar.gz

What about a web site?
----------------------

News about the "Open Source" Kaffe distribution can always be found at:

	http://www.transvirtual.com/

And mailing lists?
------------------

A couple of mailing lists are available for information and discussion of
the Kaffe project.  These lists are:
  
        kaffe@rufus.w3.org                          - General discussions
        kaffe-announce@rufus.w3.org                 - Announcements

These lists are archived at:

	http://rufus.w3.org/tools/Kaffe/messages/

To subscribe to these lists send a message containing the word "subscribe"
to either:
        
        kaffe-request@rufus.w3.org
        kaffe-announce-request@rufus.w3.org
  
depending on what you are interested in.

How do I compile kaffe?
-----------------------

For UNIX it couldn't be simpler.

The machine comes complete with the interpreter, stub generator, and
supporting native libraries.   Compilation is controlled using the
GNU autoconf program.  To generate the necessary makefiles
type "./configure" in this directory.  This will identify your system
and configure the software appropriately.  If JIT mode is supported on your
system it will be selected automatically, otherwise it defaults to
interpreting mode.  Compilation should then be a simple matter of
typing "make" in this directory.

By default, the system will install into the /usr/local hierarchy as per
the standard GNU coding rules.  This can be changed using the --prefix
option to configure.  To install the binaries type "make install".

To avoid conflicts with Javasoft's products, Kaffe can be reconfigured in a
number of ways:

1. Use the --program-prefix configure option to prepend a string to all
   command names.
2. Use the --prefix configure option to place the kaffe installation tree
   somewhere other than /usr/local.

For Windows 95/98/NT it's a little different.

The only 'working' port to Windows '95 uses Cygnus's GNU tools for Windows
(available from http://www.cygnus.com/ - don't ask me how to install them!)
To configure you would type the following:

        ./configure --prefix=c:/kaffe

This would configure Kaffe to install in c:/kaffe and build in the source
directories.

Compilation and installation is as per the UNIX system.

There have been problems reported with this port due to Window's inability
to separate two files which have different capitalisations (eg. it thinks
System.h is the same as system.h).  No one has submitted any usable patches
for this problem yet.

Running Kaffe
=============

Before running Kaffe it is necessary to configure the environment.
This requires the setting of PATH and LD_LIBRARY_PATH.
For the standard installation these would be defined as follows:

	PATH=$PATH:/usr/local/bin
        LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

A file "ENVIRONMENT" is generated by the configure program which contains
a /bin/sh environment setup.  This may help you to figure out what to
set to what if you alter the standard installation point.

Note that you don't have to setup the CLASSPATH - if you do then that's
fine, but if you don't Kaffe will construct a classpath from the Jar and Zip
files it finds in the standard places (the default would be to include all
files in /usr/local/share/kaffe).

Tim Wilkinson
<tim@transvirtual.com>
----
* Java and Javasoft are registered trademark of Sun Microsystems, Inc.
* Kaffe, and Kaffe OpenVM are registered trademarks of Transvirtual
  Technologies, Inc.
