Version 7 of megapkg

Updated 2005-04-10 15:01:12

George Peter Staplin: Mar 21, 2005 - Megapkg is a bunch of packages/extensions that I've written in C for Tcl/Tk. It also contains 2 window managers named Whim window manager, and Panache that use Tcl/Tk and the extensions. The Whim window manager was sponsored and patched by Steve Redler IV, and we may announce it soon.

http://www.xmission.com/~georgeps/implementation/software/megapkg

The licensing is BSD-like.

Megapkg has a radical source tree layout (by some standards). All *.c files are generated with Fed Builder, so there are 3 files per function (csrc, plan, and C). There is only one file to compile ${Ext}_Init.c per extension. The ${Ext}_Init.c file for the particular extension #includes a header file. The header file defines structures, and #includes many C source files (usually). Some of the code currently is from my old packages that I want to revive, such as TkXext, Tk_Theme, bz2, and so on. So, you may wonder, what's the beef of the code, or how much code is it:

 $ cd csrc/

 $ wc *.c *.h
  6382   16809  143241 total

But, as they say, it isn't about how much code you have, but rather what you do with it. See also; RS :)

Plans for the future:

  • Shaped parent windows for Whim.
  • An XDBE extension.
  • A libtool work-alike for building the extensions, because gcc -shared may not be available everywhere.
  • A rewrite of Panache to use the megapkg structure extension rather than Smalltick.
  • A few widgets that will replace the Smalltick widgets.
  • A more advanced configuration system that may use tickmake.
  • More tests would be good. I want every code path to be tested before every release, so that no runtime faults occur. structure_test.tcl is close to this.

Category Package