Mercurial > vim
annotate src/Make_sas.mak @ 7584:9b7de205336d v7.4.1092
commit https://github.com/vim/vim/commit/a803c7f94070f94b831fdfd1984f288c8b825b5d
Author: Bram Moolenaar <Bram@vim.org>
Date: Fri Jan 15 15:31:39 2016 +0100
patch 7.4.1092
Problem: It is not simple to test for an exception and give a proper error
message.
Solution: Add assert_exception().
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Fri, 15 Jan 2016 15:45:05 +0100 |
parents | ab71bb81b84e |
children | bce3b5ddb393 |
rev | line source |
---|---|
7 | 1 # vim: set ft=make : |
2 # Makefile for VIM on the Amiga, using SAS/Lattice C 6.0 to 6.58 | |
3 # | |
4 # Do NOT use the peephole optimizer with a version before 6.56! | |
5 # It messes up all kinds of things: | |
6 # For 6.0 and 6.1, expand_env() will not work correctly. | |
7 # For 6.2 and 6.3 the call to free_line in u_freeentry is wrong. | |
8 # The "read.me" file for version 6.56 includes a remark about a fix for the | |
9 # peephole optimizer. Everything before 6.56 will probably fail. | |
10 # | |
11 # You should use Manx Aztec C whenever possible, because it has been tested. | |
12 # | |
13 # The prototypes from Manx and SAS are incompatible. If the prototypes | |
14 # were generated by Manx, first do "touch *.c; make proto" before "make". | |
15 # The prototypes generated on Unix work for both. | |
16 # | |
17 # Note: Not all dependencies are included. This was done to avoid having | |
18 # to compile everything when a global variable or function is added. | |
19 | |
20 #>>>>> choose options: | |
21 | |
22 ### See feature.h for a list of optionals. | |
23 ### Any other defines can be included here. | |
24 | |
25 # NO_ARP Don't include ARP functions | |
26 # SASC=658 Sas/C version number | |
27 # NEWSASC fixes a bug in the syntax highlighting? | |
28 DEFINES = DEF=NO_ARP DEF=NEWSASC DEF="SASC=658" | |
29 | |
30 #>>>>> if HAVE_TGETENT is defined termlib.o has to be used | |
31 #TERMLIB = termlib.o | |
32 TERMLIB = | |
33 | |
34 #>>>>> choose NODEBUG for normal compiling, the other for debugging and | |
35 # profiling | |
36 # don't switch on debugging when generating proto files, it crashes the | |
37 # compiler. | |
38 DBG = NODEBUG | |
39 #DBG = DBG=SF | |
40 | |
41 #>>>>> choose NOOPTPEEP for 6.0 to 6.3, NOOPT for debugging | |
42 # with version 6.56 and later you can probably use OPT | |
43 OPTIMIZE = OPT | |
44 #OPTIMIZE = NOOPTPEEP | |
45 #OPTIMIZE = NOOPT | |
46 | |
47 # for 6.58 you can use the line below, but be warned it takes a loooonnnggg time | |
48 #OPTIMIZE=OPT OPTIMIZERSCHEDULER OPTIMIZERTIME NoOPTIMIZERALIAS \ | |
49 OptimizerComplexity=10 OptimizerDepth=10 OptimizerRecurDepth=10 \ | |
50 OptimizerInLocal OPTPEEP | |
51 | |
52 #generate code for your processor - 68060 will work for 040's as well. | |
53 CPU=68000 | |
54 #CPU=68020 | |
55 #CPU=68030 | |
56 #CPU=68040 | |
57 #CPU=68060 | |
58 | |
59 #Error reporting - rexx or console | |
60 ERROR = ERRORCONSOLE ERRORSOURCE ERRORHIGHLIGHT | |
61 #ERROR = ERRORREXX ERRORCONSOLE ERRORSOURCE ERRORHIGHLIGHT | |
62 | |
63 #memory types, if you have fast use it :->, | |
64 # ANY = will work on all machines | |
65 # FAST = this is the best option, for speed | |
66 #MEMORYTYPE=FAST | |
67 MEMORYTYPE=ANY | |
68 | |
69 #MEMSIZE - this is for compile time only for speed of compilation | |
70 #MEMSIZE=HUGE | |
71 MEMSIZE=LARGE | |
72 #MEMSIZE=SMALL | |
73 | |
74 #>>>>> end of choices | |
75 ########################################################################### | |
76 | |
77 CC = sc | |
78 GST = vim.gst | |
79 COPTS = SINT SCODE SDATA | |
80 SHELL = csh | |
81 DEL = $(SHELL) -c rm -f | |
82 | |
83 # ignore error messages for uninitialized variables, they are mostly not correct | |
84 CFLAGS = NOLINK $(DBG) CPU=$(CPU) NOSTACKCHECK DEF=AMIGA CODE=FAR idir=proto ignore=317 | |
85 CFLAGS2 = $(OPTIMIZE) $(ERROR) GSTIMMEDIATE GST=$(GST) | |
86 CFLAGS3 = $(COPTS) STRINGMERGE MEMSIZE=$(MEMSIZE) | |
87 CFLAGS4 = $(DEFINES) DATAMEMORY=$(MEMORYTYPE) | |
88 | |
89 PROPT = DEF=PROTO GPROTO GPPARM MAXIMUMERRORS=999 GENPROTOSTATICS GENPROTOPARAMETERS | |
90 | |
91 SRC = \ | |
2192
40edf1be1cd8
Add blowfish and sha256 source files to more Makefiles.
Bram Moolenaar <bram@vim.org>
parents:
2180
diff
changeset
|
92 blowfish.c \ |
7 | 93 buffer.c \ |
94 charset.c \ | |
6126 | 95 crypt.c \ |
96 crypt_zip.c \ | |
7 | 97 diff.c \ |
98 digraph.c \ | |
99 edit.c \ | |
100 eval.c \ | |
101 ex_cmds.c \ | |
102 ex_cmds2.c \ | |
103 ex_docmd.c \ | |
104 ex_eval.c \ | |
105 ex_getln.c \ | |
106 fileio.c \ | |
107 fold.c \ | |
108 getchar.c \ | |
440 | 109 hardcopy.c \ |
799 | 110 hashtab.c \ |
7 | 111 main.c \ |
112 mark.c \ | |
113 memfile.c \ | |
114 memline.c \ | |
115 menu.c \ | |
116 message.c \ | |
117 misc1.c \ | |
118 misc2.c \ | |
119 move.c \ | |
120 mbyte.c \ | |
121 normal.c \ | |
122 ops.c \ | |
123 option.c \ | |
124 os_amiga.c \ | |
799 | 125 popupmnu.c \ |
7 | 126 quickfix.c \ |
127 regexp.c \ | |
128 screen.c \ | |
129 search.c \ | |
2192
40edf1be1cd8
Add blowfish and sha256 source files to more Makefiles.
Bram Moolenaar <bram@vim.org>
parents:
2180
diff
changeset
|
130 sha256.c \ |
221 | 131 spell.c \ |
7 | 132 syntax.c \ |
133 tag.c \ | |
134 term.c \ | |
135 ui.c \ | |
136 undo.c \ | |
137 window.c \ | |
138 version.c | |
139 | |
140 OBJ = \ | |
2192
40edf1be1cd8
Add blowfish and sha256 source files to more Makefiles.
Bram Moolenaar <bram@vim.org>
parents:
2180
diff
changeset
|
141 blowfish.o \ |
7 | 142 buffer.o \ |
143 charset.o \ | |
6126 | 144 crypt.o \ |
145 crypt_zip.o \ | |
7 | 146 diff.o \ |
147 digraph.o \ | |
148 edit.o \ | |
149 eval.o \ | |
150 ex_cmds.o \ | |
151 ex_cmds2.o \ | |
152 ex_docmd.o \ | |
153 ex_eval.o \ | |
154 ex_getln.o \ | |
155 fileio.o \ | |
156 fold.o \ | |
157 getchar.o \ | |
440 | 158 hardcopy.o \ |
799 | 159 hashtab.o \ |
7 | 160 main.o \ |
161 mark.o \ | |
162 memfile.o \ | |
163 memline.o \ | |
164 menu.o \ | |
165 message.o \ | |
166 misc1.o \ | |
167 misc2.o \ | |
168 move.o \ | |
169 mbyte.o \ | |
170 normal.o \ | |
171 ops.o \ | |
172 option.o \ | |
173 os_amiga.o \ | |
799 | 174 popupmnu.o \ |
7 | 175 quickfix.o \ |
176 regexp.o \ | |
177 screen.o \ | |
178 search.o \ | |
2192
40edf1be1cd8
Add blowfish and sha256 source files to more Makefiles.
Bram Moolenaar <bram@vim.org>
parents:
2180
diff
changeset
|
179 sha256.o \ |
221 | 180 spell.o \ |
7 | 181 syntax.o \ |
182 tag.o \ | |
183 term.o \ | |
184 ui.o \ | |
185 undo.o \ | |
186 window.o \ | |
187 $(TERMLIB) | |
188 | |
189 PRO = \ | |
2180
f60a0c9cbe6c
Add the blowfish encryption patch from Mohsin Ahmed. Needs more work.
Bram Moolenaar <bram@vim.org>
parents:
799
diff
changeset
|
190 proto/blowfish.pro \ |
7 | 191 proto/buffer.pro \ |
192 proto/charset.pro \ | |
6126 | 193 proto/crypt.pro \ |
194 proto/crypt_zip.pro \ | |
7 | 195 proto/diff.pro \ |
196 proto/digraph.pro \ | |
197 proto/edit.pro \ | |
198 proto/eval.pro \ | |
199 proto/ex_cmds.pro \ | |
200 proto/ex_cmds2.pro \ | |
201 proto/ex_docmd.pro \ | |
202 proto/ex_eval.pro \ | |
203 proto/ex_getln.pro \ | |
204 proto/fileio.pro \ | |
205 proto/fold.pro \ | |
206 proto/getchar.pro \ | |
440 | 207 proto/hardcopy.pro \ |
799 | 208 proto/hashtab.pro \ |
7 | 209 proto/main.pro \ |
210 proto/mark.pro \ | |
211 proto/memfile.pro \ | |
212 proto/memline.pro \ | |
213 proto/menu.pro \ | |
214 proto/message.pro \ | |
215 proto/misc1.pro \ | |
216 proto/misc2.pro \ | |
217 proto/move.pro \ | |
218 proto/mbyte.pro \ | |
219 proto/normal.pro \ | |
220 proto/ops.pro \ | |
221 proto/option.pro \ | |
222 proto/os_amiga.pro \ | |
799 | 223 proto/popupmnu.pro \ |
7 | 224 proto/quickfix.pro \ |
225 proto/regexp.pro \ | |
226 proto/screen.pro \ | |
227 proto/search.pro \ | |
2180
f60a0c9cbe6c
Add the blowfish encryption patch from Mohsin Ahmed. Needs more work.
Bram Moolenaar <bram@vim.org>
parents:
799
diff
changeset
|
228 proto/sha256.pro \ |
221 | 229 proto/spell.pro \ |
7 | 230 proto/syntax.pro \ |
231 proto/tag.pro \ | |
232 proto/term.pro \ | |
233 proto/termlib.pro \ | |
234 proto/ui.pro \ | |
235 proto/undo.pro \ | |
236 proto/window.pro | |
237 | |
238 all: proto Vim | |
239 | |
240 Vim: scoptions $(OBJ) version.c version.h | |
241 $(CC) $(CFLAGS) version.c | |
242 $(CC) LINK $(COPTS) $(OBJ) version.o $(DBG) PNAME=Vim | |
243 | |
244 debug: scoptions $(OBJ) version.c version.h | |
245 $(CC) $(CFLAGS) version.c | |
246 $(CC) LINK $(COPTS) $(OBJ) version.o $(DBG) PNAME=Vim | |
247 | |
248 proto: $(GST) $(PRO) | |
249 | |
250 tags: | |
251 spat ctags $(SRC) *.h | |
252 # csh -c ctags $(SRC) *.h | |
253 | |
254 # can't use delete here, too many file names | |
255 clean: | |
256 $(DEL) *.o Vim $(GST) | |
257 | |
258 # generate GlobalSymbolTable, which speeds up the compile time. | |
259 # | |
4352 | 260 # A preprocessing stage is used to work around a bug in the GST generator, in |
7 | 261 # that it does not handle nested makefiles properly in this stage. |
262 # Ignore error message for not producing any code (105). | |
263 $(GST): scoptions vim.h keymap.h macros.h ascii.h term.h structs.h | |
264 $(CC) $(CFLAGS) PREPROCESSORONLY vim.h objectname pre.h | |
265 $(CC) MGST=$(GST) pre.h ignore=105 | |
266 $(DEL) pre.h | |
267 | |
268 # generate an options file, because SAS/C smake can't handle the amiga command | |
269 # line can handle the lengths that this makefile will impose on the shell. | |
270 # (Manx's make can do this). | |
271 scoptions: Make_sas.mak | |
272 @echo "Generating - $@ ..." | |
273 @echo $(CFLAGS) > scoptions | |
274 @echo $(CFLAGS1) >> scoptions | |
275 @echo $(CFLAGS2) >> scoptions | |
276 @echo $(CFLAGS3) >> scoptions | |
277 @echo $(CFLAGS4) >> scoptions | |
278 @echo $(COPTS) >>scoptions | |
279 @echo done | |
280 | |
281 ########################################################################### | |
282 | |
283 $(OBJ): $(GST) vim.h | |
284 $(PRO): $(GST) vim.h | |
285 | |
286 .c.o: | |
287 $(CC) $(CFLAGS) $*.c | |
288 | |
289 .c.pro: | |
290 $(CC) $(CFLAGS) GPFILE=proto/$*.pro $(PROPT) $*.c | |
291 | |
4352 | 292 # dependencies |
2180
f60a0c9cbe6c
Add the blowfish encryption patch from Mohsin Ahmed. Needs more work.
Bram Moolenaar <bram@vim.org>
parents:
799
diff
changeset
|
293 blowfish.o: blowfish.c |
f60a0c9cbe6c
Add the blowfish encryption patch from Mohsin Ahmed. Needs more work.
Bram Moolenaar <bram@vim.org>
parents:
799
diff
changeset
|
294 proto/blowfish.pro: blowfish.c |
7 | 295 buffer.o: buffer.c |
296 proto/buffer.pro: buffer.c | |
297 charset.o: charset.c | |
298 proto/charset.pro: charset.c | |
6126 | 299 crypt.o: crypt.c |
300 proto/crypt.pro: crypt.c | |
301 crypt_zip.o: crypt_zip.c | |
302 proto/crypt_zip.pro: crypt_zip.c | |
7 | 303 diff.o: diff.c |
304 proto/diff.pro: diff.c | |
305 digraph.o: digraph.c | |
306 proto/digraph.pro: digraph.c | |
307 edit.o: edit.c | |
308 proto/edit.pro: edit.c | |
309 eval.o: eval.c | |
310 proto/eval.pro: eval.c | |
311 ex_cmds.o: ex_cmds.c | |
312 proto/ex_cmds.pro: ex_cmds.c | |
313 ex_cmds2.o: ex_cmds2.c | |
314 proto/ex_cmds2.pro: ex_cmds2.c | |
315 ex_docmd.o: ex_docmd.c ex_cmds.h | |
316 proto/ex_docmd.pro: ex_docmd.c ex_cmds.h | |
317 ex_eval.o: ex_eval.c ex_cmds.h | |
318 proto/ex_eval.pro: ex_eval.c ex_cmds.h | |
319 ex_getln.o: ex_getln.c | |
320 proto/ex_getln.pro: ex_getln.c | |
321 fileio.o: fileio.c | |
322 proto/fileio.pro: fileio.c | |
323 fold.o: fold.c | |
324 proto/fold.pro: fold.c | |
325 getchar.o: getchar.c | |
326 proto/getchar.pro: getchar.c | |
440 | 327 hardcopy.o: hardcopy.c |
328 proto/hardcopy.pro: hardcopy.c | |
799 | 329 hashtab.o: hashtab.c |
330 proto/hashtab.pro: hashtab.c | |
7 | 331 main.o: main.c |
332 proto/main.pro: main.c | |
333 mark.o: mark.c | |
334 proto/mark.pro: mark.c | |
335 memfile.o: memfile.c | |
336 proto/memfile.pro: memfile.c | |
337 memline.o: memline.c | |
338 proto/memline.pro: memline.c | |
339 menu.o: menu.c | |
340 proto/menu.pro: menu.c | |
341 message.o: message.c | |
342 proto/message.pro: message.c | |
343 misc1.o: misc1.c | |
344 proto/misc1.pro: misc1.c | |
345 misc2.o: misc2.c | |
346 proto/misc2.pro: misc2.c | |
347 move.o: move.c | |
348 proto/move.pro: move.c | |
349 mbyte.o: mbyte.c | |
350 proto/mbyte.pro: mbyte.c | |
351 normal.o: normal.c | |
352 proto/normal.pro: normal.c | |
353 ops.o: ops.c | |
354 proto/ops.pro: ops.c | |
355 option.o: option.c | |
356 proto/option.pro: option.c | |
357 os_amiga.o: os_amiga.c | |
358 proto/os_amiga.pro: os_amiga.c | |
799 | 359 popupmnu.o: popupmnu.c |
360 proto/popupmnu.pro: popupmnu.c | |
7 | 361 quickfix.o: quickfix.c |
362 proto/quickfix.pro: quickfix.c | |
363 regexp.o: regexp.c | |
364 proto/regexp.pro: regexp.c | |
365 screen.o: screen.c | |
366 proto/screen.pro: screen.c | |
367 search.o: search.c | |
368 proto/search.pro: search.c | |
2180
f60a0c9cbe6c
Add the blowfish encryption patch from Mohsin Ahmed. Needs more work.
Bram Moolenaar <bram@vim.org>
parents:
799
diff
changeset
|
369 sha256.o: sha256.c |
f60a0c9cbe6c
Add the blowfish encryption patch from Mohsin Ahmed. Needs more work.
Bram Moolenaar <bram@vim.org>
parents:
799
diff
changeset
|
370 proto/sha256.pro: sha256.c |
221 | 371 spell.o: spell.c |
372 proto/spell.pro: spell.c | |
7 | 373 syntax.o: syntax.c |
374 proto/syntax.pro: syntax.c | |
375 tag.o: tag.c | |
376 proto/tag.pro: tag.c | |
377 term.o: term.c | |
378 proto/term.pro: term.c | |
379 termlib.o: termlib.c | |
380 proto/termlib.pro: termlib.c | |
381 ui.o: ui.c | |
382 proto/ui.pro: ui.c | |
383 undo.o: undo.c | |
384 proto/undo.pro: undo.c | |
385 window.o: window.c |