55 lines
2.2 KiB
Bash
Executable file
55 lines
2.2 KiB
Bash
Executable file
#!/bin/sh
|
|
|
|
pcre_subdir=pcre/pcre-swig-install
|
|
pcre_install_dir=`pwd`/$pcre_subdir
|
|
|
|
usage() {
|
|
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 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 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 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
|
|
}
|
|
|
|
bail() {
|
|
echo $1 >&2
|
|
exit 1
|
|
}
|
|
|
|
if test "$1" = "-h" -o "$1" = "-help" -o "$1" = "--help" ; then
|
|
usage
|
|
fi
|
|
|
|
if test -f "pcre-build.sh" ; then
|
|
echo "Error: this script should not be run in the Tools directory" >&2
|
|
echo ""
|
|
usage
|
|
fi
|
|
|
|
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 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 "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 PCRE2 will automatically be detected and used from $pcre_install_dir/bin/pcre-config."
|