		Obeah Version 1.1

Obeah provides a simple interface to the configuration of Makefiles
(or other systems). When run as a configuration script it sources a
file called configure.in which contains tcl code that defines what is
to be done.  When the user has set up the required values and clicks
on the install button, make is executed, parameterised by the values
provided, using the file "program".mk as its input file.  Setting the
"Help" check button will give help information for buttons and fields
when the mouse enters them.

The buttons on the configuration window act as follows :

Quit  - exit the program. If there are unsaved changes you will be prompted.

Reset - reset *all* the fields to their default values. Typing
	<Escape> in a field will reset it individually.

Clear - empty *all* the fields. Individual fields can be cleared by
	typing <Shift-Escape> when the focus is in the field.

Verify - runs tests on the values on the fields to make sure they are
	OK.

Save   - saves the values you have entered in the configuration input file.

Install - Executes make install.

Help   - enables or disables help information display.

If obeah is started with the -c option it allows you to create the
configuration input file. It permits the creation of new fields that
can be modified by the user and allows various verification procedures
to be called to ensure that the values are correct. Invisible fields
can also be added - that is values that can be passed to make but
which are not configurable by the user.

It is also possible to add new buttons to the configuration window to
reflect any special features you would like to have. Because the
configuration file is sourced it can be used to contain definitions of
any of extra procs that are needed. You can also remove the default
buttons provided if they do not reflect what you wish to happen.

At the moment obeah supports only a small number of verification
procedures for values :

specifying "ob_dirCheck" will check that the value given is a directory,
that it exists and if it doesnt that you have write permission to its
parent.

specifying "ob_interpCheck" will check that the value refers to a valid
tcl interpreter. interpCheck must have a parameter specified (which
can be {}) containing pairs of values giving a command to execute in
the interpreter and a pattern describing the expected result. This
allows you to test for various features being present or absent in the
interpreter specified.

In create mode, clicking the program button will create shell script
that executes wish with a cut down obeah as its input. This allows you
to create tailored configure programs for particular applications. The
name of the configuration file is built in to this script so does not
have to be configure.in (which is the default). The cut down program
does not contain any of the creation features.

Your help messages may contain the sequence %p which will be
substituted with the name of the program being configured.

Please send me any bugs or feature requests.


Lindsay.Marshall@newvcastle.ac.uk
