[jamming] Wondering what you think of this...

Gary Gendel gary at icmanage.com
Thu Mar 15 10:38:27 PST 2007


All,

I created a monolithic Jamrules file to handle all the libraries our products
use. This worked fine but lately we have started lots projects that require a
different mixed bag than the norm. Having monolithic Jamrules file that does the
right thing for all of the possible libraries is fraught with problems. This has
gotten me off to a different approach... Modular Jamrules!

This is where my head is at...

Project A uses:
QT (with builtin MySQL) and Perforce API

Project B uses:
MySQL, Boost RegExp, and Perforce API

Project A would "include" Jamrules.qt and Jamrules.p4api

Project B would "include" Jamrules.mysql, Jamrules.boostre, and Jamrules.p4api

The main Jamrules would be relegated to only handle basic variants (debug,
release, static link, etc.)

Each Jamrules handles everything about that specific library. This would include
platform specific handling (i.e. Unix/Linux/Windows, 32/64 bit, etc.) It would
set up any compiler and linker options and any additional Jam Actions (For
example Qt needs rules for moc and uic compilers). I was thinking of having
these as unique defines so they can be applied differently for multiple targets
in the Jamfile.

Am I looking for trouble? Does anyone else have a better mechanism? The only
issue I see is I don't have a way to append any UserObject handlers from the
different modular Jamrules.

Thanks.

Gary
-------------- next part --------------
A non-text attachment was scrubbed...
Name: gary.vcf
Type: text/x-vcard
Size: 295 bytes
Desc: not available
Url : http://maillist.perforce.com/pipermail/jamming/attachments/20070315/9361e23a/gary.vcf


More information about the jamming mailing list