/
How to avoid a build system death march

How to avoid a build system death march

This is how you do a build system death march:

  1. Run the build.

  2. It takes 10 minutes to break.

  3. Make a change

  4. Repeat step 1 N times and watch your life go by.

This is quick way (or slow way depending on how you look at it) to having mental health problems working on the build system.

The smart way with build systems is to figure out how to hack a particular problem so you can try and solve it in a way that you can immediately get feedback. (in general this the ability to do this is what separates a good developer from an average developer).

Our build system doesn’t make it that easy in that it’s been put together in a way that doesn’t actually use make in the manner it should - it’s looping through n^2 times instead of checking dependencies and only building what needs to be rebuilt.

Related content

Incremental Compiles
Incremental Compiles
More like this
Simple make system - putting it all together
Simple make system - putting it all together
More like this
Avoid having too many dependencies
Avoid having too many dependencies
More like this
Make Dependency Files for C/C++ Headers
Make Dependency Files for C/C++ Headers
More like this
Are make dependencies worth the time trade off?
Are make dependencies worth the time trade off?
More like this
Notify developers when they break the build
Notify developers when they break the build
More like this