3 ms·
make, configure, autoconf/automake, m4 (I know it's just a macro language), cmake, scons, etc, etc, etc. Can anyone share a good survey article/paper on the fu
by fizixer 9y ago
make, configure, autoconf/automake, m4 (I know it's just a macro language), cmake, scons, etc, etc, etc.
Can anyone share a good survey article/paper on the fundamental issues related to build systems, or what is the criteria for a good system (other than popularity)?
Is this a tricky issue because it's tangled with configuration-management and package-management, and OS-filesystem-hierarchy in general? (in which case you can not solve this problem without standardization efforts at multiple levels).
I'm not looking whether to chose CMake or its competitors, but looking for insight into the minds of build-system creators (something deeper than just annoyance with existing tools).
(addition of history discussion would be even better)
- taktoa 9y agoSection 10.2 and 10.3 of this PhD thesis are pretty good: https://nixos.org/~eelco/pubs/phd-thesis.pdf https://nixos.org/~eelco/pubs/phd-thesis.pdf
- buie8 9y agoHere's a paper titled "Non-recursive Make Considered Harmful: Build Systems at Scale" It has a pretty good overview of the what the goals of a build system should be, and section 7 compares several different build systems http://eprint.ncl.ac.uk/file_store/production/226639/BA1AC951-8C2E-46C8-92F1-74FA95507892.pdf http://eprint.ncl.ac.uk/file_store/production/226639/BA1AC95...
- fizixer 9y agoThanks to other responses for helpful documents. Replying to my own comment to add a 4-5 year old HN discussion about an article from 2003: https://news.ycombinator.com/item?id=7220917 https://news.ycombinator.com/item?id=7220917 edit: Discussion of Guix, a package management system that interacts with a given build system: https://news.ycombinator.com/item?id=4821488 https://news.ycombinator.com/item?id=4821488