On Sat, Apr 12, 2008 at 4:31 PM, Alban Bedel <albeu@free.fr> wrote:
Hi all,
so the new flat build system is underway. Sadly IMHO it have a few shortcomings and there is some things that I think we should discuss here before going any further.
The most important point IMHO, is do we really get rid of the .a or not? On the plus side I only see a few rule less in the Makefile. On the minus side the whole source list is required for any tool using the lib in question.
Then there is the problem that now all sources are grouped together. It completely prevent any sane build system for the tools. Even if we drop the .a we need to keep a source list for each lib. Anything else is just too inflexible.
If we keep separate lists we might as well put them in $LIB/Makefile and support building from the lib's dir. The latter is easy to achieve with some include. And still having separate Makefiles would make things easier for newcomers than having to dive in a 5000 lines Makefile.
As an example, attached is a Makefile for osdep that can be included from the main Makefile or used "alone". Obviously it's just a draft as we still need to settle the above issues, and perhaps some more.
There is something else I wonder about the flat build system. Does it link objects faster that it links static libraries? Does it need less memory for linking?