MODEL		= L
OPTIMIZE	= -Ox
SKEL1		= -DDEFAULT_SKEL=\"skel.flx\"
SKEL2		= -DFAST_SKEL=\"fastskel.flx\"
SKEL3		= -DFLEXFILE=\"lexyy.c\"
CFLAGS		= $(SKEL1) $(SKEL2) $(SKEL3) -DMSC5 -A$(MODEL) $(OPTIMIZE)
DEST		= .
EXTHDRS		=
FFLAGS		=
HDRS		= flexdef.h fskelcom.h fskeldef.h
LDFLAGS		= /NOI /NOE /FAR /PAC /E /ST:4000
LDMAP		= $(@R)
LIBS		=
LINKER		= link
MAKEFILE	= Makefile
OBJS		= ccl.obj dfa.obj ecs.obj main.obj misc.obj nfa.obj \
		  parse.obj sym.obj tblcmp.obj yylex.obj scan.obj
PRINT		= print
SETARGV		= c:\lib\setargv
SRCS		= ccl.c dfa.c ecs.c main.c misc.c nfa.c parse.y sym.c \
		  tblcmp.c yylex.c scan.l
.l.c:
	flex $(LFLAGS) $<
	mv lexyy.c $@

flex.exe:     $(OBJS) $(LIBS)
		@echo Loading... $@
		@$(LINKER) $(OBJS) $(SETARGV), $@, $(LDMAP), $(LIBS) $(LDFLAGS);
		@echo done

first_flex:
	cp scan-c.dst scan.c
	make $(MFLAGS) flex.exe

clean:;		@rm -f $(OBJS)

depend:; 	@mkmf -f $(MAKEFILE) PROGRAM=$(PROGRAM) DEST=$(DEST)

index:;		@ctags -wx $(HDRS) $(SRCS)

install:	$(PROGRAM)
		@echo Installing $(PROGRAM) in $(DEST)
		@if not $(DEST)x==.x copy $(PROGRAM) $(DEST)

print:;		@$(PRINT) $(HDRS) $(SRCS)

program:        $(PROGRAM)

tags:           $(HDRS) $(SRCS); @ctags $(HDRS) $(SRCS)

update:		$(DEST)/$(PROGRAM)

$(DEST)/$(PROGRAM): $(SRCS) $(LIBS) $(HDRS) $(EXTHDRS)
		@make -f $(MAKEFILE) DEST=$(DEST) install

# if the following fails because you don't already *have* flex,
# do "make first_flex"
scan.c: scan.l
	flex scan.l
	-@del scan.c
	@ren lexyy.c scan.c

parse.h parse.c : parse.y
	yacc -d parse.y
	@ren ytab.c parse.c
	@ren ytab.h parse.h

### OPUS MKMF:  Do not remove this line!  Automatic dependencies follow.

ccl.obj: flexdef.h

dfa.obj: flexdef.h

ecs.obj: flexdef.h

main.obj: flexdef.h

misc.obj: flexdef.h

nfa.obj: flexdef.h

parse.obj: flexdef.h

sym.obj: flexdef.h

tblcmp.obj: flexdef.h

yylex.obj: flexdef.h
