Added an icon with c:iconx as default tools.
[AROS-Contrib.git] / regina / makefile.os2.emx
blob78f533ccf0785bbeb3ef5ceb929315d6c6e4548c
2 # Makefile for Regina REXX Interpreter
4 # Using gcc/emx on OS/2 with GNU make
6 VER=30
7 VERDOT=3.0
9 SRCDIR=$(REGINA_SRCDIR)
10 SRCDIRN=$(REGINA_SRCDIRN)
11 CC = gcc
13 ifeq ($(DEBUG),Y)
14 OPTIMIZE = -g -fbounds-checking -Wall
15 OPTIMIZE_DLL = -g -Wall
16 STRIP_FLAG =
17 else
18 OPTIMIZE = -O3 -fomit-frame-pointer -Wall -DNDEBUG
19 OPTIMIZE_DLL = -O -Wall -DNDEBUG
20 STRIP_FLAG = -s
21 endif
23 ifeq ($(MULTI),Y)
24 THREADING = -Zmt -DREGINA_MULTI
25 MT_FILE = mt_os2
26 DYN_COMP = -DDYNAMIC -Zdll $(DYN_CRT)
27 else
28 THREADING =
29 MT_FILE = mt_notmt
30 DYN_COMP = -DDYNAMIC -Zdll $(DYN_CRT)
31 endif
33 ifeq ($(TRACEMEM),Y)
34 MEMTRACE = -DTRACEMEM
35 else
36 MEMTRACE =
37 endif
39 ifeq ($(FLISTS),N)
40 USEFLISTS = -DNOFLISTS
41 else
42 USEFLISTS =
43 endif
45 DYN_CRT =  -Zcrtdll -Zomf -mprobe
46 CEXTRA = -DOS2 -DEMX -funsigned-char
47 EEXTRA =
48 DYN_COMP = -DDYNAMIC -Zdll $(DYN_CRT)
49 LIBS = #-ll -lm
50 SOCKET = -lsocket
51 SHLIBS = $(SHLLIB).$(SHLPST)
52 SHLIMPLIB = $(SHLLIB).$(SHLPST)
53 SHLLIB = $(SHLFILE)
54 DYNAMIC_LDFLAGS = -lwrap $(STRIP_FLAG) -Zcrtdll -Zomf -mprobe -Zstack 8192 -Zlinker /PM:VIO
55 SHLDEF = $(SRCDIR)/$(SHLLIB)_os2_dll.def
56 SHL1 = emximp -o $(SHLLIB).$(LIBPST) $(SHLDEF)
57 SHL2 = emximp -o $(SHLLIB).lib $(SHLDEF)
58 SHL = dll
59 SHLPST = lib
60 RXLIB = dll
61 OBJ=o
62 EXE=.exe
63 LD_RXLIB_PRE = $(CC) -Zdll -Zomf -Zcrtdll #-Zso -Zsys
64 LD_RXLIB1 = -Zmap=test1.map -o test1.dll $(SRCDIR)/test1_os2_dll.def $(SHLLIB).lib
65 LD_RXLIB2 = -Zmap=test2.map -o test2.dll $(SRCDIR)/test2_os2_dll.def $(SHLLIB).lib
66 SHL_LD=gcc -Zdll -Zcrtdll -Zomf -Zmap=regina.map -o $(SHLFILE).$(SHL) $(SHOFILES) $(SHLDEF) $(SOCKET)
67 SHL_TARGETS = $(SHLFILE).$(SHL) $(SHLFILE)$(EXE) test1.$(SHL) test2.$(SHL)  #$(SHLIMPLIB)
68 LDEXTRA=emxbind
69 LIBPRE =
70 LIBFILE = rexx
71 SHLFILE = regina
72 LIBEXE = ar
73 LIBPST = a
74 LIBFLAGS = cr $(LIBFILE).$(LIBPST)
75 LIBLINK = $(LIBFILE).$(LIBPST)
76 OBJECTS = $(OFILES)
77 OSAVE = .o.save
78 CC2O=-o $@
79 RC = rc $(SRCDIRN)\reginaos2.rc $@
80 MV=-ren
81 RM=-del
83 RANLIB_LIB=#ranlib $(LIBFILE).a
85 MISCDEFS = -I$(SRCDIR) #-DR2PERL
86 #DEBUG    = #-g -DNDEBUG #-Dlint
87 PROF     = #-p #g
88 #OPTIMIZE = -O -DNDEBUG
90 COPT = $(DEBUGFLAG) $(CEXTRA) $(OPTIMIZE) $(PROF) $(MISCDEFS) $(MEMTRACE) $(USEFLISTS) $(THREADING)
91 COPT_DLL = $(DEBUGFLAG) $(CEXTRA) $(OPTIMIZE_DLL) $(PROF) $(MISCDEFS) $(MEMTRACE) $(USEFLISTS) $(THREADING)
92 LINKOPT = $(DEBUGFLAG) $(OPTIMIZE) $(PROF) $(EEXTRA)
93 LINKOPT_DLL = $(DEBUGFLAG) $(OPTIMIZE_DLL) $(PROF) $(EEXTRA)
94 OTHERCOPT = $(DEBUGFLAG) $(OPTIMIZE) $(PROF) $(CEXTRA) $(MISCDEFS) $(MEMTRACE) $(USEFLISTS)
95 OTHERCOPT_DLL = $(DEBUGFLAG) $(OPTIMIZE_DLL) $(PROF) $(CEXTRA) $(MISCDEFS) $(MEMTRACE) $(USEFLISTS)
97 YACC = yacc
98 #YACC = bison -ly #-d #-lyt
100 LEX = lex
101 #LEX = flex -8 #-d
102 #LL = -L/store/lib -lfl
104 README = $(SRCDIR)/README.* COPYING-LIB
106 FILES = funcs builtin error variable interprt debug dbgfuncs \
107         memory parsing files misc os2funcs unxfuncs cmsfuncs shell rexxext stack \
108         tracing interp cmath convert strings library strmath signals \
109         macros envir extlib wrappers options doscmd #r2perl
111 CSRCFILES = $(SRCDIR)/funcs.c $(SRCDIR)/builtin.c $(SRCDIR)/error.c $(SRCDIR)/variable.c \
112         $(SRCDIR)/interprt.c $(SRCDIR)/debug.c $(SRCDIR)/dbgfuncs.c $(SRCDIR)/memory.c $(SRCDIR)/parsing.c $(SRCDIR)/files.c \
113         $(SRCDIR)/misc.c $(SRCDIR)/unxfuncs.c $(SRCDIR)/cmsfuncs.c $(SRCDIR)/os2funcs.c $(SRCDIR)/shell.c $(SRCDIR)/rexxext.c $(SRCDIR)/stack.c \
114         $(SRCDIR)/tracing.c $(SRCDIR)/interp.c $(SRCDIR)/cmath.c $(SRCDIR)/convert.c $(SRCDIR)/strings.c $(SRCDIR)/library.c \
115         $(SRCDIR)/strmath.c $(SRCDIR)/signals.c $(SRCDIR)/macros.c $(SRCDIR)/envir.c $(SRCDIR)/expr.c \
116         $(SRCDIR)/extlib.c $(SRCDIR)/wrappers.c $(SRCDIR)/options.c $(SRCDIR)/doscmd.c #$(SRCDIR)/r2perl.c
118 OFILES = funcs.$(OBJ) builtin.$(OBJ) error.$(OBJ) variable.$(OBJ) \
119         interprt.$(OBJ) debug.$(OBJ) dbgfuncs.$(OBJ) memory.$(OBJ) parsing.$(OBJ) files.$(OBJ) \
120         misc.$(OBJ) unxfuncs.$(OBJ) cmsfuncs.$(OBJ) os2funcs.$(OBJ) shell.$(OBJ) rexxext.$(OBJ) stack.$(OBJ) \
121         tracing.$(OBJ) interp.$(OBJ) cmath.$(OBJ) convert.$(OBJ) strings.$(OBJ) library.$(OBJ) \
122         strmath.$(OBJ) signals.$(OBJ) macros.$(OBJ) envir.$(OBJ) expr.$(OBJ) $(MT_FILE).$(OBJ) instore.$(OBJ) \
123         extlib.$(OBJ) yaccsrc.$(OBJ) lexsrc.$(OBJ) options.$(OBJ) doscmd.$(OBJ) wrappers.$(OBJ) \
124         extstack.$(OBJ) rexxbif.$(OBJ)
126 SHOFILES = funcs.obj builtin.obj error.obj variable.obj \
127         interprt.obj debug.obj dbgfuncs.obj memory.obj parsing.obj files.obj \
128         misc.obj unxfuncs.obj cmsfuncs.obj shell.obj os2funcs.obj rexxext.obj stack.obj \
129         tracing.obj interp.obj cmath.obj convert.obj strings.obj library.obj \
130         strmath.obj signals.obj macros.obj envir.obj expr.obj $(MT_FILE).obj \
131         extlib.obj yaccsrc.obj lexsrc.obj wrappers.obj options.obj doscmd.obj \
132         drexx.obj client.obj rexxsaa.obj instore.obj \
133         extstack.obj rexxbif.obj
135 DEMODIR = $(SRCDIR)/demo
136 DEMOFILES = $(DEMODIR)/*
137 TRIPDIR = $(SRCDIR)/trip
138 TRIPFILES = $(TRIPDIR)/*
140 ALLSRC = $(CFILES) $(HFILES)
142 HFILES = $(SRCDIR)/rexx.h $(SRCDIR)/defs.h $(SRCDIR)/extern.h $(SRCDIR)/types.h \
143         $(SRCDIR)/config.h $(SRCDIR)/strings.h $(SRCDIR)/configur.h $(SRCDIR)/yaccsrc.h \
144         $(SRCDIR)/rxiface.h $(SRCDIR)/rexxsaa.h $(SRCDIR)/utsname.h
146 CFILES = $(SRCDIR)/yaccsrc.c $(SRCDIR)/lexsrc.c $(CSRCFILES) $(SRCDIR)/execiser.c \
147         $(SRCDIR)/rexxsaa.c $(SRCDIR)/rexx.c $(SRCDIR)/regina.c $(SRCDIR)/client.c \
148         $(SRCDIR)/r2perl.c $(SRCDIR)/test1.c $(SRCDIR)/test2.c
150 MTSSRC = $(SRCDIR)/en.mts $(SRCDIR)/pt.mts $(SRCDIR)/no.mts \
151         $(SRCDIR)/de.mts $(SRCDIR)/es.mts
153 #.SUFFIXES: .sho $(SUFFIXES)
155 # Do not use default suffixes rule
157 .SUFFIXES:
159 all : rexx$(EXE) $(LIBFILE).$(LIBPST) trexx$(EXE) tregina$(EXE) execiser$(EXE) rxstack$(EXE) rxqueue$(EXE) $(SHL_TARGETS) mtb_files
161 $(CSRCFILES) : $(SRCDIR)/rexx.h
163 $(SRCDIR)/rexx.h : $(SRCDIR)/extern.h $(SRCDIR)/strings.h $(SRCDIR)/defs.h $(SRCDIR)/types.h $(SRCDIR)/mt.h
165 $(SRCDIR)/mt.h : $(SRCDIR)/$(MT_FILE).h
167 rexx$(EXE) : $(OFILES) rexx.$(OBJ) nosaa.$(OBJ)
168         $(CC) $(LINKOPT) $(STATIC_LDFLAGS) -o rexx$(EXE) $(OBJECTS) rexx.$(OBJ) nosaa.$(OBJ) $(LIBS) $(SOCKET)
169         -copy $(SRCDIRN)\reginaos2.ico
170         $(RC)
171         -lxlite rexx$(EXE)
173 regina : $(SHLFILE).$(SHL) regina.obj $(GETOPT)
174         $(CC) $(LINKOPT_DLL) -Zexe $(DYNAMIC_LDFLAGS) -o regina regina.obj $(LIBS) $(SHLIBS) $(SOCKET)
176 regina$(EXE) : regina
177         -copy $(SRCDIRN)\reginaos2.ico
178         $(RC)
179         -lxlite regina$(EXE)
181 trexx$(EXE) : trexx.$(OBJ) $(LIBFILE).$(LIBPST)
182         $(CC) $(LINKOPT) $(STATIC_LDFLAGS) -o trexx$(EXE) trexx.$(OBJ) $(LIBFILE).$(LIBPST) $(LIBS) $(SOCKET)
183         -copy $(SRCDIRN)\reginaos2.ico
184         $(RC)
185         -lxlite trexx$(EXE)
187 tregina : tregina.obj $(SHLFILE).$(SHL)
188         $(CC) $(LINKOPT_DLL) -Zexe $(DYNAMIC_LDFLAGS) -o tregina tregina.obj $(LIBS) $(SHLIBS) $(SOCKET)
190 tregina$(EXE) : tregina
191         -copy $(SRCDIRN)\reginaos2.ico
192         $(RC)
193         -lxlite tregina$(EXE)
195 execiser : execiser.obj $(SHLFILE).$(SHL)
196         $(CC) $(LINKOPT_DLL) -Zexe $(DYNAMIC_LDFLAGS) -o execiser execiser.obj $(LIBS) $(SHLIBS) $(SOCKET)
198 execiser$(EXE) : execiser
199         -lxlite execiser$(EXE)
201 rxqueue$(EXE) : $(OFILES) rxqueue.$(OBJ) eextstack.$(OBJ) erexxbif.$(OBJ)
202         $(CC) $(LINKOPT) $(STATIC_LDFLAGS) -o rxqueue$(EXE) rxqueue.$(OBJ) eextstack.$(OBJ) erexxbif.$(OBJ) $(SOCKET)
203         -lxlite rxqueue$(EXE)
205 rxstack$(EXE) : $(OFILES) rxstack.$(OBJ) eextstack.$(OBJ) erexxbif.$(OBJ)
206         $(CC) $(LINKOPT) $(STATIC_LDFLAGS) -o rxstack$(EXE) rxstack.$(OBJ) eextstack.$(OBJ) erexxbif.$(OBJ) $(SOCKET)
207         -lxlite rxstack$(EXE)
209 $(LIBFILE).$(LIBPST): $(OFILES) client.$(OBJ) drexx.$(OBJ) rexxsaa.$(OBJ)
210         $(LIBEXE) $(LIBFLAGS) $(OBJECTS) client.$(OBJ) drexx.$(OBJ) rexxsaa.$(OBJ)
211         $(RANLIB_LIB)
212         emxomf -o $(LIBFILE).$(SHLPST) $(LIBFILE).$(LIBPST)
214 $(SHLFILE).$(SHL): $(SHOFILES) $(SHLDEF)
215         $(SHL_LD)
216         $(SHL1)
217         $(SHL2)
218         $(SHL3)
219         $(SHL4)
220         -copy $(SRCDIRN)\reginaos2.ico
221         $(RC)
222         -lxlite $(SHLFILE).$(SHL)
225 # Convert .mts to .mtb
227 mtb_files: msgcmp$(EXE) $(MTSSRC)
228         msgcmp $(MTSSRC)
230 msgcmp$(EXE): msgcmp.$(OBJ)
231         $(CC) $(LINKOPT) $(STATIC_LDFLAGS) -o msgcmp$(EXE) msgcmp.$(OBJ)
233 msgcmp.$(OBJ): $(SRCDIR)/msgcmp.c
234         $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/msgcmp.c
237 # Rules for static objects
239 #$(SRCDIR)/lexsrc.c: $(SRCDIR)/lexsrc.l
240 #       flex -Scontrib/flex.skl -8 -o$(SRCDIR)/lexsrc.c $(SRCDIR)/lexsrc.l
242 #$(SRCDIR)/yaccsrc.c $(SRCDIR)/yaccsrc.h: $(SRCDIR)/yaccsrc.y
243 #       bison -d -o$(SRCDIR)/yaccsrc.c $(SRCDIR)/yaccsrc.y
245 funcs.$(OBJ) :   $(SRCDIR)/funcs.c       $(SRCDIR)/rexx.h
246                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/funcs.c
248 builtin.$(OBJ) : $(SRCDIR)/builtin.c     $(SRCDIR)/rexx.h
249                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/builtin.c
251 error.$(OBJ) :   $(SRCDIR)/error.c       $(SRCDIR)/rexx.h
252                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/error.c
254 variable.$(OBJ) :$(SRCDIR)/variable.c    $(SRCDIR)/rexx.h
255                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/variable.c
257 interprt.$(OBJ) :$(SRCDIR)/interprt.c    $(SRCDIR)/rexx.h
258                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/interprt.c
260 debug.$(OBJ) :   $(SRCDIR)/debug.c       $(SRCDIR)/rexx.h
261                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/debug.c
263 dbgfuncs.$(OBJ) :$(SRCDIR)/dbgfuncs.c    $(SRCDIR)/rexx.h
264                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/dbgfuncs.c
266 memory.$(OBJ) :  $(SRCDIR)/memory.c      $(SRCDIR)/rexx.h
267                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/memory.c
269 parsing.$(OBJ) : $(SRCDIR)/parsing.c     $(SRCDIR)/rexx.h
270                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/parsing.c
272 files.$(OBJ) :   $(SRCDIR)/files.c       $(SRCDIR)/rexx.h
273                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/files.c
275 misc.$(OBJ) :    $(SRCDIR)/misc.c        $(SRCDIR)/rexx.h
276                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/misc.c
278 unxfuncs.$(OBJ) :$(SRCDIR)/unxfuncs.c    $(SRCDIR)/rexx.h
279                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/unxfuncs.c
281 os2funcs.$(OBJ) :$(SRCDIR)/os2funcs.c    $(SRCDIR)/rexx.h
282                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/os2funcs.c
284 cmsfuncs.$(OBJ) :$(SRCDIR)/cmsfuncs.c    $(SRCDIR)/rexx.h
285                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/cmsfuncs.c
287 shell.$(OBJ) :   $(SRCDIR)/shell.c       $(SRCDIR)/rexx.h
288                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/shell.c
290 rexxext.$(OBJ) : $(SRCDIR)/rexxext.c     $(SRCDIR)/rexx.h
291                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/rexxext.c
293 stack.$(OBJ) :   $(SRCDIR)/stack.c       $(SRCDIR)/rexx.h
294                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/stack.c
296 tracing.$(OBJ) : $(SRCDIR)/tracing.c     $(SRCDIR)/rexx.h
297                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/tracing.c
299 interp.$(OBJ) :  $(SRCDIR)/interp.c      $(SRCDIR)/rexx.h
300                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/interp.c
302 cmath.$(OBJ) :   $(SRCDIR)/cmath.c       $(SRCDIR)/rexx.h
303                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/cmath.c
305 convert.$(OBJ) : $(SRCDIR)/convert.c     $(SRCDIR)/rexx.h
306                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/convert.c
308 strings.$(OBJ) : $(SRCDIR)/strings.c     $(SRCDIR)/rexx.h
309                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/strings.c
311 library.$(OBJ) : $(SRCDIR)/library.c     $(SRCDIR)/rexx.h
312                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/library.c
314 strmath.$(OBJ) : $(SRCDIR)/strmath.c     $(SRCDIR)/rexx.h
315                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/strmath.c
317 signals.$(OBJ) : $(SRCDIR)/signals.c     $(SRCDIR)/rexx.h
318                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/signals.c
320 macros.$(OBJ) :  $(SRCDIR)/macros.c      $(SRCDIR)/rexx.h
321                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/macros.c
323 envir.$(OBJ) :   $(SRCDIR)/envir.c       $(SRCDIR)/rexx.h
324                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/envir.c
326 expr.$(OBJ) :    $(SRCDIR)/expr.c        $(SRCDIR)/rexx.h
327                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/expr.c
329 extlib.$(OBJ) :  $(SRCDIR)/extlib.c      $(SRCDIR)/rexx.h
330                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/extlib.c
332 wrappers.$(OBJ) :$(SRCDIR)/wrappers.c    $(SRCDIR)/rexx.h
333                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/wrappers.c
335 options.$(OBJ) : $(SRCDIR)/options.c     $(SRCDIR)/rexx.h
336                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/options.c
338 doscmd.$(OBJ) :  $(SRCDIR)/doscmd.c      $(SRCDIR)/rexx.h
339                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/doscmd.c
341 rexx.$(OBJ) :    $(SRCDIR)/rexx.c        $(SRCDIR)/rexx.h
342                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/rexx.c
344 client.$(OBJ) :    $(SRCDIR)/client.c    $(SRCDIR)/rexx.h
345                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/client.c
347 rexxsaa.$(OBJ) :    $(SRCDIR)/rexxsaa.c  $(SRCDIR)/rexx.h
348                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/rexxsaa.c
350 nosaa.$(OBJ) :    $(SRCDIR)/nosaa.c  $(SRCDIR)/rexx.h
351                $(CC) $(COPT) $(CC2O) -c $(SRCDIR)/nosaa.c
353 regina.obj :  $(SRCDIR)/regina.c      $(SRCDIR)/rexx.h
354                $(CC) $(COPT_DLL) $(CC2O) $(DYN_CRT) -c $(SRCDIR)/regina.c
356 drexx.$(OBJ) : $(SRCDIR)/rexx.c          $(SRCDIR)/rexx.h
357                $(CC) $(COPT) -c -o drexx.$(OBJ) -DRXLIB $(SRCDIR)/rexx.c
359 mt_notmt.$(OBJ) : $(SRCDIR)/mt_notmt.c
360                 $(CC) $(COPT) -c -o mt_notmt.$(OBJ) $(SRCDIR)/mt_notmt.c
362 mt_os2.$(OBJ) : $(SRCDIR)/mt_os2.c
363                 $(CC) $(COPT) -c -o mt_os2.$(OBJ) $(SRCDIR)/mt_os2.c
365 instore.$(OBJ) : $(SRCDIR)/instore.c
366                 $(CC) $(COPT) -c -o instore.$(OBJ) $(SRCDIR)/instore.c
368 extstack.$(OBJ) : $(SRCDIR)/extstack.c $(SRCDIR)/rexxbif.h $(SRCDIR)/extstack.h
369                 $(CC) $(COPT) -c -o extstack.$(OBJ) $(SRCDIR)/extstack.c
371 eextstack.$(OBJ) : $(SRCDIR)/extstack.c $(SRCDIR)/rexxbif.h $(SRCDIR)/extstack.h
372                 $(CC) -DEXTERNAL_TO_REGINA $(COPT) -c -o eextstack.$(OBJ) $(SRCDIR)/extstack.c
374 rexxbif.$(OBJ) : $(SRCDIR)/rexxbif.c $(SRCDIR)/rexxbif.h
375                 $(CC) $(COPT) -c -o rexxbif.$(OBJ) $(SRCDIR)/rexxbif.c
377 erexxbif.$(OBJ) : $(SRCDIR)/rexxbif.c $(SRCDIR)/rexxbif.h $(SRCDIR)/extstack.h
378                 $(CC) -DEXTERNAL_TO_REGINA $(COPT) -c -o erexxbif.$(OBJ) $(SRCDIR)/rexxbif.c
380 rxqueue.$(OBJ) : $(SRCDIR)/rxqueue.c $(SRCDIR)/rexxbif.h $(SRCDIR)/extstack.h
381                 $(CC) -DEXTERNAL_TO_REGINA $(COPT) -c -o rxqueue.$(OBJ) $(SRCDIR)/rxqueue.c
383 rxstack.$(OBJ) : $(SRCDIR)/rxstack.c $(SRCDIR)/rexxbif.h $(SRCDIR)/extstack.h
384                 $(CC) -DEXTERNAL_TO_REGINA $(COPT) -c -o rxstack.$(OBJ) $(SRCDIR)/rxstack.c
386 lexsrc.$(OBJ) : $(SRCDIR)/lexsrc.c $(SRCDIR)/rexx.h $(SRCDIR)/yaccsrc.h
387                $(CC) $(OTHERCOPT) $(CC2O) -c $(SRCDIR)/lexsrc.c
389 yaccsrc.$(OBJ) : $(SRCDIR)/yaccsrc.c $(SRCDIR)/defs.h $(SRCDIR)/rexx.h
390                $(CC) $(OTHERCOPT) $(CC2O) -c -DYYMAXDEPTH=10000 $(SRCDIR)/yaccsrc.c
392 execiser.obj : $(SRCDIR)/execiser.c $(SRCDIR)/rexx.h
393                $(CC) $(COPT_DLL) $(CC2O) $(DYN_CRT) -c $(SRCDIR)/execiser.c
395 getopt.obj : $(SRCDIR)/getopt.c
396                $(CC) $(COPT_DLL) $(CC2O) -c $(SRCDIR)/getopt.c
399 # Rules for shared objects
401 funcs.obj :   $(SRCDIR)/funcs.c          $(SRCDIR)/rexx.h
402                $(O2SAVE)
403                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/funcs.c
404                $(O2SHO)
405                $(SAVE2O)
407 builtin.obj : $(SRCDIR)/builtin.c        $(SRCDIR)/rexx.h
408                $(O2SAVE)
409                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/builtin.c
410                $(O2SHO)
411                $(SAVE2O)
413 error.obj :   $(SRCDIR)/error.c          $(SRCDIR)/rexx.h
414                $(O2SAVE)
415                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/error.c
416                $(O2SHO)
417                $(SAVE2O)
419 variable.obj :$(SRCDIR)/variable.c       $(SRCDIR)/rexx.h
420                $(O2SAVE)
421                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/variable.c
422                $(O2SHO)
423                $(SAVE2O)
425 interprt.obj :$(SRCDIR)/interprt.c       $(SRCDIR)/rexx.h
426                $(O2SAVE)
427                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/interprt.c
428                $(O2SHO)
429                $(SAVE2O)
431 debug.obj :   $(SRCDIR)/debug.c          $(SRCDIR)/rexx.h
432                $(O2SAVE)
433                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/debug.c
434                $(O2SHO)
435                $(SAVE2O)
437 dbgfuncs.obj :$(SRCDIR)/dbgfuncs.c       $(SRCDIR)/rexx.h
438                $(O2SAVE)
439                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/dbgfuncs.c
440                $(O2SHO)
441                $(SAVE2O)
443 memory.obj :  $(SRCDIR)/memory.c         $(SRCDIR)/rexx.h
444                $(O2SAVE)
445                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/memory.c
446                $(O2SHO)
447                $(SAVE2O)
449 parsing.obj : $(SRCDIR)/parsing.c        $(SRCDIR)/rexx.h
450                $(O2SAVE)
451                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/parsing.c
452                $(O2SHO)
453                $(SAVE2O)
455 files.obj :   $(SRCDIR)/files.c          $(SRCDIR)/rexx.h
456                $(O2SAVE)
457                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/files.c
458                $(O2SHO)
459                $(SAVE2O)
461 misc.obj :    $(SRCDIR)/misc.c           $(SRCDIR)/rexx.h
462                $(O2SAVE)
463                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/misc.c
464                $(O2SHO)
465                $(SAVE2O)
467 unxfuncs.obj :$(SRCDIR)/unxfuncs.c       $(SRCDIR)/rexx.h
468                $(O2SAVE)
469                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/unxfuncs.c
470                $(O2SHO)
471                $(SAVE2O)
473 os2funcs.obj :$(SRCDIR)/os2funcs.c       $(SRCDIR)/rexx.h
474                $(O2SAVE)
475                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/os2funcs.c
476                $(O2SHO)
477                $(SAVE2O)
479 cmsfuncs.obj :$(SRCDIR)/cmsfuncs.c       $(SRCDIR)/rexx.h
480                $(O2SAVE)
481                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/cmsfuncs.c
482                $(O2SHO)
483                $(SAVE2O)
485 shell.obj :   $(SRCDIR)/shell.c          $(SRCDIR)/rexx.h
486                $(O2SAVE)
487                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/shell.c
488                $(O2SHO)
489                $(SAVE2O)
491 rexxext.obj : $(SRCDIR)/rexxext.c        $(SRCDIR)/rexx.h
492                $(O2SAVE)
493                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/rexxext.c
494                $(O2SHO)
495                $(SAVE2O)
497 stack.obj :   $(SRCDIR)/stack.c          $(SRCDIR)/rexx.h
498                $(O2SAVE)
499                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/stack.c
500                $(O2SHO)
501                $(SAVE2O)
503 tracing.obj : $(SRCDIR)/tracing.c        $(SRCDIR)/rexx.h
504                $(O2SAVE)
505                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/tracing.c
506                $(O2SHO)
507                $(SAVE2O)
509 interp.obj :  $(SRCDIR)/interp.c         $(SRCDIR)/rexx.h
510                $(O2SAVE)
511                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/interp.c
512                $(O2SHO)
513                $(SAVE2O)
515 cmath.obj :   $(SRCDIR)/cmath.c          $(SRCDIR)/rexx.h
516                $(O2SAVE)
517                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/cmath.c
518                $(O2SHO)
519                $(SAVE2O)
521 convert.obj : $(SRCDIR)/convert.c        $(SRCDIR)/rexx.h
522                $(O2SAVE)
523                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/convert.c
524                $(O2SHO)
525                $(SAVE2O)
527 strings.obj : $(SRCDIR)/strings.c        $(SRCDIR)/rexx.h
528                $(O2SAVE)
529                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/strings.c
530                $(O2SHO)
531                $(SAVE2O)
533 library.obj : $(SRCDIR)/library.c        $(SRCDIR)/rexx.h
534                $(O2SAVE)
535                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/library.c
536                $(O2SHO)
537                $(SAVE2O)
539 strmath.obj : $(SRCDIR)/strmath.c        $(SRCDIR)/rexx.h
540                $(O2SAVE)
541                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/strmath.c
542                $(O2SHO)
543                $(SAVE2O)
545 signals.obj : $(SRCDIR)/signals.c        $(SRCDIR)/rexx.h
546                $(O2SAVE)
547                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/signals.c
548                $(O2SHO)
549                $(SAVE2O)
551 macros.obj :  $(SRCDIR)/macros.c         $(SRCDIR)/rexx.h
552                $(O2SAVE)
553                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/macros.c
554                $(O2SHO)
555                $(SAVE2O)
557 envir.obj :   $(SRCDIR)/envir.c          $(SRCDIR)/rexx.h
558                $(O2SAVE)
559                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/envir.c
560                $(O2SHO)
561                $(SAVE2O)
563 expr.obj :    $(SRCDIR)/expr.c           $(SRCDIR)/rexx.h
564                $(O2SAVE)
565                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/expr.c
566                $(O2SHO)
567                $(SAVE2O)
569 extlib.obj :  $(SRCDIR)/extlib.c         $(SRCDIR)/rexx.h
570                $(O2SAVE)
571                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/extlib.c
572                $(O2SHO)
573                $(SAVE2O)
575 wrappers.obj :$(SRCDIR)/wrappers.c       $(SRCDIR)/rexx.h
576                $(O2SAVE)
577                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/wrappers.c
578                $(O2SHO)
579                $(SAVE2O)
581 options.obj : $(SRCDIR)/options.c        $(SRCDIR)/rexx.h
582                $(O2SAVE)
583                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/options.c
584                $(O2SHO)
585                $(SAVE2O)
587 doscmd.obj :  $(SRCDIR)/doscmd.c         $(SRCDIR)/rexx.h
588                $(O2SAVE)
589                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/doscmd.c
590                $(O2SHO)
591                $(SAVE2O)
593 rexx.obj :  $(SRCDIR)/rexx.c             $(SRCDIR)/rexx.h
594                $(O2SAVE)
595                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/rexx.c
596                $(O2SHO)
597                $(SAVE2O)
599 client.obj :  $(SRCDIR)/client.c         $(SRCDIR)/rexx.h
600                $(O2SAVE)
601                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/client.c
602                $(O2SHO)
603                $(SAVE2O)
605 rexxsaa.obj :  $(SRCDIR)/rexxsaa.c       $(SRCDIR)/rexx.h
606                $(O2SAVE)
607                $(CC) $(COPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/rexxsaa.c
608                $(O2SHO)
609                $(SAVE2O)
611 extstack.obj : $(SRCDIR)/extstack.c $(SRCDIR)/extstack.h $(SRCDIR)/rexxbif.h
612                 $(CC) $(COPT_DLL) $(DYN_COMP) -c -o extstack.obj $(SRCDIR)/extstack.c
614 rexxbif.obj : $(SRCDIR)/rexxbif.c $(SRCDIR)/rexxbif.h
615                 $(CC) $(COPT_DLL) $(DYN_COMP) -c -o rexxbif.obj $(SRCDIR)/rexxbif.c
617 drexx.obj : $(SRCDIR)/rexx.c             $(SRCDIR)/rexx.h
618                $(CC) $(COPT_DLL) $(DYN_COMP) -c -o drexx.obj -DRXLIB $(SRCDIR)/rexx.c
620 mt_notmt.obj : $(SRCDIR)/mt_notmt.c
621                 $(CC) $(COPT_DLL) $(DYN_COMP) -c -o mt_notmt.obj $(SRCDIR)/mt_notmt.c
623 instore.obj : $(SRCDIR)/instore.c
624                 $(CC) $(COPT_DLL) $(DYN_COMP) -c -o instore.obj $(SRCDIR)/instore.c
626 mt_os2.obj : $(SRCDIR)/mt_os2.c
627                 $(CC) $(COPT_DLL) $(DYN_COMP) -c -o mt_os2.obj $(SRCDIR)/mt_os2.c
629 lexsrc.obj : $(SRCDIR)/lexsrc.c $(SRCDIR)/rexx.h $(SRCDIR)/yaccsrc.h
630                $(O2SAVE)
631                $(CC) $(OTHERCOPT_DLL) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/lexsrc.c
632                $(O2SHO)
633                $(SAVE2O)
635 yaccsrc.obj : $(SRCDIR)/yaccsrc.c $(SRCDIR)/defs.h $(SRCDIR)/rexx.h
636                $(O2SAVE)
637                $(CC) $(OTHERCOPT_DLL) $(CC2O) $(DYN_COMP) -c -DYYMAXDEPTH=10000 $(SRCDIR)/yaccsrc.c
638                $(O2SHO)
639                $(SAVE2O)
642 # Rules for Regina tokeniser targets
644 trexx.$(OBJ) : $(SRCDIR)/tregina.c
645         $(CC) $(COPT) -c -o trexx.$(OBJ) $(SRCDIR)/tregina.c
647 tregina.obj : $(SRCDIR)/tregina.c
648         $(CC) $(COPT) $(CC2O) $(DYN_COMP) -c $(SRCDIR)/tregina.c
651 # Rules for sample programs
653 test1.$(OBJ): $(SRCDIR)/test1.c
654                $(CC) -c $(COPT_DLL) $(CC2O) $(DYN_COMP) $(SRCDIR)/test1.c
656 test1.$(RXLIB): test1.$(OBJ) $(SHLFILE).$(SHL)
657                $(LD_RXLIB_PRE) test1.$(OBJ) $(LD_RXLIB1)
659 test2.$(OBJ): $(SRCDIR)/test2.c
660                $(CC) -c $(COPT_DLL) $(CC2O) $(DYN_COMP) $(SRCDIR)/test2.c
662 test2.$(RXLIB): test2.$(OBJ) $(SHLFILE).$(SHL)
663                $(LD_RXLIB_PRE) test2.$(OBJ) $(LD_RXLIB2)
665 depend:
666                 makedepend $(CSRCFILES)
668 ARCHIVE_FILES = $(ALLSRC) $(README) $(SRCDIR)/makefile* $(SRCDIR)/*.rsp $(DEMOFILES) $(TRIPFILES)
670 dist:
671                 tar -cvf - $(ARCHIVE_FILES) | gzip > Regina_$(VERDOT).tar.gz
673 tar:
674                 tar -cvf - $(ARCHIVE_FILES) | compress > Regina_$(VERDOT).tar.Z
676 zip:
677                 zip regna$(VER) $(ARCHIVE_FILES)
680 # below here not tested
683 install: rexx $(LIBFILE).a
684                 cp rexx$(PROGEXT) $(BINDIR)/$(PROGNAME)$(PROGEXT)
685                 cp ../rexx.1 $(MANDIR)/rexx.$(MANEXT)
686                 cp $(LIBFILE).a $(LIBDIR)/$(LIBFILE).a
687                 ranlib $(LIBDIR)/$(LIBFILE).a
689 clean:
690                 rm -f $(JUNK) \#*\#
692 # End of makefile
695 # End of makefile