From Tom Zougas, zougas@civ.utoronto.ca

These are the changes I had to make to get ANTLR to compile under Watcom C
10.0 32-bit mode. I'm including the makefiles for antlr and dlg:

[Warning from T. Parr: I think that I may have expanded the tabs by
 mistake in this file.  You might have to convert them back to
 tabs to have this file work correctly.]

antlr.mak:
-----------------------------------------------------------------------

SET=..\support\set
PCCTS_H=..\h

#
#   Watcom
#
CC=wcl386
ANTLR=..\bin\antlr
DLG=..\bin\dlg
CFLAGS= -I. -I$(SET) -I$(PCCTS_H) -DUSER_ZZSYN -DPC
OUT_OBJ = -o
OBJ_EXT = obj
LINK = wcl386

.c.obj :
        $(CC) -c $[* $(CFLAGS)

antlr.exe: antlr.obj scan.obj err.obj bits.obj build.obj fset2.obj &
        fset.obj gen.obj globals.obj hash.obj lex.obj main.obj &
        misc.obj set.obj pred.obj
        $(LINK) -fe=antlr.exe *.obj -k14336
        copy *.exe ..\bin

# *********** Target list of PC machines ***********
#
# Don't worry about the ambiguity messages coming from antlr
# for making antlr.c etc...  [should be 10 of them, I think]
#
antlr.c stdpccts.h parser.dlg tokens.h err.c : antlr.g
        $(ANTLR) antlr.g

antlr.$(OBJ_EXT): antlr.c mode.h tokens.h

scan.$(OBJ_EXT): scan.c mode.h tokens.h

scan.c mode.h: parser.dlg
        $(DLG) -C2 parser.dlg scan.c

set.$(OBJ_EXT): $(SET)\set.c
        $(CC) $(CFLAGS) -c set.$(OBJ_EXT) $(SET)\set.c

#
# ****** These next targets are common to UNIX and PC world ********
#

#clean up all the intermediate files
clean:
        del *.obj

#remove everything in clean plus the PCCTS files generated
scrub:
        del $(PCCTS_GEN) 
        del *.$(OBJ_EXT)
---------------------------------------------------------------------
dlg.mak:
---------------------------------------------------------------------
SET=..\support\set
PCCTS_H=..\h

#
#   Watcom
#
CC=wcl386
ANTLR=..\bin\antlr
DLG=..\bin\dlg
CFLAGS= -I. -I$(SET) -I$(PCCTS_H) -DUSER_ZZSYN -DPC
LIBS=
OBJ_EXT = obj
LINK = wcl386

.c.obj :
        $(CC) -c $[* $(CFLAGS)

dlg.exe : dlg_p.obj dlg_a.obj main.obj err.obj set.obj support.obj &
        output.obj relabel.obj automata.obj
        $(LINK) -fe=dlg.exe *.obj -k14336
        copy *.exe ..\bin

SRC = dlg_p.c dlg_a.c main.c err.c $(SET)\set.c support.c output.c &
        relabel.c automata.c

dlg_p.c parser.dlg err.c tokens.h : dlg_p.g
        $(ANTLR) dlg_p.g

dlg_a.c mode.h : parser.dlg
        $(DLG) -C2 parser.dlg dlg_a.c

dlg_p.$(OBJ_EXT) : dlg_p.c dlg.h tokens.h mode.h
        $(CC) $(CFLAGS) -c dlg_p.c

dlg_a.$(OBJ_EXT) : dlg_a.c dlg.h tokens.h mode.h
        $(CC) $(CFLAGS) -c dlg_a.c

main.$(OBJ_EXT) : main.c dlg.h
        $(CC) $(CFLAGS) -c main.c

set.$(OBJ_EXT) : $(SET)\set.c
        $(CC) -c $(CFLAGS) $(SET)\set.c

#clean up all the intermediate files
clean:
        del *.$(OBJ_EXT)
