Update to 5.0:

Release 5.0 13-Sep-04
---------------------

The licence under which PCRE is released has been changed to the more
conventional "BSD" licence.

In the code, some bugs have been fixed, and there are also some major changes
in this release (which is why I've increased the number to 5.0). Some changes
are internal rearrangements, and some provide a number of new facilities. The
new features are:

1. There's an "automatic callout" feature that inserts callouts before every
   item in the regex, and there's a new callout field that gives the position
   in the pattern - useful for debugging and tracing.

2. The extra_data structure can now be used to pass in a set of character
   tables at exec time. This is useful if compiled regex are saved and re-used
   at a later time when the tables may not be at the same address. If the
   default internal tables are used, the pointer saved with the compiled
   pattern is now set to NULL, which means that you don't need to do anything
   special unless you are using custom tables.

3. It is possible, with some restrictions on the content of the regex, to
   request "partial" matching. A special return code is given if all of the
   subject string matched part of the regex. This could be useful for testing
   an input field as it is being typed.

4. There is now some optional support for Unicode character properties, which
   means that the patterns items such as \p{Lu} and \X can now be used. Only
   the general category properties are supported. If PCRE is compiled with this
   support, an additional 90K data structure is include, which increases the
   size of the library dramatically.

5. There is support for saving compiled patterns and re-using them later.

6. There is support for running regular expressions that were compiled on a
   different host with the opposite endianness.

7. The pcretest program has been extended to accommodate the new features.

The main internal rearrangement is that sequences of literal characters are no
longer handled as strings. Instead, each character is handled on its own. This
makes some UTF-8 handling easier, and makes the support of partial matching
possible. Compiled patterns containing long literal strings will be larger as a
result of this change; I hope that performance will not be much affected.
This commit is contained in:
wiz 2004-09-28 15:59:49 +00:00
parent 1b89d43900
commit 1b6d0c5a65
5 changed files with 26 additions and 27 deletions

View file

@ -1,7 +1,6 @@
# $NetBSD: Makefile,v 1.18 2004/02/14 17:21:39 jlam Exp $
# FreeBSD Id: Makefile,v 1.1.1.1 1998/07/12 22:59:19 steve Exp $
# $NetBSD: Makefile,v 1.19 2004/09/28 15:59:49 wiz Exp $
DISTNAME= pcre-4.5
DISTNAME= pcre-5.0
CATEGORIES= devel
MASTER_SITES= ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/ \
ftp://pcre.sourceforge.net/pub/pcre/
@ -17,6 +16,8 @@ USE_BUILDLINK3= yes
GNU_CONFIGURE= yes
USE_LIBTOOL= yes
PKG_CONFIG_OVERRIDE= libpcre.pc.in
TEST_TARGET= test
.include "../../mk/bsd.pkg.mk"

View file

@ -1,4 +1,4 @@
@comment $NetBSD: PLIST,v 1.4 2004/09/22 08:09:29 jlam Exp $
@comment $NetBSD: PLIST,v 1.5 2004/09/28 15:59:49 wiz Exp $
bin/pcre-config
bin/pcregrep
bin/pcretest
@ -6,6 +6,7 @@ include/pcre.h
include/pcreposix.h
lib/libpcre.la
lib/libpcreposix.la
lib/pkgconfig/libpcre.pc
man/man1/pcregrep.1
man/man1/pcretest.1
man/man3/pcre.3

View file

@ -1,6 +1,6 @@
$NetBSD: distinfo,v 1.10 2003/12/12 22:33:36 jmmv Exp $
$NetBSD: distinfo,v 1.11 2004/09/28 15:59:49 wiz Exp $
SHA1 (pcre-4.5.tar.bz2) = 750c42a7a5b85237ea8398bcffa7cba73c0813db
Size (pcre-4.5.tar.bz2) = 349536 bytes
SHA1 (patch-aa) = eff0e4fab9cac55a54af0ee448913a682d5e3733
SHA1 (patch-ab) = 03bb38f5d07964a5ab16b1c80538ac77b3625640
SHA1 (pcre-5.0.tar.bz2) = 320841e705a5ae86a2df9cfadb387f09a731b88f
Size (pcre-5.0.tar.bz2) = 465738 bytes
SHA1 (patch-aa) = c175ed919871534114fb02ca909be1e0ee12b522
SHA1 (patch-ab) = 1bb79ce010f30fdd4ab3b579faa45fa06c01ce90

View file

@ -1,8 +1,8 @@
$NetBSD: patch-aa,v 1.5 2003/12/12 22:33:36 jmmv Exp $
$NetBSD: patch-aa,v 1.6 2004/09/28 15:59:49 wiz Exp $
--- Makefile.in.orig 2003-12-10 17:45:44.000000000 +0100
--- Makefile.in.orig 2004-09-13 16:20:00.000000000 +0200
+++ Makefile.in
@@ -77,12 +77,11 @@ NO_RECURSE = @NO_RECURSE@
@@ -78,12 +78,11 @@ NO_RECURSE = @NO_RECURSE@
EBCDIC = @EBCDIC@
INSTALL = @INSTALL@

View file

@ -1,17 +1,14 @@
$NetBSD: patch-ab,v 1.1 2002/12/30 18:08:02 cjep Exp $
$NetBSD: patch-ab,v 1.2 2004/09/28 15:59:49 wiz Exp $
--- pcre-config.in.orig Wed Jan 2 15:57:57 2002
--- pcre-config.in.orig 2004-09-13 16:20:00.000000000 +0200
+++ pcre-config.in
@@ -45,10 +45,10 @@ while test $# -gt 0; do
echo $includes
;;
--libs-posix)
- echo -L@libdir@ -lpcreposix -lpcre
+ echo -L@libdir@ -Wl,-R@libdir@ -lpcreposix -lpcre
;;
--libs)
- echo -L@libdir@ -lpcre
+ echo -L@libdir@ -Wl,-R@libdir@ -lpcre
;;
*)
echo "${usage}" 1>&2
@@ -17,6 +17,9 @@ case `uname -s` in
*SunOS*)
libR=" -R@libdir@"
;;
+ *BSD*)
+ libR=" -Wl,-R@libdir@"
+ ;;
esac
while test $# -gt 0; do