-
Notifications
You must be signed in to change notification settings - Fork 0
/
makefile
213 lines (181 loc) · 8.07 KB
/
makefile
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
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
CFG=Debug
Platform=win
# Android
ifeq ($(CFG), Debug)
OUTDIR=./Build/$(Platform)Debug
INTDIR=./Build/$(Platform)Debug
CPP_PROJ=-m32 -c -g -pg -Wall -x c++ -D_DEBUG -o
LINK32_FLAGS=-m32 -pg -Wl,-lsupc++,-lm
else
OUTDIR=./Build/$(Platform)Release
INTDIR=./Build/$(Platform)Release
CPP_PROJ=-m32 -c -O3 -Wall -x c++ -o
LINK32_FLAGS=-m32 -Wl,-lsupc++,-lm -O3
endif
ifeq ($(Platform), Android)
CPP=/usr/local/arm-2010.09/bin/arm-none-linux-gnueabi-gcc
LINK32_FLAGS += --static
MKDIR=mkdir -p
else
CPP=gcc
MKDIR=mkdir
endif
LINK32=$(CPP)
ALL : $(OUTDIR)/yamma.exe
CLEAN :
-@erase "$(INTDIR)\bif.obj"
-@erase "$(INTDIR)\bif_list.obj"
-@erase "$(INTDIR)\bif_math.obj"
-@erase "$(INTDIR)\bif_cc.obj"
-@erase "$(INTDIR)\bif_helper.obj"
-@erase "$(INTDIR)\bif_sys.obj"
-@erase "$(INTDIR)\big.obj"
-@erase "$(INTDIR)\encoding.obj"
-@erase "$(INTDIR)\eval.obj"
-@erase "$(INTDIR)\expr.obj"
-@erase "$(INTDIR)\hash.obj"
-@erase "$(INTDIR)\matcher.obj"
-@erase "$(INTDIR)\moi.obj"
-@erase "$(INTDIR)\mm.obj"
-@erase "$(INTDIR)\msg.obj"
-@erase "$(INTDIR)\mstr.obj"
-@erase "$(INTDIR)\num.obj"
-@erase "$(INTDIR)\parser.obj"
-@erase "$(INTDIR)\sym.obj"
-@erase "$(INTDIR)\token.obj"
-@erase "$(INTDIR)\vc60.idb"
-@erase "$(INTDIR)\yamma.obj"
-@erase "$(OUTDIR)\yamma.exe"
-@erase "$(OUTDIR)\yamma.ilk"
$(OUTDIR) :
$(MKDIR) "$(OUTDIR)"
{./kernel}.c{$(INTDIR)}.obj::
$(CPP) $(CPP_PROJ) $@ $<
LINK32_OBJS= \
$(INTDIR)/bif.obj \
$(INTDIR)/bif_list.obj \
$(INTDIR)/bif_math.obj \
$(INTDIR)/bif_cc.obj \
$(INTDIR)/bif_helper.obj \
$(INTDIR)/bif_sys.obj \
$(INTDIR)/big.obj \
$(INTDIR)/encoding.obj \
$(INTDIR)/eval.obj \
$(INTDIR)/expr.obj \
$(INTDIR)/hash.obj \
$(INTDIR)/matcher.obj \
$(INTDIR)/moi.obj \
$(INTDIR)/mm.obj \
$(INTDIR)/msg.obj \
$(INTDIR)/mstr.obj \
$(INTDIR)/num.obj \
$(INTDIR)/parser.obj \
$(INTDIR)/sym.obj \
$(INTDIR)/token.obj \
$(INTDIR)/kernel.obj \
$(INTDIR)/yamma.obj
$(OUTDIR)/yamma.exe : $(OUTDIR) $(LINK32_OBJS)
$(LINK32) -o $@ $(LINK32_OBJS) $(LINK32_FLAGS)
#$(LINK32) $(LINK32_FLAGS) $@ $(LINK32_OBJS)
$(INTDIR)/yamma.obj: yamma.c ./kernel/bif.h ./kernel/moi.h ./kernel/assert.h \
./kernel/eval.h ./kernel/mm.h ./kernel/encoding.h ./kernel/matcher.h \
./kernel/token.h ./kernel/msg.h ./kernel/sys_sym.h ./kernel/expr.h \
./kernel/sym.h ./kernel/num.h ./kernel/hash.h ./kernel/sys_msg.h \
./kernel/parser.h ./kernel/mtype.h ./kernel/mstr.h
$(CPP) -fno-threadsafe-statics $(CPP_PROJ) $@ $<
$(INTDIR)/bif.obj: ./kernel/bif.c ./kernel/bif.h ./kernel/moi.h \
./kernel/assert.h ./kernel/eval.h ./kernel/mm.h ./kernel/encoding.h \
./kernel/matcher.h ./kernel/token.h ./kernel/msg.h ./kernel/sys_sym.h \
./kernel/expr.h ./kernel/sym.h ./kernel/num.h ./kernel/hash.h \
./kernel/sys_msg.h ./kernel/parser.h ./kernel/mtype.h ./kernel/mstr.h
$(CPP) -fno-threadsafe-statics $(CPP_PROJ) $@ $<
$(INTDIR)/bif_list.obj: ./kernel/bif_list.c ./kernel/bif.h ./kernel/hash.h \
./kernel/eval.h ./kernel/mm.h ./kernel/msg.h ./kernel/sys_sym.h \
./kernel/expr.h ./kernel/num.h ./kernel/assert.h ./kernel/sys_msg.h \
./kernel/mtype.h ./kernel/mstr.h
$(CPP) $(CPP_PROJ) $@ $<
$(INTDIR)/bif_math.obj: ./kernel/bif_math.c ./kernel/bif.h ./kernel/hash.h \
./kernel/eval.h ./kernel/mm.h ./kernel/msg.h ./kernel/sys_sym.h \
./kernel/expr.h ./kernel/num.h ./kernel/assert.h ./kernel/sys_msg.h \
./kernel/mtype.h ./kernel/mstr.h
$(CPP) $(CPP_PROJ) $@ $<
$(INTDIR)/bif_cc.obj: ./kernel/bif_cc.c ./kernel/bif.h ./kernel/hash.h \
./kernel/eval.h ./kernel/mm.h ./kernel/msg.h ./kernel/sys_sym.h \
./kernel/expr.h ./kernel/num.h ./kernel/assert.h ./kernel/sys_msg.h \
./kernel/mtype.h ./kernel/mstr.h ./kernel/bif_internal.h
$(CPP) $(CPP_PROJ) $@ $<
$(INTDIR)/bif_sys.obj: ./kernel/bif_sys.c ./kernel/bif.h ./kernel/hash.h \
./kernel/eval.h ./kernel/mm.h ./kernel/msg.h ./kernel/sys_sym.h \
./kernel/expr.h ./kernel/num.h ./kernel/assert.h ./kernel/sys_msg.h \
./kernel/mtype.h ./kernel/mstr.h ./kernel/bif_internal.h
$(CPP) $(CPP_PROJ) $@ $<
$(INTDIR)/bif_helper.obj: ./kernel/bif_helper.c ./kernel/bif_internal.h \
./kernel/hash.h ./kernel/eval.h ./kernel/mm.h ./kernel/msg.h \
./kernel/sys_sym.h ./kernel/expr.h ./kernel/num.h ./kernel/assert.h \
./kernel/sys_msg.h ./kernel/mtype.h ./kernel/mstr.h
$(CPP) $(CPP_PROJ) $@ $<
$(INTDIR)/big.obj: ./kernel/big.c ./kernel/assert.h ./kernel/mtype.h \
./kernel/encoding.h ./kernel/msg.h ./kernel/sys_sym.h ./kernel/expr.h \
./kernel/sym.h ./kernel/num.h ./kernel/hash.h ./kernel/mm.h ./kernel/big.h \
./kernel/mstr.h
$(CPP) -fno-threadsafe-statics $(CPP_PROJ) $@ $<
$(INTDIR)/encoding.obj: ./kernel/encoding.c ./kernel/sys_char_init.inc \
./kernel/hash.h ./kernel/sys_char_dec.inc ./kernel/assert.h ./kernel/mtype.h \
./kernel/encoding.h ./kernel/mm.h ./kernel/mstr.h
$(CPP) $(CPP_PROJ) $@ $<
$(INTDIR)/eval.obj: ./kernel/eval.c ./kernel/bif.h ./kernel/assert.h \
./kernel/eval.h ./kernel/mm.h ./kernel/encoding.h ./kernel/msg.h \
./kernel/sys_sym.h ./kernel/expr.h ./kernel/sym.h ./kernel/num.h \
./kernel/hash.h ./kernel/mtype.h ./kernel/mstr.h
$(CPP) $(CPP_PROJ) $@ $<
$(INTDIR)/expr.obj: ./kernel/expr.c ./kernel/assert.h ./kernel/mm.h \
./kernel/encoding.h ./kernel/msg.h ./kernel/sys_sym.h ./kernel/expr.h \
./kernel/sym.h ./kernel/num.h ./kernel/hash.h ./kernel/mtype.h ./kernel/mstr.h
$(CPP) -fno-threadsafe-statics $(CPP_PROJ) $@ -Wa,-adhln=$@.asm $<
$(INTDIR)/hash.obj: ./kernel/hash.c ./kernel/hash.h ./kernel/assert.h \
./kernel/mm.h ./kernel/mtype.h ./kernel/mstr.h
$(CPP) $(CPP_PROJ) $@ $<
$(INTDIR)/matcher.obj: ./kernel/matcher.c ./kernel/bif.h ./kernel/hash.h \
./kernel/eval.h ./kernel/mm.h ./kernel/matcher.h ./kernel/sys_sym.h \
./kernel/expr.h ./kernel/sym.h ./kernel/num.h ./kernel/assert.h ./kernel/mtype.h ./kernel/mstr.h
$(CPP) $(CPP_PROJ) $@ $<
$(INTDIR)/moi.obj: ./kernel/moi.c ./kernel/assert.h ./kernel/moi.h \
./kernel/mtype.h ./kernel/encoding.h ./kernel/mm.h ./kernel/mstr.h
$(CPP) $(CPP_PROJ) $@ $<
$(INTDIR)/mm.obj: ./kernel/mm.c ./kernel/assert.h ./kernel/mm.h \
./kernel/encoding.h ./kernel/expr.h ./kernel/num.h ./kernel/hash.h \
./kernel/mtype.h ./kernel/mstr.h
$(CPP) $(CPP_PROJ) $@ $<
$(INTDIR)/msg.obj: ./kernel/msg.c ./kernel/assert.h ./kernel/mm.h ./kernel/msg.h \
./kernel/expr.h ./kernel/num.h ./kernel/hash.h ./kernel/mtype.h ./kernel/mstr.h
$(CPP) $(CPP_PROJ) $@ $<
$(INTDIR)/mstr.obj: ./kernel/mstr.c ./kernel/assert.h ./kernel/mm.h \
./kernel/encoding.h ./kernel/mtype.h ./kernel/mstr.h
$(CPP) $(CPP_PROJ) $@ $<
$(INTDIR)/num.obj: ./kernel/num.c ./kernel/assert.h ./kernel/mm.h \
./kernel/encoding.h ./kernel/sys_sym.h ./kernel/expr.h ./kernel/num.h \
./kernel/hash.h ./kernel/mtype.h ./kernel/big.h ./kernel/mstr.h
$(CPP) $(CPP_PROJ) $@ $<
$(INTDIR)/parser.obj: ./kernel/parser.c ./kernel/bif.h ./kernel/assert.h \
./kernel/eval.h ./kernel/mm.h ./kernel/encoding.h ./kernel/moi.h \
./kernel/token.h ./kernel/sys_sym.h ./kernel/expr.h ./kernel/sym.h \
./kernel/num.h ./kernel/hash.h ./kernel/sys_msg.h ./kernel/parser.h \
./kernel/mtype.h ./kernel/mstr.h
$(CPP) $(CPP_PROJ) $@ $<
$(INTDIR)/sym.obj: ./kernel/sym.c ./kernel/bif.h ./kernel/assert.h \
./kernel/sys_sym_dec.inc ./kernel/sys_sym_def.inc ./kernel/mtype.h \
./kernel/encoding.h ./kernel/num.h ./kernel/expr.h ./kernel/sym.h \
./kernel/sys_msg_dec.inc ./kernel/hash.h ./kernel/mm.h ./kernel/mstr.h
$(CPP) $(CPP_PROJ) $@ $<
$(INTDIR)/token.obj: ./kernel/token.c ./kernel/hash.h ./kernel/eval.h \
./kernel/mtype.h ./kernel/encoding.h ./kernel/moi.h ./kernel/sys_sym.h \
./kernel/token.h ./kernel/sym.h ./kernel/num.h ./kernel/assert.h \
./kernel/sys_char.h ./kernel/mm.h ./kernel/mstr.h ./kernel/expr.h
$(CPP) $(CPP_PROJ) $@ $<
$(INTDIR)/kernel.obj: ./kernel/kernel.c ./kernel/kernel.h ./kernel/bif.h \
./kernel/moi.h ./kernel/assert.h ./kernel/eval.h ./kernel/mm.h \
./kernel/encoding.h ./kernel/matcher.h ./kernel/token.h ./kernel/msg.h \
./kernel/sys_sym.h ./kernel/expr.h ./kernel/sym.h ./kernel/num.h \
./kernel/hash.h ./kernel/sys_msg.h ./kernel/parser.h ./kernel/mtype.h \
./kernel/mstr.h
$(CPP) $(CPP_PROJ) $@ $<