From f4720910b9b72bd1fe2aaa82cf6a38e226d5e149 Mon Sep 17 00:00:00 2001 From: Michael Forney Date: Sun, 17 Nov 2019 14:48:05 -0800 Subject: 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 --- pkg/strace/gen.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'pkg/strace/gen.lua') diff --git a/pkg/strace/gen.lua b/pkg/strace/gen.lua index b08ff609..d376e3fc 100644 --- a/pkg/strace/gen.lua +++ b/pkg/strace/gen.lua @@ -36,7 +36,7 @@ sub('tools.ninja', function() '|', '$outdir/ioctl_iocdef.h', '$outdir/ioctls_all'..i..'.h', }, {cflags=string.format([[$cflags -D 'IOCTLSORT_INC="ioctls_all%d.h"']], i)}) exe('ioctlsort'..i, {'ioctlsort'..i..'.c.o'}) - rule('ioctlsort'..i, '$outdir/ioctlsort'..i..' >$out.tmp && mv $out.tmp $out') + rule('ioctlsort'..i, '$outdir/ioctlsort'..i..' >$out') build('ioctlsort'..i, '$outdir/ioctlent'..i..'.h', {'|', '$outdir/ioctlsort'..i}) end end) -- cgit v1.2.3