This directory contains the following patches:

tk4.1dash.patch.gz (version 8/2/96)
	A patch for Tk4.1 to have the options "-state", "-dash",
	"-outlinestipple" and much more available for all
	appropriate canvas objects. Still available as is, but no
	longer supported!!!!!

tk4.1p1dash.patch.gz (version 8/2/96)
	A patch for Tk4.1p1 to have the options "-state", "-dash",
	"-outlinestipple" and much more available for all
	appropriate canvas objects. Still available as is, but no
	longer supported!!!!!

tk4.2dash.patch.gz (version 12/10/96)
	A patch for Tk4.2 to have the options "-state", "-dash",
	"-outlinestipple" and much more available for all
	appropriate canvas objects. The file doc/canvas.n is
	updated for all these changes.
	Written by Jan Nijtmans (nijtmans@nici.kun.nl), but also
	included is work from John Ellson (John.Ellson@att.com),
	Matthew Rice (matthew.rice@pgw.on.ca), Henry A Rowley
	(har@cs.cmu.edu), and Mark Weissman (weissman@gte.com).
	More information:  http://www.cogsci.kun.nl/~nijtmans/tcl/patch.html

tk8.0a1dash.patch.gz
	A patch for Tk8.0a1 to have the options "-state", "-dash",
	"-outlinestipple" and much more available for all
	appropriate canvas objects. The file doc/canvas.n is
	updated for all these changes.
	Written by Jan Nijtmans (nijtmans@nici.kun.nl), but also
	included is work from John Ellson (John.Ellson@att.com),
	Matthew Rice (matthew.rice@pgw.on.ca), Henry A Rowley
	(har@cs.cmu.edu), and Mark Weissman (weissman@gte.com).
	More information:  http://www.cogsci.kun.nl/~nijtmans/tcl/patch.html

tcl7.5plus.patch.gz (version 8/1/96)
	A patch for Tcl7.5, which adds support for Shared
	libraries and Standalone applications. Still available as is,
	but no longer supported!!!!!

tcl7.5p1plus.patch.gz (version 8/14/96)
	A patch for Tcl7.5p1, which adds support for Shared
	libraries and Standalone applications. Look into the
	file "changes" for more information.

tcl7.6plus.patch.gz (version 1/10/97)
	A patch for Tcl7.6, which adds support for Shared
	libraries and Standalone applications. Look into the
	file "README.PLUS" for more information.

tcl8.0a1plus.patch.gz (version 1/10/97)
	A patch for Tcl8.0a1, which adds support for Shared
	libraries and Standalone applications. Look into the
	file "README.PLUS" for more information.

tk4.1plus.patch.gz (version 8/2/96)
	A patch for Tk4.1, which adds support for Shared
	libraries and Standalone applications. Still available as is,
	but no longer supported!!!!!

tk4.1p1plus.patch.gz (version 8/14/96)
	A patch for Tk4.1p1, which adds better support for Shared
	libraries and Standalone applications. Look into the
	file "changes" for more information.

tk4.2plus.patch.gz (version 1/10/97)
	A patch for Tk4.2, which adds better support for Shared
	libraries and Standalone applications. Look into the
	file "changes" for more information.

tk8.0a1plus.patch.gz (version 1/9/97)
	A patch for Tk8.0a1, which adds better support for Shared
	libraries and Standalone applications. Look into the
	file "changes" for more information.

itcl2.2plus.patch.gz (version 1/14/97)
	A patch for Itcl2.2, which adds better support for Shared
	libraries and Standalone applications. Look into the
	file "changes" for more information.

tclX7.6.0plus.patch.gz (version 1/10/97)
	A patch for TclX7.6.0, which adds support for Shared
	libraries and Standalone applications. Look into the
	file "README.PLUS" for more information.

About the "dash"-patches
========================
  These patches are currently available for Tk4.1(p1), Tk4.2 and Tk8.0a1.
But only the version for Tk4.2 (works for Itcl 2.2 as well) and Tk8.0a1
still are supported. It adds a lot of new options to the canvas items,
e.g. the "-state" and "-dash" options. Also GIF output for the photo image
and postscript output for images and windows is added (unix only).

About the "plus"-patches
========================
  These patches currently exist for Tcl7.5/Tk4.1(p1), Tcl7.6/Tk4.2,
Tcl8.0a1/Tk8.0a1, Itcl 2.2 and TclX7.6.0. The idea is to enhance the
installation (configure and Makefile) such that it makes users much
easier to install Shared libraries and Standalone executables without
making all kind of changes to the Makefile by hand. The configure script
will do that for you.

Standalone Applications
=======================
  In addition to Tcl_Init() and Tk_Init (or XXX_Init in general) there
are now additional functions Tcl_InitStandAlone() and Tk_InitStandAlone()
(or XXX_InitStandAlone in general). These perform the same function, only
the Tcl and Tk libraries are compiled into the executable. This makes the
executable larger, of course, but they will run on any system no matter if
Tcl/Tk (or Tix) is installed or not.
  Included is a program tcl2c, which translates all tcl-sources into
c-strings. These c-sources are later included into tclInitSA.o and
tkInitSA.o. Finally they are included into libtcl.a and libtk.a as a
separate module, usable for anyone who want to create a standalone version
of his own application.

Tcl2c
=====
You can use this utility to compile your own scripts into C-source
code. Try "make hello". This will compile "hello.tcl" into the C-program
"hello.c" and compile it. The result is a standalone executable "hello"
that does the same as "hello.tcl", except it doesn't need tcl or tk
to be installed any more.

Tcl2c has the following options:
	-o <outfile>	file to write the result to (default=stdout)
	-tcl		Include tcl-initialization
	-itcl		Include itcl-initialization (assumes -tcl)
	-tcls		Include tclX-initialization (assumes -tcl)
	-pvm		Include pvm-initialization (assumes -tcl)
	-tk		Include tk-initialization (assumes -tcl)
	-itk		Include tk-initialization (assumes -tk and -itcl)
	-tkx		Include tkx-initialization (assumes -tk and -tclx)
	-blt		Include blt-initialization (assumes -tk)
	-tix		Include Tix-initialization (assumes -tk)
Other arguments are file-names (assumed to contain tcl-scripts) to be
translated. If the file has the extension ".c", it is assumed to contain
C-strings already.

C++-support
===========
Now tclAppInit.c and tkAppInit.c can be compiled with any c or
c++ compiler (cc, gcc, c++, g++, CC ....).

Make
====
Additional make-options are added, for example:
	make tclsh		Shared version of tclsh (default)
	make tclsh++		C++ version of tclsh
	make tclsh.static	Static version of tclsh
	make tclsh.standalone	Standalone version of tclsh
	make tcltest		tclsh and shared library of tcltest
	make tcltest++		tclsh++ and shared library of tcltest
	make tcltest.static	tclsh.static and shared library of tcltest
	make tcltest.standalone tclsh.standalone and shared library of tcltest
	make test		Execute tests using tclsh
	make test++		Execute tests using tclsh++
	make test.static	Execute tests using tclsh.static
	make test.standalone	Execute tests using tclsh.standalone
	make hello.c		Create C source code of hello.tcl
	make hello		Create standalone executable from hello.tcl
	make hello++		Create standalone executable from hello.tcl
					(using C++ compiler)

The same options are available for Tk too.

------------------------------------------------------------------------------
Written by:
	Jan Nijtmans
	NICI (Nijmegen Institute of Cognition and Information)
	email:	nijtmans@nici.kun.nl
	url:	http://www.cogsci.kun.nl/~nijtmans
