diff options
| author | Michael Forney <mforney@mforney.org> | 2016-04-12 18:50:07 -0700 |
|---|---|---|
| committer | Michael Forney <mforney@mforney.org> | 2016-04-15 02:10:08 -0700 |
| commit | e6d88868e6b630e3cadd435592c113d852a7a739 (patch) | |
| tree | 9a2714694fda2cdf9e0d04e15fff499a06f44a97 /setup.rc | |
| parent | 04d877befb14eeff6d86b5ac1e6af93ad9da178f (diff) | |
Simplify adding variables to rule and build lines
Diffstat (limited to 'setup.rc')
| -rwxr-xr-x | setup.rc | 21 |
1 files changed, 14 insertions, 7 deletions
@@ -49,6 +49,18 @@ fn set { } } +fn let { + vars=() { + while(! ~ $1 --) { + vars=( $vars $1' = '$2 ) + shift 2 + } + shift + $* + printf ' %s\n' $vars + } +} + fn subninja { echo subninja $* } @@ -60,10 +72,7 @@ fn include { fn rule { name=$1 { shift - echo rule $name - for(var in 'command = '$* $ninja_vars) { - echo ' '$var - } + let command $"* -- echo rule $name } } @@ -72,7 +81,6 @@ fn build { shift 2 echo build $out: $rule $* } - for(var in $ninja_vars) echo ' '$var } fn subgen { @@ -109,9 +117,8 @@ subgen . include '$root_srcdir/config.ninja' include '$root_srcdir/rules.ninja' - ninja_vars=( 'generator = 1' 'pool = console' ) { + let generator 1 pool console --\ build $"setup_outs gen '$root_srcdir/setup.rc' '|' $setup_ins - } subninja local.ninja } >$root_outdir/build.ninja.tmp |
