shake

minimal build system that generates Ninja build files

git clone https://9o.is/git/shake.git

commit 55c931e4bc4ad378deaf09a7bcb0f318feb6e4a6
parent 1bf63832914298d90e74d7e9ff01c4514d7b0c7a
Author: Jul <jul@9o.is>
Date:   Mon,  9 Mar 2026 19:39:58 +0800

inline init_gen

Diffstat:
Mshake | 24+++++++++++-------------
1 file changed, 11 insertions(+), 13 deletions(-)

diff --git a/shake b/shake @@ -54,18 +54,6 @@ if [ ! -f Shakefile ]; then exit 1 fi -init_gen() { - var ninja_required_version 1.8 - var builddir $BUILDDIR - var dir $DIR - var outdir $OUTDIR - - rule gen "$SHAKE_BIN $dir" - bind description SHAKE $dir - bind generator 1 - bind restat 1 -} - init_file() { if persist && [ -e $DIR/$NINJA_FILE.tmp ]; then rm -f $DIR/$NINJA_FILE.tmp @@ -298,7 +286,17 @@ foreach() { set_target init_file -init_gen + +var ninja_required_version 1.8 +var builddir $BUILDDIR +var dir $DIR +var outdir $OUTDIR + +rule gen "$SHAKE_BIN $dir" +bind description SHAKE $dir +bind generator 1 +bind restat 1 + trap fini_gen EXIT . $DIR/Shakefile