Re: kitgen with packages - KBS

Jean-Claude Wippler <[email protected]>
Newsgroups gmane.comp.lang.tcl.starkit
Message-ID <[email protected]>
On 30 Mar 2007, at 10:41, rene wrote:

> currently kitgen only builds tclkits.
[...]

There is a new Kitgen Build System script which can now be used to  
build a couple of extensions.  It's all pre-alpha (read: things  
*will* change further!), but it's been working for a couple of  
platforms already.

The script is called "kbs.tcl", and the extensions which can  
currently be built are listed in the new extdefs/ directory.  The  
latest tarball is here:
	http://www.equi4.com/pub/tk/tars/kitgen.tgz

To use kbs, you need to first configure and build a tclkit-cli (I've  
only tried it with 8.4 so far).  Here's what I use:
	sh config 8.4/base-kbs cli gui
	cd 8.4/base-kbs
	make
That should produce tclkit-cli and tclkit-gui executables, i.e.  
command-line and gui versions of Tclkit Lite.  The gui version has to  
be built so Tk gets built - it's currently needed by a few  
extensions, such as Img and Tkhtml.  This mechanism is likely to change.

Then get rid of several build results (but not the tcl/tk build areas):
	make cleanext
This cleanup step is important in case you're going to build dynamic  
variants of extensions used inside tclkit lite itself (tclvfs, vlerq,  
etc), because it avoid static vs. shared build mixups.  This too is a  
candidate for streamlining/simplifying further.

Now kbs should be able to build various extensions.  It has rules to  
fetch the source code via http::geturl or cvs or svn, but kbs will  
not download anything if the proper directory is already present  
in ../../sources/ (at the kitgen top level, that is).

Try this, for example:
	./tclkit-cli ../../kbs.tcl build Itcl

FYI, I've started collecting builds at http://www.equi4.com/pub/br/ -  
more could be added, although I'm more interested in getting the  
logic just right and portable at this stage.

NOTE: the .kit files in /pub/br/ are *NOT* usable as normal starkits,  
you cannot source them to access the package inside, for example.   
The contents is just the extension itself.  If you need to use this,  
unwrap (or re-wrap in the proper "blah.vfs/lib/name/blah..."  
structure).  One of the reasons for making this inconvenient is that  
I do not want the /pub/br/ area to become a widely used repository.

Enjoy,

-jcw
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.