-
Notifications
You must be signed in to change notification settings - Fork 3
/
SConscript
54 lines (40 loc) · 1.43 KB
/
SConscript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# ikforth
import os
Import('env', 'fkernelPath', 'productdict')
senv = env.Clone()
ikforthExec = senv.execname('IKForth-${TSYS}')
ikforthDict = 'IKForth-${TSYS}.img'
senv.Replace(RUN_CMD = '${RUN_LAUNCHER} ./' + ikforthExec)
def run(source, target, env):
env.Execute('${RUN_CMD}')
def test(source, target, env):
env.Execute('${RUN_CMD} -f IKForth-test.4th')
def test_stdin(source, target, env):
env.Execute('echo \'S\" fine!\" TYPE\' | ${RUN_CMD} -f test/stdin-test.4th')
def ansitest(source, target, env):
Execute(Mkdir('build/forth2012-test-blocks'))
env.Execute('${RUN_CMD} -f test/forth2012-test.4th')
def fptest(source, target, env):
env.Execute('${RUN_CMD} -f test/fp-test.4th')
senv.InstallAs(ikforthDict, productdict)
senv.InstallAs(ikforthExec, fkernelPath)
senv.NoClean([ikforthDict, ikforthExec])
senv.Alias('ikforth', [ikforthExec, ikforthDict])
senv.Alias('all', ['ikforth'])
senv.Clean('all', [
'#build',
"#.sconsign.dblite",
"#.sconf_temp",
"#config.log",
])
senv.Alias('run', [], run)
senv.Alias('test', [], test)
senv.Alias('test-stdin', [], test_stdin)
senv.Alias('ansitest', [], ansitest)
senv.Alias('fptest', [], fptest)
senv.Depends('run', ['ikforth'])
senv.Depends('test', ['ikforth'])
senv.Depends('test-stdin', ['ikforth'])
senv.Depends('ansitest', ['ikforth'])
senv.Depends('fptest', ['ikforth'])
senv.AlwaysBuild('run', 'test', 'test-stdin', 'ansitest', 'fptest')