diff options
| author | Michael Forney <mforney@mforney.org> | 2019-11-17 14:48:05 -0800 |
|---|---|---|
| committer | Michael Forney <mforney@mforney.org> | 2019-11-17 15:24:25 -0800 |
| commit | f4720910b9b72bd1fe2aaa82cf6a38e226d5e149 (patch) | |
| tree | 773f1c9ea2fa5375243a4cb065c8345f0730a5cf /pkg/ffmpeg | |
| parent | 564557663b9c36612df603e36e4c7a679e82c51b (diff) | |
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
Diffstat (limited to 'pkg/ffmpeg')
| -rw-r--r-- | pkg/ffmpeg/gen.lua | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/pkg/ffmpeg/gen.lua b/pkg/ffmpeg/gen.lua index 0b58842a..4aa66e8a 100644 --- a/pkg/ffmpeg/gen.lua +++ b/pkg/ffmpeg/gen.lua @@ -46,7 +46,7 @@ build('awk', '$outdir/include/libavutil/avconfig.h', {'$dir/options.h', '|', '$d expr='-f $dir/avconfig.awk', }) -rule('genlist', 'lua5.2 $dir/list.lua $dir/options.h $type $var <$in >$out.tmp && mv $out.tmp $out') +rule('genlist', 'lua5.2 $dir/list.lua $dir/options.h $type $var <$in >$out') local function genlist(out, src, type, var) build('genlist', out, {src, '|', '$dir/list.lua', '$dir/options.h'}, {type=type, var=var}) table.insert(pkg.deps, out) @@ -360,7 +360,7 @@ file('bin/ffprobe', '755', '$outdir/ffprobe') exe('ffmpeg', {paths[[fftools/(ffmpeg.c ffmpeg_opt.c ffmpeg_filter.c ffmpeg_hw.c cmdutils.c.o)]], libs}) file('bin/ffmpeg', '755', '$outdir/ffmpeg') -rule('texi2mdoc', [[texi2mdoc -d 'November 7, 2018' -I $outdir $in >$out.tmp && mv $out.tmp $out]]) +rule('texi2mdoc', [[texi2mdoc -d 'November 7, 2018' -I $outdir $in >$out]]) build('texi2mdoc', '$outdir/ffprobe.1', {'$srcdir/doc/ffprobe.texi', '|', '$outdir/config.texi'}) build('texi2mdoc', '$outdir/ffmpeg.1', {'$srcdir/doc/ffmpeg.texi', '|', '$outdir/config.texi'}) man{'$outdir/ffprobe.1', '$outdir/ffmpeg.1'} |
