2 # Makefile for Regina REXX Interpreter
4 # Using gcc 3.3.5 on OS/2 with GNU make
7 SRCDIR=$(REGINA_SRCDIR)
8 REGUTILSRCDIR=$(SRCDIR)\regutil
11 include $(SRCDIR)\regina.ver
16 OPTIMIZE = -g -fbounds-checking -Wall
17 OPTIMIZE_DLL = -g -Wall
21 OPTIMIZE = -O3 -fomit-frame-pointer -Wall -DNDEBUG
22 OPTIMIZE_DLL = -O -Wall -DNDEBUG
30 THREADING_FILE = mt_notmt
32 THREADING = -Zmt -DREGINA_MULTI
34 THREADING_FILE = mt_os2
37 DYN_COMP = -DDYNAMIC -Zdll $(DYN_CRT)
46 USEFLISTS = -DNOFLISTS
58 GCI_SHO = gci_call.obj gci_convert.obj gci_execute.obj gci_helper.obj \
59 gci_prepare.obj gci_reginabridge.obj gci_rxfuncdefine.obj \
61 HAVE_GCI = -DHAVE_GCI -I$(SRCDIR)\gci -I.
64 DYN_CRT = -Zcrtdll -Zomf -mprobe
65 CEXTRA = -DOS2 -DEMX -funsigned-char $(HAVE_GCI) -DREGINA_VERSION_DATE=\"$(VER_DATE)\" -DREGINA_VERSION_MAJOR=\"$(VER_MAJOR)\" -DREGINA_VERSION_MINOR=\"$(VER_MINOR)\" -DREGINA_VERSION_SUPP=\"$(VER_SUPP)\"
67 DYN_COMP = -DDYNAMIC -Zdll $(DYN_CRT)
70 SHLIBS = $(SHLLIB).$(SHLPST)
71 SHLIMPLIB = $(SHLLIB).$(SHLPST)
73 DYNAMIC_LDFLAGS = $(THREADING_LINK) $(STRIP_FLAG) -Zcrtdll -Zomf -mprobe
74 SHLDEF = $(SRCDIR)\$(SHLLIB)_os2_dll.def
75 SHL1 = emximp -o $(SHLLIB).$(LIBPST) $(SHLDEF)
76 SHL2 = emximp -o $(SHLLIB).lib $(SHLDEF)
82 LD_RXLIB_PRE = $(CC) -Zdll -Zomf -Zcrtdll #-Zso -Zsys
83 LD_RXLIB1 = -Zmap=test1.map -o rxtest1.dll $(SRCDIR)\test1_os2_dll.def $(SHLLIB).lib
84 LD_RXLIB2 = -Zmap=test2.map -o rxtest2.dll $(SRCDIR)\test2_os2_dll.def $(SHLLIB).lib
85 LD_REGUTIL = -Zmap=regutil.map -o regutil.dll $(REGUTILSRCDIR)\regutil.def $(SHLLIB).lib
86 SHL_LD=gcc $(THREADING_LINK) -Zdll -Zcrtdll -Zomf -Zmap=regina.map -o $(SHLFILE).$(SHL) $(SHOFILES) $(SHLDEF) $(SOCKET)
87 SHL_TARGETS = $(SHLFILE).$(SHL) $(SHLFILE)$(EXE) pmregina.exe rxtest1.$(SHL) rxtest2.$(SHL) regutil.$(SHL)
94 LIBFLAGS = cr $(LIBFILE).$(LIBPST)
95 LIBLINK = $(LIBFILE).$(LIBPST)
99 RC = rc reginaos2.rc $@
103 RANLIB_LIB=#ranlib $(LIBFILE).a
105 MISCDEFS = -I$(SRCDIR) -Wno-char-subscripts
106 #DEBUG = #-g -DNDEBUG #-Dlint
108 #OPTIMIZE = -O -DNDEBUG
110 COPT = $(DEBUGFLAG) $(CEXTRA) $(OPTIMIZE) $(PROF) $(MISCDEFS) $(MEMTRACE) $(USEFLISTS)
111 COPT_DLL = $(DEBUGFLAG) $(CEXTRA) $(OPTIMIZE_DLL) $(PROF) $(MISCDEFS) $(MEMTRACE) $(USEFLISTS) $(THREADING)
112 LINKOPT = $(DEBUGFLAG) $(OPTIMIZE) $(PROF) $(EEXTRA)
113 LINKOPT_DLL = $(DEBUGFLAG) $(OPTIMIZE_DLL) $(PROF) $(EEXTRA)
114 OTHERCOPT = $(DEBUGFLAG) $(OPTIMIZE) $(PROF) $(CEXTRA) $(MISCDEFS) $(MEMTRACE) $(USEFLISTS)
115 OTHERCOPT_DLL = $(DEBUGFLAG) $(OPTIMIZE_DLL) $(PROF) $(CEXTRA) $(MISCDEFS) $(MEMTRACE) $(USEFLISTS) $(THREADING)
118 #YACC = bison -ly #-d #-lyt
122 #LL = -L\store\lib -lfl
124 README = $(SRCDIR)\README.* COPYING-LIB
126 FILES = funcs builtin error variable interprt debug dbgfuncs \
127 memory parsing files misc os2funcs unxfuncs arxfuncs cmsfuncs shell rexxext stack \
128 tracing interp cmath convert strings library strmath signals \
129 macros envir wrappers options os_os2 os_other #r2perl
131 CSRCFILES = $(SRCDIR)\funcs.c $(SRCDIR)\builtin.c $(SRCDIR)\error.c $(SRCDIR)\variable.c \
132 $(SRCDIR)\interprt.c $(SRCDIR)\debug.c $(SRCDIR)\dbgfuncs.c $(SRCDIR)\memory.c $(SRCDIR)\parsing.c $(SRCDIR)\files.c \
133 $(SRCDIR)\misc.c $(SRCDIR)\unxfuncs.c $(SRCDIR)\arxfuncs.c $(SRCDIR)\cmsfuncs.c $(SRCDIR)\os2funcs.c $(SRCDIR)\shell.c $(SRCDIR)\rexxext.c $(SRCDIR)\stack.c \
134 $(SRCDIR)\tracing.c $(SRCDIR)\interp.c $(SRCDIR)\cmath.c $(SRCDIR)\convert.c $(SRCDIR)\strings.c $(SRCDIR)\library.c \
135 $(SRCDIR)\strmath.c $(SRCDIR)\signals.c $(SRCDIR)\macros.c $(SRCDIR)\envir.c $(SRCDIR)\expr.c \
136 $(SRCDIR)\wrappers.c $(SRCDIR)\options.c $(SRCDIR)\os_os2.c \
139 OFILES = funcs.$(OBJ) builtin.$(OBJ) error.$(OBJ) variable.$(OBJ) \
140 interprt.$(OBJ) debug.$(OBJ) dbgfuncs.$(OBJ) memory.$(OBJ) parsing.$(OBJ) files.$(OBJ) \
141 misc.$(OBJ) unxfuncs.$(OBJ) arxfuncs.$(OBJ) cmsfuncs.$(OBJ) os2funcs.$(OBJ) shell.$(OBJ) rexxext.$(OBJ) stack.$(OBJ) \
142 tracing.$(OBJ) interp.$(OBJ) cmath.$(OBJ) convert.$(OBJ) strings.$(OBJ) library.$(OBJ) \
143 strmath.$(OBJ) signals.$(OBJ) macros.$(OBJ) envir.$(OBJ) expr.$(OBJ) mt_notmt.$(OBJ) instore.$(OBJ) \
144 yaccsrc.$(OBJ) lexsrc.$(OBJ) options.$(OBJ) os_os2.$(OBJ) wrappers.$(OBJ) \
145 extstack.$(OBJ) rexxbif.$(OBJ) os_other.$(OBJ)
147 SHOFILES = funcs.obj builtin.obj error.obj variable.obj \
148 interprt.obj debug.obj dbgfuncs.obj memory.obj parsing.obj files.obj \
149 misc.obj unxfuncs.obj arxfuncs.obj cmsfuncs.obj shell.obj os2funcs.obj rexxext.obj stack.obj \
150 tracing.obj interp.obj cmath.obj convert.obj strings.obj library.obj \
151 strmath.obj signals.obj macros.obj envir.obj expr.obj $(THREADING_FILE).obj \
152 yaccsrc.obj lexsrc.obj wrappers.obj options.obj os_os2.obj \
153 drexx.obj client.obj rexxsaa.obj instore.obj \
154 extstack.obj rexxbif.obj os_other.obj \
156 REGUTILOFILES = regfilesys.obj regini.obj inifile.obj regmacrospace.obj regscreenos2.obj \
157 regsemos2.obj regutil.obj rxsupport.obj regstem.obj \
158 regunicode.obj regcrypt.obj
160 DEMODIR = $(SRCDIR)\demo
161 DEMOFILES = $(DEMODIR)\*
162 TRIPDIR = $(SRCDIR)\trip
163 TRIPFILES = $(TRIPDIR)\*
165 ALLSRC = $(CFILES) $(HFILES)
167 HFILES = $(SRCDIR)\rexx.h $(SRCDIR)\defs.h $(SRCDIR)\extern.h $(SRCDIR)\regina_t.h \
168 $(SRCDIR)\config.h $(SRCDIR)\strings.h $(SRCDIR)\configur.h $(SRCDIR)\yaccsrc.h \
169 $(SRCDIR)\rxiface.h $(SRCDIR)\rexxsaa.h $(SRCDIR)\utsname.h
171 CFILES = $(SRCDIR)\yaccsrc.c $(SRCDIR)\lexsrc.c $(CSRCFILES) $(SRCDIR)\execiser.c \
172 $(SRCDIR)\rexxsaa.c $(SRCDIR)\rexx.c $(SRCDIR)\regina.c $(SRCDIR)\client.c \
173 $(SRCDIR)\r2perl.c $(SRCDIR)\test1.c $(SRCDIR)\test2.c
175 MTSSRC = $(SRCDIR)\en.mts $(SRCDIR)\pt.mts $(SRCDIR)\no.mts \
176 $(SRCDIR)\de.mts $(SRCDIR)\es.mts $(SRCDIR)\pl.mts \
177 $(SRCDIR)\tr.mts $(SRCDIR)\sv.mts
179 GCIHEADERS = $(SRCDIR)\gci\gci.h $(SRCDIR)\gci\embedded.h gci_convert.h
181 #.SUFFIXES: .sho $(SUFFIXES)
183 # Do not use default suffixes rule
187 all : rexx$(EXE) $(LIBFILE).$(LIBPST) execiser$(EXE) rxstack$(EXE) rxqueue$(EXE) $(SHL_TARGETS) mtb_files threader$(EXE) rexx.dll rexxapi.dll
189 $(CSRCFILES) : $(SRCDIR)\rexx.h
191 $(SRCDIR)\rexx.h : $(SRCDIR)\extern.h $(SRCDIR)\strings.h $(SRCDIR)\defs.h $(SRCDIR)\regina_t.h $(SRCDIR)\mt.h
193 rexx$(EXE) : $(OFILES) rexx.$(OBJ) nosaa.$(OBJ)
194 $(CC) $(LINKOPT) $(STATIC_LDFLAGS) -o rexx$(EXE) $(OBJECTS) rexx.$(OBJ) nosaa.$(OBJ) $(LIBS) $(SOCKET)
195 -copy $(SRCDIR)\reginaos2.ico
196 -copy $(SRCDIR)\reginaos2.rc
198 -$(LXLITE) rexx$(EXE)
200 regina : $(SHLFILE).$(SHL) regina.obj $(GETOPT)
201 $(CC) $(LINKOPT_DLL) -Zexe $(DYNAMIC_LDFLAGS) -o regina $(SRCDIR)\regina_os2.def regina.obj $(LIBS) $(SHLIBS) $(SOCKET)
203 regina$(EXE) : regina
204 -copy $(SRCDIR)\reginaos2.ico
205 -copy $(SRCDIR)\reginaos2.rc
207 -$(LXLITE) regina$(EXE)
209 pmregina : $(SHLFILE).$(SHL) regina.obj $(GETOPT)
210 $(CC) $(LINKOPT_DLL) -Zexe $(DYNAMIC_LDFLAGS) -o pmregina regina.obj $(LIBS) $(SHLIBS) $(SOCKET) $(SRCDIR)\pmregina.def
212 pmregina$(EXE) : pmregina
213 -copy $(SRCDIR)\reginaos2.ico
214 -copy $(SRCDIR)\reginaos2.rc
216 -$(LXLITE) pmregina$(EXE)
218 execiser : execiser.obj $(SHLFILE).$(SHL)
219 $(CC) $(LINKOPT_DLL) -Zexe $(DYNAMIC_LDFLAGS) -o execiser execiser.obj $(LIBS) $(SHLIBS) $(SOCKET)
221 threader : threader.obj $(SHLFILE).$(SHL)
222 $(CC) $(LINKOPT_DLL) -Zexe $(DYNAMIC_LDFLAGS) -o threader threader.obj $(LIBS) $(SHLIBS) $(SOCKET)
224 execiser$(EXE) : execiser
225 -$(LXLITE) execiser$(EXE)
227 threader$(EXE) : threader
228 -$(LXLITE) threader$(EXE)
230 rxqueue$(EXE) : $(OFILES) rxqueue.$(OBJ) eextstack.$(OBJ) erexxbif.$(OBJ)
231 $(CC) $(LINKOPT) $(STATIC_LDFLAGS) -o rxqueue$(EXE) rxqueue.$(OBJ) eextstack.$(OBJ) erexxbif.$(OBJ) $(SOCKET)
232 -$(LXLITE) rxqueue$(EXE)
234 rxstack$(EXE) : $(OFILES) rxstack.$(OBJ) eextstack.$(OBJ) erexxbif.$(OBJ)
235 $(CC) $(LINKOPT) $(STATIC_LDFLAGS) -o rxstack$(EXE) rxstack.$(OBJ) eextstack.$(OBJ) erexxbif.$(OBJ) $(SOCKET)
236 -$(LXLITE) rxstack$(EXE)
238 $(LIBFILE).$(LIBPST): $(OFILES) client.$(OBJ) drexx.$(OBJ) rexxsaa.$(OBJ)
239 $(LIBEXE) $(LIBFLAGS) $(OBJECTS) client.$(OBJ) drexx.$(OBJ) rexxsaa.$(OBJ)
241 emxomf -p 32 -o $(LIBFILE).$(SHLPST) $(LIBFILE).$(LIBPST)
243 $(SHLFILE).$(SHL): $(SHOFILES) $(SHLDEF)
249 -copy $(SRCDIR)\reginaos2.ico
250 -copy $(SRCDIR)\reginaos2.rc
252 -$(LXLITE) $(SHLFILE).$(SHL)
254 rexx.dll: os2rexx.obj
255 gcc $(THREADING_LINK) -Zdll -Zcrtdll -Zomf -Zmap=rexx.map -o rexx.dll os2rexx.obj $(SRCDIR)\os2\rexx.def
257 rexxapi.dll: os2rexxapi.obj
258 gcc $(THREADING_LINK) -Zdll -Zcrtdll -Zomf -Zmap=rexxapi.map -o rexxapi.dll os2rexxapi.obj $(SRCDIR)\os2\rexxapi.def
260 os2rexx.obj: $(SRCDIR)\os2\rexx.c
261 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c -o os2rexx.obj $(SRCDIR)\os2\rexx.c
263 os2rexxapi.obj: $(SRCDIR)\os2\rexxapi.c
264 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c -o os2rexxapi.obj $(SRCDIR)\os2\rexxapi.c
267 # Convert .mts to .mtb
269 mtb_files: msgcmp$(EXE) $(MTSSRC)
272 msgcmp$(EXE): msgcmp.$(OBJ)
273 $(CC) $(LINKOPT) $(STATIC_LDFLAGS) -o msgcmp$(EXE) msgcmp.$(OBJ)
275 msgcmp.$(OBJ): $(SRCDIR)\msgcmp.c
276 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\msgcmp.c
279 # Rules for static objects
281 #$(SRCDIR)\lexsrc.c: $(SRCDIR)\lexsrc.l
282 # flex -Scontrib\flex.skl -8 -o$(SRCDIR)\lexsrc.c $(SRCDIR)\lexsrc.l
284 #$(SRCDIR)\yaccsrc.c $(SRCDIR)\yaccsrc.h: $(SRCDIR)\yaccsrc.y
285 # bison -d -o$(SRCDIR)\yaccsrc.c $(SRCDIR)\yaccsrc.y
287 funcs.$(OBJ) : $(SRCDIR)\funcs.c $(SRCDIR)\rexx.h
288 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\funcs.c
290 builtin.$(OBJ) : $(SRCDIR)\builtin.c $(SRCDIR)\rexx.h
291 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\builtin.c
293 error.$(OBJ) : $(SRCDIR)\error.c $(SRCDIR)\rexx.h
294 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\error.c
296 variable.$(OBJ) :$(SRCDIR)\variable.c $(SRCDIR)\rexx.h
297 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\variable.c
299 interprt.$(OBJ) :$(SRCDIR)\interprt.c $(SRCDIR)\rexx.h
300 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\interprt.c
302 debug.$(OBJ) : $(SRCDIR)\debug.c $(SRCDIR)\rexx.h
303 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\debug.c
305 dbgfuncs.$(OBJ) :$(SRCDIR)\dbgfuncs.c $(SRCDIR)\rexx.h
306 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\dbgfuncs.c
308 memory.$(OBJ) : $(SRCDIR)\memory.c $(SRCDIR)\rexx.h
309 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\memory.c
311 parsing.$(OBJ) : $(SRCDIR)\parsing.c $(SRCDIR)\rexx.h
312 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\parsing.c
314 files.$(OBJ) : $(SRCDIR)\files.c $(SRCDIR)\rexx.h
315 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\files.c
317 misc.$(OBJ) : $(SRCDIR)\misc.c $(SRCDIR)\rexx.h
318 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\misc.c
320 unxfuncs.$(OBJ) :$(SRCDIR)\unxfuncs.c $(SRCDIR)\rexx.h
321 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\unxfuncs.c
323 arxfuncs.$(OBJ) :$(SRCDIR)\arxfuncs.c $(SRCDIR)\rexx.h
324 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\arxfuncs.c
326 os2funcs.$(OBJ) :$(SRCDIR)\os2funcs.c $(SRCDIR)\rexx.h
327 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\os2funcs.c
329 cmsfuncs.$(OBJ) :$(SRCDIR)\cmsfuncs.c $(SRCDIR)\rexx.h
330 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\cmsfuncs.c
332 shell.$(OBJ) : $(SRCDIR)\shell.c $(SRCDIR)\rexx.h
333 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\shell.c
335 rexxext.$(OBJ) : $(SRCDIR)\rexxext.c $(SRCDIR)\rexx.h
336 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\rexxext.c
338 stack.$(OBJ) : $(SRCDIR)\stack.c $(SRCDIR)\rexx.h
339 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\stack.c
341 tracing.$(OBJ) : $(SRCDIR)\tracing.c $(SRCDIR)\rexx.h
342 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\tracing.c
344 interp.$(OBJ) : $(SRCDIR)\interp.c $(SRCDIR)\rexx.h
345 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\interp.c
347 cmath.$(OBJ) : $(SRCDIR)\cmath.c $(SRCDIR)\rexx.h
348 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\cmath.c
350 convert.$(OBJ) : $(SRCDIR)\convert.c $(SRCDIR)\rexx.h
351 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\convert.c
353 strings.$(OBJ) : $(SRCDIR)\strings.c $(SRCDIR)\rexx.h
354 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\strings.c
356 library.$(OBJ) : $(SRCDIR)\library.c $(SRCDIR)\rexx.h
357 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\library.c
359 strmath.$(OBJ) : $(SRCDIR)\strmath.c $(SRCDIR)\rexx.h
360 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\strmath.c
362 signals.$(OBJ) : $(SRCDIR)\signals.c $(SRCDIR)\rexx.h
363 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\signals.c
365 macros.$(OBJ) : $(SRCDIR)\macros.c $(SRCDIR)\rexx.h
366 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\macros.c
368 envir.$(OBJ) : $(SRCDIR)\envir.c $(SRCDIR)\rexx.h
369 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\envir.c
371 expr.$(OBJ) : $(SRCDIR)\expr.c $(SRCDIR)\rexx.h
372 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\expr.c
374 wrappers.$(OBJ) :$(SRCDIR)\wrappers.c $(SRCDIR)\rexx.h
375 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\wrappers.c
377 options.$(OBJ) : $(SRCDIR)\options.c $(SRCDIR)\rexx.h
378 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\options.c
380 os_os2.$(OBJ) : $(SRCDIR)\os_os2.c $(SRCDIR)\rexx.h
381 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\os_os2.c
383 os_other.$(OBJ) : $(SRCDIR)\os_other.c $(SRCDIR)\rexx.h
384 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\os_other.c
386 rexx.$(OBJ) : $(SRCDIR)\rexx.c $(SRCDIR)\rexx.h
387 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\rexx.c
389 client.$(OBJ) : $(SRCDIR)\client.c $(SRCDIR)\rexx.h
390 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\client.c
392 rexxsaa.$(OBJ) : $(SRCDIR)\rexxsaa.c $(SRCDIR)\rexx.h
393 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\rexxsaa.c
395 nosaa.$(OBJ) : $(SRCDIR)\nosaa.c $(SRCDIR)\rexx.h
396 $(CC) $(COPT) $(CC2O) -c $(SRCDIR)\nosaa.c
398 regina.obj : $(SRCDIR)\regina.c $(SRCDIR)\rexx.h
399 $(CC) $(COPT_DLL) $(CC2O) $(DYN_CRT) -c $(SRCDIR)\regina.c
401 drexx.$(OBJ) : $(SRCDIR)\rexx.c $(SRCDIR)\rexx.h
402 $(CC) $(COPT) -c -o drexx.$(OBJ) -DRXLIB $(SRCDIR)\rexx.c
404 mt_notmt.$(OBJ) : $(SRCDIR)\mt_notmt.c
405 $(CC) $(COPT) -c -o mt_notmt.$(OBJ) $(SRCDIR)\mt_notmt.c
407 mt_os2.$(OBJ) : $(SRCDIR)\mt_os2.c
408 $(CC) $(COPT) -c -o mt_os2.$(OBJ) $(SRCDIR)\mt_os2.c
410 instore.$(OBJ) : $(SRCDIR)\instore.c
411 $(CC) $(COPT) -c -o instore.$(OBJ) $(SRCDIR)\instore.c
413 extstack.$(OBJ) : $(SRCDIR)\extstack.c $(SRCDIR)\rexxbif.h $(SRCDIR)\extstack.h
414 $(CC) $(COPT) -c -o extstack.$(OBJ) $(SRCDIR)\extstack.c
416 eextstack.$(OBJ) : $(SRCDIR)\extstack.c $(SRCDIR)\rexxbif.h $(SRCDIR)\extstack.h
417 $(CC) -DEXTERNAL_TO_REGINA $(COPT) -c -o eextstack.$(OBJ) $(SRCDIR)\extstack.c
419 rexxbif.$(OBJ) : $(SRCDIR)\rexxbif.c $(SRCDIR)\rexxbif.h
420 $(CC) $(COPT) -c -o rexxbif.$(OBJ) $(SRCDIR)\rexxbif.c
422 erexxbif.$(OBJ) : $(SRCDIR)\rexxbif.c $(SRCDIR)\rexxbif.h $(SRCDIR)\extstack.h
423 $(CC) -DEXTERNAL_TO_REGINA $(COPT) -c -o erexxbif.$(OBJ) $(SRCDIR)\rexxbif.c
425 rxqueue.$(OBJ) : $(SRCDIR)\rxqueue.c $(SRCDIR)\rexxbif.h $(SRCDIR)\extstack.h
426 $(CC) -DEXTERNAL_TO_REGINA $(COPT) -c -o rxqueue.$(OBJ) $(SRCDIR)\rxqueue.c
428 rxstack.$(OBJ) : $(SRCDIR)\rxstack.c $(SRCDIR)\rexxbif.h $(SRCDIR)\extstack.h
429 $(CC) -DEXTERNAL_TO_REGINA $(COPT) -c -o rxstack.$(OBJ) $(SRCDIR)\rxstack.c
431 lexsrc.$(OBJ) : $(SRCDIR)\lexsrc.c $(SRCDIR)\rexx.h $(SRCDIR)\yaccsrc.h
432 $(CC) $(OTHERCOPT) $(CC2O) -c $(SRCDIR)\lexsrc.c
434 yaccsrc.$(OBJ) : $(SRCDIR)\yaccsrc.c $(SRCDIR)\defs.h $(SRCDIR)\rexx.h
435 $(CC) $(OTHERCOPT) $(CC2O) -c -DYYMAXDEPTH=10000 $(SRCDIR)\yaccsrc.c
437 execiser.obj : $(SRCDIR)\execiser.c $(SRCDIR)\rexx.h
438 $(CC) $(COPT_DLL) $(CC2O) $(DYN_CRT) -c $(SRCDIR)\execiser.c
440 getopt.obj : $(SRCDIR)\getopt.c
441 $(CC) $(COPT_DLL) $(CC2O) -c $(SRCDIR)\getopt.c
444 # Rules for shared objects
446 funcs.obj : $(SRCDIR)\funcs.c $(SRCDIR)\rexx.h
448 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\funcs.c
452 builtin.obj : $(SRCDIR)\builtin.c $(SRCDIR)\rexx.h
454 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\builtin.c
458 error.obj : $(SRCDIR)\error.c $(SRCDIR)\rexx.h
460 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\error.c
464 variable.obj :$(SRCDIR)\variable.c $(SRCDIR)\rexx.h
466 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\variable.c
470 interprt.obj :$(SRCDIR)\interprt.c $(SRCDIR)\rexx.h
472 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\interprt.c
476 debug.obj : $(SRCDIR)\debug.c $(SRCDIR)\rexx.h
478 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\debug.c
482 dbgfuncs.obj :$(SRCDIR)\dbgfuncs.c $(SRCDIR)\rexx.h
484 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\dbgfuncs.c
488 memory.obj : $(SRCDIR)\memory.c $(SRCDIR)\rexx.h
490 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\memory.c
494 parsing.obj : $(SRCDIR)\parsing.c $(SRCDIR)\rexx.h
496 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\parsing.c
500 files.obj : $(SRCDIR)\files.c $(SRCDIR)\rexx.h
502 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\files.c
506 misc.obj : $(SRCDIR)\misc.c $(SRCDIR)\rexx.h
508 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\misc.c
512 unxfuncs.obj :$(SRCDIR)\unxfuncs.c $(SRCDIR)\rexx.h
514 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\unxfuncs.c
518 arxfuncs.obj :$(SRCDIR)\arxfuncs.c $(SRCDIR)\rexx.h
520 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\arxfuncs.c
524 os2funcs.obj :$(SRCDIR)\os2funcs.c $(SRCDIR)\rexx.h
526 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\os2funcs.c
530 cmsfuncs.obj :$(SRCDIR)\cmsfuncs.c $(SRCDIR)\rexx.h
532 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\cmsfuncs.c
536 shell.obj : $(SRCDIR)\shell.c $(SRCDIR)\rexx.h
538 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\shell.c
542 rexxext.obj : $(SRCDIR)\rexxext.c $(SRCDIR)\rexx.h
544 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\rexxext.c
548 stack.obj : $(SRCDIR)\stack.c $(SRCDIR)\rexx.h
550 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\stack.c
554 tracing.obj : $(SRCDIR)\tracing.c $(SRCDIR)\rexx.h
556 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\tracing.c
560 interp.obj : $(SRCDIR)\interp.c $(SRCDIR)\rexx.h
562 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\interp.c
566 cmath.obj : $(SRCDIR)\cmath.c $(SRCDIR)\rexx.h
568 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\cmath.c
572 convert.obj : $(SRCDIR)\convert.c $(SRCDIR)\rexx.h
574 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\convert.c
578 strings.obj : $(SRCDIR)\strings.c $(SRCDIR)\rexx.h
580 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\strings.c
584 library.obj : $(SRCDIR)\library.c $(SRCDIR)\rexx.h
586 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\library.c
590 strmath.obj : $(SRCDIR)\strmath.c $(SRCDIR)\rexx.h
592 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\strmath.c
596 signals.obj : $(SRCDIR)\signals.c $(SRCDIR)\rexx.h
598 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\signals.c
602 macros.obj : $(SRCDIR)\macros.c $(SRCDIR)\rexx.h
604 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\macros.c
608 envir.obj : $(SRCDIR)\envir.c $(SRCDIR)\rexx.h
610 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\envir.c
614 expr.obj : $(SRCDIR)\expr.c $(SRCDIR)\rexx.h
616 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\expr.c
620 wrappers.obj :$(SRCDIR)\wrappers.c $(SRCDIR)\rexx.h
622 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\wrappers.c
626 options.obj : $(SRCDIR)\options.c $(SRCDIR)\rexx.h
628 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\options.c
632 os_os2.obj : $(SRCDIR)\os_os2.c $(SRCDIR)\rexx.h
634 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\os_os2.c
638 os_other.obj : $(SRCDIR)\os_other.c $(SRCDIR)\rexx.h
640 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\os_other.c
644 rexx.obj : $(SRCDIR)\rexx.c $(SRCDIR)\rexx.h
646 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\rexx.c
650 client.obj : $(SRCDIR)\client.c $(SRCDIR)\rexx.h
652 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\client.c
656 rexxsaa.obj : $(SRCDIR)\rexxsaa.c $(SRCDIR)\rexx.h
658 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\rexxsaa.c
662 extstack.obj : $(SRCDIR)\extstack.c $(SRCDIR)\extstack.h $(SRCDIR)\rexxbif.h
663 $(CC) $(COPT_DLL) $(DYN_COMP) -c -o extstack.obj $(SRCDIR)\extstack.c
665 rexxbif.obj : $(SRCDIR)\rexxbif.c $(SRCDIR)\rexxbif.h
666 $(CC) $(COPT_DLL) $(DYN_COMP) -c -o rexxbif.obj $(SRCDIR)\rexxbif.c
668 drexx.obj : $(SRCDIR)\rexx.c $(SRCDIR)\rexx.h
669 $(CC) $(COPT_DLL) $(DYN_COMP) -c -o drexx.obj -DRXLIB $(SRCDIR)\rexx.c
671 mt_notmt.obj : $(SRCDIR)\mt_notmt.c
672 $(CC) $(COPT_DLL) $(DYN_COMP) -c -o mt_notmt.obj $(SRCDIR)\mt_notmt.c
674 instore.obj : $(SRCDIR)\instore.c
675 $(CC) $(COPT_DLL) $(DYN_COMP) -c -o instore.obj $(SRCDIR)\instore.c
677 mt_os2.obj : $(SRCDIR)\mt_os2.c
678 $(CC) $(COPT_DLL) $(DYN_COMP) -c -o mt_os2.obj $(SRCDIR)\mt_os2.c
680 lexsrc.obj : $(SRCDIR)\lexsrc.c $(SRCDIR)\rexx.h $(SRCDIR)\yaccsrc.h
682 $(CC) $(OTHERCOPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\lexsrc.c
686 yaccsrc.obj : $(SRCDIR)\yaccsrc.c $(SRCDIR)\defs.h $(SRCDIR)\rexx.h
688 $(CC) $(OTHERCOPT_DLL) $(CC2O) $(DYN_COMP) -c -DYYMAXDEPTH=10000 $(SRCDIR)\yaccsrc.c
692 threader.obj : $(SRCDIR)\threader.c $(SRCDIR)\rexx.h
693 $(CC) $(COPT_DLL) $(CC2O) $(DYN_CRT) -DOS2_THREADS -c $(SRCDIR)\threader.c
698 gci_convert.h : $(SRCDIR)\gci\gci_convert.os2.emx
699 copy $(SRCDIR)\gci\gci_convert.os2.emx .\gci_convert.h
701 gci_call.obj : $(SRCDIR)\gci\gci_call.c $(GCIHEADERS)
703 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\gci\gci_call.c
707 gci_convert.obj : $(SRCDIR)\gci\gci_convert.c $(GCIHEADERS)
709 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\gci\gci_convert.c
713 gci_execute.obj : $(SRCDIR)\gci\gci_execute.c $(GCIHEADERS)
715 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\gci\gci_execute.c
719 gci_helper.obj : $(SRCDIR)\gci\gci_helper.c $(GCIHEADERS)
721 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\gci\gci_helper.c
725 gci_prepare.obj : $(SRCDIR)\gci\gci_prepare.c $(GCIHEADERS)
727 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\gci\gci_prepare.c
731 gci_reginabridge.obj : $(SRCDIR)\gci\gci_reginabridge.c $(GCIHEADERS)
733 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\gci\gci_reginabridge.c
737 gci_rxfuncdefine.obj : $(SRCDIR)\gci\gci_rxfuncdefine.c $(GCIHEADERS)
739 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\gci\gci_rxfuncdefine.c
743 gci_tree.obj : $(SRCDIR)\gci\gci_tree.c $(GCIHEADERS)
745 $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)\gci\gci_tree.c
752 regutil.dll: $(REGUTILOFILES)
753 $(LD_RXLIB_PRE) $(REGUTILOFILES) $(LD_REGUTIL)
756 regfilesys.obj : $(REGUTILSRCDIR)/regfilesys.c $(REGUTILSRCDIR)/regutil.h $(REGUTILSRCDIR)/rxproto.h
758 $(CC) -c $(COPT_DLL) $(CC2O) $(DYN_COMP) $(REGUTILSRCDIR)/regfilesys.c
762 regini.obj : $(REGUTILSRCDIR)/regini.c $(REGUTILSRCDIR)/regutil.h $(REGUTILSRCDIR)/rxproto.h
764 $(CC) -c $(COPT) $(CC2O) $(DYN_COMP) $(REGUTILSRCDIR)/regini.c
768 inifile.obj : $(REGUTILSRCDIR)/inifile.c $(REGUTILSRCDIR)/regutil.h $(REGUTILSRCDIR)/rxproto.h
770 $(CC) -c $(COPT) $(CC2O) $(DYN_COMP) $(REGUTILSRCDIR)/inifile.c
774 regmacrospace.obj : $(REGUTILSRCDIR)/regmacrospace.c $(REGUTILSRCDIR)/regutil.h $(REGUTILSRCDIR)/rxproto.h
776 $(CC) -c $(COPT) $(CC2O) $(DYN_COMP) $(REGUTILSRCDIR)/regmacrospace.c
780 regscreenos2.obj : $(REGUTILSRCDIR)/regscreenos2.c $(REGUTILSRCDIR)/regutil.h $(REGUTILSRCDIR)/rxproto.h
782 $(CC) -c $(COPT) $(CC2O) $(DYN_COMP) $(REGUTILSRCDIR)/regscreenos2.c
786 regsemos2.obj : $(REGUTILSRCDIR)/regsemos2.c $(REGUTILSRCDIR)/regutil.h $(REGUTILSRCDIR)/rxproto.h
788 $(CC) -c $(COPT) $(CC2O) $(DYN_COMP) $(REGUTILSRCDIR)/regsemos2.c
792 regsysparm.obj : $(REGUTILSRCDIR)/regsysparm.c $(REGUTILSRCDIR)/regutil.h $(REGUTILSRCDIR)/rxproto.h
794 $(CC) -c $(COPT) $(CC2O) $(DYN_COMP) $(REGUTILSRCDIR)/regsysparm.c
798 regutil.obj : $(REGUTILSRCDIR)/regutil.c $(REGUTILSRCDIR)/regutil.h $(REGUTILSRCDIR)/rxproto.h
800 $(CC) -c $(COPT) $(CC2O) $(DYN_COMP) $(REGUTILSRCDIR)/regutil.c
804 regstem.obj : $(REGUTILSRCDIR)/regstem.c $(REGUTILSRCDIR)/rxproto.h
806 $(CC) -c $(COPT) $(CC2O) $(DYN_COMP) $(REGUTILSRCDIR)/regstem.c
810 regunicode.obj : $(REGUTILSRCDIR)/regunicode.c $(REGUTILSRCDIR)/rxproto.h
812 $(CC) -c $(COPT) $(CC2O) $(DYN_COMP) $(REGUTILSRCDIR)/regunicode.c
816 regcrypt.obj : $(REGUTILSRCDIR)/regcrypt.c $(REGUTILSRCDIR)/rxproto.h
818 $(CC) -c $(COPT) $(CC2O) $(DYN_COMP) $(REGUTILSRCDIR)/regcrypt.c
822 rxsupport.obj : $(REGUTILSRCDIR)/rxsupport.c $(REGUTILSRCDIR)/rxproto.h
824 $(CC) -c $(COPT) $(CC2O) $(DYN_COMP) $(REGUTILSRCDIR)/rxsupport.c
829 # Rules for sample programs
831 test1.$(OBJ): $(SRCDIR)\test1.c
832 $(CC) -c $(COPT_DLL) $(CC2O) $(DYN_COMP) $(SRCDIR)\test1.c
834 rxtest1.$(RXLIB): test1.$(OBJ) $(SHLFILE).$(SHL)
835 $(LD_RXLIB_PRE) test1.$(OBJ) $(LD_RXLIB1)
837 test2.$(OBJ): $(SRCDIR)\test2.c
838 $(CC) -c $(COPT_DLL) $(CC2O) $(DYN_COMP) $(SRCDIR)\test2.c
840 rxtest2.$(RXLIB): test2.$(OBJ) $(SHLFILE).$(SHL)
841 $(LD_RXLIB_PRE) test2.$(OBJ) $(LD_RXLIB2)
844 makedepend $(CSRCFILES)
846 ARCHIVE_FILES = $(ALLSRC) $(README) $(SRCDIR)\makefile* $(SRCDIR)\*.rsp $(DEMOFILES) $(TRIPFILES)
849 tar -cvf - $(ARCHIVE_FILES) | gzip > Regina_$(VERDOT).tar.gz
852 tar -cvf - $(ARCHIVE_FILES) | compress > Regina_$(VERDOT).tar.Z
855 zip regna$(VER) $(ARCHIVE_FILES)
858 # below here not tested
861 install: rexx $(LIBFILE).a
862 copy rexx$(PROGEXT) $(BINDIR)\$(PROGNAME)$(PROGEXT)
863 copy ..\regina.1 $(MANDIR)\regina.$(MANEXT)
864 copy $(LIBFILE).a $(LIBDIR)\$(LIBFILE).a
865 ranlib $(LIBDIR)\$(LIBFILE).a
868 rm -f *.a *.map *.lib *.exe *.bak *.dll *.res *.exp *.o *.obj *.mtb