OSSP CVS Repository

ossp - Check-in [1515]
Not logged in
[Honeypot]  [Browse]  [Home]  [Login]  [Reports
[Search]  [Ticket]  [Timeline
  [Patchset]  [Tagging/Branching

Check-in Number: 1515
Date: 2002-Jan-07 15:36:54 (local)
2002-Jan-07 14:36:54 (UTC)
User:rse
Branch:
Comment: merge changes from 3.4 to 3.5
Tickets:
Inspections:
Files:
ossp-pkg/pcre/AUTHORS      added-> 1.1
ossp-pkg/pcre/COPYING      added-> 1.1
ossp-pkg/pcre/ChangeLog      1.7 -> 1.8     56 inserted, 0 deleted
ossp-pkg/pcre/ChangeLog.OSSP      1.17 -> 1.18     1 inserted, 0 deleted
ossp-pkg/pcre/LICENCE      1.4 -> 1.5     7 inserted, 3 deleted
ossp-pkg/pcre/NEWS      added-> 1.1
ossp-pkg/pcre/README      1.4 -> 1.5     70 inserted, 33 deleted

ossp-pkg/pcre/AUTHORS -> 1.1

*** /dev/null    Sat Apr 27 01:45:37 2024
--- -    Sat Apr 27 01:46:15 2024
***************
*** 0 ****
--- 1,6 ----
+ Written by: Philip Hazel <ph10@cam.ac.uk>
+ 
+ University of Cambridge Computing Service,
+ Cambridge, England. Phone: +44 1223 334714.
+ 
+ Copyright (c) 1997-2001 University of Cambridge


ossp-pkg/pcre/COPYING -> 1.1

*** /dev/null    Sat Apr 27 01:45:37 2024
--- -    Sat Apr 27 01:46:15 2024
***************
*** 0 ****
--- 1,50 ----
+ PCRE LICENCE
+ ------------
+ 
+ PCRE is a library of functions to support regular expressions whose syntax
+ and semantics are as close as possible to those of the Perl 5 language.
+ 
+ Written by: Philip Hazel <ph10@cam.ac.uk>
+ 
+ University of Cambridge Computing Service,
+ Cambridge, England. Phone: +44 1223 334714.
+ 
+ Copyright (c) 1997-2001 University of Cambridge
+ 
+ Permission is granted to anyone to use this software for any purpose on any
+ computer system, and to redistribute it freely, subject to the following
+ restrictions:
+ 
+ 1. This software is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ 
+ 2. The origin of this software must not be misrepresented, either by
+    explicit claim or by omission. In practice, this means that if you use
+    PCRE in software which you distribute to others, commercially or
+    otherwise, you must put a sentence like this
+ 
+      Regular expression support is provided by the PCRE library package,
+      which is open source software, written by Philip Hazel, and copyright
+      by the University of Cambridge, England.
+ 
+    somewhere reasonably visible in your documentation and in any relevant
+    files or online help data or similar. A reference to the ftp site for
+    the source, that is, to
+ 
+      ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/
+ 
+    should also be given in the documentation.
+ 
+ 3. Altered versions must be plainly marked as such, and must not be
+    misrepresented as being the original software.
+ 
+ 4. If PCRE is embedded in any software that is released under the GNU
+    General Purpose Licence (GPL), or Lesser General Purpose Licence (LGPL),
+    then the terms of that licence shall supersede any condition above with
+    which it is incompatible.
+ 
+ The documentation for PCRE, supplied in the "doc" directory, is distributed
+ under the same terms as the software itself.
+ 
+ End


ossp-pkg/pcre/ChangeLog 1.7 -> 1.8

--- ChangeLog    2000/08/29 19:24:17     1.7
+++ ChangeLog    2002/01/07 14:36:54     1.8
@@ -1,6 +1,62 @@
 ChangeLog for PCRE
 ------------------
 
+Version 3.5 15-Aug-01
+---------------------
+
+1. Added some missing #if !defined NOPOSIX conditionals in pcretest.c that
+had been forgotten.
+
+2. By using declared but undefined structures, we can avoid using "void"
+definitions in pcre.h while keeping the internal definitions of the structures
+private.
+
+3. The distribution is now built using autoconf 2.50 and libtool 1.4. From a
+user point of view, this means that both static and shared libraries are built
+by default, but this can be individually controlled. More of the work of
+handling this static/shared cases is now inside libtool instead of PCRE's make
+file.
+
+4. The pcretest utility is now installed along with pcregrep because it is
+useful for users (to test regexs) and by doing this, it automatically gets
+relinked by libtool. The documentation has been turned into a man page, so
+there are now .1, .txt, and .html versions in /doc.
+
+5. Upgrades to pcregrep:
+   (i)   Added long-form option names like gnu grep.
+   (ii)  Added --help to list all options with an explanatory phrase.
+   (iii) Added -r, --recursive to recurse into sub-directories.
+   (iv)  Added -f, --file to read patterns from a file.
+
+6. pcre_exec() was referring to its "code" argument before testing that
+argument for NULL (and giving an error if it was NULL).
+
+7. Upgraded Makefile.in to allow for compiling in a different directory from
+the source directory.
+
+8. Tiny buglet in pcretest: when pcre_fullinfo() was called to retrieve the
+options bits, the pointer it was passed was to an int instead of to an unsigned
+long int. This mattered only on 64-bit systems.
+
+9. Fixed typo (3.4/1) in pcre.h again. Sigh. I had changed pcre.h (which is
+generated) instead of pcre.in, which it its source. Also made the same change
+in several of the .c files.
+
+10. A new release of gcc defines printf() as a macro, which broke pcretest
+because it had an ifdef in the middle of a string argument for printf(). Fixed
+by using separate calls to printf().
+
+11. Added --enable-newline-is-cr and --enable-newline-is-lf to the configure
+script, to force use of CR or LF instead of \n in the source. On non-Unix
+systems, the value can be set in config.h.
+
+12. The limit of 200 on non-capturing parentheses is a _nesting_ limit, not an
+absolute limit. Changed the text of the error message to make this clear, and
+likewise updated the man page.
+
+13. The limit of 99 on the number of capturing subpatterns has been removed.
+The new limit is 65535, which I hope will not be a "real" limit.
+
 
 Version 3.4 22-Aug-00
 ---------------------


ossp-pkg/pcre/ChangeLog.OSSP 1.17 -> 1.18

--- ChangeLog.OSSP       2001/08/16 10:08:06     1.17
+++ ChangeLog.OSSP       2002/01/07 14:36:54     1.18
@@ -4,6 +4,7 @@
 
  Changes made to OSSP pcre 3.5 (29-Aug-2000 to 16-Aug-2001):
 
+  *) Merged in changes between PCRE 3.4 to 3.5
   *) Upgraded GNU libtool from 1.3.5 to 1.4
   *) Upgraded GNU autoconf from 2.13 to 2.52
   *) Upgraded GNU shtool from 1.5.1 to 1.5.4


ossp-pkg/pcre/LICENCE 1.4 -> 1.5

--- LICENCE      2000/08/02 09:46:06     1.4
+++ LICENCE      2002/01/07 14:36:54     1.5
@@ -9,7 +9,7 @@
 University of Cambridge Computing Service,
 Cambridge, England. Phone: +44 1223 334714.
 
-Copyright (c) 1997-2000 University of Cambridge
+Copyright (c) 1997-2001 University of Cambridge
 
 Permission is granted to anyone to use this software for any purpose on any
 computer system, and to redistribute it freely, subject to the following
@@ -40,7 +40,11 @@
    misrepresented as being the original software.
 
 4. If PCRE is embedded in any software that is released under the GNU
-   General Purpose Licence (GPL), then the terms of that licence shall
-   supersede any condition above with which it is incompatible.
+   General Purpose Licence (GPL), or Lesser General Purpose Licence (LGPL),
+   then the terms of that licence shall supersede any condition above with
+   which it is incompatible.
+
+The documentation for PCRE, supplied in the "doc" directory, is distributed
+under the same terms as the software itself.
 
 End


ossp-pkg/pcre/NEWS -> 1.1

*** /dev/null    Sat Apr 27 01:45:37 2024
--- -    Sat Apr 27 01:46:15 2024
***************
*** 0 ****
--- 1,85 ----
+ News about PCRE releases
+ ------------------------
+ 
+ Release 3.5 15-Aug-01
+ ---------------------
+ 
+ 1. The configuring system has been upgraded to use later versions of autoconf
+ and libtool. By default it builds both a shared and a static library if the OS
+ supports it. You can use --disable-shared or --disable-static on the configure
+ command if you want only one of them.
+ 
+ 2. The pcretest utility is now installed along with pcregrep because it is
+ useful for users (to test regexs) and by doing this, it automatically gets
+ relinked by libtool. The documentation has been turned into a man page, so
+ there are now .1, .txt, and .html versions in /doc.
+ 
+ 3. Upgrades to pcregrep:
+    (i)   Added long-form option names like gnu grep.
+    (ii)  Added --help to list all options with an explanatory phrase.
+    (iii) Added -r, --recursive to recurse into sub-directories.
+    (iv)  Added -f, --file to read patterns from a file.
+ 
+ 4. Added --enable-newline-is-cr and --enable-newline-is-lf to the configure
+ script, to force use of CR or LF instead of \n in the source. On non-Unix
+ systems, the value can be set in config.h.
+ 
+ 5. The limit of 200 on non-capturing parentheses is a _nesting_ limit, not an
+ absolute limit. Changed the text of the error message to make this clear, and
+ likewise updated the man page.
+ 
+ 6. The limit of 99 on the number of capturing subpatterns has been removed.
+ The new limit is 65535, which I hope will not be a "real" limit.
+ 
+ 
+ Release 3.3 01-Aug-00
+ ---------------------
+ 
+ There is some support for UTF-8 character strings. This is incomplete and
+ experimental. The documentation describes what is and what is not implemented.
+ Otherwise, this is just a bug-fixing release.
+ 
+ 
+ Release 3.0 01-Feb-00
+ ---------------------
+ 
+ 1. A "configure" script is now used to configure PCRE for Unix systems. It
+ builds a Makefile, a config.h file, and the pcre-config script.
+ 
+ 2. PCRE is built as a shared library by default.
+ 
+ 3. There is support for POSIX classes such as [:alpha:].
+ 
+ 5. There is an experimental recursion feature.
+ 
+ ----------------------------------------------------------------------------
+           IMPORTANT FOR THOSE UPGRADING FROM VERSIONS BEFORE 2.00
+ 
+ Please note that there has been a change in the API such that a larger
+ ovector is required at matching time, to provide some additional workspace.
+ The new man page has details. This change was necessary in order to support
+ some of the new functionality in Perl 5.005.
+ 
+           IMPORTANT FOR THOSE UPGRADING FROM VERSION 2.00
+ 
+ Another (I hope this is the last!) change has been made to the API for the
+ pcre_compile() function. An additional argument has been added to make it
+ possible to pass over a pointer to character tables built in the current
+ locale by pcre_maketables(). To use the default tables, this new arguement
+ should be passed as NULL.
+ 
+           IMPORTANT FOR THOSE UPGRADING FROM VERSION 2.05
+ 
+ Yet another (and again I hope this really is the last) change has been made
+ to the API for the pcre_exec() function. An additional argument has been
+ added to make it possible to start the match other than at the start of the
+ subject string. This is important if there are lookbehinds. The new man
+ page has the details, but you just want to convert existing programs, all
+ you need to do is to stick in a new fifth argument to pcre_exec(), with a
+ value of zero. For example, change
+ 
+   pcre_exec(pattern, extra, subject, length, options, ovec, ovecsize)
+ to
+   pcre_exec(pattern, extra, subject, length, 0, options, ovec, ovecsize)
+ 
+ ****


ossp-pkg/pcre/README 1.4 -> 1.5

--- README       2000/08/02 09:46:06     1.4
+++ README       2002/01/07 14:36:54     1.5
@@ -17,14 +17,30 @@
 uses the POSIX API, it will have to be renamed or pointed at by a link.
 
 
+Contributions by users of PCRE
+------------------------------
+
+You can find contributions from PCRE users in the directory
+
+  ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/Contrib
+
+where there is also a README file giving brief descriptions of what they are.
+Several of them provide support for compiling PCRE on various flavours of
+Windows systems (I myself do not use Windows). Some are complete in themselves;
+others are pointers to URLs containing relevant files.
+
+
 Building PCRE on a Unix system
 ------------------------------
 
-To build PCRE on a Unix system, run the "configure" command in the PCRE
-distribution directory. This is a standard GNU "autoconf" configuration script,
-for which generic instructions are supplied in INSTALL. On many systems just
-running "./configure" is sufficient, but the usual methods of changing standard
-defaults are available. For example,
+To build PCRE on a Unix system, first run the "configure" command from the PCRE
+distribution directory, with your current directory set to the directory where
+you want the files to be created. This command is a standard GNU "autoconf"
+configuration script, for which generic instructions are supplied in INSTALL.
+
+Most commonly, people build PCRE within its own distribution directory, and in
+this case, on many systems, just running "./configure" is sufficient, but the
+usual methods of changing standard defaults are available. For example,
 
 CFLAGS='-O2 -Wall' ./configure --prefix=/opt/local
 
@@ -32,14 +48,22 @@
 of the default, and that "make install" should install PCRE under /opt/local
 instead of the default /usr/local.
 
+If you want to build in a different directory, just run "configure" with that
+directory as current. For example, suppose you have unpacked the PCRE source
+into /source/pcre/pcre-xxx, but you want to build it in /build/pcre/pcre-xxx:
+
+cd /build/pcre/pcre-xxx
+/source/pcre/pcre-xxx/configure
+
 If you want to make use of the experimential, incomplete support for UTF-8
 character strings in PCRE, you must add --enable-utf8 to the "configure"
 command. Without it, the code for handling UTF-8 is not included in the
 library. (Even when included, it still has to be enabled by an option at run
 time.)
 
-The "configure" script builds four files:
+The "configure" script builds five files:
 
+. libtool is a script that builds shared and/or static libraries
 . Makefile is built by copying Makefile.in and making substitutions.
 . config.h is built by copying config.in and making substitutions.
 . pcre-config is built by copying pcre-config.in and making substitutions.
@@ -47,8 +71,9 @@
 
 Once "configure" has run, you can run "make". It builds two libraries called
 libpcre and libpcreposix, a test program called pcretest, and the pcregrep
-command. You can use "make install" to copy these, and the public header file
-pcre.h, to appropriate live directories on your system, in the normal way.
+command. You can use "make install" to copy these, the public header files
+pcre.h and pcreposix.h, and the man pages to appropriate live directories on
+your system, in the normal way.
 
 Running "make install" also installs the command pcre-config, which can be used
 to recall information about the PCRE configuration and installation. For
@@ -64,26 +89,38 @@
 included in makefiles for programs that use PCRE, saving the programmer from
 having to remember too many details.
 
+There is one esoteric feature that is controlled by "configure". It concerns
+the character value used for "newline", and is something that you probably do
+not want to change on a Unix system. The default is to use whatever value your
+compiler gives to '\n'. By using --enable-newline-is-cr or
+--enable-newline-is-lf you can force the value to be CR (13) or LF (10) if you
+really want to.
+
 
 Shared libraries on Unix systems
 --------------------------------
 
-The default distribution builds PCRE as two shared libraries. This support is
-new and experimental and may not work on all systems. It relies on the
-"libtool" scripts - these are distributed with PCRE. It should build a
-"libtool" script and use this to compile and link shared libraries, which are
-placed in a subdirectory called .libs. The programs pcretest and pcregrep are
-built to use these uninstalled libraries by means of wrapper scripts. When you
-use "make install" to install shared libraries, pcregrep and pcretest are
-automatically re-built to use the newly installed libraries. However, only
-pcregrep is installed, as pcretest is really just a test program.
+The default distribution builds PCRE as two shared libraries and two static
+libraries, as long as the operating system supports shared libraries. Shared
+library support relies on the "libtool" script which is built as part of the
+"configure" process.
+
+The libtool script is used to compile and link both shared and static
+libraries. They are placed in a subdirectory called .libs when they are newly
+built. The programs pcretest and pcregrep are built to use these uninstalled
+libraries (by means of wrapper scripts in the case of shared libraries). When
+you use "make install" to install shared libraries, pcregrep and pcretest are
+automatically re-built to use the newly installed shared libraries before being
+installed themselves. However, the versions left in the source directory still
+use the uninstalled libraries.
 
-To build PCRE using static libraries you must use --disable-shared when
+To build PCRE using static libraries only you must use --disable-shared when
 configuring it. For example
 
 ./configure --prefix=/usr/gnu --disable-shared
 
-Then run "make" in the usual way.
+Then run "make" in the usual way. Similarly, you can use --disable-static to
+build only shared libraries.
 
 
 Building on non-Unix systems
@@ -99,16 +136,16 @@
 Testing PCRE
 ------------
 
-To test PCRE on a Unix system, run the RunTest script in the pcre directory.
-(This can also be run by "make runtest", "make check", or "make test".) For
-other systems, see the instruction in NON-UNIX-USE.
-
-The script runs the pcretest test program (which is documented in
-doc/pcretest.txt) on each of the testinput files (in the testdata directory) in
-turn, and compares the output with the contents of the corresponding testoutput
-file. A file called testtry is used to hold the output from pcretest. To run
-pcretest on just one of the test files, give its number as an argument to
-RunTest, for example:
+To test PCRE on a Unix system, run the RunTest script that is created by the
+configuring process. (This can also be run by "make runtest", "make check", or
+"make test".) For other systems, see the instruction in NON-UNIX-USE.
+
+The script runs the pcretest test program (which is documented in the doc
+directory) on each of the testinput files (in the testdata directory) in turn,
+and compares the output with the contents of the corresponding testoutput file.
+A file called testtry is used to hold the output from pcretest. To run pcretest
+on just one of the test files, give its number as an argument to RunTest, for
+example:
 
   RunTest 3
 
@@ -241,9 +278,9 @@
   doc/pcregrep.html     HTML version
   doc/pcregrep.txt      plain text version
   install-sh            a shell script for installing files
-  ltconfig              ) files used to build "libtool",
-  ltmain.sh             )   used only when building a shared library
-  pcretest.c            test program
+  ltmain.sh             file used to build a libtool script
+  pcretest.c            comprehensive test program
+  pcredemo.c            simple demonstration of coding calls to PCRE
   perltest              Perl test program
   perltest8             Perl test program for UTF-8 tests
   pcregrep.c            source of a grep utility that uses PCRE
@@ -267,4 +304,4 @@
   pcre.def
 
 Philip Hazel <ph10@cam.ac.uk>
-August 2000
+August 2001

CVSTrac 2.0.1