There are a couple of things we can do to make our depends
Makefile-based system more robust. A couple that have been in my head to potentially explore:
- Some functionality that are not directly related to prerequisites producing targets could perhaps be simplified if delegated to scripts
- Eliminating builtin rules and variables e.g.
MAKEFLAGS += --no-builtin-variables
: I’ve tried this, and it breaks libminiupnpc because it relies on builtin rules. - Require a recent-ish bash so that we can use
set -euo pipefail
and catch errors early
A lot of this is from: https://tech.davis-hansson.com/p/make/ (ignore the title)