diff options
| author | Michael Forney <mforney@mforney.org> | 2016-07-03 10:44:24 -0700 |
|---|---|---|
| committer | Michael Forney <mforney@mforney.org> | 2016-07-03 10:44:24 -0700 |
| commit | 257e042bf28382e6f5dc3e2acf929a3fe01e1201 (patch) | |
| tree | ea18427bb18adee46525932083f71ec62311db92 | |
| parent | 52b76cb615034dc8db23f3f76edcef8a150dd510 (diff) | |
Add sub helper function
| -rw-r--r-- | core/awk/gen.rc | 3 | ||||
| -rw-r--r-- | core/e2fsprogs/gen.rc | 3 | ||||
| -rw-r--r-- | core/perp/gen.rc | 3 | ||||
| -rw-r--r-- | extra/efivar/gen.rc | 3 | ||||
| -rw-r--r-- | extra/transmission/gen.rc | 9 | ||||
| -rw-r--r-- | ninja.rc | 5 |
6 files changed, 12 insertions, 14 deletions
diff --git a/core/awk/gen.rc b/core/awk/gen.rc index 1ca128d2..750be952 100644 --- a/core/awk/gen.rc +++ b/core/awk/gen.rc @@ -7,8 +7,7 @@ build '$outdir'/ytab.h copy '$outdir'/gram.tab.h include 'toolchain/$host_toolchain.ninja' cflags -I '$outdir' exe maketab -d '$outdir'/ytab.h maketab.c -} >tools.ninja -subninja '$dir/tools.ninja' +} | sub tools.ninja rule maketab '(cd $outdir && ./maketab) >$out.tmp && mv $out.tmp $out' build '$outdir'/proctab.c maketab '|' '$outdir'/maketab diff --git a/core/e2fsprogs/gen.rc b/core/e2fsprogs/gen.rc index ade5cf25..f93e241e 100644 --- a/core/e2fsprogs/gen.rc +++ b/core/e2fsprogs/gen.rc @@ -46,8 +46,7 @@ build '$outdir'/internal/blkid/blkid_types.h copy '$dir'/blkid_types.h { include 'toolchain/$host_toolchain.ninja' exe gen_crc32ctable lib/ext2fs/gen_crc32ctable.c -} >tools.ninja -subninja '$dir'/tools.ninja +} | sub tools.ninja rule gen_crc32ctable '$outdir/gen_crc32ctable >$out.tmp && mv $out.tmp $out' build '$outdir'/internal/crc32c_table.h gen_crc32ctable '|' '$outdir'/gen_crc32ctable diff --git a/core/perp/gen.rc b/core/perp/gen.rc index f1ad847a..8e121428 100644 --- a/core/perp/gen.rc +++ b/core/perp/gen.rc @@ -7,8 +7,7 @@ cflags\ exe mk_outvec lasagna/outvec/mk_outvec.c exe mk_rlimit lasagna/rlimit/mk_rlimit.c exe mksysstr lasagna/sysstr/mksysstr.c -} >tools.ninja -subninja '$dir/tools.ninja' +} | sub tools.ninja rule outvec '$outdir/mk_outvec >$out.tmp && mv $out.tmp $out' build '$outdir'/outvec_STDOUT.h outvec '|' '$outdir'/mk_outvec diff --git a/extra/efivar/gen.rc b/extra/efivar/gen.rc index f8e0383b..68e4664a 100644 --- a/extra/efivar/gen.rc +++ b/extra/efivar/gen.rc @@ -14,8 +14,7 @@ cflags\ -I '$srcdir'/src/include/efivar build '$outdir'/host-guid.c.o cc '$srcdir'/src/guid.c exe makeguids src/makeguids.c host-guid.c.o -} >tools.ninja -subninja '$dir'/tools.ninja +} | sub tools.ninja rule makeguids '$outdir/makeguids $in $out' outs='$outdir'/^(guids.bin names.bin guid-symbols.c include/efivar-guids.h)\ diff --git a/extra/transmission/gen.rc b/extra/transmission/gen.rc index 4af2338b..2856410f 100644 --- a/extra/transmission/gen.rc +++ b/extra/transmission/gen.rc @@ -96,8 +96,7 @@ lib libdht.a third-party/dht/dht.c set cflags '$orig_cflags' \ -D ENABLE_STRNATPMPERR lib libnatpmp.a third-party/libnatpmp/^(getgateway.c natpmp.c wingettimeofday.c) -} >libnatpmp.ninja -subninja '$dir'/libnatpmp.ninja +} | sub libnatpmp.ninja { set cflags '$orig_cflags' \ @@ -122,8 +121,7 @@ subninja '$dir'/libnatpmp.ninja upnpcommands.c\ upnpreplyparse.c\ ) -} >libminiupnp.ninja -subninja '$dir'/libminiupnp.ninja +} | sub libminiupnp.ninja { set cc '$cxx' @@ -135,8 +133,7 @@ subninja '$dir'/libminiupnp.ninja -I '$srcdir'/third-party/libutp lib libutp.a third-party/libutp/^(utp.cpp utp_utils.cpp) -} >libutp.ninja -subninja '$dir'/libutp.ninja +} | sub libutp.ninja libs=(\ libtransmission.a libb64.a libdht.a libminiupnp.a libnatpmp.a libutp.a\ @@ -23,6 +23,11 @@ fn include { echo include $* } +fn sub { + cat >$1 + subninja '$dir'/$1 +} + fn rule { name=$1 { shift |
