Ptah - Journal of Omnifarious
Aug. 1st, 2005
12:28 pm - Ptah
I'm working a bit again on Ptah, a project I started a few years ago, then abandon when my scattered design notes and half implementation failed to garner sufficient interest from the people running the build tool contest I'd entered it in. The codebase I'm working with at TeraCloud is in need of a good build tool, and so I'm resurrecting this project and doing some work on it in my spare time.
Anyway, here's a random diagram:
One goal of this tool is to be able to produce a shell script that will build whatever it is from scratch with the specified set of build tools. The build won't be able to do any dependency tracking, but if you're trying to build from source to create a package, this will set it up so the package build doesn't require Ptah to be installed first.
Another goal is to parallelize everything as much as possible. This even includes checking files to see if they've been changed since the last build. I suspect a lot of time is wasted waiting for drive heads to seek around in order to satisfy calls to
stat(2). If this were parallelized, I think it might improve things.