diff options
| author | 2026-03-04 20:28:58 -0600 | |
|---|---|---|
| committer | 2026-03-04 20:28:58 -0600 | |
| commit | cd1ab0c036c8d2ad5afd858558a242c3d17b004c (patch) | |
| tree | ce95a22b2a10322ef41a2164a656eb4f33da6b52 | |
| parent | Use try instead of edefer for error handling in build rules. (diff) | |
| -rw-r--r-- | spork/build-rules.janet | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/spork/build-rules.janet b/spork/build-rules.janet index f4d6ffe..dec585d 100644 --- a/spork/build-rules.janet +++ b/spork/build-rules.janet @@ -108,6 +108,7 @@ (++ work-count)) needs-build) (each target targets (needs-build? target)) + (var bad-return false) (default n-workers 1) (defn worker @@ -136,6 +137,7 @@ :bad))) (when (= :bad result) + (set bad-return true) (each o (get rule :outputs []) (protect (os/rm o))) (repeat n-workers (ev/give q nil)) @@ -156,6 +158,9 @@ (put fibers fib fib)) (wait-for-fibers super fibers) + (if bad-return + (error "failed to build")) + targets-built) (defn- gettarget [rules target] |
