******************** tk4.1a2+.patch (updated 1/10/96) **********************
*									  *
* Written by:	Jan Nijtmans						  *
*		NICI (Nijmegen Institute of Cognition and Information)	  *
*		email: nijtmans@nici.kun.nl				  *
*		url:   http://www.nici.kun.nl/~nijtmans/		  *
*									  *
***************************************************************************

This patch updates from Tk 4.1a2 to Tk 4.1a2+. It should be applied
by running the "patch" program in the top-level directory of a clean
Tk 4.1a2 release, using the command "patch -p0 <tk4.1a2+.patch"

Then run "configure", and do "make" in this directory. This creates
all libraries and the Tk4.1 shell (wish). Then do "make install"
(in super-user mode) to installe it on your machine for general use.

This patch adds a lot of functionality to the standard distributions
of Tk4.1, such as:

* Shared Libraries. These can be created now for AIX, HP-UX, IRIX-5,
  Linux (ELF-only), OSF/1, Motorola R4 and Sun (both SunOS-4 and Solaris).
  Also, the configure script and the makefiles contain a lot of
  comments about how to adapt it for your own system. For AIX the
  dynamical loading doesn't work yet.

* Standalone Applications. Now an extra function Tk_InitStandAlone() is
  available that performs the same function as Tk_Init(). The difference
  is that all the files in /usr/local/lib/tk4.1 are now compiled into
  the application. This makes the executable a lot larger (about 87 kbyte,
  compared with the static version), but it will run on any machine (of
  the same architecture). It makes no difference any more if Tcl is
  installed or not, or which version.

* tcl2c. A tiny compiler (only 10 kBytes of source-code, the executable
  is about 18 kByte for Solaris 2.4 ) that compiles any tcl-script into
  C-source code. The resulting output can be compiled using any C (K&R,
  ANSI) or C++ compiler. As an example for how to use it, there is a
  "hello.tcl" script in the distribution. You can compile this example by:
	tcl2c hello.tcl -o hello.c -tk		(create hello.c)
	cc -o hello hello.c libtk.a -lX11 ../tcl7.4/libtcl.a \
		-lnsl -lsocket -lm
  (The included libraries might differ on your system)
  Or, simply do:
	make hello
  The result is a binary executable that performs the same function as
  the original "hello.tcl" script. It will run as a standalone
  application, excuting your own script that you compiled into it.
  Don't expect any faster operation, because everything is still
  interpreted internally.

* C++ support. tkAppInit.c has been adapted such that it can be compiled
  with any C++ compiler. Try:
	make wish++
  This will create a C++ version of wish (if you have a C++ compiler).

* Bug fixes. Two small bugs (in tkEvent.c and tkXEvent.c) are fixed.

* Installation can be done from sub-directories of ${TOP_DIR} or ${UNIX_DIR}

* Tests are done using shared library tktest.so and tksquare.so

CONFIGURE
=========

The configure script has the following additional options:

	configure --disable-shared	don't create shared library
	configure --enable-static	create wish.static
	configure --enable-standalone	create wish.standalone
	configure --enable-tktest	create tktest
	configure --enable-test		create and run tests

These options can be used combined. They influence which files will
be created when you do "make" or "make all".

MAKE
====
You can make the following extra files:
	make wish		Shared version of wish (default)
	make wish++		C++ version of wish
	make wish.static	Static version of wish
	make wish.standalone	Standalone version of wish
	make static		the same as make wish.static
	make standalone		the same as make wish.standalone
	make tktest		Make wish, tktest.so and tksquare.so
	make tktest++		Make wish++, tktest.so and tksquare.so
	make tktest.static	Make wish.static, tktest.so and tksquare.so
	make tktest.standalone	Make wish.standalone, tktest.so and tksquare.so
	make test		Execute tests using wish
	make test++		Execute tests using wish++
	make test.static	Execute tests using wish.static
	make test.standalone	Execute tests using wish.standalone
	make hello.c		C-source of hello.tcl
	make hello		binary executable of hello.tcl
	make hello++		binary executable of hello.tcl (using C++)

