Stage 1: ptxdist or something similar to put together enough tools to
support building stage 2
Stage 2: "core" set of Debian packages is built and installed,
definitely less than 100 components, some packages might be built with a
reduced feature set to limit dependencies
Stage 3: build the remainder of the "buildable from scratch" packages
(500 - 1000) and rebuild the modified packages from stage 2.
This is almost exactly how I put together my uwoody stuff with
uClibc. For stage 1 I used buildroot. For stage 2 I hacked up a
_ton_ of packages to break circular dependancies until I had
built a sufficient core of stuff that the system became usable.
I built everything by hand so stage 2 was very labor intensive.
By stage 3 I was able to rebuild almost everything (including the
packages I had formerly hacked) using stock debian source.
...
Fully agreed. The single most difficult task I had during stage
2 was trying to satisfy the dependancies of and build roughly 100
different documentation utility packages. This proved to be a
surprisingly large amount of work.