tkmkmf is a utiliy based on imake that simplifies the building of Tk
programs that extend wish with user code. It relieves the user of
having to have access to a Tk source file in which application
initialisation is expected (by the author of Tk) to be done. I happen
to think that that is not a very user friendly way to go about things
and so have developed tkmkmf. It would be trivial to incorporate what
tkmkmf provides into Tk but I have failed to persuade the author of Tk
of the advantages of enabling initialisation my way.

tkmkmf adds a hook in the form of a function call to the file that is
expected to be modified and stores the compiled object in a place
known to tkmkmf for access at link time. Once tkmkmf has been
installed all that the user has to do is to write the new code,
including that function, and use a tkmkmf generated Makefile to build
the application.

This version is for Tk 3.6 and can be used with either C or C++.
It also supports the use of [incr tcl].


INSTALLATION

1. Edit the Makefile to suit your system and then run 'make'.

2. cd into src, read the README there and run "xmkmf' followed by 'make'.

3. Return to this directory and then do a 'make install'

The installation places all files under an installation directory and
creates a symbolic link in your bin directory (you say where) that
points to the executable script tkmkmf in the bin subdirectory of the
installation directory.


USAGE

1. Execute 'tkmkmf -cp' to copy an Imakefile template into the
   working directory.

2. Edit the Imakefile according to the instructions inside it to
   suit the requirements of your application.

3. Run 'tkmkmf' to create a Makefile from the Imakefile.

4. Write own code.

5. Run 'make'.

If the Imakefile is ever modified, e.g. to add the names of further
source and object modules, then tkmkmf has to be rerun.


Jim
---
J.K.Wight@newcastle.ac.uk
Department of Computing Science, University of Newcastle,  Tel: +44 91 222 8238
Newcastle upon Tyne, NE1 7RU, United Kingdom.              Fax: +44 91 222 8232
