Snowflake is a language-agnostic build system that aims to implement caching correctly.
- Robust caching mechanism based on cryptographic hashes.
- Language-agnostic build system with no assumed conventions.
- Configurable with highly expressive Perl programming language.
- Built on a small number of simple core concepts.
As with all software, Snowflake is best installed with Nix. The file default.nix in this repository evaluates to a derivation that builds a self-contained Snowflake executable in the Nix store.
For an example, see the example directory. The example directory contains a file build.pl which you may pass to Snowflake as shown in figure 1. This will build the example source code, yielding an executable in build/artifact/hello.
Figure 1:
snowflake example/build.pl
You are licensed to redistribute and use Snowflake under the terms of the 3-Clause BSD License. See the file COPYING.md for more information.