disable the unrecognized nls flag
[AROS-Contrib.git] / regina / makefile.win32.lcc
blob627aa37adc0f2ce1b617052b70c1c90214d07f90
1 #\r
2 # Makefile for Regina REXX Interpreter\r
3 # FIXME, FGC: How set set "unsigned char" as default char type?\r
4 # FIXME: MH: How to pass env variable to lcc make?\r
5 # FIXME: MH: How to "include" regina.ver in this makefile?\r
6 # FIXME: MH: Add GCI support\r
7 #\r
8 # Using lcc-win32 compiler under Win32\r
9 # Usage:\r
10 #    make -f [DEBUG=Y [TRACEMEM=Y]] [FLISTS=N] [SOCKET=nnnn]\r
11 #\r
12 # generated files without giving a target on the command line:\r
13 # rexx.exe     statically bounded REXX interpreter\r
14 # rexx.lib     static link library of the REXX interpreter, place anywhere\r
15 #              in a directory of your LIB-variable.\r
16 # regina.lib   link file for regina.dll, place anywhere in a directory of\r
17 #              your LIB-variable.\r
18 # regina.dll   dynamic link library of the REXX interpreter, place anywhere\r
19 #              in a directory of your PATH.\r
20 # regina.exe   dynamically bound REXX interpreter\r
21 #\r
22 # rxstack.exe  daemon process that provides external queues\r
23 #\r
24 # rxqueue.exe  program to access external queues\r
25 #\r
26 SRCDIR=$(REGINA_SRCDIR)\r
27 #\r
28 #                      USER CONFIGURABLE VARIABLES\r
29 #\r
30 # Please specify the current directory of the sources:\r
31 #\r
32 SRCDIR=d:\regina\r
33 COMMONSRCDIR=$(SRCDIR)\common\r
35 #include $(SRCDIR)\regina.ver\r
36 #VERDOT = $(VER_DOT)\r
37 #VERDATE = $(VER_DATE)\r
39 VER=34\r
40 VERDOT=3.4\r
41 VER_MAJOR=3\r
42 VER_MINOR=4\r
43 VERDATE="15 Feb 2006"\r
44 VER_SUPP=""\r
46 CC = lcc\r
48 #DEBUGFLAG  = -g5\r
49 #OPTIMIZE =\r
50 DEBUGFLAG  = -DNDEBUG\r
51 OPTIMIZE = -O\r
53 THREADING =\r
55 DYN_COMP = -DDYNAMIC\r
57 LIBS = advapi32.lib user32.lib #libc.lib\r
58 WINSOCK = wsock32.lib\r
59 SERVICELIBS = libc.lib kernel32.lib advapi32.lib shell32.lib\r
60 # seems that lcc can't create thread-safe DLLs ???\r
61 SHL_TARGETS= regina.exe rxtest1.dll rxtest2.dll\r
62 LD     = lcclnk\r
63 LIBFLAGS = /out:rexx.lib\r
64 LIBLINK = regina.lib\r
65 LINKSHL = regina.lib\r
66 LD_RXLIBPRE=$(LD)  -DLL -o $@\r
67 LD_RXLIB1= test1_lcc_dll.def\r
68 LD_RXLIB2= test2_lcc_dll.def\r
69 MV= -ren\r
70 #\r
71 CEXTRA = -DWIN32 $(REXXSOCKET) -DREGINA_VERSION_DATE=\"$(VERDATE)\" -DREGINA_VERSION_MAJOR=\"$(VER_MAJOR)\" -DREGINA_VERSION_MINOR=\"$(VER_MINOR)\" -DREGINA_VERSION_SUPP=\"$(VER_SUPP)\"\r
73 CC2O=-Fo$@\r
74 #\r
75 # Include the common rules for the interpreter\r
76 #\r
78 #\r
79 # Some settings that you may wish to change, these are used only\r
80 # for the 'install' target:\r
81 #\r
82 #   TOPDIR    The top of the directory hierarchy in which to install\r
83 #   BINDIR    Where to install the compiled 'rexx' program\r
84 #   LIBDIR    Where to install the 'regina' library\r
85 #   MANEXT    The extention of the manual page\r
86 #   MANDIR    Where to install the manual page\r
87 #   PROGNAME  What to call the compiled program\r
88 #\r
89 BINDIR = $(TOPDIR)\bin\r
90 LIBDIR = $(TOPDIR)\lib\r
92 COPT = $(OPTIMIZE) $(DEBUGFLAG) $(CEXTRA) -I$(SRCDIR) $(MEMTRACE) $(NOFLISTS)\r
93 LINKOPT = $(EEXTRA) -version $(VERDOT)\r
94 OTHERCOPT = $(OPTIMIZE) $(DEBUGFLAG) $(CEXTRA) -I$(SRCDIR) $(MEMTRACE) $(NOFLISTS)\r
96 README = $(SRCDIR)/README.??? $(SRCDIR)/COPYING-LIB $(SRCDIR)/BUGS $(SRCDIR)/yaccsrc.bound\r
98 CSRCFILES = $(SRCDIR)\funcs.c $(SRCDIR)\builtin.c $(SRCDIR)\error.c $(SRCDIR)\variable.c \\r
99         $(SRCDIR)\interprt.c $(SRCDIR)\debug.c $(SRCDIR)\dbgfuncs.c $(SRCDIR)\memory.c $(SRCDIR)\parsing.c $(SRCDIR)\files.c \\r
100         $(SRCDIR)\misc.c $(SRCDIR)\unxfuncs.c $(SRCDIR)\arxfuncs.c $(SRCDIR)\cmsfuncs.c $(SRCDIR)\os2funcs.c $(SRCDIR)\shell.c $(SRCDIR)\rexxext.c $(SRCDIR)\stack.c \\r
101         $(SRCDIR)\tracing.c $(SRCDIR)\interp.c $(SRCDIR)\cmath.c $(SRCDIR)\convert.c $(SRCDIR)\strings.c $(SRCDIR)\library.c \\r
102         $(SRCDIR)\strmath.c $(SRCDIR)\signals.c $(SRCDIR)\macros.c $(SRCDIR)\envir.c $(SRCDIR)\expr.c $(SRCDIR)\rexxbif.c \\r
103         $(SRCDIR)\wrappers.c $(SRCDIR)\options.c $(SRCDIR)\os_win.c $(SRCDIR)\extstack.c \\r
104         $(SRCDIR)\mt_notmt.c $(SRCDIR)\mt_win32.c $(SRCDIR)\mt_posix.c $(SRCDIR)\nosaa.c \\r
105         $(SRCDIR)\ntservice\service.c $(SRCDIR)\os_other.c\r
107 OFILES = funcs.obj builtin.obj error.obj variable.obj \\r
108         interprt.obj debug.obj dbgfuncs.obj memory.obj parsing.obj files.obj \\r
109         misc.obj unxfuncs.obj arxfuncs.obj cmsfuncs.obj os2funcs.obj shell.obj rexxext.obj stack.obj extstack.obj \\r
110         tracing.obj interp.obj cmath.obj convert.obj strings.obj library.obj \\r
111         strmath.obj signals.obj macros.obj envir.obj expr.obj instore.obj rexxbif.obj \\r
112         yaccsrc.obj lexsrc.obj options.obj os_win.obj wrappers.obj mt_notmt.obj os_other.obj\r
114 SHOFILES = funcs.sho.obj builtin.sho.obj error.sho.obj variable.sho.obj extstack.sho.obj rexxbif.sho.obj \\r
115         interprt.sho.obj debug.sho.obj dbgfuncs.sho.obj memory.sho.obj parsing.sho.obj files.sho.obj \\r
116         misc.sho.obj unxfuncs.sho.obj arxfuncs.sho.obj cmsfuncs.sho.obj os2funcs.sho.obj shell.sho.obj rexxext.sho.obj stack.sho.obj \\r
117         tracing.sho.obj interp.sho.obj cmath.sho.obj convert.sho.obj strings.sho.obj library.sho.obj \\r
118         strmath.sho.obj signals.sho.obj macros.sho.obj envir.sho.obj expr.sho.obj instore.sho.obj \\r
119         yaccsrc.sho.obj lexsrc.sho.obj wrappers.sho.obj options.sho.obj os_win.sho.obj \\r
120         rexx.sho.obj client.sho.obj rexxsaa.sho.obj mt_notmt.sho.obj os_other.sho.obj\r
121 #mt_win32.sho.obj\r
123 DEMODIR = $(SRCDIR)\demo\r
124 DEMOFILES = $(DEMODIR)\*\r
125 TRIPDIR = $(SRCDIR)\trip\r
126 TRIPFILES = $(TRIPDIR)\*\r
127 UNIXFILES = $(SRCDIR)\*.in $(SRCDIR)\configure $(SRCDIR)\config.sub \\r
128         $(SRCDIR)\config.guess $(SRCDIR)\aclocal.m4 $(SRCDIR)\install-sh \\r
129         $(SRCDIR)\INSTALL $(SRCDIR)\yaccsrc.y $(SRCDIR)\lexsrc.l\r
131 ALLSRC = $(CFILES) $(HFILES)\r
133 HFILES = $(SRCDIR)\rexx.h $(SRCDIR)\defs.h $(SRCDIR)\extern.h $(SRCDIR)\regina_t.h \\r
134         $(SRCDIR)\config.h $(SRCDIR)\strings.h $(SRCDIR)\configur.h $(SRCDIR)\yaccsrc.h \\r
135         $(SRCDIR)\rxiface.h $(SRCDIR)\rexxsaa.h $(SRCDIR)\utsname.h \\r
136         $(SRCDIR)\mt.h $(SRCDIR)\mt_notmt.h $(SRCDIR)\mt_win32.h $(SRCDIR)\mt_posix.h \\r
137         $(SRCDIR)\ntservice\service.h\r
138 CFILES = $(SRCDIR)\yaccsrc.c $(SRCDIR)\lexsrc.c $(CSRCFILES) $(SRCDIR)\execiser.c \\r
139         $(SRCDIR)\rexxsaa.c $(SRCDIR)\rexx.c $(SRCDIR)\regina.c $(SRCDIR)\client.c \\r
140         $(SRCDIR)\r2perl.c $(SRCDIR)\test1.c $(SRCDIR)\test2.c\r
142 MTSSRC = $(SRCDIR)\en.mts $(SRCDIR)\pt.mts $(SRCDIR)\no.mts \\r
143         $(SRCDIR)\de.mts $(SRCDIR)\es.mts $(SRCDIR)\pl.mts \\r
144         $(SRCDIR)\tr.mts $(SRCDIR)\sv.mts\r
146 #.SUFFIXES: .sho $(SUFFIXES)\r
148 # Do not use default suffixes rule\r
150 .SUFFIXES:\r
152 all : rexx.exe rexx.lib execiser.exe $(SHL_TARGETS) rxstack.exe rxqueue.exe mtb_files #threader.exe\r
154 $(CSRCFILES) : $(SRCDIR)/rexx.h\r
156 $(SRCDIR)/rexx.h : $(SRCDIR)/extern.h $(SRCDIR)/strings.h $(SRCDIR)/defs.h $(SRCDIR)/regina_t.h $(SRCDIR)/mt.h\r
158 rexx.exe : $(OFILES) rexx.obj rexxw32exe.res nosaa.obj\r
159         $(LD) $(LINKOPT) $(STATIC_LDFLAGS) -o rexx.exe $(OFILES) rexx.obj rexxw32exe.res nosaa.obj $(LIBS) $(WINSOCK)\r
161 regina.exe : regina.dll regina.obj reginaw32exe.res\r
162         $(LD) $(LINKOPT) $(DYNAMIC_LDFLAGS) -o regina.exe regina.obj reginaw32exe.res $(LINKSHL) $(LIBS) $(WINSOCK)\r
164 execiser.exe : execiser.obj regina.dll\r
165         $(LD) $(LINKOPT) -o execiser.exe execiser.obj $(LIBLINK)\r
167 rxqueue.exe : rxqueue.obj erexxbif.obj eextstack.obj rxqueuew32exe.res\r
168         $(LD) $(LINKOPT) -o rxqueue.exe rxqueue.obj erexxbif.obj eextstack.obj rxqueuew32exe.res $(WINSOCK)\r
170 rxstack.exe : rxstack.obj erexxbif_mt.obj eextstack_mt.obj service.obj rxstackw32exe.res\r
171         $(LD) $(LINKOPT) -o rxstack.exe rxstack.obj erexxbif_mt.obj eextstack_mt.obj service.obj rxstackw32exe.res $(WINSOCK) $(SERVICELIBS)\r
173 threader.exe : threader.obj regina.dll\r
174         $(LD) $(LINKOPT) -o threader.exe threader.obj $(LIBLINK)\r
176 rexx.lib: $(OFILES) client.obj drexx.obj rexxsaa.obj\r
177         lcclib $(LIBFLAGS) $(OFILES) client.obj drexx.obj rexxsaa.obj\r
179 regina.dll: $(SHOFILES) reginaw32dll.res regina_lcc_dll.def\r
180         $(LD) $(LINKOPT) -nounderscores -DLL -o regina.dll regina_lcc_dll.def reginaw32dll.res *.sho.obj $(LIBS) $(WINSOCK)\r
182 regina_lcc_dll.def: $(SRCDIR)\regina_w32_dll.def rexx.exe\r
183         rexx $(SRCDIR)\vcdef2lccdef.rexx $(SRCDIR)\regina_w32_dll.def regina_lcc_dll.def\r
186 # Convert .mts to .mtb\r
188 mtb_files: msgcmp.exe $(MTSSRC)\r
189         msgcmp $(MTSSRC)\r
191 msgcmp.exe: msgcmp.obj\r
192         $(LD) $(LINKOPT) -o msgcmp.exe msgcmp.obj\r
194 msgcmp.obj: $(SRCDIR)/msgcmp.c\r
195         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/msgcmp.c\r
198 # Rules for static objects\r
200 funcs.obj :   $(SRCDIR)/funcs.c\r
201         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/funcs.c\r
203 builtin.obj : $(SRCDIR)/builtin.c\r
204         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/builtin.c\r
206 error.obj :   $(SRCDIR)/error.c\r
207         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/error.c\r
209 variable.obj :$(SRCDIR)/variable.c\r
210         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/variable.c\r
212 interprt.obj :$(SRCDIR)/interprt.c\r
213         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/interprt.c\r
215 debug.obj :   $(SRCDIR)/debug.c\r
216         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/debug.c\r
218 dbgfuncs.obj :$(SRCDIR)/dbgfuncs.c\r
219         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/dbgfuncs.c\r
221 memory.obj :  $(SRCDIR)/memory.c\r
222         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/memory.c\r
224 parsing.obj : $(SRCDIR)/parsing.c\r
225         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/parsing.c\r
227 files.obj :   $(SRCDIR)/files.c\r
228         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/files.c\r
230 misc.obj :    $(SRCDIR)/misc.c\r
231         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/misc.c\r
233 unxfuncs.obj :$(SRCDIR)/unxfuncs.c\r
234         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/unxfuncs.c\r
236 arxfuncs.obj :$(SRCDIR)/arxfuncs.c\r
237         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/arxfuncs.c\r
239 os2funcs.obj :$(SRCDIR)/os2funcs.c\r
240         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/os2funcs.c\r
242 cmsfuncs.obj :$(SRCDIR)/cmsfuncs.c\r
243         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/cmsfuncs.c\r
245 shell.obj :   $(SRCDIR)/shell.c\r
246         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/shell.c\r
248 rexxext.obj : $(SRCDIR)/rexxext.c\r
249         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/rexxext.c\r
251 stack.obj :   $(SRCDIR)/stack.c\r
252         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/stack.c\r
254 tracing.obj : $(SRCDIR)/tracing.c\r
255         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/tracing.c\r
257 interp.obj :  $(SRCDIR)/interp.c\r
258         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/interp.c\r
260 cmath.obj :   $(SRCDIR)/cmath.c\r
261         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/cmath.c\r
263 convert.obj : $(SRCDIR)/convert.c\r
264         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/convert.c\r
266 strings.obj : $(SRCDIR)/strings.c\r
267         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/strings.c\r
269 library.obj : $(SRCDIR)/library.c\r
270         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/library.c\r
272 strmath.obj : $(SRCDIR)/strmath.c\r
273         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/strmath.c\r
275 signals.obj : $(SRCDIR)/signals.c\r
276         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/signals.c\r
278 macros.obj :  $(SRCDIR)/macros.c\r
279         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/macros.c\r
281 envir.obj :   $(SRCDIR)/envir.c\r
282         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/envir.c\r
284 expr.obj :    $(SRCDIR)/expr.c\r
285         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/expr.c\r
287 wrappers.obj :$(SRCDIR)/wrappers.c\r
288         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/wrappers.c\r
290 options.obj : $(SRCDIR)/options.c\r
291         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/options.c\r
293 os_win.obj :  $(SRCDIR)/os_win.c\r
294         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/os_win.c\r
296 os_other.obj :  $(SRCDIR)/os_other.c\r
297         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/os_other.c\r
299 rexx.obj :    $(SRCDIR)/rexx.c\r
300         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/rexx.c\r
302 client.obj :    $(SRCDIR)/client.c\r
303         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/client.c\r
305 rexxsaa.obj :    $(SRCDIR)/rexxsaa.c   $(SRCDIR)\rexxsaa.h\r
306         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/rexxsaa.c\r
308 regina.obj :  $(SRCDIR)/regina.c\r
309         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/regina.c\r
311 drexx.obj : $(SRCDIR)/rexx.c\r
312         $(CC) $(COPT) -c -DRXLIB $(CC2O) $(SRCDIR)/rexx.c\r
314 mt_notmt.obj : $(SRCDIR)/mt_notmt.c\r
315         $(CC) $(COPT) -c $(CC2O) $(SRCDIR)/mt_notmt.c\r
317 mt_win32.obj : $(SRCDIR)/mt_win32.c\r
318         $(CC) $(COPT) -c $(CC2O) $(SRCDIR)/mt_win32.c\r
320 nosaa.obj : $(SRCDIR)/nosaa.c\r
321         $(CC) $(COPT) -c $(CC2O) $(SRCDIR)/nosaa.c\r
323 instore.obj : $(SRCDIR)/instore.c\r
324         $(CC) $(COPT) -c $(CC2O) $(SRCDIR)/instore.c\r
326 lexsrc.obj : $(SRCDIR)/lexsrc.c $(SRCDIR)/rexx.h $(SRCDIR)/yaccsrc.h\r
327         $(CC) $(OTHERCOPT) $(CC2O) -c $(SRCDIR)/lexsrc.c\r
329 yaccsrc.obj : $(SRCDIR)/yaccsrc.c $(SRCDIR)/defs.h $(SRCDIR)/rexx.h\r
330         $(CC) $(OTHERCOPT) $(CC2O) -c -DYYMAXDEPTH=10000 $(SRCDIR)/yaccsrc.c\r
332 extstack.obj : $(SRCDIR)/extstack.c $(SRCDIR)/rexx.h\r
333         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/extstack.c\r
335 execiser.obj : $(SRCDIR)/execiser.c $(SRCDIR)/rexx.h\r
336         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/execiser.c\r
338 rxqueue.obj : $(SRCDIR)/rxqueue.c $(SRCDIR)/rexx.h\r
339         $(CC) -DEXTERNAL_TO_REGINA $(COPT) $(CC2O) -c $(SRCDIR)/rxqueue.c\r
341 rxstack.obj : $(SRCDIR)/rxstack.c $(SRCDIR)/rexx.h $(SRCDIR)/ntservice/service.h\r
342         $(CC) -DEXTERNAL_TO_REGINA -DBUILD_NT_SERVICE -I$(SRCDIR) -I$(SRCDIR)/ntservice $(TSCOPT) $(CC2O) -c $(SRCDIR)/rxstack.c\r
344 service.obj : $(SRCDIR)/ntservice/service.c $(SRCDIR)/ntservice/service.h\r
345         $(CC) -I$(SRCDIR)/ntservice $(TSCOPT) $(CC2O) -c $(SRCDIR)/ntservice/service.c\r
347 rexxbif.obj : $(SRCDIR)/rexxbif.c $(SRCDIR)/rexxbif.h\r
348         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/rexxbif.c\r
350 rexxbif_mt.obj : $(SRCDIR)/rexxbif.c $(SRCDIR)/rexxbif.h\r
351         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/rexxbif.c\r
353 erexxbif.obj : $(SRCDIR)/rexxbif.c $(SRCDIR)/rexxbif.h\r
354         $(CC) -DEXTERNAL_TO_REGINA $(COPT) $(CC2O) -c $(SRCDIR)/rexxbif.c\r
356 erexxbif_mt.obj : $(SRCDIR)/rexxbif.c $(SRCDIR)/rexxbif.h\r
357         $(CC) -DEXTERNAL_TO_REGINA $(COPT) $(CC2O) -c $(SRCDIR)/rexxbif.c\r
359 eextstack.obj : $(SRCDIR)/extstack.c $(SRCDIR)/rexx.h\r
360         $(CC) -DEXTERNAL_TO_REGINA $(COPT) $(CC2O) -c $(SRCDIR)/extstack.c\r
362 eextstack_mt.obj : $(SRCDIR)/extstack.c $(SRCDIR)/rexx.h\r
363         $(CC) -DEXTERNAL_TO_REGINA $(COPT) $(CC2O) -c $(SRCDIR)/extstack.c\r
366 # Rules for shared objects\r
368 funcs.sho.obj :   $(SRCDIR)/funcs.c\r
369         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/funcs.c\r
371 builtin.sho.obj : $(SRCDIR)/builtin.c\r
372         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/builtin.c\r
374 error.sho.obj :   $(SRCDIR)/error.c\r
375         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/error.c\r
377 variable.sho.obj :$(SRCDIR)/variable.c\r
378         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/variable.c\r
380 interprt.sho.obj :$(SRCDIR)/interprt.c\r
381         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/interprt.c\r
383 debug.sho.obj :   $(SRCDIR)/debug.c\r
384         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/debug.c\r
386 dbgfuncs.sho.obj :$(SRCDIR)/dbgfuncs.c\r
387         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/dbgfuncs.c\r
389 memory.sho.obj :  $(SRCDIR)/memory.c\r
390         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/memory.c\r
392 parsing.sho.obj : $(SRCDIR)/parsing.c\r
393         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/parsing.c\r
395 files.sho.obj :   $(SRCDIR)/files.c\r
396         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/files.c\r
398 misc.sho.obj :    $(SRCDIR)/misc.c\r
399         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/misc.c\r
401 unxfuncs.sho.obj :$(SRCDIR)/unxfuncs.c\r
402         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/unxfuncs.c\r
404 arxfuncs.sho.obj :$(SRCDIR)/arxfuncs.c\r
405         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/arxfuncs.c\r
407 os2funcs.sho.obj :$(SRCDIR)/os2funcs.c\r
408         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/os2funcs.c\r
410 cmsfuncs.sho.obj :$(SRCDIR)/cmsfuncs.c\r
411         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/cmsfuncs.c\r
413 shell.sho.obj :   $(SRCDIR)/shell.c\r
414         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/shell.c\r
416 rexxext.sho.obj : $(SRCDIR)/rexxext.c\r
417         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/rexxext.c\r
419 stack.sho.obj :   $(SRCDIR)/stack.c\r
420         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/stack.c\r
422 tracing.sho.obj : $(SRCDIR)/tracing.c\r
423         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/tracing.c\r
425 interp.sho.obj :  $(SRCDIR)/interp.c\r
426         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/interp.c\r
428 cmath.sho.obj :   $(SRCDIR)/cmath.c\r
429         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/cmath.c\r
431 convert.sho.obj : $(SRCDIR)/convert.c\r
432         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/convert.c\r
434 strings.sho.obj : $(SRCDIR)/strings.c\r
435         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/strings.c\r
437 library.sho.obj : $(SRCDIR)/library.c\r
438         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/library.c\r
440 strmath.sho.obj : $(SRCDIR)/strmath.c\r
441         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/strmath.c\r
443 signals.sho.obj : $(SRCDIR)/signals.c\r
444         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/signals.c\r
446 macros.sho.obj :  $(SRCDIR)/macros.c\r
447         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/macros.c\r
449 envir.sho.obj :   $(SRCDIR)/envir.c\r
450         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/envir.c\r
452 expr.sho.obj :    $(SRCDIR)/expr.c\r
453         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/expr.c\r
455 wrappers.sho.obj :$(SRCDIR)/wrappers.c\r
456         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/wrappers.c\r
458 options.sho.obj : $(SRCDIR)/options.c\r
459         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/options.c\r
461 os_win.sho.obj :  $(SRCDIR)/os_win.c\r
462         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/os_win.c\r
464 os_other.sho.obj :  $(SRCDIR)/os_other.c\r
465         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/os_other.c\r
467 client.sho.obj :  $(SRCDIR)/client.c\r
468         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/client.c\r
470 rexxsaa.sho.obj :  $(SRCDIR)/rexxsaa.c  $(SRCDIR)\rexxsaa.h\r
471         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/rexxsaa.c\r
473 rexx.sho.obj : $(SRCDIR)/rexx.c\r
474         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c -DRXLIB $(SRCDIR)/rexx.c\r
476 instore.sho.obj :  $(SRCDIR)/instore.c\r
477         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/instore.c\r
479 mt_notmt.sho.obj :$(SRCDIR)/mt_notmt.c\r
480         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/mt_notmt.c\r
482 mt_win32.sho.obj : $(SRCDIR)/mt_win32.c\r
483         $(CC) $(COPT) -c $(CC2O) $(DYN_COMP) $(SRCDIR)/mt_win32.c\r
485 lexsrc.sho.obj : $(SRCDIR)/lexsrc.c $(SRCDIR)/rexx.h $(SRCDIR)/yaccsrc.h\r
486         $(CC) $(OTHERCOPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/lexsrc.c\r
488 yaccsrc.sho.obj : $(SRCDIR)/yaccsrc.c $(SRCDIR)/defs.h $(SRCDIR)/rexx.h\r
489         $(CC) $(OTHERCOPT) $(CC2O) $(DYN_COMP) -c -DYYMAXDEPTH=10000 $(SRCDIR)/yaccsrc.c\r
491 extstack.sho.obj : $(SRCDIR)/extstack.c $(SRCDIR)/rexx.h\r
492         $(CC) $(OTHERCOPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/extstack.c\r
494 rexxbif.sho.obj : $(SRCDIR)/rexxbif.c $(SRCDIR)/rexx.h\r
495         $(CC) $(OTHERCOPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/rexxbif.c\r
498 # Rules for sample programs\r
500 test1.obj: $(SRCDIR)/test1.c\r
501         $(CC) -c $(COPT) $(CC2O) $(DYN_COMP) $(SRCDIR)/test1.c\r
503 rxtest1.dll: test1.obj regina.dll test1_lcc_dll.def\r
504         $(LD_RXLIBPRE) -nounderscores $(LD_RXLIB1) test1.obj $(LINKSHL)\r
506 test2.obj: $(SRCDIR)/test2.c\r
507         $(CC) -c $(COPT) $(CC2O) $(DYN_COMP) $(SRCDIR)/test2.c\r
509 rxtest2.dll: test2.obj regina.dll test2_lcc_dll.def\r
510         $(LD_RXLIBPRE) -nounderscores $(LD_RXLIB2) test2.obj $(LINKSHL)\r
512 test1_lcc_dll.def: $(SRCDIR)\test1_w32_dll.def rexx.exe\r
513         rexx $(SRCDIR)\vcdef2lccdef.rexx $(SRCDIR)\test1_w32_dll.def test1_lcc_dll.def\r
515 test2_lcc_dll.def: $(SRCDIR)\test2_w32_dll.def rexx.exe\r
516         rexx $(SRCDIR)\vcdef2lccdef.rexx $(SRCDIR)\test2_w32_dll.def test2_lcc_dll.def\r
519 # Rules for resource files and version details\r
520 # We assume we have an already functional regina.exe\r
522 reginaw32dll.rc: $(SRCDIR)\regina.ver $(SRCDIR)\reginaw32dll.rc\r
523         regina $(COMMONSRCDIR)\fixrc.rexx $(SRCDIR)\reginaw32dll.rc .\reginaw32dll.rc $(VERDOT) $(VERDATE)\r
524 reginaw32exe.rc: $(SRCDIR)\regina.ver $(SRCDIR)\reginaw32exe.rc\r
525         regina $(COMMONSRCDIR)\fixrc.rexx $(SRCDIR)\reginaw32exe.rc .\reginaw32exe.rc $(VERDOT) $(VERDATE)\r
526 rxstackw32exe.rc: $(SRCDIR)\regina.ver $(SRCDIR)\rxstackw32exe.rc\r
527         regina $(COMMONSRCDIR)\fixrc.rexx $(SRCDIR)\rxstackw32exe.rc .\rxstackw32exe.rc $(VERDOT) $(VERDATE)\r
528 rxqueuew32exe.rc: $(SRCDIR)\regina.ver $(SRCDIR)\rxqueuew32exe.rc\r
529         regina $(COMMONSRCDIR)\fixrc.rexx $(SRCDIR)\rxqueuew32exe.rc .\rxqueuew32exe.rc $(VERDOT) $(VERDATE)\r
530 rexxw32exe.rc: $(SRCDIR)\regina.ver $(SRCDIR)\rexxw32exe.rc\r
531         regina $(COMMONSRCDIR)\fixrc.rexx $(SRCDIR)\rexxw32exe.rc .\rexxw32exe.rc $(VERDOT) $(VERDATE)\r
534 # Rules for resources\r
536 reginaw32dll.res: reginaw32dll.rc\r
537         -copy $(SRCDIR)\reginaw32.ico .\r
538         lrc /r /foreginaw32dll.res /i$(SRCDIR) .\reginaw32dll.rc\r
540 reginaw32exe.res: reginaw32exe.rc\r
541         -copy $(SRCDIR)\reginaw32.ico .\r
542         lrc /r /foreginaw32exe.res /i$(SRCDIR)\ .\reginaw32exe.rc\r
544 rexxw32exe.res: rexxw32exe.rc\r
545         -copy $(SRCDIR)\reginaw32.ico .\r
546         lrc /r /forexxw32exe.res /i$(SRCDIR)\ .\rexxw32exe.rc\r
548 rxstackw32exe.res: rxstackw32exe.rc\r
549         -copy $(SRCDIR)\reginaw32.ico .\r
550         lrc /r /forxstackw32exe.res /i$(SRCDIR)\ .\rxstackw32exe.rc\r
552 rxqueuew32exe.res: rxqueuew32exe.rc\r
553         -copy $(SRCDIR)\reginaw32.ico .\r
554         lrc /r /forxqueuew32exe.res /i$(SRCDIR)\ .\rxqueuew32exe.rc\r
557 ARCHIVE_FILES = $(ALLSRC) $(README) $(SRCDIR)/makefile.* $(SRCDIR)/oldmakefiles/makefile* \\r
558         $(SRCDIR)/oldmakefiles/README $(SRCDIR)/*.rsp $(DEMOFILES) $(TRIPFILES) \\r
559         $(CONFFILES) $(SRCDIR)/*.def $(SRCDIR)/*.ico $(SRCDIR)/*.rc \\r
560         $(SRCDIR)/file_id* $(SRCDIR)/*.bat $(SRCDIR)/*.cmd $(YACCLEX_FILES) \\r
561         $(SRCDIR)/*.rexx $(UNIXFILES)\r
563 zip:\r
564         zip regna$(VER) $(ARCHIVE_FILES)\r
567 # Build NSIS package...\r
569 dist: all\r
570         copy $(SRCDIR)\regina_ss.ini .\r
571         copy $(SRCDIR)\regina_fa.ini .\r
572         makensis /DVERSION=$(VERDOT) /DNODOTVER=$(VER) ..\regina.nsi\r