Few more PCRE to PCRE2 changes
This commit is contained in:
parent
15515f390c
commit
f8e4a5cc25
8 changed files with 37 additions and 37 deletions
|
|
@ -281,12 +281,12 @@ You must use <a href="http://www.gnu.org/software/make/">GNU make</a> to build a
|
|||
</p>
|
||||
|
||||
<p>
|
||||
<a href="http://www.pcre.org/">PCRE</a>
|
||||
<a href="http://www.pcre.org/">PCRE2</a>
|
||||
needs to be installed on your system to build SWIG, in particular
|
||||
pcre2-config must be available. If you have PCRE headers and libraries but not
|
||||
pcre2-config must be available. If you have PCRE2 headers and libraries but not
|
||||
pcre2-config itself or, alternatively, wish to override the compiler or linker
|
||||
flags returned by pcre-config, you may set PCRE2_LIBS and PCRE2_CFLAGS variables
|
||||
to be used instead. And if you don't have PCRE at all, the configure script
|
||||
flags returned by pcre2-config, you may set PCRE2_LIBS and PCRE2_CFLAGS variables
|
||||
to be used instead. And if you don't have PCRE2 at all, the configure script
|
||||
will provide instructions for obtaining it.
|
||||
</p>
|
||||
|
||||
|
|
|
|||
|
|
@ -208,7 +208,7 @@ General Options
|
|||
-oh <headfile> - Set name of C++ output header file for directors to <headfile>
|
||||
-outcurrentdir - Set default output dir to current dir instead of input file's path
|
||||
-outdir <dir> - Set language specific files output directory to <dir>
|
||||
-pcreversion - Display PCRE version information
|
||||
-pcreversion - Display PCRE2 version information
|
||||
-small - Compile in virtual elimination and compact mode
|
||||
-swiglib - Report location of SWIG library and exit
|
||||
-templatereduce - Reduce all the typedefs in templates
|
||||
|
|
@ -2022,8 +2022,8 @@ and a more descriptive one, but the two functions are otherwise equivalent:
|
|||
<td>String after (Perl-like) regex substitution operation. This function
|
||||
allows applying arbitrary regular expressions to the identifier names. The
|
||||
<i>pattern</i> part is a regular expression in Perl syntax (as supported
|
||||
by the <a href="http://www.pcre.org/">Perl Compatible Regular Expressions (PCRE)</a>)
|
||||
library and the <i>subst</i> string
|
||||
by the <a href="http://www.pcre.org/">Perl Compatible Regular Expressions</a>)
|
||||
(PCRE2 library) and the <i>subst</i> string
|
||||
can contain back-references of the form <tt>\N</tt> where <tt>N</tt> is a digit
|
||||
from 0 to 9, or one of the following escape sequences: <tt>\l</tt>, <tt>\L</tt>,
|
||||
<tt>\u</tt>, <tt>\U</tt> or <tt>\E</tt>. The back-references are replaced with the
|
||||
|
|
|
|||
|
|
@ -258,7 +258,7 @@ cd pcre2
|
|||
cmake -G "Visual Studio 15 2017 Win64" -DCMAKE_INSTALL_PREFIX=C:/pcre .
|
||||
cmake --build . --config Release --target install
|
||||
</pre></div>
|
||||
Alternatively, use <tt>WITH_PCRE</tt> option to disable PCRE support if you are sure not to need it.
|
||||
Alternatively, use <tt>WITH_PCRE</tt> option to disable PCRE2 support if you are sure not to need it.
|
||||
</li>
|
||||
<li>
|
||||
We will also need the SWIG source code. Either download a zipped archive from GitHub, or if git is installed clone the latest codebase
|
||||
|
|
@ -451,10 +451,10 @@ the autotools will fail miserably on those.
|
|||
</li>
|
||||
|
||||
<li>
|
||||
The PCRE third party library needs to be built next.
|
||||
Download the latest PCRE source tarball, such as <tt>pcre2-10.39.tar.bz2</tt>, from
|
||||
<a href=http://www.pcre.org>PCRE</a> and place in the <tt>/usr/src/swig</tt> directory.
|
||||
Build PCRE as a static library using the Tools/pcre-build.sh script as follows:
|
||||
The PCRE2 third party library needs to be built next.
|
||||
Download the latest PCRE2 source tarball, such as <tt>pcre2-10.39.tar.bz2</tt>, from
|
||||
<a href=http://www.pcre.org>www.pcre.org</a> and place in the <tt>/usr/src/swig</tt> directory.
|
||||
Build PCRE2 as a static library using the Tools/pcre-build.sh script as follows:
|
||||
|
||||
<div class="shell"><pre>
|
||||
cd /usr/src/swig
|
||||
|
|
|
|||
|
|
@ -137,7 +137,7 @@ static const char *usage4 = (const char *) "\
|
|||
-oh <headfile> - Set name of C++ output header file for directors to <headfile>\n\
|
||||
-outcurrentdir - Set default output dir to current dir instead of input file's path\n\
|
||||
-outdir <dir> - Set language specific files output directory to <dir>\n\
|
||||
-pcreversion - Display PCRE version information\n\
|
||||
-pcreversion - Display PCRE2 version information\n\
|
||||
-small - Compile in virtual elimination and compact mode\n\
|
||||
-swiglib - Report location of SWIG library and exit\n\
|
||||
-templatereduce - Reduce all the typedefs in templates\n\
|
||||
|
|
|
|||
|
|
@ -1493,7 +1493,7 @@ String *Swig_pcre_version(void) {
|
|||
char *buf = malloc(len);
|
||||
String *result;
|
||||
pcre2_config(PCRE2_CONFIG_VERSION, buf);
|
||||
result = NewStringf("PCRE Version: %s", buf);
|
||||
result = NewStringf("PCRE2 Version: %s", buf);
|
||||
free(buf);
|
||||
return result;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -87,7 +87,7 @@ tarball=$swigbasename.tar.gz
|
|||
pcre_tarball=`ls pcre2-*.tar.*`
|
||||
|
||||
if ! test -f "$pcre_tarball"; then
|
||||
echo "Could not find PCRE tarball. Please download a PCRE source tarball from http://www.pcre.org"
|
||||
echo "Could not find PCRE2 tarball. Please download a PCRE2 source tarball from http://www.pcre.org"
|
||||
echo "and place in the same directory as the SWIG tarball."
|
||||
exit 1
|
||||
fi
|
||||
|
|
|
|||
|
|
@ -4,17 +4,17 @@ pcre_subdir=pcre/pcre-swig-install
|
|||
pcre_install_dir=`pwd`/$pcre_subdir
|
||||
|
||||
usage() {
|
||||
echo "Helper script to build PCRE as a static library from a tarball just for use during the"
|
||||
echo "SWIG build. It does not install PCRE for global use on your system."
|
||||
echo "Helper script to build PCRE2 as a static library from a tarball just for use during the"
|
||||
echo "SWIG build. It does not install PCRE2 for global use on your system."
|
||||
echo "Usage: pcre-build.sh [--help] [args]"
|
||||
echo " args - optional additional arguments passed on to the PCRE configure script (leave out"
|
||||
echo " args - optional additional arguments passed on to the PCRE2 configure script (leave out"
|
||||
echo " unless you are an expert at configure)"
|
||||
echo " --help - Display this help information."
|
||||
echo "Instructions:"
|
||||
echo " - Download the latest PCRE source tarball from http://www.pcre.org and place in the"
|
||||
echo " - Download the latest PCRE2 source tarball from http://www.pcre.org and place in the"
|
||||
echo " directory that you will configure and build SWIG."
|
||||
echo " - Run this script in the same directory that you intend to configure and build SWIG in."
|
||||
echo " This will configure and build PCRE as a static library."
|
||||
echo " This will configure and build PCRE2 as a static library."
|
||||
echo " - Afterwards run the SWIG configure script which will then find and use the PCRE static"
|
||||
echo " libraries in the $pcre_subdir subdirectory."
|
||||
exit 0
|
||||
|
|
@ -35,21 +35,21 @@ if test -f "pcre-build.sh" ; then
|
|||
usage
|
||||
fi
|
||||
|
||||
echo "Looking for PCRE tarball..."
|
||||
echo "Looking for PCRE2 tarball..."
|
||||
rm -rf pcre
|
||||
pcre_tarball=`ls pcre2-*.tar*`
|
||||
test -n "$pcre_tarball" || bail "Could not find tarball matching pattern: pcre2-*.tar*"
|
||||
test -f "$pcre_tarball" || bail "Could not find a single PCRE tarball. Found: $pcre_tarball"
|
||||
test -f "$pcre_tarball" || bail "Could not find a single PCRE2 tarball. Found: $pcre_tarball"
|
||||
|
||||
echo "Extracting tarball: $pcre_tarball"
|
||||
tar -xf $pcre_tarball || bail "Could not untar $pcre_tarball"
|
||||
pcre_dir=`echo $pcre_tarball | sed -e "s/\.tar.*//"`
|
||||
echo "Configuring PCRE in directory: pcre"
|
||||
mv $pcre_dir pcre || bail "Could not create pcre directory"
|
||||
cd pcre && ./configure --prefix=$pcre_install_dir --disable-shared $* || bail "PCRE configure failed"
|
||||
echo "Building PCRE..."
|
||||
${MAKE:-make} -s || bail "Could not build PCRE"
|
||||
echo "Installing PCRE locally to $pcre_install_dir..."
|
||||
${MAKE:-make} -s install || bail "Could not install PCRE"
|
||||
cd pcre && ./configure --prefix=$pcre_install_dir --disable-shared $* || bail "PCRE2 configure failed"
|
||||
echo "Building PCRE2..."
|
||||
${MAKE:-make} -s || bail "Could not build PCRE2"
|
||||
echo "Installing PCRE2 locally to $pcre_install_dir..."
|
||||
${MAKE:-make} -s install || bail "Could not install PCRE2"
|
||||
echo ""
|
||||
echo "The SWIG configure script can now be run, whereupon PCRE will automatically be detected and used from $pcre_install_dir/bin/pcre-config."
|
||||
echo "The SWIG configure script can now be run, whereupon PCRE2 will automatically be detected and used from $pcre_install_dir/bin/pcre-config."
|
||||
|
|
|
|||
18
configure.ac
18
configure.ac
|
|
@ -48,16 +48,16 @@ fi
|
|||
dnl PCRE
|
||||
AC_ARG_WITH([pcre],
|
||||
[AS_HELP_STRING([--without-pcre],
|
||||
[Disable support for regular expressions using PCRE])],
|
||||
[Disable support for regular expressions using PCRE2])],
|
||||
[],
|
||||
[with_pcre=yes])
|
||||
|
||||
AC_MSG_CHECKING([whether to enable PCRE support])
|
||||
AC_MSG_CHECKING([whether to enable PCRE2 support])
|
||||
AC_MSG_RESULT([$with_pcre])
|
||||
|
||||
dnl To make configuring easier, check for a locally built PCRE using the Tools/pcre-build.sh script
|
||||
if test x"${with_pcre}" = xyes ; then
|
||||
AC_MSG_CHECKING([whether to use local PCRE])
|
||||
AC_MSG_CHECKING([whether to use local PCRE2])
|
||||
local_pcre_config=no
|
||||
if test -z $PCRE2_CONFIG; then
|
||||
if test -f `pwd`/pcre/pcre-swig-install/bin/pcre2-config; then
|
||||
|
|
@ -71,20 +71,20 @@ AS_IF([test "x$with_pcre" != xno],
|
|||
[AX_PATH_GENERIC([pcre2],
|
||||
[], dnl Minimal version of PCRE we need -- accept any
|
||||
[], dnl custom sed script for version parsing is not needed
|
||||
[AC_DEFINE([HAVE_PCRE], [1], [Define if you have PCRE library])
|
||||
[AC_DEFINE([HAVE_PCRE], [1], [Define if you have PCRE2 library])
|
||||
LIBS="$LIBS $PCRE2_LIBS"
|
||||
CPPFLAGS="$CPPFLAGS $PCRE2_CFLAGS"
|
||||
],
|
||||
[AC_MSG_FAILURE([
|
||||
Cannot find pcre2-config script from PCRE (Perl Compatible Regular Expressions)
|
||||
Cannot find pcre2-config script from PCRE2 (Perl Compatible Regular Expressions)
|
||||
library package. This dependency is needed for configure to complete,
|
||||
Either:
|
||||
- Install the PCRE developer package on your system (preferred approach).
|
||||
- Download the PCRE source tarball, build and install on your system
|
||||
- Install the PCRE2 developer package on your system (preferred approach).
|
||||
- Download the PCRE2 source tarball, build and install on your system
|
||||
as you would for any package built from source distribution.
|
||||
- Use the Tools/pcre-build.sh script to build PCRE just for SWIG to statically
|
||||
- Use the Tools/pcre-build.sh script to build PCRE2 just for SWIG to statically
|
||||
link against. Run 'Tools/pcre-build.sh --help' for instructions.
|
||||
(quite easy and does not require privileges to install PCRE on your system)
|
||||
(quite easy and does not require privileges to install PCRE2 on your system)
|
||||
- Use configure --without-pcre to disable regular expressions support in SWIG
|
||||
(not recommended).])
|
||||
],
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue