summaryrefslogtreecommitdiff
path: root/pkg
diff options
context:
space:
mode:
authorMichael Forney <mforney@mforney.org>2019-11-17 14:48:05 -0800
committerMichael Forney <mforney@mforney.org>2019-11-17 15:24:25 -0800
commitf4720910b9b72bd1fe2aaa82cf6a38e226d5e149 (patch)
tree773f1c9ea2fa5375243a4cb065c8345f0730a5cf /pkg
parent564557663b9c36612df603e36e4c7a679e82c51b (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')
-rw-r--r--pkg/awk/gen.lua2
-rw-r--r--pkg/bc/gen.lua2
-rw-r--r--pkg/e2fsprogs/gen.lua2
-rw-r--r--pkg/elftoolchain/gen.lua2
-rw-r--r--pkg/ffmpeg/gen.lua4
-rw-r--r--pkg/fribidi/gen.lua2
-rw-r--r--pkg/git/gen.lua4
-rw-r--r--pkg/mpv/gen.lua2
-rw-r--r--pkg/mupdf/gen.lua2
-rw-r--r--pkg/ncurses/gen.lua20
-rw-r--r--pkg/perp/gen.lua6
-rw-r--r--pkg/python/gen.lua2
-rw-r--r--pkg/sbase/gen.lua2
-rw-r--r--pkg/strace/gen.lua2
-rw-r--r--pkg/swc/gen.lua2
-rw-r--r--pkg/syslinux/gen.lua2
-rw-r--r--pkg/xkeyboard-config/gen.lua2
17 files changed, 30 insertions, 30 deletions
diff --git a/pkg/awk/gen.lua b/pkg/awk/gen.lua
index 1d431331..ea9f374d 100644
--- a/pkg/awk/gen.lua
+++ b/pkg/awk/gen.lua
@@ -16,7 +16,7 @@ sub('tools.ninja', function()
exe('maketab', {'maketab.c'})
end)
-rule('maketab', '$outdir/maketab $in >$out.tmp && mv $out.tmp $out')
+rule('maketab', '$outdir/maketab $in >$out')
build('maketab', '$outdir/proctab.c', {'$outdir/ytab.h', '|', '$outdir/maketab'})
exe('awk', [[
diff --git a/pkg/bc/gen.lua b/pkg/bc/gen.lua
index ebdd0c6c..1712966d 100644
--- a/pkg/bc/gen.lua
+++ b/pkg/bc/gen.lua
@@ -8,7 +8,7 @@ cflags{
sub('tools.ninja', function()
exe('strgen', {'gen/strgen.c'})
- rule('strgen', [[$outdir/strgen $in $out.tmp $name $header '$label' '$define' $removetabs && mv $out.tmp $out]])
+ rule('strgen', [[$outdir/strgen $in $out $name $header '$label' '$define' $removetabs]])
build('strgen', '$outdir/bc_help.c', {'$srcdir/gen/bc_help.txt', '|', '$outdir/strgen'}, {
name='bc_help', header='bc.h', label='', define='BC_ENABLED', removetabs='',
})
diff --git a/pkg/e2fsprogs/gen.lua b/pkg/e2fsprogs/gen.lua
index 57a06301..8c999776 100644
--- a/pkg/e2fsprogs/gen.lua
+++ b/pkg/e2fsprogs/gen.lua
@@ -61,7 +61,7 @@ sub('tools.ninja', function()
toolchain 'host'
exe('gen_crc32ctable', {'lib/ext2fs/gen_crc32ctable.c'})
end)
-rule('gen_crc32ctable', '$outdir/gen_crc32ctable >$out.tmp && mv $out.tmp $out')
+rule('gen_crc32ctable', '$outdir/gen_crc32ctable >$out')
build('gen_crc32ctable', '$outdir/internal/crc32c_table.h', {'|', '$outdir/gen_crc32ctable'})
pkg.hdrs = {
diff --git a/pkg/elftoolchain/gen.lua b/pkg/elftoolchain/gen.lua
index 3b9ebf64..5b34eb82 100644
--- a/pkg/elftoolchain/gen.lua
+++ b/pkg/elftoolchain/gen.lua
@@ -12,7 +12,7 @@ pkg.hdrs = {
install=true,
}
-rule('m4', 'm4 -D SRCDIR=$srcdir/libelf $in >$out.tmp && mv $out.tmp $out')
+rule('m4', 'm4 -D SRCDIR=$srcdir/libelf $in >$out')
build('m4', '$outdir/libelf_convert.c', {'$srcdir/libelf/libelf_convert.m4', '|', '$srcdir/libelf/elf_types.m4'})
build('m4', '$outdir/libelf_fsize.c', {'$srcdir/libelf/libelf_fsize.m4', '|', '$srcdir/libelf/elf_types.m4'})
build('m4', '$outdir/libelf_msize.c', {'$srcdir/libelf/libelf_msize.m4', '|', '$srcdir/libelf/elf_types.m4'})
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'}
diff --git a/pkg/fribidi/gen.lua b/pkg/fribidi/gen.lua
index 7bf17446..41aeb20b 100644
--- a/pkg/fribidi/gen.lua
+++ b/pkg/fribidi/gen.lua
@@ -30,7 +30,7 @@ end)
set('compression', '2')
-rule('gentool', '$outdir/$tool $args $in >$out.tmp && mv $out.tmp $out')
+rule('gentool', '$outdir/$tool $args $in >$out')
local function gentool(tool, out, srcs, args)
build('gentool', '$outdir/'..out, {expand{'$srcdir/gen.tab/unidata/', srcs}, '|', '$outdir/gen-'..tool}, {
tool='gen-'..tool,
diff --git a/pkg/git/gen.lua b/pkg/git/gen.lua
index e2175587..64d528f8 100644
--- a/pkg/git/gen.lua
+++ b/pkg/git/gen.lua
@@ -7,7 +7,7 @@ cflags{
'-I $builddir/pkg/zlib/include',
}
-rule('cmdlist', 'wd=$$PWD && cd $srcdir && ./generate-cmdlist.sh $$wd/$in >$$wd/$out.tmp && mv $$wd/$out.tmp $$wd/$out')
+rule('cmdlist', 'wd=$$PWD && cd $srcdir && ./generate-cmdlist.sh $$wd/$in >$$wd/$out')
build('cmdlist', '$outdir/command-list.h', {
'$srcdir/command-list.txt', '|', expand{'$srcdir/Documentation/', lines('commands.txt')},
})
@@ -438,7 +438,7 @@ local scripts = {
{'sh-i18n', '644'},
}
-rule('sh_gen', 'sed -f $dir/sh_gen.sed $in >$out.tmp && mv $out.tmp $out')
+rule('sh_gen', 'sed -f $dir/sh_gen.sed $in >$out')
for _, script in ipairs(scripts) do
local name, mode = table.unpack(script)
build('sh_gen', '$outdir/git-'..name, {'$srcdir/git-'..name..'.sh', '|', '$dir/sh_gen.sed'})
diff --git a/pkg/mpv/gen.lua b/pkg/mpv/gen.lua
index 5d5607e6..640fe51c 100644
--- a/pkg/mpv/gen.lua
+++ b/pkg/mpv/gen.lua
@@ -39,7 +39,7 @@ build('copy', '$outdir/video/out/wayland/presentation-time.h', '$builddir/pkg/wa
build('copy', '$outdir/video/out/wayland/xdg-decoration-v1.h', '$builddir/pkg/wayland-protocols/include/xdg-decoration-unstable-v1-client-protocol.h')
build('copy', '$outdir/video/out/wayland/xdg-shell.h', '$builddir/pkg/wayland-protocols/include/xdg-shell-client-protocol.h')
-rule('file2string', '$outdir/file2string $in >$out.tmp && mv $out.tmp $out')
+rule('file2string', '$outdir/file2string $in >$out')
local function file2string(out, inp)
build('file2string', '$outdir/'..out, {'$srcdir/'..inp, '|', '$outdir/file2string'})
table.insert(pkg.deps, '$outdir/'..out)
diff --git a/pkg/mupdf/gen.lua b/pkg/mupdf/gen.lua
index 393e1931..61208cb5 100644
--- a/pkg/mupdf/gen.lua
+++ b/pkg/mupdf/gen.lua
@@ -29,7 +29,7 @@ sub('tools.ninja', function()
exe('hexdump', {'scripts/hexdump.c'})
end)
-rule('hexdump', '$outdir/hexdump -s $out.tmp $in && mv $out.tmp $out')
+rule('hexdump', '$outdir/hexdump -s $out $in')
local fonts = lines('fonts.txt')
for _, font in ipairs(fonts) do
build('hexdump', '$outdir/'..font..'.c', {'$srcdir/resources/fonts/'..font, '|', '$outdir/hexdump'})
diff --git a/pkg/ncurses/gen.lua b/pkg/ncurses/gen.lua
index 64a3c821..ddfdc58b 100644
--- a/pkg/ncurses/gen.lua
+++ b/pkg/ncurses/gen.lua
@@ -19,7 +19,7 @@ end)
build('sed', '$outdir/curses.head', {'$srcdir/include/curses.h.in', '|', '$dir/subst.sed'}, {
expr='-f $dir/subst.sed',
})
-rule('mkkeydefs', '{ cat $outdir/curses.head && sh $srcdir/include/MKkey_defs.sh $in && cat $srcdir/include/curses.wide $srcdir/include/curses.tail; } >$out.tmp && mv $out.tmp $out')
+rule('mkkeydefs', '{ cat $outdir/curses.head && sh $srcdir/include/MKkey_defs.sh $in && cat $srcdir/include/curses.wide $srcdir/include/curses.tail; } >$out')
build('mkkeydefs', '$outdir/include/curses.h', {'$srcdir/include/Caps', '|',
'$outdir/curses.head',
'$srcdir/include/curses.wide',
@@ -27,19 +27,19 @@ build('mkkeydefs', '$outdir/include/curses.h', {'$srcdir/include/Caps', '|',
'$srcdir/include/MKkey_defs.sh',
})
-rule('mkhashsize', 'sh $srcdir/include/MKhashsize.sh $in >$out.tmp && mv $out.tmp $out')
+rule('mkhashsize', 'sh $srcdir/include/MKhashsize.sh $in >$out')
build('mkhashsize', '$outdir/hashsize.h', {'$srcdir/include/Caps', '|', '$srcdir/include/MKhashsize.sh'})
-rule('mkkeyslist', 'sh $srcdir/ncurses/tinfo/MKkeys_list.sh $in | LC_ALL=C sort >$out.tmp && mv $out.tmp $out')
+rule('mkkeyslist', 'sh $srcdir/ncurses/tinfo/MKkeys_list.sh $in | LC_ALL=C sort >$out')
build('mkkeyslist', '$outdir/keys.list', {'$srcdir/include/Caps', '|', '$srcdir/ncurses/tinfo/MKkeys_list.sh'})
-rule('mkkeys', '$outdir/make_keys $in >$out.tmp && mv $out.tmp $out')
+rule('mkkeys', '$outdir/make_keys $in >$out')
build('mkkeys', '$outdir/init_keytry.h', {'$outdir/keys.list', '|', '$outdir/make_keys'})
-rule('mkdefs', 'sh $srcdir/include/MKncurses_def.sh $in >$out.tmp && mv $out.tmp $out')
+rule('mkdefs', 'sh $srcdir/include/MKncurses_def.sh $in >$out')
build('mkdefs', '$outdir/ncurses_def.h', {'$srcdir/include/ncurses_defs', '|', '$srcdir/include/MKncurses_def.sh'})
-rule('mkparam', '$srcdir/include/MKparametrized.sh $in >$out.tmp && mv $out.tmp $out')
+rule('mkparam', '$srcdir/include/MKparametrized.sh $in >$out')
build('mkparam', '$outdir/parametrized.h', {'$srcdir/include/Caps', '|', '$srcdir/include/MKparametrized.sh'})
build('sed', '$outdir/MKterm.h.awk', {'$srcdir/include/MKterm.h.awk.in', '|', '$dir/subst.sed'}, {
@@ -52,21 +52,21 @@ for _, f in ipairs{'ncurses_dll.h', 'termcap.h', 'unctrl.h'} do
})
end
-rule('mkterm', 'awk -f $outdir/MKterm.h.awk $in >$out.tmp && mv $out.tmp $out')
+rule('mkterm', 'awk -f $outdir/MKterm.h.awk $in >$out')
build('mkterm', '$outdir/include/term.h', {'$srcdir/include/Caps', '|', '$outdir/MKterm.h.awk'})
build('awk', '$outdir/codes.c', {'$srcdir/include/Caps', '|', '$srcdir/ncurses/tinfo/MKcodes.awk'}, {
expr='-f $srcdir/ncurses/tinfo/MKcodes.awk bigstrings=1',
})
-rule('mkcaptab', '(cd $outdir && $$OLDPWD/$srcdir/ncurses/tinfo/MKcaptab.sh awk 1 $$OLDPWD/$srcdir/ncurses/tinfo/MKcaptab.awk $$OLDPWD/$in) >$out.tmp && mv $out.tmp $out')
+rule('mkcaptab', '(cd $outdir && $$OLDPWD/$srcdir/ncurses/tinfo/MKcaptab.sh awk 1 $$OLDPWD/$srcdir/ncurses/tinfo/MKcaptab.awk $$OLDPWD/$in) >$out')
build('mkcaptab', '$outdir/comp_captab.c', {'$srcdir/include/Caps', '|',
'$outdir/make_hash',
'$srcdir/tinfo/MKcaptab.awk',
'$srcdir/tinfo/MKcaptab.sh',
})
-rule('mkfallback', 'sh $srcdir/ncurses/tinfo/MKfallback.sh /dev/null /dev/null /dev/null >$out.tmp && mv $out.tmp $out')
+rule('mkfallback', 'sh $srcdir/ncurses/tinfo/MKfallback.sh /dev/null /dev/null /dev/null >$out')
build('mkfallback', '$outdir/fallback.c', {'|', '$srcdir/ncurses/tinfo/MKfallback.sh'})
build('awk', '$outdir/lib_keyname.c', '$outdir/keys.list', {
@@ -77,7 +77,7 @@ build('awk', '$outdir/names.c', {'$srcdir/include/Caps', '|', '$srcdir/ncurses/t
expr='-f $srcdir/ncurses/tinfo/MKnames.awk bigstrings=1',
})
-rule('mktermsort', 'sh $srcdir/progs/MKtermsort.sh awk $in >$out.tmp && mv $out.tmp $out')
+rule('mktermsort', 'sh $srcdir/progs/MKtermsort.sh awk $in >$out')
build('mktermsort', '$outdir/termsort.c', {'$srcdir/include/Caps', '|', '$srcdir/progs/MKtermsort.sh'})
build('awk', '$outdir/unctrl.c', {'/dev/null', '|', '$srcdir/ncurses/base/MKunctrl.awk'}, {
diff --git a/pkg/perp/gen.lua b/pkg/perp/gen.lua
index 7d0dd246..cfb09fc2 100644
--- a/pkg/perp/gen.lua
+++ b/pkg/perp/gen.lua
@@ -10,13 +10,13 @@ sub('tools.ninja', function()
exe('mksysstr', {'lasagna/sysstr/mksysstr.c'})
end)
-rule('outvec', '$outdir/mk_outvec >$out.tmp && mv $out.tmp $out')
+rule('outvec', '$outdir/mk_outvec >$out')
build('outvec', '$outdir/outvec_STDOUT.h', {'|', '$outdir/mk_outvec'})
-rule('rlimit', '$outdir/mk_rlimit >$out.tmp && mv $out.tmp $out')
+rule('rlimit', '$outdir/mk_rlimit >$out')
build('rlimit', '$outdir/rlimit_defs.c.in', {'|', '$outdir/mk_rlimit'})
-rule('sysstr', '$outdir/mksysstr $type >$out.tmp && mv $out.tmp $out')
+rule('sysstr', '$outdir/mksysstr $type >$out')
build('sysstr', '$outdir/sysstr_errno.c.in', {'|', '$outdir/mksysstr'}, {type='errno'})
build('sysstr', '$outdir/sysstr_signo.c.in', {'|', '$outdir/mksysstr'}, {type='signo'})
diff --git a/pkg/python/gen.lua b/pkg/python/gen.lua
index ac0cef99..5d4f4e1f 100644
--- a/pkg/python/gen.lua
+++ b/pkg/python/gen.lua
@@ -51,7 +51,7 @@ sources = table.keys(sources)
cflags{'-D Py_BUILD_CORE'}
-rule('makesetup', 'lua5.2 $dir/makesetup.lua $dir/modules.lua <$in >$out.tmp && mv $out.tmp $out')
+rule('makesetup', 'lua5.2 $dir/makesetup.lua $dir/modules.lua <$in >$out')
build('makesetup', '$outdir/config.c', {'$srcdir/Modules/config.c.in', '|', '$dir/makesetup.lua', '$dir/modules.lua'})
cc('Modules/getbuildinfo.c', nil, {
diff --git a/pkg/sbase/gen.lua b/pkg/sbase/gen.lua
index 17d1c5fb..acc09c3e 100644
--- a/pkg/sbase/gen.lua
+++ b/pkg/sbase/gen.lua
@@ -67,7 +67,7 @@ lib('libutf.a', [[libutf/(
utftorunestr.c
)]])
-rule('getconf', '$srcdir/getconf.sh >$out.tmp && mv $out.tmp $out')
+rule('getconf', '$srcdir/getconf.sh >$out')
build('getconf', '$outdir/getconf.h', {'|', '$srcdir/getconf.sh'})
local cmds = {
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)
diff --git a/pkg/swc/gen.lua b/pkg/swc/gen.lua
index e065ebdb..30866791 100644
--- a/pkg/swc/gen.lua
+++ b/pkg/swc/gen.lua
@@ -39,7 +39,7 @@ sub('tools.ninja', function()
exe('convert_font', {'cursor/convert_font.c'})
end)
-rule('convert_font', '$outdir/convert_font $in $out.tmp 2>/dev/null && mv $out.tmp $out')
+rule('convert_font', '$outdir/convert_font $in $out 2>/dev/null')
build('convert_font', '$outdir/cursor/cursor_data.h', {'$srcdir/cursor/cursor.pcf', '|', '$outdir/convert_font'})
pkg.deps = {
diff --git a/pkg/syslinux/gen.lua b/pkg/syslinux/gen.lua
index a142777c..8ffc5627 100644
--- a/pkg/syslinux/gen.lua
+++ b/pkg/syslinux/gen.lua
@@ -20,7 +20,7 @@ sub('tools.ninja', function()
exe('bin2c', {'bin2c.c'})
end)
-rule('bin2c', '$outdir/bin2c $args <$in >$out.tmp && mv $out.tmp $out')
+rule('bin2c', '$outdir/bin2c $args <$in >$out')
function bin2c(bin, args)
local name = args[1]
build('bin2c', '$outdir/'..name..'.c', {
diff --git a/pkg/xkeyboard-config/gen.lua b/pkg/xkeyboard-config/gen.lua
index 7f82b359..51229e7b 100644
--- a/pkg/xkeyboard-config/gen.lua
+++ b/pkg/xkeyboard-config/gen.lua
@@ -117,7 +117,7 @@ for f in iterpaths(data) do
file('share/xkb/'..f, '644', '$srcdir/'..f)
end
-rule('merge', 'HDR=$srcdir/rules/HDR ./$srcdir/rules/merge.sh $out.tmp $in && mv $out.tmp $out')
+rule('merge', 'HDR=$srcdir/rules/HDR ./$srcdir/rules/merge.sh $out $in')
function merge(out, srcs)
build('merge', '$outdir/'..out, {
expand{'$srcdir/rules/', paths(srcs)},