Last update: 27th Jan 2004
smake is a utility that allows developers to build makefiles in
100% TCL
(with the smake extensions). This allows one to use all the
facilities that TCL
provides to deal with large projects like namespaces, packages, database
access etc. With the traditional UNIX make this is difficult and
often
ugly hacks are involved. Plus, with TCL you can easily replace the dependency
checking routines
to suit the needs of the project (f.ex. to automatically check and fetch
new versions of the file from the net, without having to specify the
operation for each target). The latest version includes a fairly sophisticated
but easy to understand rule system, which (unlike make) offers the possibility
to specify general rules and more specific exceptions to these rules
TCL is a syntactically simple, portable but powerful language which is easy to
learn
and expand. It takes less than an hour to learn enough to be able to create
simple makefiles for smake (a simple example is included in the
manpage). For
further information on TCL see
the official Tcl website.
smake is itself made in TCL so all that is required to use the
software
on any platform is a TCL installation and the smake tar package: