Build Systems Discussion
My last blog post got some interest on the permacomputing mailing list, especially as it relates to designing a personal or permacomputing build system. I thought I would give a quick overview of the ../lua/civ build system as well as explore those talked about by the participants, as well as ideas that have been brewing in my brain about a civ package manager.
For reference, here are the build systems presented. For the most part I am not going to give targeted criticism but rather lay out what I believe a good build system needs to accomplish. Most of my criticism will be leveled at bazel and Make:
https://bazel.build Google's build system which can, in real-time, build all software at Google incrementally or from scratch.
../lua/civ - the build system for this project.
Kartik's approach
LM Build System
clib which seems like mostly a collection of small C libraries and scripts to integrate them directly in your source code.
Make - which needs no introduction.
What is a build system or package manager anyway?
... continue reading