
objs = accum.obj at.obj autodef.obj copyof.obj debug.obj define.obj dump.obj error.obj\
 eval.obj expand.obj expr.obj if.obj include.obj io.obj is.obj line.obj main.obj pragma.obj\
 predefs.obj set.obj sharp.obj stats.obj symtbl.obj unctrl.obj undef.obj while.obj

CC=WCL386 #use the watcom C/C++ compiler 10.0
OPTO=/5r /ox
CFLAGS=/c /x $(OPTO) /mf /fo=$@ #must set /od or target faults
#CFLAGS=/c /5r /mf /od /of+ /d2  /fo=$@	#must set /od or target faults
LINK=wlink # watcom linker
LIB=wlib -c # watcom librarian

%.obj : %.c
	$(CC) $(CFLAGS) $*.c
	$(LIB)cpp.lib -+$@

.PHONY : all
all:	cpp.exe

cpp.exe:  $(objs)
	$(LINK) NAME CPP SYSTEM DOS4G OPTION MAP, STACK=64K FILE main LIBRARY cpp.lib
	
main.obj: main.c
	$(CC) $(CFLAGS) $*.c


accum.obj: accum.c
accum.obj: accum.h
accum.obj: anci.h
accum.obj: malloc.h
at.obj: at.c
at.obj: io.h
autodef.obj: autodef.c
autodef.obj: malloc.h
copyof.obj: copyof.c
copyof.obj: malloc.h
copyof.obj: anci.h
debug.obj: debug.c
debug.obj: io.h
debug.obj: is.h
define.obj: accum.h
define.obj: define.c
define.obj: io.h
define.obj: is.h
define.obj: malloc.h
define.obj: stats.h
define.obj: symtbl.h
dump.obj: dump.c
dump.obj: if.h
dump.obj: io.h
dump.obj: symtbl.h
error.obj: error.c
error.obj: io.h
eval.obj: eval.c
eval.obj: io.h
expand.obj: accum.h
expand.obj: expand.c
expand.obj: io.h
expand.obj: is.h
expand.obj: malloc.h
expand.obj: symtbl.h
expand.obj: unctrl.h
expr.obj: expr.c
expr.obj: expr.h
expr.obj: anci.h
expr.obj: io.h
expr.obj: is.h
expr.obj: malloc.h
expr.obj: symtbl.h
if.obj: if.c
if.obj: if.h
if.obj: io.h
if.obj: is.h
if.obj: malloc.h
if.obj: symtbl.h
include.obj: accum.h
include.obj: anci.h
include.obj: include.c
include.obj: io.h
include.obj: is.h
include.obj: malloc.h
include.obj: stats.h
include.obj: symtbl.h
io.obj: accum.h
io.obj: expr.h
io.obj: io.c
io.obj: io.h
io.obj: is.h
io.obj: malloc.h
io.obj: symtbl.h
io.obj: unctrl.h
is.obj: is.c
line.obj: io.h
line.obj: line.c
main.obj: accum.h
main.obj: anci.h
main.obj: if.h
main.obj: io.h
main.obj: is.h
main.obj: malloc.h
main.obj: stats.h
main.obj: symtbl.h
pragma.obj: io.h
pragma.obj: pragma.c
predefs.obj: predefs.c
set.obj: io.h
set.obj: malloc.h
set.obj: set.c
set.obj: symtbl.h
sharp.obj: io.h
sharp.obj: sharp.c
stats.obj: stats.c
stats.obj: stats.h
symtbl.obj: malloc.h
symtbl.obj: symtbl.c
symtbl.obj: symtbl.h
unctrl.obj: unctrl.c
unctrl.obj: unctrl.h
undef.obj: io.h
undef.obj: stats.h
undef.obj: undef.c
while.obj: while.c

clean:
	erase *.obj
	erase cpp.lib

