[sclug] Building very large packages?

David Given dg at cowlark.com
Fri Jun 24 19:32:17 UTC 2005


I've found myself maintaining a large compiler toolchain; the ACK 
(http://tack.sf.net). There are about 10'000 files in its source repository, 
some of which have timestamps over twenty years old, all bound together by an 
undocumented mass of twisty, turny little shell scripts and recursive 
makefiles. I'm having a lot of trouble making it do *anything* much.

So, I'd rather like to replace the whole build system with something more 
modern. Any suggestions?

(I do have a half-finished custom build system based around generating a 
single, very large makefile --- currently over 600kB. This gets all the 
dependencies right and is very fast, but I'm not terribly happy about the 
maintainability.)

Part of the trouble is that the ACK is made up of lots and lots, and lots, of 
little tools that generate code. The nastiest one I've met so for is llgen, a 
LL(1) parser generator styled after yacc (a version of which is supplied). 
The llgen source files are read in with a parser written in llgen! Hopefully, 
that's the only actual recursive dependency, but everything else is just as 
annoying (in different ways).

-- 
"Curses! Foiled by the chilled dairy treats of righteousness!" --- Earthworm 
Jim (evil)


More information about the Sclug mailing list