-
Notifications
You must be signed in to change notification settings - Fork 1
/
build.ninja
156 lines (115 loc) · 8.11 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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
# this is the build file for project swallow
# it is autogenerated by the xmake build system.
# do not edit by hand.
ninja_required_version = 1.5.1
rule gen
command = xmake project -P . -k ninja
description = regenerating ninja files
# rules for compiler
rule cxx
command = /usr/bin/gcc $ARGS -MMD -MF $out.d -o $out -c $in
deps = gcc
depfile = $out.d
description = compiling.debug $in
rule cu
command = /usr/bin/clang $ARGS -MMD -MF $out.d -o $out -c $in
deps = gcc
depfile = $out.d
description = compiling.debug $in
rule as
command = /usr/bin/gcc $ARGS -MMD -MF $out.d -o $out -c $in
deps = gcc
depfile = $out.d
description = compiling.debug $in
rule cc
command = /usr/bin/gcc $ARGS -MMD -MF $out.d -o $out -c $in
deps = gcc
depfile = $out.d
description = compiling.debug $in
rule mxx
command = /usr/bin/gcc $ARGS -MMD -MF $out.d -o $out -c $in
deps = gcc
depfile = $out.d
description = compiling.debug $in
rule mm
command = /usr/bin/gcc $ARGS -MMD -MF $out.d -o $out -c $in
deps = gcc
depfile = $out.d
description = compiling.debug $in
# rules for linker
rule sh
command = /usr/bin/g++ -o $out $in $ARGS
description = linking.debug $out
rule ld
command = /usr/bin/g++ -o $out $in $ARGS
description = linking.debug $out
rule ar
command = /usr/bin/ar $ARGS $out $in
description = archiving.debug $out
# build targets
# build build.ninja
build build.ninja: gen $
xmake.lua $
compiler/xmake.lua $
stdlib/xmake.lua $
repl/xmake.lua $
compiler/xmake.lua $
stdlib/xmake.lua $
stdlib/xmake.lua
# build target: stdlib
build stdlib: phony build/linux/x86_64/debug/libstdlib.so
build build/linux/x86_64/debug/libstdlib.so: sh build/.objs/stdlib/linux/x86_64/debug/stdlib/stdlib.cpp.o
ARGS = -shared -m64 -fPIC
build build/.objs/stdlib/linux/x86_64/debug/stdlib/stdlib.cpp.o: cxx stdlib/stdlib.cpp
ARGS = -m64 -fPIC -g -O0 -std=c++20
# build target: swi
build swi: phony build/linux/x86_64/debug/swi
build build/linux/x86_64/debug/swi: ld build/.objs/swi/linux/x86_64/debug/repl/main.cpp.o || $
build/linux/x86_64/debug/swc
ARGS = -m64 -Lbuild/linux/x86_64/debug -Wl,-rpath=$ORIGIN -lstdlib
build build/.objs/swi/linux/x86_64/debug/repl/main.cpp.o: cxx repl/main.cpp
ARGS = -m64 -g -O0 -std=c++20
# build target: swc
build swc: phony build/linux/x86_64/debug/swc
build build/linux/x86_64/debug/swc: ld build/.objs/swc/linux/x86_64/debug/compiler/compiler.cpp.o build/.objs/swc/linux/x86_64/debug/compiler/ast/ast.cpp.o build/.objs/swc/linux/x86_64/debug/compiler/ast/Dump.cpp.o build/.objs/swc/linux/x86_64/debug/compiler/ast/g-machine.cpp.o build/.objs/swc/linux/x86_64/debug/compiler/ast/type.cpp.o build/.objs/swc/linux/x86_64/debug/compiler/diagnostics/reporter.cpp.o build/.objs/swc/linux/x86_64/debug/compiler/diagnostics/utils.cpp.o build/.objs/swc/linux/x86_64/debug/compiler/diagnostics/diagnostics.cpp.o build/.objs/swc/linux/x86_64/debug/compiler/g-machine/binop.cpp.o build/.objs/swc/linux/x86_64/debug/compiler/g-machine/environment.cpp.o build/.objs/swc/linux/x86_64/debug/compiler/g-machine/instruction.cpp.o build/.objs/swc/linux/x86_64/debug/compiler/lexer/lexer.cpp.o build/.objs/swc/linux/x86_64/debug/compiler/lexer/flex_lexer.cpp.o build/.objs/swc/linux/x86_64/debug/compiler/parser/parser.cpp.o build/.objs/swc/linux/x86_64/debug/compiler/parser/bison_parser.cpp.o build/.objs/swc/linux/x86_64/debug/compiler/type/Dump.cpp.o build/.objs/swc/linux/x86_64/debug/compiler/type/environment.cpp.o build/.objs/swc/linux/x86_64/debug/compiler/type/type.cpp.o || $
build/linux/x86_64/debug/libstdlib.so
ARGS = -m64 -Lbuild/linux/x86_64/debug -Wl,-rpath=$ORIGIN -lc++ -lstdlib
build build/.objs/swc/linux/x86_64/debug/compiler/compiler.cpp.o: cxx compiler/compiler.cpp
ARGS = -m64 -g -O0 -std=c++20 -Icompiler -Icompiler/ast -Icompiler/type -Icompiler/lexer -Icompiler/parser -Icompiler/diagnostics -Icompiler/utils
build build/.objs/swc/linux/x86_64/debug/compiler/ast/ast.cpp.o: cxx compiler/ast/ast.cpp
ARGS = -m64 -g -O0 -std=c++20 -Icompiler -Icompiler/ast -Icompiler/type -Icompiler/lexer -Icompiler/parser -Icompiler/diagnostics -Icompiler/utils
build build/.objs/swc/linux/x86_64/debug/compiler/ast/Dump.cpp.o: cxx compiler/ast/Dump.cpp
ARGS = -m64 -g -O0 -std=c++20 -Icompiler -Icompiler/ast -Icompiler/type -Icompiler/lexer -Icompiler/parser -Icompiler/diagnostics -Icompiler/utils
build build/.objs/swc/linux/x86_64/debug/compiler/ast/g-machine.cpp.o: cxx compiler/ast/g-machine.cpp
ARGS = -m64 -g -O0 -std=c++20 -Icompiler -Icompiler/ast -Icompiler/type -Icompiler/lexer -Icompiler/parser -Icompiler/diagnostics -Icompiler/utils
build build/.objs/swc/linux/x86_64/debug/compiler/ast/type.cpp.o: cxx compiler/ast/type.cpp
ARGS = -m64 -g -O0 -std=c++20 -Icompiler -Icompiler/ast -Icompiler/type -Icompiler/lexer -Icompiler/parser -Icompiler/diagnostics -Icompiler/utils
build build/.objs/swc/linux/x86_64/debug/compiler/diagnostics/reporter.cpp.o: cxx compiler/diagnostics/reporter.cpp
ARGS = -m64 -g -O0 -std=c++20 -Icompiler -Icompiler/ast -Icompiler/type -Icompiler/lexer -Icompiler/parser -Icompiler/diagnostics -Icompiler/utils
build build/.objs/swc/linux/x86_64/debug/compiler/diagnostics/utils.cpp.o: cxx compiler/diagnostics/utils.cpp
ARGS = -m64 -g -O0 -std=c++20 -Icompiler -Icompiler/ast -Icompiler/type -Icompiler/lexer -Icompiler/parser -Icompiler/diagnostics -Icompiler/utils
build build/.objs/swc/linux/x86_64/debug/compiler/diagnostics/diagnostics.cpp.o: cxx compiler/diagnostics/diagnostics.cpp
ARGS = -m64 -g -O0 -std=c++20 -Icompiler -Icompiler/ast -Icompiler/type -Icompiler/lexer -Icompiler/parser -Icompiler/diagnostics -Icompiler/utils
build build/.objs/swc/linux/x86_64/debug/compiler/g-machine/binop.cpp.o: cxx compiler/g-machine/binop.cpp
ARGS = -m64 -g -O0 -std=c++20 -Icompiler -Icompiler/ast -Icompiler/type -Icompiler/lexer -Icompiler/parser -Icompiler/diagnostics -Icompiler/utils
build build/.objs/swc/linux/x86_64/debug/compiler/g-machine/environment.cpp.o: cxx compiler/g-machine/environment.cpp
ARGS = -m64 -g -O0 -std=c++20 -Icompiler -Icompiler/ast -Icompiler/type -Icompiler/lexer -Icompiler/parser -Icompiler/diagnostics -Icompiler/utils
build build/.objs/swc/linux/x86_64/debug/compiler/g-machine/instruction.cpp.o: cxx compiler/g-machine/instruction.cpp
ARGS = -m64 -g -O0 -std=c++20 -Icompiler -Icompiler/ast -Icompiler/type -Icompiler/lexer -Icompiler/parser -Icompiler/diagnostics -Icompiler/utils
build build/.objs/swc/linux/x86_64/debug/compiler/lexer/lexer.cpp.o: cxx compiler/lexer/lexer.cpp
ARGS = -m64 -g -O0 -std=c++20 -Icompiler -Icompiler/ast -Icompiler/type -Icompiler/lexer -Icompiler/parser -Icompiler/diagnostics -Icompiler/utils
build build/.objs/swc/linux/x86_64/debug/compiler/lexer/flex_lexer.cpp.o: cxx compiler/lexer/flex_lexer.cpp
ARGS = -m64 -g -O0 -std=c++20 -Icompiler -Icompiler/ast -Icompiler/type -Icompiler/lexer -Icompiler/parser -Icompiler/diagnostics -Icompiler/utils
build build/.objs/swc/linux/x86_64/debug/compiler/parser/parser.cpp.o: cxx compiler/parser/parser.cpp
ARGS = -m64 -g -O0 -std=c++20 -Icompiler -Icompiler/ast -Icompiler/type -Icompiler/lexer -Icompiler/parser -Icompiler/diagnostics -Icompiler/utils
build build/.objs/swc/linux/x86_64/debug/compiler/parser/bison_parser.cpp.o: cxx compiler/parser/bison_parser.cpp
ARGS = -m64 -g -O0 -std=c++20 -Icompiler -Icompiler/ast -Icompiler/type -Icompiler/lexer -Icompiler/parser -Icompiler/diagnostics -Icompiler/utils
build build/.objs/swc/linux/x86_64/debug/compiler/type/Dump.cpp.o: cxx compiler/type/Dump.cpp
ARGS = -m64 -g -O0 -std=c++20 -Icompiler -Icompiler/ast -Icompiler/type -Icompiler/lexer -Icompiler/parser -Icompiler/diagnostics -Icompiler/utils
build build/.objs/swc/linux/x86_64/debug/compiler/type/environment.cpp.o: cxx compiler/type/environment.cpp
ARGS = -m64 -g -O0 -std=c++20 -Icompiler -Icompiler/ast -Icompiler/type -Icompiler/lexer -Icompiler/parser -Icompiler/diagnostics -Icompiler/utils
build build/.objs/swc/linux/x86_64/debug/compiler/type/type.cpp.o: cxx compiler/type/type.cpp
ARGS = -m64 -g -O0 -std=c++20 -Icompiler -Icompiler/ast -Icompiler/type -Icompiler/lexer -Icompiler/parser -Icompiler/diagnostics -Icompiler/utils
build default: phony stdlib swi swc
build all: phony stdlib swi swc
default default