build is a set of build system scripts and related tools, built around GENie project generator tool.
Visit project page on GitHub
build dramatically simplifies creating and maintaining projects and solutions.
Here is a list of main design goals for build:
build is written in Lua and is highly extensible.
Major motivation for creating build comes from years of maintenance hell for variety of projects, their configurations and dependencies. Even with project generator tools there’s often a fair amount of repetitive work per project and build strives to remove this extra work while providing additional convenience.
Here is an example of adding a static library project to a solution:
This function call with do the following:
But why stop there? build also tracks dependencies and include paths, allows additional configurations per-project and allows physical code design to be very modular.