1# @(#)README 5.2 (Berkeley) 09/30/92 2 3alpha2.1 release. 4Wed Sep 30 14:43:10 EDT 1992 5henry@zoo.toronto.edu 6 7New in alpha2.1: Lots of little stuff, cleanup and fixes. The one big 8thing is that regex.h is now generated, using mkh, rather than being 9supplied in the distribution; due to circularities in dependencies, 10you have to build regex.h explicitly by "make h". The two known bugs 11have been fixed (and the regression test now checks for them), as has a 12problem with assertions not being suppressed in the absence of REDEBUG. 13No performance work yet. 14 15New in alpha2: Backslash-anything is an ordinary character, not an 16error (except, of course, for the handful of backslashed metacharacters 17in BREs), which should reduce script breakage. The regression test 18checks *where* null strings are supposed to match, and has generally 19been tightened up somewhat. Small bug fixes in parameter passing (not 20harmful, but technically errors) and some other areas. Debugging 21invoked by defining REDEBUG rather than not defining NDEBUG. 22 23New in alpha+3: full prototyping for internal routines, using a little 24helper program, mkh, which extracts prototypes given in stylized comments. 25More minor cleanup. Buglet fix: it's CHAR_BIT, not CHAR_BITS. Simple 26pre-screening of input when a literal string is known to be part of the 27RE; this does wonders for performance. 28 29New in alpha+2: minor bits of cleanup. Notably, the number "32" for the 30word width isn't hardwired into regexec.c any more, the public header 31file prototypes the functions if __STDC__ is defined, and some small typos 32in the manpages have been fixed. 33 34New in alpha+1: improvements to the manual pages, and an important 35extension, the REG_STARTEND option to regexec(). 36 37installation notes: 38-------- 39If you have an ANSI compiler, delete limits.h, stdlib.h, and memmove.c 40(all of which are fakes for things not found on old systems), and in 41Makefile, take -Dconst= out of CFLAGS and -o out of MKHFLAGS and delete 42all references to memmove. If you want the Berkeley __P macro used in 43prototypes, add -b to MKHFLAGS. 44 45Do not take -DPOSIX_MISTAKE out of CFLAGS. You probably want to take 46-DREDEBUG out, to get rid of all the assertion tests, for building production 47versions after you've run the regression test. (The regression test won't 48quite compile without it at the moment.) You also probably want -O or 49some more complex variation for production compilation. 50 51Utils.h contains some things that just might have to be modified on 52some systems, as well as a nested include (ugh) of <assert.h>. 53 54Split.c is used for regression testing but is not part of the RE routines 55themselves. 56 57"make h" builds regex.h, which is needed for everything else. 58 59After that, just "make" will build regcomp.o, regexec.o, regfree.o, 60and regerror.o (the actual routines), bundle them together into a test 61program, and run a regression test on them. No output is good output. 62 63"make o" builds just the .o files for the actual routines. 64 65Regex.h is for /usr/include. All other .h files are internal only. 66-------- 67