1# $Id: Makefile,v 1.10 1997/02/22 19:55:34 peter Exp $ 2# 3# By default, flex will be configured to generate 8-bit scanners only if the 4# -8 flag is given. If you want it to always generate 8-bit scanners, add 5# "-DDEFAULT_CSIZE=256" to CFLAGS. Note that doing so will double the size 6# of all uncompressed scanners. 7# 8# Bootstrapping of lex is handled automatically. 9# Also note that flex.skel no longer gets installed. 10# 11 12PROG= lex 13LINKS+= ${BINDIR}/lex ${BINDIR}/lex++ 14LINKS+= ${BINDIR}/lex ${BINDIR}/flex 15LINKS+= ${BINDIR}/lex ${BINDIR}/flex++ 16 17SRCS= scan.c ccl.c dfa.c ecs.c gen.c main.c misc.c nfa.c parse.c \ 18 parse.h \ 19 skel.c sym.c tblcmp.c yylex.c 20LFLAGS+= -is 21CFLAGS+= -I. -I${.CURDIR} 22MAN1= lex.1 23MLINKS+= lex.1 flex.1 24MLINKS+= lex.1 flex++.1 25MLINKS+= lex.1 lex++.1 26 27CLEANFILES+= parse.c parse.h scan.c y.tab.h y.tab.c 28 29.if !defined(NOLIB) 30SUBDIR= lib 31.endif 32 33beforeinstall: 34 ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 644 \ 35 ${.CURDIR}/FlexLexer.h ${DESTDIR}/usr/include/g++ 36 37 38.ORDER: parse.c parse.h 39parse.c parse.h: parse.y 40 $(YACC) -d $(.CURDIR)/parse.y 41 mv -f y.tab.c parse.c 42 mv -f y.tab.h parse.h 43 44bootstrap: initscan.c 45 @cmp -s ${.CURDIR}/initscan.c scan.c || { \ 46 echo "Bootstrapping flex" ; \ 47 rm -f scan.c ; \ 48 cp -f ${.CURDIR}/initscan.c scan.c ; \ 49 } 50 51scan.o: parse.h 52 53test: check 54check: $(PROG) 55 ./$(PROG) $(LFLAGS) -t $(COMPRESSION) $(.CURDIR)/scan.l \ 56 | sed s,\"$(.CURDIR)/scan.l",\"scan.l", \ 57 | diff $(.CURDIR)/initscan.c - 58 @echo "Check successful" 59 60.include <bsd.prog.mk> 61