X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/07dcc2173f3545a38736762f817fd6486ec17639..ac22204b1b6013f7e53951835d2dc9168eaa004c:/src/regex/README diff --git a/src/regex/README b/src/regex/README index e6ce373444..6c763a5556 100644 --- a/src/regex/README +++ b/src/regex/README @@ -1,32 +1,41 @@ -alpha3.8 release. -Tue Aug 10 15:51:48 EDT 1999 -henry@spsystems.net (formerly henry@zoo.toronto.edu) +wxWindows regex +--------------- +This is a version of Henry Spencer's regex, which was taken from the +source of TCL (Toolkit Command Language). It implements POSIX regular +expressions and also supports Unicode and some Perl5 extensions. + +The modifications made by the wxWindows team are as follows: + +regcustom.h +----------- +Types and constants appropriate for our use of the library are defined +here. + +regex.h +------- +This is unmodified. Note though, that a portion of it (clearly marked) +is copied from regcustom.h as part of the build process. + +regc_locale.c +------------- +This module provides character classifications. + +The current version from Tcl supports only a Unicode build. The +original code from Henry Spencer, on the other hand, was ASCII only. +Therefore, in order to support both, code from the ASCII version has been +incorporated into the Unicode version, conditionally compiled depending +on wxUSE_UNICODE. + +The only non-trivial dependencies were: Tcl_UniCharToUpper, +Tcl_UniCharToLower and Tcl_UniCharToTitle. The implementations of these +have also been incorporated (from Tcl). These in turn depend only the data +tables in tclUniData.c (which is unmodified). At some point wxWindows +may have it's own Unicode character classification code, at which point +these should be used instead. + +Other dependencies (on Tcl_DString) have been eliminated using wxWindows +wxChar functions. + +The ASCII version has also been extended to support character +classifications based on the current locale rather than ASCII only. -See WHATSNEW for change listing. - -installation notes: --------- -Read the comments at the beginning of Makefile before running. - -Utils.h contains some things that just might have to be modified on -some systems, as well as a nested include (ugh) of . - -The "fake" directory contains quick-and-dirty fakes for some header -files and routines that old systems may not have. Note also that --DUSEBCOPY will make utils.h substitute bcopy() for memmove(). - -After that, "make r" will build regcomp.o, regexec.o, regfree.o, -and regerror.o (the actual routines), bundle them together into a test -program, and run regression tests on them. No output is good output. - -"make lib" builds just the .o files for the actual routines (when -you're happy with testing and have adjusted CFLAGS for production), -and puts them together into libregex.a. You can pick up either the -library or *.o ("make lib" makes sure there are no other .o files left -around to confuse things). - -Main.c, debug.c, split.c are used for regression testing but are not part -of the RE routines themselves. - -Regex.h goes in /usr/include. All other .h files are internal only. ---------