Sat Mar 17 10:09:47 EDT 2018

Build systems

It is really hard to properly set up a build system that allows small
changes of dependencies without doing full rebuilds.

Both nixos and rebar do full rebuilds.

It seems almost impossible to do this, unless a monorepo is used.

The boundary between multi-repo and monorepo is so arbitrary.

EDIT: Here's the thing.

- Make a single incremental build system for the project, including
  all dependencies that are regularly rebuilt (e.g. single makefile).

- Create a second level build system to build the dependencies that
  are constant (e.g. nixos).

Monorepo vs git submodules is quire irrelevant: the differences can be
smoothed over with scripts.  What is important is that the repo +
submodules uses a single incremental build system.