-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathbuild.ninja
50 lines (36 loc) · 1.34 KB
/
build.ninja
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
# ninja build file.
builddir = obj
o = obj
rule compile
command = iix compile $in keep=$o/$keep
description = build $out
rule link
command = iix link $orca-in keep=$out
description = link $out
build linker : link $o/exp.a $o/exp.root $o/file.a $o/file.root $
$o/linker.a $o/linker.root $o/out.a $o/out.root $o/pass1.a $o/pass1.root $
$o/pass2.a $o/pass2.root $o/seg.a $o/seg.root $o/symbol.a $o/symbol.root $
$o/util.a $o/util.root
orca-in = $o/linker $o/util $o/file $o/pass1 $o/pass2 $o/seg $
$o/symbol $o/exp $o/out
build $o/exp.a $o/exp.root : compile exp.asm | exp.mac directpage
keep = exp
build $o/file.a $o/file.root : compile file.asm | file.mac directpage
keep = file
build $o/linker.a $o/linker.root : compile linker.asm | linker.mac directpage
keep = linker
build $o/out.a $o/out.root : compile out.asm | out.mac directpage
keep = out
build $o/pass1.a $o/pass1.root : compile pass1.asm | pass1.mac directpage
keep = pass1
build $o/pass2.a $o/pass2.root : compile pass2.asm | pass2.mac directpage
keep = pass2
build $o/seg.a $o/seg.root : compile seg.asm | seg.mac directpage
keep = seg
build $o/symbol.a $o/symbol.root : compile symbol.asm | symbol.mac directpage
keep = symbol
build $o/util.a $o/util.root : compile util.asm | util.mac directpage
keep = util
default linker
build all : phony linker
# eof