Jim Tcl as a basis for configure and build system

Steve Bennett On the Jim page there was discussion about the use of a light-weight Tcl-compatible system such as Jim as the the basis for a build system, probably replacing some or all of autoconf, automake and make.

I have moved these discussions here.


SEH -- 2005/03/01 -- I've often thought that a good way to demonstrate Tcl's power and to smooth the process of Tcl's development and improvement would be to control the compiling of Tcl and its extensions primarily with Tcl itself (I'm sure I'm not the only one). A mostly pure-Tcl build process would significantly lower core development participation barriers.

Of course there is the bootstrap problem, which I thought might be solved by using Ettcl or TinyTcl. Now Jim provides an intriguing new option.

A one-file implementation of a basic set of Tcl commands ought to be a great tool for bootstrapping problems. If a script could be run using Jim to compile a basic tclsh, then that tclsh could be used to control the rest of the compiling and packaging process.

A viable Jim -> tclsh -> cc compile toolchain that could conceivably replace existing bash -> m4 -> autoconf -> automake -> make -> cc toochain nightmares might greatly widen the appeal of Tcl in the software development world.

SEH, that is an excellent idea! I would love to see something like this - davidw.

It also looks very interesting to me :) SS.

SEH -- Jim + Critcl might be the basis for a dandy cross-platform autoconf replacement.

SEH 2005Apr21 -- I happened to run across a project called Make+ [1 ]:

 Make+ is a set of scripts which enhance GNU make. The scripts replace the 
 functionality of autoconf, automake, rpm, dpkg and more, allowing you to build, 
 install, make RPMs, make Debian packages and more, 
 all from a single maintainable Makefile+ script.

Converting the Unix shell scripts of Make+ to Tcl would be a quick and easy way to bootstrap a project aiming to use Jim to replace the Unix autoconf toolchain with a cross-platform Tcl-centric equivalent.

Steve Bennett 15 Dec 2010 See autosetup for an autoconf-replacement based on Tcl/JimTcl