Commit 0413a1e4 authored by Erick Gallesio's avatar Erick Gallesio

Updated PCRE to 7.4 (from 5.0)

parent 65070d9f

Too many changes to show.

To preserve performance only 178 of 178+ files are displayed.

2007-12-13 Erick Gallesio <eg@essi.fr>
* doc/skb/srfi.skb, doc/skb/srfi.stk, lib/Makefile.am,
lib/Makefile.in, lib/STklos.init, lib/srfi-0.stk, src/boot.c,
src/boot.img:
Added SRFI-59
[855e75ba0959] [tip]
2007-12-09 Erick Gallesio <eg@essi.fr>
* doc/skb/srfi.skb, doc/skb/srfi.stk, lib/Makefile.am,
lib/Makefile.in, lib/srfi-0.stk, lib/srfi-45.stk, src/boot.c,
src/boot.img, src/box.c, tests/do-test.stk, tests/test-box.stk:
Added SRFI-45
[41f250f93948]
* doc/skb/stdproc.skb, src/Makefile.am, src/Makefile.in,
src/boolean.c, src/hash.c, src/lib.c, src/object.c, src/print.c,
src/read.c, src/stklos.h:
Addes BOXES: they were used by the system but unavailable to the
user.
[85e9a72bcc15]
* doc/skb/srfi.skb, doc/skb/srfi.stk, doc/skb/stdproc.skb,
lib/Makefile.am, lib/Makefile.in, lib/bonus.stk, lib/boot.stk,
lib/srfi-0.stk, lib/srfi-89.stk, src/boot.c, src/boot.img:
Added SRFI-88 and SRFI-89
[7267132359fd]
2007-12-08 Erick Gallesio <eg@essi.fr>
* src/misc.c:
Added a C backtrace function in Debug mode
[332d52456f5d]
* src/read.c, src/stklos.h:
Deleted the mutex in read which could conduct to deadlocks. Read
uses no more globals now.
[64f0f4a2dcbd]
2007-12-05 Erick Gallesio <eg@essi.fr>
* lib/Makefile.am, lib/Makefile.in, lib/STklos.init, lib/load.stk,
lib/recette.stk, lib/slib.stk, lib/srfi-0.stk, src/boot.c,
src/boot.img:
Adapted the STklos.init file for recent versions of SLIB (old code
didn't work anymore)
[976e64e75a13]
2007-11-29 Erick Gallesio <eg@essi.fr>
* cinvoke/Makefile.templ, extensions/Makefile.am,
extensions/Makefile.in, src/boot.c, src/boot.img:
Applied Makefiles patches given by Marijn Schouten.
[36fc18a2595c]
2007-11-27 Erick Gallesio <eg@essi.fr>
* src/boot.c, src/boot.img, src/read.c, src/stklos.h, src/vm.c:
Applied the patches sent by Michael South. These patches fix
problems with code modification (done at runtime in vm.c to optimize
access to globals) in presence of multiple threads. Thanks Michael
for this (non trivial) patch.
[8ec3aaa5152a]
2007-11-19 Erick Gallesio <eg@essi.fr>
* src/mutex-pthreads.c, src/system.c:
Fixed two minor timer bugs signaled by Michael South
[1138736dcc03]
2007-11-08 Erick Gallesio <eg@essi.fr>
* lib/object.stk, src/boot.c, src/boot.img, src/object.c:
Bug fix: Code for class redefinition was severely buggy.
[848996c4ae01]
* lib/object.stk, src/boot.c, src/boot.img:
Bug fix: Changing the class of an object was incorrect when the new
class has new slot with an init function
[e3c139b01bc5]
2007-10-05 Erick Gallesio <eg@essi.fr>
* src/boot.c, src/boot.img, src/fport.c, src/fport.h, src/socket.c:
Going back (once again) of socket.c. Previous modification
introduced a severe regression
[abfa5af45cfc]
2007-09-24 Erick Gallesio <eg@essi.fr>
* configure, configure.in, src/boot.img:
Added the suffix dev to version in developent tree
[45aae4534ddf]
2007-09-19 Erick Gallesio <eg@essi.fr>
* doc/skb/custom.skb, lib/object.stk, src/boot.c, src/boot.img,
src/lib.c, src/print.c, src/read.c, src/stklos.h:
Added the WRITE-PRETTY-QUOTES parameter. When false, quoted lists
are printed using list notation.
[f5a38074a4f3]
2007-09-18 Erick Gallesio <eg@essi.fr>
* lib/object.stk, src/boot.c, src/boot.img:
Fixed the fact that virtual and active slots could not use un-
exported procedures.
[d015707b4d41]
2007-09-17 Erick Gallesio <eg@essi.fr>
* lib/bonus.stk, src/boot.c, src/boot.img, src/cpointer.c:
Typo fix
[3c8b559db74e]
2007-08-29 Erick Gallesio <eg@essi.fr>
* src/Makefile.am, src/Makefile.in, src/boot.c, src/cpointer.c,
src/ffi.c, src/lib.c, src/print.c, src/stklos.h:
Extension of the Cpointer type to allow some typing and user data
embedding
[7403efbb0d7d]
2007-08-22 Erick Gallesio <eg@essi.fr>
* src/ffi.c:
When an :obj result is the NULL pointer, return STk_void.
[1dae6e42fbbf]
2007-08-14 Erick Gallesio <eg@essi.fr>
* src/fport.c, src/fport.h, src/socket.c:
One again, get rid of the dup in the socket.c code. When closing a
socket we use shutdown instead of close. This permits to close one
end of the socket while the other one stays open (and hence this
avoids the dup).
[ba1696f16126]
2007-07-13 Erick Gallesio <eg@essi.fr>
* pkgman/main.stk:
Fixed a typo which prevent the --install option of stklos-pkg
[de3f528cf55f]
2007-07-06 Erick Gallesio <eg@essi.fr>
* src/boolean.c, src/struct.h:
EQUAL? returns #t on structure with same types and same values now.
[c72c0c25e4de]
* lib/r5rs.stk, src/boot.c, src/boot.img:
Bib fix: call-with-input-xxx returned only the first value when
using multiple values
[9b1ad215464b]
2007-07-05 Erick Gallesio <eg@essi.fr>
* configure, doc/Makefile.in, extensions/Makefile.in,
gtklos/Makefile.in, src/Makefile.in, src/boot.c, src/boot.img:
Commit version stklos-0.96
[c600d02e0b5e]
* src/port.c:
Bug fix with format string ending with a ~
[a2160b23ff81]
* lib/boot.stk, lib/compiler.stk, lib/mbe.stk, lib/object.stk,
lib/repl.stk, lib/srfi-0.stk, src/env.c:
Better isolation of STklos internals through the usage of the SCHEME
module
[453c13b0eaef]
* configure.in, src/system.c:
Fix for Solaris (not unsetenv in Solaris)
[c9e85af0d3de]
2007-06-30 Erick Gallesio <eg@essi.fr>
* STklos 0.96 Release
......
......@@ -19,7 +19,7 @@ GC: The Boehm's conservative garbage collector for C and C++
PCRE: Perl-Compatible Regular Expression library
================================================
- Version: 5.0
- Version: 7.4
- License: Free ("morphes" to (L)GPL when used in a (L)GPL program)
- Home: http://pcre.sourceforge.net/
......
-*- outline -*-
S T k l o s ( v e r s i o n 0 . 9 6 )
S T k l o s ( v e r s i o n 0 . 9 7 )
=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=
Erick Gallesio
......
......@@ -67,7 +67,7 @@ State can be one of the following values
- 43 Vector Library
- 44 Collections
? 45 Primitives for expressing iterative lazy algorithms
Y 45 Primitives for expressing iterative lazy algorithms
? 47 Array
Y 48 Intermediate Format Strings
......@@ -78,7 +78,7 @@ State can be one of the following values
- 57 Records
? 58 Array Notation
- 59 Vicinity
Y 59 Vicinity
Y 60 Integers as Bits
- 61 A more general cond clause
Y 62 S-expression comments
......@@ -92,5 +92,15 @@ State can be one of the following values
? 71 LET-syntax for multiple values
- 72 Simple hygienic macros
- 74 Octet-Addressed Binary Blocks
? 78 Lightweight testing
N 86 MU and NU simulating VALUES & CALL-WITH-VALUES, ...
Implemented SRFIs: 33/58
? 87 => in case clauses
Y 88 Keyword Objects
Y 89 Optional and named parameters
? 90 Extensible hash table constructor
? 94 Type-Restricted Numerical Functions
? 95 Sorting and Merging
Implemented SRFIs: 37/66
......@@ -5,14 +5,14 @@ THIS IS VERY OBSOLETE AND SHOULD BE REWRITTEN.
* THINGS TO DO (NEXT RELEASES PLAN)
** Version 0.97 ...
** Version 0.98 ...
- Terminate canvas implementation
- Add new widgets that exist in 0.51 and have not been ported back
- Add GTk2 support
- Add STk Posix support
- ...
** Version 0.98
** Version 0.99
- autoload (and syntax-autoload) and modules as in STk?
- Use packages in all the library to hide functions which
should not be exported. Use a scheme similar to STk, such as
......
......@@ -6759,7 +6759,7 @@ then
-Dregerror=PCRE_regerror -Dregfree=PCRE_regfree"
(cd pcre; CC=$CC CFLAGS="$CFLAGS $PCRE_FLAGS" sh ./configure \
--prefix=$prefix --disable-shared)
--prefix=$prefix --disable-shared --disable-cpp)
PCRE=pcre
PCRELIB="../pcre/.libs/libpcreposix.a ../pcre/.libs/libpcre.a"
PCREINC="-I../pcre"
......
......@@ -2,7 +2,7 @@ dnl configure.in for STklos
dnl
dnl Author: Erick Gallesio [eg@unice.fr]
dnl Creation date: 28-Dec-1999 21:19 (eg)
dnl Last file update: 24-Sep-2007 14:35 (eg)
dnl Last file update: 14-Dec-2007 15:47 (eg)
AC_INIT(src/stklos.c)
......@@ -363,7 +363,7 @@ then
-Dregerror=PCRE_regerror -Dregfree=PCRE_regfree"
(cd pcre; CC=$CC CFLAGS="$CFLAGS $PCRE_FLAGS" sh ./configure \
--prefix=$prefix --disable-shared)
--prefix=$prefix --disable-shared --disable-cpp)
PCRE=pcre
PCRELIB="../pcre/.libs/libpcreposix.a ../pcre/.libs/libpcre.a"
PCREINC="-I../pcre"
......
#! /usr/bin/perl -w
# Script to turn PCRE man pages into HTML
# Subroutine to handle font changes and other escapes
sub do_line {
my($s) = $_[0];
$s =~ s/</&#60;/g; # Deal with < and >
$s =~ s/>/&#62;/g;
$s =~ s"\\fI(.*?)\\f[RP]"<i>$1</i>"g;
$s =~ s"\\fB(.*?)\\f[RP]"<b>$1</b>"g;
$s =~ s"\\e"\\"g;
$s =~ s/(?<=Copyright )\(c\)/&copy;/g;
$s;
}
# Subroutine to ensure not in a paragraph
sub end_para {
if ($inpara)
{
print TEMP "</PRE>\n" if ($inpre);
print TEMP "</P>\n";
}
$inpara = $inpre = 0;
$wrotetext = 0;
}
# Subroutine to start a new paragraph
sub new_para {
&end_para();
print TEMP "<P>\n";
$inpara = 1;
}
# Main program
$innf = 0;
$inpara = 0;
$inpre = 0;
$wrotetext = 0;
$toc = 0;
$ref = 1;
while ($#ARGV >= 0 && $ARGV[0] =~ /^-/)
{
$toc = 1 if $ARGV[0] eq "-toc";
shift;
}
# Initial output to STDOUT
print <<End ;
<html>
<head>
<title>$ARGV[0] specification</title>
</head>
<body bgcolor="#FFFFFF" text="#00005A" link="#0066FF" alink="#3399FF" vlink="#2222BB">
<h1>$ARGV[0] man page</h1>
<p>
Return to the <a href="index.html">PCRE index page</a>.
</p>
<p>
This page is part of the PCRE HTML documentation. It was generated automatically
from the original man page. If there is any nonsense in it, please consult the
man page, in case the conversion went wrong.
<br>
End
print "<ul>\n" if ($toc);
open(TEMP, ">/tmp/$$") || die "Can't open /tmp/$$ for output\n";
while (<STDIN>)
{
# Handle lines beginning with a dot
if (/^\./)
{
# Some of the PCRE man pages used to contain instances of .br. However,
# they should have all been removed because they cause trouble in some
# (other) automated systems that translate man pages to HTML. Complain if
# we find .br or .in (another macro that is deprecated).
if (/^\.br/ || /^\.in/)
{
print STDERR "\n*** Deprecated macro encountered - rewrite needed\n";
print STDERR "*** $_\n";
die "*** Processing abandoned\n";
}
# Instead of .br, relevent "literal" sections are enclosed in .nf/.fi.
elsif (/^\.nf/)
{
$innf = 1;
}
elsif (/^\.fi/)
{
$innf = 0;
}
# Handling .sp is subtle. If it is inside a literal section, do nothing if
# the next line is a non literal text line; similarly, if not inside a
# literal section, do nothing if a literal follows. The point being that
# the <pre> and </pre> that delimit literal sections will do the spacing.
# Always skip if no previous output.
elsif (/^\.sp/)
{
if ($wrotetext)
{
$_ = <STDIN>;
if ($inpre)
{
print TEMP "\n" if (/^[\s.]/);
}
else
{
print TEMP "<br>\n<br>\n" if (!/^[\s.]/);
}
redo; # Now process the lookahead line we just read
}
}
elsif (/^\.TP/ || /^\.PP/ || /^\.P/)
{
&new_para();
}
elsif (/^\.SH\s*("?)(.*)\1/)
{
# Ignore the NAME section
if ($2 =~ /^NAME\b/)
{
<STDIN>;
next;
}
&end_para();
my($title) = &do_line($2);
if ($toc)
{
printf("<li><a name=\"TOC%d\" href=\"#SEC%d\">$title</a>\n",
$ref, $ref);
printf TEMP ("<br><a name=\"SEC%d\" href=\"#TOC1\">$title</a><br>\n",
$ref, $ref);
$ref++;
}
else
{
print TEMP "<br><b>\n$title\n</b><br>\n";
}
}
elsif (/^\.SS\s*("?)(.*)\1/)
{
&end_para();
my($title) = &do_line($2);
print TEMP "<br><b>\n$title\n</b><br>\n";
}
elsif (/^\.B\s*(.*)/)
{
&new_para() if (!$inpara);
$_ = &do_line($1);
s/"(.*?)"/$1/g;
print TEMP "<b>$_</b>\n";
$wrotetext = 1;
}
elsif (/^\.I\s*(.*)/)
{
&new_para() if (!$inpara);
$_ = &do_line($1);
s/"(.*?)"/$1/g;
print TEMP "<i>$_</i>\n";
$wrotetext = 1;
}
# A comment that starts "HREF" takes the next line as a name that
# is turned into a hyperlink, using the text given, which might be
# in a special font. If it ends in () or (digits) or punctuation, they
# aren't part of the link.
elsif (/^\.\\"\s*HREF/)
{
$_=<STDIN>;
chomp;
$_ = &do_line($_);
$_ =~ s/\s+$//;
$_ =~ /^(?:<.>)?([^<(]+)(?:\(\))?(?:<\/.>)?(?:\(\d+\))?[.,;:]?$/;
print TEMP "<a href=\"$1.html\">$_</a>\n";
}
# A comment that starts "HTML" inserts literal HTML
elsif (/^\.\\"\s*HTML\s*(.*)/)
{
print TEMP $1;
}
# A comment that starts < inserts that HTML at the end of the
# *next* input line - so as not to get a newline between them.
elsif (/^\.\\"\s*(<.*>)/)
{
my($markup) = $1;
$_=<STDIN>;
chomp;
$_ = &do_line($_);
$_ =~ s/\s+$//;
print TEMP "$_$markup\n";
}
# A comment that starts JOIN joins the next two lines together, with one
# space between them. Then that line is processed. This is used in some
# displays where two lines are needed for the "man" version. JOINSH works
# the same, except that it assumes this is a shell command, so removes
# continuation backslashes.
elsif (/^\.\\"\s*JOIN(SH)?/)
{
my($one,$two);
$one = <STDIN>;
$two = <STDIN>;
$one =~ s/\s*\\e\s*$// if (defined($1));
chomp($one);
$two =~ s/^\s+//;
$_ = "$one $two";
redo; # Process the joined lines
}
# Ignore anything not recognized
next;
}
# Line does not begin with a dot. Replace blank lines with new paragraphs
if (/^\s*$/)
{
&end_para() if ($wrotetext);
next;
}
# Convert fonts changes and output an ordinary line. Ensure that indented
# lines are marked as literal.
$_ = &do_line($_);
&new_para() if (!$inpara);
if (/^\s/)
{
if (!$inpre)
{
print TEMP "<pre>\n";
$inpre = 1;
}
}
elsif ($inpre)
{
print TEMP "</pre>\n";
$inpre = 0;
}
# Add <br> to the end of a non-literal line if we are within .nf/.fi
$_ .= "<br>\n" if (!$inpre && $innf);
print TEMP;
$wrotetext = 1;
}
# The TOC, if present, will have been written - terminate it
print "</ul>\n" if ($toc);
# Copy the remainder to the standard output
close(TEMP);
open(TEMP, "/tmp/$$") || die "Can't open /tmp/$$ for input\n";
print while (<TEMP>);
print <<End ;
<p>
Return to the <a href="index.html">PCRE index page</a>.
</p>
End
close(TEMP);
unlink("/tmp/$$");
# End
Written by: Philip Hazel <ph10@cam.ac.uk>
THE MAIN PCRE LIBRARY
---------------------
Written by: Philip Hazel
Email local part: ph10
Email domain: cam.ac.uk
University of Cambridge Computing Service,
Cambridge, England. Phone: +44 1223 334714.
Cambridge, England.
Copyright (c) 1997-2007 University of Cambridge
All rights reserved
THE C++ WRAPPER LIBRARY
-----------------------
Written by: Google Inc.
Copyright (c) 2007 Google Inc
All rights reserved
Copyright (c) 1997-2004 University of Cambridge
####
# CMakeLists.txt
#
#
# This file allows building PCRE with the CMake configuration and build
# tool. Download CMake in source or binary form from http://www.cmake.org/
#
# Original listfile by Christian Ehrlicher <Ch.Ehrlicher@gmx.de>
# Refined and expanded by Daniel Richard G. <skunk@iSKUNK.ORG>
# 2007-09-14 mod by Sheri so 7.4 supported configuration options can be entered
# 2007-09-19 Adjusted by PH to retain previous default settings
#
PROJECT(PCRE C CXX)
CMAKE_MINIMUM_REQUIRED(VERSION 2.4.6)
# Configuration checks
INCLUDE(CheckIncludeFile)
INCLUDE(CheckIncludeFileCXX)
INCLUDE(CheckFunctionExists)
INCLUDE(CheckTypeSize)
CHECK_INCLUDE_FILE(dirent.h HAVE_DIRENT_H)
CHECK_INCLUDE_FILE(unistd.h HAVE_UNISTD_H)
CHECK_INCLUDE_FILE(sys/stat.h HAVE_SYS_STAT_H)
CHECK_INCLUDE_FILE(sys/types.h HAVE_SYS_TYPES_H)
CHECK_INCLUDE_FILE_CXX(type_traits.h HAVE_TYPE_TRAITS_H)
CHECK_INCLUDE_FILE_CXX(bits/type_traits.h HAVE_BITS_TYPE_TRAITS_H)
CHECK_FUNCTION_EXISTS(bcopy HAVE_BCOPY)
CHECK_FUNCTION_EXISTS(memmove HAVE_MEMMOVE)
CHECK_FUNCTION_EXISTS(strerror HAVE_STRERROR)
CHECK_TYPE_SIZE("long long" LONG_LONG)
CHECK_TYPE_SIZE("unsigned long long" UNSIGNED_LONG_LONG)
# User-configurable options
#
# (Note: CMakeSetup displays these in alphabetical order, regardless of
# the order we use here)
SET(BUILD_SHARED_LIBS OFF CACHE BOOL
"Build shared libraries instead of static ones.")
OPTION(PCRE_BUILD_PCRECPP "Build the PCRE C++ library (pcrecpp)." ON)
SET(PCRE_EBCDIC OFF CACHE BOOL
"Use EBCDIC coding instead of ASCII. (This is rarely used outside of mainframe systems)")
SET(PCRE_LINK_SIZE "2" CACHE STRING
"Internal link size (2, 3 or 4 allowed). See LINK_SIZE in config.h.in for details.")
SET(PCRE_MATCH_LIMIT "10000000" CACHE STRING
"Default limit on internal looping. See MATCH_LIMIT in config.h.in for details.")
SET(PCRE_MATCH_LIMIT_RECURSION "MATCH_LIMIT" CACHE STRING
"Default limit on internal recursion. See MATCH_LIMIT_RECURSION in config.h.in for details.")
SET(PCRE_NEWLINE "LF" CACHE STRING
"What to recognize as a newline (one of CR, LF, CRLF, ANY, ANYCRLF).")
SET(PCRE_NO_RECURSE OFF CACHE BOOL
"If ON, then don't use stack recursion when matching. See NO_RECURSE in config.h.in for details.")
SET(PCRE_POSIX_MALLOC_THRESHOLD "10" CACHE STRING
"Threshold for malloc() usage. See POSIX_MALLOC_THRESHOLD in config.h.in for details.")
SET(PCRE_SUPPORT_UNICODE_PROPERTIES OFF CACHE BOOL
"Enable support for Unicode properties. (If set, UTF-8 support will be enabled as well)")
SET(PCRE_SUPPORT_UTF8 OFF CACHE BOOL
"Enable support for the Unicode UTF-8 encoding.")
SET(PCRE_SUPPORT_BSR_ANYCRLF OFF CACHE BOOL
"ON=Backslash-R matches only LF CR and CRLF, OFF=Backslash-R matches all Unicode Linebreaks")
# Prepare build configuration
SET(pcre_have_type_traits 0)
SET(pcre_have_bits_type_traits 0)
IF(HAVE_TYPE_TRAITS_H)
SET(pcre_have_type_traits 1)
ENDIF(HAVE_TYPE_TRAITS_H)
IF(HAVE_BITS_TYPE_TRAITS_H)
SET(pcre_have_bits_type_traits 1)
ENDIF(HAVE_BITS_TYPE_TRAITS_H)
SET(pcre_have_long_long 0)
SET(pcre_have_ulong_long 0)
IF(HAVE_LONG_LONG)
SET(pcre_have_long_long 1)
ENDIF(HAVE_LONG_LONG)
IF(HAVE_UNSIGNED_LONG_LONG)
SET(pcre_have_ulong_long 1)
ENDIF(HAVE_UNSIGNED_LONG_LONG)
IF(NOT BUILD_SHARED_LIBS)
SET(PCRE_STATIC 1)