Commit Graph

4 Commits

Author SHA1 Message Date
Michael Forney 182313295d perp: Build with warning flags 2024-03-17 00:27:08 -07:00
Michael Forney 08cca5431f Move toolchain config into config.lua 2020-01-29 22:14:33 -08:00
Michael Forney f4720910b9 Update ninja requirement to 1.8.0 and don't bother with atomic outputs
Since ninja 1.8.0[0] and samurai 0.2[1], output mtime is always
recorded after a job succeeds, and outputs are considered dirty if
the recorded mtime is older than any input. This means that even
if a command partially writes its output then fails (for example,
if run with stdout redirected to a file), it will still get re-run
during the next build.

This means that outputs no longer have to be written atomically
(i.e. renamed into place) in order to ensure a correct build, and
we can drop the idiom `command >$out.tmp && mv $out.tmp $out`.

[0] https://github.com/ninja-build/ninja/commit/04d886b11041bb59d01df794cce7a1e8cad2250d
[1] https://github.com/michaelforney/samurai/commit/799bc5a4719b90a1026c129b55b92c0bccf97eeb
2019-11-17 15:24:25 -08:00
Michael Forney ba94a8513d Rewrite ninja generation scripts in Lua 2017-09-25 19:23:06 -07:00