#sccs	"@(#)lex:Makefile	1.3"

include $(MAKEINC)/Makepre.h

SUBDIRS = form
IFLAG = -i
FILES = main.o sub1.o sub2.o header.o
ID = id.o

DEPENDLIST = header.c \
	ldefs.c \
	main.c \
	once.c \
	sub1.c \
	sub2.c \
	y.tab.c

all: Makeincludes itest lex

Makeincludes: $(DEPENDLIST)
	$(INCCMD) $(DEPENDLIST) | $(SORT) | $(FILTER) > Makeincludes
	$(MAKE)

includes: $(DEPENDLIST)
	$(INCCMD) $(DEPENDLIST) | $(SORT) | $(FILTER) > Makeincludes

itest:
	@if [ x$(IFLAG) != x-i ] ; then echo NO ID SPACE ; exit 1 ; else exit 0 ; fi

lex:	$(FILES) y.tab.o $(ID)
	$(LD) $(LDFLAGS) $(IFLAG) $(SHAREDLIB) -s $(FILES) y.tab.o $(ID) -ly -o lex

$(FILES): ldefs.c
main.o:	  once.c
y.tab.c:  parser.y
	  $(YACC) parser.y

test:
	  rtest lex

install:  cominstall
	$(INSTALL) -i$(EXITFLAG) lex $(INSDIR) $(PROTOFILE)

clean:
	 rm -f *.o

clobber: clean
	 rm -f y.tab.c lex

id.c: lex.sl
	mkslid > id.c

populate: $(SUBDIRS)
	UNIT=`cat .unit`; export UNIT; \
	for D in $(SUBDIRS); \
	do (cd $$D; echo "$$UNIT/$$D" >.unit; echo "** $$D **:"; getunit); \
	done

$(SUBDIRS):
	mkdir $@


include Makeincludes
include $(MAKEINC)/Makepost.h
