# file : tests/in/testscript # license : MIT; see accompanying LICENSE file crosstest = false test.arguments = .include ../common.testscript +cat <=build/root.build using in EOI : basic : cat <=test.in; foo = $foo$ EOI cat <=buildfile; file{test}: in{test} { foo = FOO } EOI $* <<>EOO; foo = FOO EOO $* clean <<=test.in; foo = $_foo$ bar = $bar$ EOI cat <=buildfile; file{test}: in{test} { in.substitutions = _foo@FOO in.substitutions += bar@BAR bar = wrong } EOI $* <<>EOO; foo = FOO bar = BAR EOO $* clean <<=test.in; $10 $foo bar$ baz EOI $* <>EOO $10 $foo bar$ baz EOO : rebuild : cat <'$foo$ $bar$' >=test.in; $* <'foo bar'; $* <'FOO bar'; $* <'FOO BAR'; cat <'$fox$ $baz$' >=test.in; touch --after test test.in; $* <'fox baz'; mv test.in tst.in; $* <'FOX BAZ' : rebuild-diag : cat <=test.in; foo = $foo$ bar = $bar$ EOI $* <>EOE != 0 foo = foo file{test}: in{test} EOI test.in:2: error: undefined variable 'bar' EOE : executable : : Test creation of executables (permissions, extensions). : if ($test.target == $build.host && $build.host.class != 'windows') { cat <=hello.in; #!/bin/sh echo 'Hello, $name$!' EOI $* <'Hello, World!' }