1# $FreeBSD$ 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.y \ 18 skel.c sym.c tblcmp.c yylex.c 19LFLAGS+= -is 20CFLAGS+= -I. -I${.CURDIR} 21MAN1= lex.1 22MLINKS+= lex.1 flex.1 23MLINKS+= lex.1 flex++.1 24MLINKS+= lex.1 lex++.1 25 26CLEANFILES= scan.c skel.c 27 28.if !defined(NOLIB) 29SUBDIR= lib 30.endif 31 32skel.c: mkskel.sh flex.skl 33 sh ${.CURDIR}/mkskel.sh ${.CURDIR}/flex.skl > skel.c 34 35beforeinstall: 36 ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 \ 37 ${.CURDIR}/FlexLexer.h ${DESTDIR}/usr/include/g++ 38 39bootstrap: initscan.c 40 @cmp -s ${.CURDIR}/initscan.c scan.c || { \ 41 echo "Bootstrapping flex" ; \ 42 rm -f scan.c ; \ 43 cp -f ${.CURDIR}/initscan.c scan.c ; \ 44 } 45 46test: check 47check: $(PROG) 48 ./$(PROG) $(LFLAGS) -t $(COMPRESSION) $(.CURDIR)/scan.l \ 49 | sed s,\"$(.CURDIR)/scan.l",\"scan.l", \ 50 | diff $(.CURDIR)/initscan.c - 51 @echo "Check successful" 52 53.include <bsd.prog.mk> 54