#
# Default rules for compiling code.
#
.c.o :
	cc $(CFLAGS) $*.c
#
CFLAGS = -c -g
#
# linker flags
#
LDFLAGS = -lg -lm
#
# define macros for the source files
#
SOURCE = \
#
OBJECT = \
	parser.o data_defs.o keyword.o main.o yylex.o
#
# cmp is used in issame (needed by VMS)
#
#cmp : cmp.o
#	cc cmp.o -o cmp
#
# Make JCL
#
JCL : $(OBJECT)
	cc -o JCL $(OBJECT) $(LDFLAGS)
#
# make parser.c from parser.y
# issame sees if keyword.h is changed. if not, don't update it
#
parser.c : parser.y
	@- echo Expect 4 unreduced rules
	yacc -d parser.y
	@ mv y.tab.c parser.c
	@ csh -f issame y.tab.h keyword.h
#
# make keyword.c from the list of tokens in keyword.h
#
make_keyword : make_keyword.o
	  cc make_keyword.o -o make_keyword
#
keyword.c : keyword.h make_keyword
	make_keyword keyword.h
#
clean :
	- rm *.o JCL cmp make_keyword parser.c keyword.h keyword.c \
	y.output *~ core
#
# Here are all the dependencies:
#
keyword.o :		keyword.h
data_defs.o :		jcl.h
main.o :		yaccun.h
parser.o :		yaccun.h jcl.h
yylex.o :		yaccun.h keyword.h jcl.h
