On Fri, Sep 27, 2024 at 1:45 AM Christian Schulte <c...@schulte.it> wrote: > On 9/26/24 10:47, Philip Guenther wrote: > > On Thu, Sep 26, 2024 at 12:30 AM Christian Schulte <c...@schulte.it> wrote: ... > > Does there exist a documented, maintained, and tested way to "build > > base incrementally"? No. > > > > Would it be *possible* for someone(s) to spend the time to develop, > > document, and maintain going forward a way to build base > > incrementally? It's software, anything is possible with enough > > resources > > > > Will the project do that or distribute such a thing provided by > > others? Short answer: no. Longer answer: doing so would absolutely > > require understanding the project's development process and the > > consequences of that process and how the change would affect the > > incentives. I think it is *extremely* unlikely to happen, being a > > gigantic effort that would create new, more complex failure modes that > > would be a net negative for the project. Given all the things to > > spend our time on, it seems like an unwise choice. > > For a newcomer to the codebase working on the build system would be an > ideal task to begin with. After that you know the dependencies and such.
IMHO, that's an area where a newcomer is least likely to be able to make changes that get committed. Maybe they'll bootstrap their understanding of the system dependencies more quickly but, well, lots of developers get stuff done without that and it's a difficult area to build consensus about changes. > Would you say that if someone would take the time to work an that, it > would not do any good because that would need to be maintained over time > and no one would care? If it wasn't used by lots of people, then it wouldn't become part of the "do not break when doing your own work" functionality, and those who use it would have to be ready to fix it each time. A build process that you can't trust to Just Work, so you can't kick it off and ignore, is worse than one that takes more clock time but less attention. A similar case: OpenBSD keeps only the barest of build bits for doing cross-compilation, because it's only used when bootstrapping a new arch and it's easier to update/unbreak it when it's needed then keep it up to date. That's fine because bootstrapping is an inherently manual process, so no real loss. But doing regular cross-builds is not reliable. Philip Guenther