For those of us that don't read commit mail (Like me :), a primitive first cut of a new Make system has finally gone in. At the risk of recapping the commit message, here goes. The system is in two parts. The first is the new make.pl script, which defines the basic dependencies programmatically. Dependencies simply become objects that can be evaluated at runtime. Satisfying the dependencies simply means building a sequence of commands designed to generate the missing or not-up-to-date files.
The other part is the admitted mess of code over in lib/Make that attempts to properly build actions for each dependency. In reality, one of the few things I don't like about this arrangement (other than the weird constructors and explicit declaration of a few things is the fact that I don't export anything automaticaly, considering it's supposed to be a pure OO module (despite the twisted interpretation thereof). It sort of handles Win32 quirks, but those haven't been tested due to temporary lack of access to a Win32 box, and it's missing a few explicit targets (such as Link_Shared). Also, I have no doubt this will have a violent collision with the real world. For instance, in starting to translate the current make system to it I've found missing flag settings (-lm &c) and some dependency situations that I may not have remembered to take care of. Some of the fixes will be checked in over the next few days. Comments, criticisms &c welcome. -- Jeff <[EMAIL PROTECTED]><[EMAIL PROTECTED]>