News for hackers. Stuff that matters.
Re:A Tutorial on Portable Makefiles (2017) by colonwqbang on Monday August 01, 2022 @04:25PM (#32311590)
Most builds are divided into two phases. The first phase "do we have libfoo installed, where is doxygen, are tests enabled" is run infrequently. The second phase "recompile everything that needs to be recompiled" is run over and over again. The second phase is more or less a solved problem now given that Ninja exists. The first phase is where a lot of people have different ideas and tastes, so we get cmake, meson, autotools, etc.

You can certainly do everything in one system. In practice this seems to lead to a build process that is much slower than it needs to be, see for instance Scons.

Re:A Tutorial on Portable Makefiles (2017) by Joker_vD on Monday August 01, 2022 @05:12PM (#32312098)
Or see cargo, go build, dune, etc.
Re:A Tutorial on Portable Makefiles (2017) by colonwqbang on Monday August 01, 2022 @09:06PM (#32314092)
These are all tools that specialise in building only a particular kind of project. They are useful, but aren't really in the same category of general build tools like Ninja and Make.