
PROGRAM=byacc
DEST=.
CFLAGS=-O
LDFLAGS=
LIBS=
LINKER=$(CC)
MAKEFILE=Makefile

HDRS=defs.h
S1=closure.c error.c lalr.c lr0.c main.c mkpar.c output.c reader.c
S2=skeleton.c symtab.c verbose.c warshall.c mkskel.c
SRCS=$(S1) $(S2)
OBJ1=closure.o error.o lalr.o lr0.o main.o mkpar.o output.o reader.o
OBJ2=skeleton.o symtab.o verbose.o warshall.o
OBJS=$(OBJ1) $(OBJ2)

PRINT=ljprint -2lmrDN

all:		$(PROGRAM)

$(PROGRAM):     $(OBJS) $(LIBS)
		@echo -n "Loading $(PROGRAM) ... "
		@$(LINKER) $(LDFLAGS) $(OBJS) $(LIBS) -o $(PROGRAM)
		@echo "done"

clean:;		@rm -f $(OBJS)

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

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

install:	$(PROGRAM)
		@echo Installing $(PROGRAM) in $(DEST)
		@install -s $(PROGRAM) $(DEST)

listing:;	@$(PRINT) Makefile $(HDRS) $(SRCS)

size:;		@wc $(HDRS) $(SRCS)
lint:;		@lint $(SRCS)

program:        $(PROGRAM)

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

update:		$(DEST)/$(PROGRAM)

$(DEST)/$(PROGRAM): $(SRCS) $(LIBS) $(HDRS)
		@make -f $(MAKEFILE) DEST=$(DEST) install
###
closure.o: defs.h
error.o: defs.h
lalr.o: defs.h
lr0.c: defs.h
main.o: defs.h
mkpar.o: defs.h
output.o: defs.h
reader.o: defs.h
skeleton.o: defs.h
symtab.o: defs.h
verbose.o: defs.h
warshall.o: defs.h
