Tcl Blend
RCS: @(#) $Id: README.tclblend,v 1.4 1999/05/10 03:19:17 dejong Exp $

This is the directory where you configure, compile, test, and install 
UNIX versions Tcl Blend.  This directory also contains source files for 
Tcl Blend that are specific to UNIX.

The rest of this file contains instructions on how to do this.  The 
release should compile and run either "out of the box" or with trivial 
changes on any UNIX-like system that approximates POSIX, BSD, or 
System V.  We know that it runs on workstations from Sun.  To compile 
for a PC running Windows, see the README file in the directory ../win.


How To Compile And Install Tcl Blend:
----------------------------------------------------------

(1) You must have Tcl version 8.0 installed and compilied as a shared
    library.  See the corresponding unix/README where you have Tcl8.0
    installed for information on how to do this.

    NOTE: Tcl Blend does not work with the alpha release of Tcl8.1.

(2) Check for patches as described in ../README.

(3) Type "./configure".  This runs a configuration script created by
    GNU autoconf, which configures Tcl Blend for your system and
    creates a Makefile.  The configure script allows you to customize
    the Tcl Blend configuration for your site; for details on how you can
    do this, type "./configure --help" or refer to the autoconf
    documentation (not included here).  Tcl Blend's "configure"
    supports the following special switches in addition to
    the standard ones: 

	--with-tcl		Tcl8.0 is assumed to be installed in 
				../../tcl8.0.  If this is not true, then 
				use this switch to specify an absolute
				path to the location of the Tcl source.

	--with-jdk		By default, the configure script will
                                attempt to find the JDK by searching on
                                the PATH for the javac program. If the
                                javac program can not be found on the
                                PATH or if you do not want to use the
				JDK that it finds, you will need to use
                                this switch to tell configure where
                                it should look for the JDK binaries.

	--with-jikes		The JDK ships with a java compiler called
				javac. This compiler works but it is very
				slow. Many people would rather use the
				jikes compiler from IBM because it is much
				faster than javac and it produces better code.
				On my system, a compile with javac takes
				20 seconds while a compile with jikes
                                only takes 1 second. If this switch is
                                given with no argument then the configure
                                script will search for jikes on the PATH.
                                If an argument is provided it must be the
                                absolute path name of your jikes executable.
                                See www.research.ibm.com/jikes for more info.

    If you are only going to compile for a single platform then you
    should just run "./configure" from this directory. If you intend
    to build Tcl Blend for multiple systems you should make a sub
    directory for each system you want to build a binary for. For
    instance if you wanted to compile for solaris and linux you
    could make two directories called "solaris" and "linux". At
    this point you will want to run the configure script in the
    directory of each target system. You should do something like
    "cd solaris ; ../configure (your configure options here)".
    You can also use this feature to build two versions of Tcl Blend
    (one that works with JDK1.1 and another that works with JDK1.2)
    on the same system. Make sure that tcl was compiled with the
    --enable-shared option or else Tcl Blend will not compile.

(4) Type "make". This will build two library files called
    tclblend.jar and tcljava.jar. The tclblend.jar library file
    stores the class files that are only used by Tcl Blend.
    The tcljava.jar library file stores the class files
    that are shared between jacl and tclblend. Running make
    will also create a shared library called "libtclblend.so".

(5) If the make fails then you'll have to personalize the Makefile
    for your site or possibly modify the distribution in other ways.
    If you need to modify Makefile, there are comments at the beginning 
    of it that describe the things you might want to change and how to 
    change them.

(6) After the make finishes you can quickly test out Tcl Blend by typing
    "make shell" which will drop you into a running Tcl Blend shell where
    you can type in commands. You can also run the regression tests
    for Tcl Blend by typing "make test".

(7) When you are ready to install type "make install" to install
    the Tcl Blend libraries on your system. Doing the install will
    also create a pair of wrapper scripts called jtclsh and jwish
    which you can use to run Tcl Blend without setting lots of
    environmental variables by hand. After the wrapper script has
    been installed a test program will be run to ensure that
    the installed program is working correctly.

Test suite:
-----------

There is a relatively complete test suite for all of the Tcl core in the 
subdirectory "tests".  To use it just type "make test" in this directory.  
You should then see a printout of the test files processed.  If any errors 
occur, you'll see a much more substantial printout for each error.  See the 
README file in the "tests" directory for more information on the test suite.  
Note: don't run the tests as superuser: this will cause several of them to 
fail.

