diff options
Diffstat (limited to 'lib/libc/regex/grot/Makefile')
-rw-r--r-- | lib/libc/regex/grot/Makefile | 124 |
1 files changed, 124 insertions, 0 deletions
diff --git a/lib/libc/regex/grot/Makefile b/lib/libc/regex/grot/Makefile new file mode 100644 index 0000000..b7eefb9 --- /dev/null +++ b/lib/libc/regex/grot/Makefile @@ -0,0 +1,124 @@ +# $FreeBSD$ +# You probably want to take -DREDEBUG out of CFLAGS, and put something like +# -O in, *after* testing (-DREDEBUG strengthens testing by enabling a lot of +# internal assertion checking). Take -Dconst= out for an ANSI compiler. +# Do not take -DPOSIX_MISTAKE out. REGCFLAGS isn't important to you (it's +# for my use in some special contexts). + +PATHS= ${.CURDIR}/.. ${.CURDIR}/../../locale ${.CURDIR}/../../../../include +.PATH: ${PATHS} + +CFLAGS+= -DPOSIX_MISTAKE -DREDEBUG $(REGCFLAGS) +.for incpath in ${PATHS} +CFLAGS+= -I${incpath} +.endfor + +# If you have an ANSI compiler, take -o out of MKHFLAGS. If you want +# the Berkeley __P macro, put -b in. +MKHFLAGS = + +LDFLAGS = + +# If you have an ANSI environment, take limits.h and stdlib.h out of +# HMISSING and take memmove out of SRCMISSING and OBJMISSING. +HMISSING = +SRCMISSING = split.c +OBJMISSING = split.o +H = cclass.h cname.h regex2.h utils.h $(HMISSING) +REGSRC = regcomp.c regerror.c regexec.c regfree.c engine.c +SRC = $(REGSRC) debug.c main.c $(SRCMISSING) + +# Internal stuff, should not need changing. +OBJPRODN = regcomp.o regexec.o regerror.o regfree.o +OBJS = $(OBJPRODN) debug.o main.o $(OBJMISSING) + +# Stuff that matters only if you're trying to lint the package. +LINTFLAGS = -I. -Dstatic= -Dconst= -DREDEBUG +LINTC = regcomp.c regexec.c regerror.c regfree.c debug.c main.c $(SRCMISSING) +JUNKLINT =possible pointer alignment|null effect + +.SUFFIXES: .ih .h +.c.ih: + ./mkh $(MKHFLAGS) -p $< >$@ + +default: r + +re: $(OBJS) + $(CC) $(CFLAGS) $(LDFLAGS) $(OBJS) -o $@ + +o: $(OBJPRODN) + +REGEXHSRC = regex2.h reg*.c +h: $(REGEXHSRC) + ./mkh $(MKHFLAGS) -i _REGEX_H_ $(REGEXHSRC) >regex.tmp + cmp -s regex.tmp regex.h 2>/dev/null || cp regex.tmp regex.h + rm -f regex.tmp + +regcomp.o regexec.o regfree.o debug.o: utils.h regex.h regex2.h +regcomp.o: cclass.h cname.h regcomp.ih +regexec.o: engine.c engine.ih +regerror.o: regerror.ih +regerror.o: utils.h +debug.o: debug.ih +main.o: main.ih + +r: re tests + ./re <tests + ./re -el <tests + ./re -er <tests + +ra: ./re tests + -./re <tests + -./re -el <tests + -./re -er <tests + +rx: ./re tests + ./re -x <tests + ./re -x -el <tests + ./re -x -er <tests + +t: ./re tests + -time ./re <tests + -time ./re -cs <tests + -time ./re -el <tests + -time ./re -cs -el <tests + +e: echeck re tests + ./re -d <tests | awk -f echeck + +l: $(LINTC) + lint $(LINTFLAGS) -h $(LINTC) 2>&1 | egrep -v '$(JUNKLINT)' | tee lint + +fullprint: + ti README WHATSNEW notes todo | hplist + ti *.h | hplist + hplist *.c + hplist regex.3 regex.7 + +print: + ti README WHATSNEW notes todo | hplist + ti *.h | hplist + hplist reg*.c engine.c + +clean: tidy + rm -f *.o *.s *.ih re + +tidy: + rm -f junk* core dtr regex.tmp lint + +spotless: clean + rm -f mkh regex.h + +mkh: /usr/henry/bin/mkh + cp $? $@ + +DTRH = cclass.h cname.h regex2.h utils.h limits.h stdlib.h +DTR = README WHATSNEW Makefile Makefile.44bsd mkh regex.3 regex.7 tests $(DTRH) $(SRC) +dtr: $(DTR) + makedtr $(DTR) >$@ + +cio: $(DTR) + cio $(DTR) + +rdf: $(DTR) + rcsdiff -c $(DTR) 2>&1 | p |