1#
2# Makefile for Regina REXX Interpreter using OpenWatcom 1.1
3#
4
5SRC = $(%REGINA_SRCDIRN)\
6
7!include $(SRC)regina.ver
8VERDOT = $(VER_DOT)
9VERDATE = $(VER_DATE)
10
11YACC = yacc
12#YACC = bison -ly #-d #-lyt
13
14LEX = lex
15#LEX = flex -8 #-d
16#LL = -L/store/lib -lfl
17
18!ifeq MULTI N
19THREADING =
20THREADING_LINK =
21THREADING_FILE = mt_notmt
22!else
23THREADING = /bm /dREGINA_MULTI
24THREADING_LINK = /bm
25THREADING_FILE = mt_os2
26!endif
27
28#
29# GCI is default
30#
31!ifeq GCI N
32GCI_SHO =
33HAVE_GCI =
34!else
35GCI_SHO = gci_call.dlo gci_convert.dlo gci_execute.dlo gci_helper.dlo &
36          gci_prepare.dlo gci_reginabridge.dlo gci_rxfuncdefine.dlo &
37          gci_tree.dlo
38HAVE_GCI = /dHAVE_GCI /i=$(SRC)gci
39!endif
40#
41# good from here down
42#
43
44OFILES =      &
45funcs.obj     &
46builtin.obj   &
47error.obj     &
48variable.obj  &
49interprt.obj  &
50debug.obj     &
51dbgfuncs.obj  &
52memory.obj    &
53parsing.obj   &
54files.obj     &
55misc.obj      &
56unxfuncs.obj  &
57arxfuncs.obj  &
58os2funcs.obj  &
59cmsfuncs.obj  &
60shell.obj     &
61rexxext.obj   &
62stack.obj     &
63tracing.obj   &
64interp.obj    &
65cmath.obj     &
66convert.obj   &
67strings.obj   &
68library.obj   &
69strmath.obj   &
70signals.obj   &
71macros.obj    &
72envir.obj     &
73expr.obj      &
74mt_notmt.obj  &
75instore.obj   &
76yaccsrc.obj   &
77lexsrc.obj    &
78wrappers.obj  &
79options.obj   &
80os_os2.obj    &
81extstack.obj  &
82rexxbif.obj
83
84
85DLOFILES =    &
86funcs.dlo     &
87builtin.dlo   &
88error.dlo     &
89variable.dlo  &
90interprt.dlo  &
91debug.dlo     &
92dbgfuncs.dlo  &
93memory.dlo    &
94parsing.dlo   &
95files.dlo     &
96misc.dlo      &
97unxfuncs.dlo  &
98arxfuncs.dlo  &
99os2funcs.dlo  &
100cmsfuncs.dlo  &
101shell.dlo     &
102rexxext.dlo   &
103stack.dlo     &
104tracing.dlo   &
105interp.dlo    &
106cmath.dlo     &
107convert.dlo   &
108strings.dlo   &
109library.dlo   &
110strmath.dlo   &
111signals.dlo   &
112macros.dlo    &
113envir.dlo     &
114expr.dlo      &
115$(THREADING_FILE).dlo &
116instore.dlo   &
117yaccsrc.dlo   &
118lexsrc.dlo    &
119wrappers.dlo  &
120options.dlo   &
121os_os2.dlo    &
122extstack.dlo  &
123rexxbif.dlo   &
124$(GCI_SHO)
125
126LIBFILE=rexx.lib
127DLLBASE=regina
128DLLFILE=$(DLLBASE).dll
129IMPFILE=$(DLLBASE).lib
130
131DLLTEST1=rxtest1.dll
132DLLTEST2=rxtest2.dll
133
134CC              = wcc386
135TARGET=os2v2
136
137!ifeq DEBUG Y
138CFLAGS  = /d2
139LDFLAGS = DEBUG ALL
140!else
141CFLAGS  =  /dNDEBUG /oneatx
142LDFLAGS =
143!endif
144
145
146CPPFLAGS        = /dOS2 /i=$(SRC)
147
148DYN_CFLAGS = /dDYNAMIC
149
150CEXTRA = /dREGINA_VERSION_DATE=$(VER_DATE) /dREGINA_VERSION_MAJOR="$(VER_MAJOR)" /dREGINA_VERSION_MINOR="$(VER_MINOR)" /dREGINA_VERSION_SUPP="$(VER_SUPP)"
151
152CCFLAGS         = /4s /wx /zq /mf $(CFLAGS) $(CPPFLAGS) $(CEXTRA)
153
154LINK            = wlink
155
156LIBEXE          = wlib
157LIBFLAGS                = /q /n
158
159HFILES = $(SRC)rexx.h $(SRC)defs.h $(SRC)extern.h $(SRC)regina_t.h $(SRC)configur.h $(SRC)strings.h
160
161GCIHEADERS = $(SRC)gci\gci.h $(SRC)gci\embedded.h gci_convert.h
162
163all : rexx.exe $(LIBFILE) regina.exe $(DLLTEST1) $(DLLTEST2) execiser.exe threader.exe
164
165rexx.exe : $(OFILES) rexx.obj nosaa.obj
166        @%create dummy.lnk
167        @%append dummy.lnk option quiet
168        @%append dummy.lnk option caseexact
169        @%append dummy.lnk system $(TARGET)
170        @%append dummy.lnk name rexx.exe
171        @%append dummy.lnk file rexx.obj
172        @%append dummy.lnk file funcs.obj
173        @%append dummy.lnk file builtin.obj
174        @%append dummy.lnk file error.obj
175        @%append dummy.lnk file variable.obj
176        @%append dummy.lnk file interprt.obj
177        @%append dummy.lnk file debug.obj
178        @%append dummy.lnk file dbgfuncs.obj
179        @%append dummy.lnk file memory.obj
180        @%append dummy.lnk file parsing.obj
181        @%append dummy.lnk file files.obj
182        @%append dummy.lnk file misc.obj
183        @%append dummy.lnk file unxfuncs.obj
184        @%append dummy.lnk file arxfuncs.obj
185        @%append dummy.lnk file os2funcs.obj
186        @%append dummy.lnk file cmsfuncs.obj
187        @%append dummy.lnk file shell.obj
188        @%append dummy.lnk file rexxext.obj
189        @%append dummy.lnk file stack.obj
190        @%append dummy.lnk file tracing.obj
191        @%append dummy.lnk file interp.obj
192        @%append dummy.lnk file cmath.obj
193        @%append dummy.lnk file convert.obj
194        @%append dummy.lnk file strings.obj
195        @%append dummy.lnk file library.obj
196        @%append dummy.lnk file strmath.obj
197        @%append dummy.lnk file signals.obj
198        @%append dummy.lnk file macros.obj
199        @%append dummy.lnk file envir.obj
200        @%append dummy.lnk file mt_notmt.obj
201        @%append dummy.lnk file instore.obj
202        @%append dummy.lnk file expr.obj
203        @%append dummy.lnk file yaccsrc.obj
204        @%append dummy.lnk file lexsrc.obj
205        @%append dummy.lnk file wrappers.obj
206        @%append dummy.lnk file options.obj
207        @%append dummy.lnk file os_os2.obj
208        @%append dummy.lnk file extstack.obj
209        @%append dummy.lnk file rexxbif.obj
210        @%append dummy.lnk file nosaa.obj
211        $(LINK) $(LDFLAGS) @dummy.lnk
212        del dummy.lnk
213
214regina.exe : $(IMPFILE) regina.obj
215        @%create dummy.lnk
216        @%append dummy.lnk option quiet
217        @%append dummy.lnk option caseexact
218        @%append dummy.lnk system $(TARGET)
219        @%append dummy.lnk name regina.exe
220        @%append dummy.lnk file regina.obj
221        @%append dummy.lnk file .\$(IMPFILE)
222        $(LINK) $(LDFLAGS) @dummy.lnk
223        del dummy.lnk
224
225execiser.exe : $(IMPFILE) execiser.obj
226        @%create dummy.lnk
227        @%append dummy.lnk option quiet
228        @%append dummy.lnk option caseexact
229        @%append dummy.lnk system $(TARGET)
230        @%append dummy.lnk name execiser.exe
231        @%append dummy.lnk file execiser.obj
232        @%append dummy.lnk file .\$(IMPFILE)
233        $(LINK) $(LDFLAGS) @dummy.lnk
234        del dummy.lnk
235
236threader.exe : $(IMPFILE) threader.obj
237        @%create dummy.lnk
238        @%append dummy.lnk option quiet
239        @%append dummy.lnk option caseexact
240        @%append dummy.lnk system $(TARGET)
241        @%append dummy.lnk name threader.exe
242        @%append dummy.lnk file threader.obj
243        @%append dummy.lnk file .\$(IMPFILE)
244        $(LINK) $(LDFLAGS) @dummy.lnk
245        del dummy.lnk
246
247$(LIBFILE): $(OFILES) client.obj drexx.obj rexxsaa.obj
248        @%create lib.rsp
249        @%append lib.rsp +client.obj
250        @%append lib.rsp +drexx.obj
251        @%append lib.rsp +rexxsaa.obj
252        @%append lib.rsp +funcs.obj
253        @%append lib.rsp +builtin.obj
254        @%append lib.rsp +error.obj
255        @%append lib.rsp +variable.obj
256        @%append lib.rsp +interprt.obj
257        @%append lib.rsp +debug.obj
258        @%append lib.rsp +dbgfuncs.obj
259        @%append lib.rsp +memory.obj
260        @%append lib.rsp +parsing.obj
261        @%append lib.rsp +files.obj
262        @%append lib.rsp +misc.obj
263        @%append lib.rsp +unxfuncs.obj
264        @%append lib.rsp +arxfuncs.obj
265        @%append lib.rsp +os2funcs.obj
266        @%append lib.rsp +cmsfuncs.obj
267        @%append lib.rsp +shell.obj
268        @%append lib.rsp +rexxext.obj
269        @%append lib.rsp +stack.obj
270        @%append lib.rsp +tracing.obj
271        @%append lib.rsp +interp.obj
272        @%append lib.rsp +cmath.obj
273        @%append lib.rsp +convert.obj
274        @%append lib.rsp +strings.obj
275        @%append lib.rsp +library.obj
276        @%append lib.rsp +strmath.obj
277        @%append lib.rsp +signals.obj
278        @%append lib.rsp +macros.obj
279        @%append lib.rsp +envir.obj
280        @%append lib.rsp +mt_notmt.obj
281        @%append lib.rsp +instore.obj
282        @%append lib.rsp +expr.obj
283        @%append lib.rsp +yaccsrc.obj
284        @%append lib.rsp +lexsrc.obj
285        @%append lib.rsp +wrappers.obj
286        @%append lib.rsp +options.obj
287        @%append lib.rsp +os_os2.obj
288        @%append lib.rsp +extstack.obj
289        @%append lib.rsp +rexxbif.obj
290        $(LIBEXE) $(LIBFLAGS) $@ @lib.rsp
291        del lib.rsp
292
293$(DLLFILE): $(DLOFILES) client.dlo drexx.dlo rexxsaa.dlo
294        @%create dummy.lnk
295        @%append dummy.lnk option quiet
296        @%append dummy.lnk option caseexact
297        @%append dummy.lnk system $(TARGET) dll
298        @%append dummy.lnk name $(DLLFILE)
299        @%append dummy.lnk option map
300        @%append dummy.lnk file client.dlo
301        @%append dummy.lnk file drexx.dlo
302        @%append dummy.lnk file rexxsaa.dlo
303        @%append dummy.lnk file funcs.dlo
304        @%append dummy.lnk file builtin.dlo
305        @%append dummy.lnk file error.dlo
306        @%append dummy.lnk file variable.dlo
307        @%append dummy.lnk file interprt.dlo
308        @%append dummy.lnk file debug.dlo
309        @%append dummy.lnk file dbgfuncs.dlo
310        @%append dummy.lnk file memory.dlo
311        @%append dummy.lnk file parsing.dlo
312        @%append dummy.lnk file files.dlo
313        @%append dummy.lnk file misc.dlo
314        @%append dummy.lnk file unxfuncs.dlo
315        @%append dummy.lnk file arxfuncs.dlo
316        @%append dummy.lnk file os2funcs.dlo
317        @%append dummy.lnk file cmsfuncs.dlo
318        @%append dummy.lnk file shell.dlo
319        @%append dummy.lnk file rexxext.dlo
320        @%append dummy.lnk file stack.dlo
321        @%append dummy.lnk file tracing.dlo
322        @%append dummy.lnk file interp.dlo
323        @%append dummy.lnk file cmath.dlo
324        @%append dummy.lnk file convert.dlo
325        @%append dummy.lnk file strings.dlo
326        @%append dummy.lnk file library.dlo
327        @%append dummy.lnk file strmath.dlo
328        @%append dummy.lnk file signals.dlo
329        @%append dummy.lnk file macros.dlo
330        @%append dummy.lnk file envir.dlo
331        @%append dummy.lnk file $(THREADING_FILE).dlo
332        @%append dummy.lnk file instore.dlo
333        @%append dummy.lnk file expr.dlo
334        @%append dummy.lnk file yaccsrc.dlo
335        @%append dummy.lnk file lexsrc.dlo
336        @%append dummy.lnk file wrappers.dlo
337        @%append dummy.lnk file options.dlo
338        @%append dummy.lnk file os_os2.dlo
339        @%append dummy.lnk file extstack.dlo
340        @%append dummy.lnk file rexxbif.dlo
341!ifneq GCI N
342        @%append dummy.lnk file gci_call.dlo
343        @%append dummy.lnk file gci_convert.dlo
344        @%append dummy.lnk file gci_execute.dlo
345        @%append dummy.lnk file gci_helper.dlo
346        @%append dummy.lnk file gci_prepare.dlo
347        @%append dummy.lnk file gci_reginabridge.dlo
348        @%append dummy.lnk file gci_rxfuncdefine.dlo
349        @%append dummy.lnk file gci_tree.dlo
350!endif
351        @%append dummy.lnk export RexxAllocateMemory
352        @%append dummy.lnk export RexxDeregisterExit
353        @%append dummy.lnk export RexxDeregisterFunction
354        @%append dummy.lnk export RexxDeregisterSubcom
355        @%append dummy.lnk export RexxFreeMemory
356        @%append dummy.lnk export RexxQueryExit
357        @%append dummy.lnk export RexxQueryFunction
358        @%append dummy.lnk export RexxQuerySubcom
359        @%append dummy.lnk export RexxRegisterExitDll
360        @%append dummy.lnk export RexxRegisterExitExe
361        @%append dummy.lnk export RexxRegisterFunctionDll
362        @%append dummy.lnk export RexxRegisterFunctionExe
363        @%append dummy.lnk export RexxRegisterSubcomDll
364        @%append dummy.lnk export RexxRegisterSubcomExe
365        @%append dummy.lnk export RexxSetHalt
366        @%append dummy.lnk export RexxStart
367        @%append dummy.lnk export RexxVariablePool
368        @%append dummy.lnk export ReginaVersion
369        @%append dummy.lnk export __regina_faked_main
370        @%append dummy.lnk export RexxAddMacro
371        @%append dummy.lnk export RexxAddQueue
372        @%append dummy.lnk export RexxClearMacroSpace
373        @%append dummy.lnk export RexxCreateQueue
374        @%append dummy.lnk export RexxDeleteQueue
375        @%append dummy.lnk export RexxDropMacro
376        @%append dummy.lnk export RexxLoadMacroSpace
377        @%append dummy.lnk export RexxPullQueue
378        @%append dummy.lnk export RexxQueryMacro
379        @%append dummy.lnk export RexxQueryQueue
380        @%append dummy.lnk export RexxReorderMacro
381        @%append dummy.lnk export RexxSaveMacroSpace
382        @%append dummy.lnk export RexxCallBack
383        @%append dummy.lnk export ReginaCleanup
384        $(LINK) $(LDFLAGS) @dummy.lnk
385        del dummy.lnk
386
387$(DLLTEST1): test1.dlo $(IMPFILE)
388        @%create dummy.lnk
389        @%append dummy.lnk option quiet
390        @%append dummy.lnk option caseexact
391        @%append dummy.lnk system $(TARGET) dll
392        @%append dummy.lnk name $(DLLTEST1)
393        @%append dummy.lnk file test1.dlo
394        @%append dummy.lnk export Test1Function1
395        @%append dummy.lnk export Test1Function2
396        @%append dummy.lnk export Test1LoadFuncs
397        @%append dummy.lnk export Test1DropFuncs
398        @%append dummy.lnk library $(IMPFILE)
399        $(LINK) $(LDFLAGS) @dummy.lnk
400        del dummy.lnk
401
402$(DLLTEST2): test2.dlo $(IMPFILE)
403        @%create dummy.lnk
404        @%append dummy.lnk option quiet
405        @%append dummy.lnk option caseexact
406        @%append dummy.lnk system $(TARGET) dll
407        @%append dummy.lnk name $(DLLTEST2)
408        @%append dummy.lnk file test2.dlo
409        @%append dummy.lnk export Test2Function1
410        @%append dummy.lnk export Test2Function2
411        @%append dummy.lnk export Test2LoadFuncs
412        @%append dummy.lnk export Test2DropFuncs
413        @%append dummy.lnk library $(IMPFILE)
414        $(LINK) $(LDFLAGS) @dummy.lnk
415        del dummy.lnk
416
417$(IMPFILE): $(DLLFILE)
418        $(LIBEXE) $(LIBFLAGS) $(DLLBASE) +$(DLLFILE)
419
420#
421# rules for making normal object files
422#
423funcs.obj:    $(SRC)funcs.c $(HFILES)
424        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
425
426builtin.obj:  $(SRC)builtin.c $(HFILES)
427        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
428
429error.obj:    $(SRC)error.c $(HFILES)
430        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
431
432variable.obj: $(SRC)variable.c $(HFILES)
433        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
434
435interprt.obj: $(SRC)interprt.c $(HFILES)
436        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
437
438debug.obj:    $(SRC)debug.c $(HFILES)
439        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
440
441dbgfuncs.obj: $(SRC)dbgfuncs.c $(HFILES)
442        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
443
444memory.obj:   $(SRC)memory.c $(HFILES)
445        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
446
447parsing.obj:  $(SRC)parsing.c $(HFILES)
448        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
449
450files.obj:    $(SRC)files.c $(HFILES)
451        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
452
453misc.obj:     $(SRC)misc.c $(HFILES)
454        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
455
456unxfuncs.obj: $(SRC)unxfuncs.c $(HFILES)
457        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
458
459arxfuncs.obj: $(SRC)arxfuncs.c $(HFILES)
460        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
461
462os2funcs.obj: $(SRC)os2funcs.c $(HFILES)
463        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
464
465cmsfuncs.obj: $(SRC)cmsfuncs.c $(HFILES)
466        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
467
468shell.obj:    $(SRC)shell.c $(HFILES)
469        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
470
471rexxext.obj:  $(SRC)rexxext.c $(HFILES)
472        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
473
474stack.obj:    $(SRC)stack.c $(HFILES)
475        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
476
477tracing.obj:  $(SRC)tracing.c $(HFILES)
478        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
479
480interp.obj:   $(SRC)interp.c $(HFILES)
481        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
482
483cmath.obj:    $(SRC)cmath.c $(HFILES)
484        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
485
486convert.obj:  $(SRC)convert.c $(HFILES)
487        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
488
489strings.obj:  $(SRC)strings.c $(HFILES)
490        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
491
492library.obj:  $(SRC)library.c $(HFILES)
493        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
494
495strmath.obj:  $(SRC)strmath.c $(HFILES)
496        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
497
498signals.obj:  $(SRC)signals.c $(HFILES)
499        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
500
501macros.obj:   $(SRC)macros.c $(HFILES)
502        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
503
504envir.obj:    $(SRC)envir.c $(HFILES)
505        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
506
507expr.obj:     $(SRC)expr.c $(HFILES)
508        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
509
510mt_notmt.obj: $(SRC)mt_notmt.c $(HFILES)
511        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
512
513instore.obj:  $(SRC)instore.c $(HFILES)
514        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
515
516wrappers.obj: $(SRC)wrappers.c $(HFILES)
517        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
518
519options.obj:  $(SRC)options.c $(HFILES)
520        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
521
522os_os2.obj:   $(SRC)os_os2.c $(HFILES)
523        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
524
525extstack.obj: $(SRC)extstack.c $(HFILES)
526        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
527
528rexxbif.obj:  $(SRC)rexxbif.c $(HFILES)
529        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
530
531rexx.obj:   $(SRC)rexx.c $(HFILES)
532        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
533
534lexsrc.obj : $(SRC)lexsrc.c $(SRC)yaccsrc.h $(SRC)rexx.h
535        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
536
537#lexsrc.c : lexsrc.l
538#       $(LEX) lexsrc.l
539#       $(MV) lex.yy.c lexsrc.c
540
541yaccsrc.obj: $(SRC)yaccsrc.c $(SRC)defs.h $(SRC)rexx.h
542        $(CC) $(CCFLAGS) /dYYMAXDEPTH=10000 /fo=$@ $(SRC)$*.c
543
544#yaccsrc.c yaccsrc.h : yaccsrc.y
545#       $(YACC) -dv yaccsrc.y
546#       $(MV) y.tab.h yaccsrc.h
547#       $(MV) y.tab.c yaccsrc.c
548
549drexx.obj: $(SRC)rexx.c $(HFILES)
550        $(CC) $(CCFLAGS) /fo=drexx.obj /dRXLIB $(SRC)rexx.c
551
552client.obj: $(SRC)client.c $(HFILES) $(SRC)rexxsaa.h $(SRC)rxiface.h
553        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
554
555rexxsaa.obj: $(SRC)rexxsaa.c $(HFILES) $(SRC)rexxsaa.h $(SRC)rxiface.h
556        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
557
558nosaa.obj: $(SRC)nosaa.c $(HFILES)
559        $(CC) $(CCFLAGS) /fo=$@ $(SRC)$*.c
560
561#
562# rules for DLL objects
563#
564funcs.dlo:    $(SRC)funcs.c $(HFILES)
565        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
566
567builtin.dlo:  $(SRC)builtin.c $(HFILES)
568        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
569
570error.dlo:    $(SRC)error.c $(HFILES)
571        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
572
573variable.dlo: $(SRC)variable.c $(HFILES)
574        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
575
576interprt.dlo: $(SRC)interprt.c $(HFILES)
577        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
578
579debug.dlo:    $(SRC)debug.c $(HFILES)
580        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
581
582dbgfuncs.dlo: $(SRC)dbgfuncs.c $(HFILES)
583        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
584
585memory.dlo:   $(SRC)memory.c $(HFILES)
586        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
587
588parsing.dlo:  $(SRC)parsing.c $(HFILES)
589        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
590
591files.dlo:    $(SRC)files.c $(HFILES)
592        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
593
594misc.dlo:     $(SRC)misc.c $(HFILES)
595        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
596
597unxfuncs.dlo: $(SRC)unxfuncs.c $(HFILES)
598        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
599
600arxfuncs.dlo: $(SRC)arxfuncs.c $(HFILES)
601        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
602
603os2funcs.dlo: $(SRC)os2funcs.c $(HFILES)
604        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
605
606cmsfuncs.dlo: $(SRC)cmsfuncs.c $(HFILES)
607        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
608
609shell.dlo:    $(SRC)shell.c $(HFILES)
610        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
611
612rexxext.dlo:  $(SRC)rexxext.c $(HFILES)
613        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
614
615stack.dlo:    $(SRC)stack.c $(HFILES)
616        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
617
618tracing.dlo:  $(SRC)tracing.c $(HFILES)
619        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
620
621interp.dlo:   $(SRC)interp.c $(HFILES)
622        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
623
624cmath.dlo:    $(SRC)cmath.c $(HFILES)
625        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
626
627convert.dlo:  $(SRC)convert.c $(HFILES)
628        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
629
630strings.dlo:  $(SRC)strings.c $(HFILES)
631        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
632
633library.dlo:  $(SRC)library.c $(HFILES)
634        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) $(DYN_CFLAGS) /bd /fo=$*.dlo $(SRC)$*.c
635
636strmath.dlo:  $(SRC)strmath.c $(HFILES)
637        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
638
639signals.dlo:  $(SRC)signals.c $(HFILES)
640        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
641
642macros.dlo:   $(SRC)macros.c $(HFILES)
643        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
644
645envir.dlo:    $(SRC)envir.c $(HFILES)
646        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
647
648mt_os2.dlo:   $(SRC)mt_os2.c $(HFILES)
649        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
650
651mt_notmt.dlo: $(SRC)mt_notmt.c $(HFILES)
652        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
653
654instore.dlo:  $(SRC)instore.c $(HFILES)
655        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
656
657expr.dlo:     $(SRC)expr.c $(HFILES)
658        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
659
660wrappers.dlo: $(SRC)wrappers.c $(HFILES)
661        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) $(DYN_CFLAGS) /bd /fo=$*.dlo $(SRC)$*.c
662
663options.dlo:  $(SRC)options.c $(HFILES)
664        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
665
666os_os2.dlo:   $(SRC)os_os2.c $(HFILES)
667        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
668
669extstack.dlo: $(SRC)extstack.c $(HFILES)
670        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
671
672rexxbif.dlo:  $(SRC)rexxbif.c $(HFILES)
673        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
674
675rexx.dlo:   $(SRC)rexx.c $(HFILES)
676        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
677
678lexsrc.dlo : $(SRC)lexsrc.c $(SRC)yaccsrc.h $(SRC)rexx.h
679        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
680
681#lexsrc.c : lexsrc.l
682#       $(LEX) lexsrc.l
683#       $(MV) lex.yy.c lexsrc.c
684
685yaccsrc.dlo: $(SRC)yaccsrc.c $(SRC)defs.h $(SRC)rexx.h
686        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /dYYMAXDEPTH=10000 /bd /fo=$*.dlo $(SRC)$*.c
687
688#yaccsrc.c yaccsrc.h : yaccsrc.y
689#       $(YACC) -dv yaccsrc.y
690#       $(MV) y.tab.h yaccsrc.h
691#       $(MV) y.tab.c yaccsrc.c
692
693drexx.dlo: $(SRC)rexx.c $(HFILES)
694        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /fo=drexx.dlo /dRXLIB $(SRC)rexx.c
695
696client.dlo: $(SRC)client.c $(HFILES) $(SRC)rexxsaa.h $(SRC)rxiface.h
697        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
698
699rexxsaa.dlo: $(SRC)rexxsaa.c $(HFILES) $(SRC)rexxsaa.h $(SRC)rxiface.h
700        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)$*.c
701
702gci_call.dlo: $(SRC)gci\gci_call.c $(GCIHEADERS)
703        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)gci\$*.c
704
705gci_convert.dlo: $(SRC)gci\gci_convert.c $(GCIHEADERS)
706        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)gci\$*.c
707
708gci_execute.dlo: $(SRC)gci\gci_execute.c $(GCIHEADERS)
709        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)gci\$*.c
710
711gci_helper.dlo: $(SRC)gci\gci_helper.c $(GCIHEADERS)
712        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)gci\$*.c
713
714gci_prepare.dlo: $(SRC)gci\gci_prepare.c $(GCIHEADERS)
715        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)gci\$*.c
716
717gci_reginabridge.dlo: $(SRC)gci\gci_reginabridge.c $(GCIHEADERS)
718        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)gci\$*.c
719
720gci_rxfuncdefine.dlo: $(SRC)gci\gci_rxfuncdefine.c $(GCIHEADERS)
721        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)gci\$*.c
722
723gci_tree.dlo: $(SRC)gci\gci_tree.c $(GCIHEADERS)
724        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /bd /fo=$*.dlo $(SRC)gci\$*.c
725
726gci_convert.h: $(SRC)\gci\gci_convert.os2.wcc
727         copy $(SRC)\gci\gci_convert.os2.wcc .\gci_convert.h
728
729test1.dlo:   $(SRC)test1.c $(HFILES)
730        $(CC) $(CCFLAGS) $(THREADING) /bd /fo=$*.dlo $(SRC)$*.c
731
732test2.dlo:   $(SRC)test2.c $(HFILES)
733        $(CC) $(CCFLAGS) $(THREADING) /bd /fo=$*.dlo $(SRC)$*.c
734
735regina.obj:   $(SRC)regina.c $(HFILES)
736        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /fo=$*.obj $(SRC)$*.c
737
738execiser.obj:   $(SRC)execiser.c $(HFILES)
739        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) /fo=$*.obj $(SRC)$*.c
740
741threader.obj:   $(SRC)threader.c $(HFILES)
742        $(CC) $(CCFLAGS) $(THREADING) $(HAVE_GCI) -DOS2_THREADS /fo=$*.obj $(SRC)$*.c
743
744# DO NOT DELETE THIS LINE -- make depend depends on it.
745