diff options
author | William S Fulton <wsf@fultondesigns.co.uk> | 2010-10-01 22:46:22 +0000 |
---|---|---|
committer | William S Fulton <wsf@fultondesigns.co.uk> | 2010-10-01 22:46:22 +0000 |
commit | db6bf51067db6beb701f4e9f5b25e14acf360c2d (patch) | |
tree | adb6afbb09596eb446ed9ed7193357f447c3bdd5 /Tools | |
parent | eaada32f264f828ec326f4c91f5c1a73399a8897 (diff) | |
download | swig-db6bf51067db6beb701f4e9f5b25e14acf360c2d.tar.gz |
Add pcre-build.sh script for easier building of pcre and configuring with SWIG if PCRE not installed
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12238 626c5289-ae23-0410-ae9c-e8d60b6d4f22
Diffstat (limited to 'Tools')
-rwxr-xr-x | Tools/mkwindows.sh | 14 | ||||
-rwxr-xr-x | Tools/pcre-build.sh | 53 |
2 files changed, 65 insertions, 2 deletions
diff --git a/Tools/mkwindows.sh b/Tools/mkwindows.sh index 869fce01a..6042361b3 100755 --- a/Tools/mkwindows.sh +++ b/Tools/mkwindows.sh @@ -43,7 +43,7 @@ else if test x$zip = x; then zip=zip fi - extraconfigureoptions="--host=i586-mingw32msvc --build=i686-linux CXXFLAGS=-O2 CFLAGS=-O2" + extraconfigureoptions="--host=i586-mingw32msvc --build=i686-linux" else if test "$cygwin"; then echo "Building native Windows executable on Cygwin" @@ -61,6 +61,13 @@ fi swigbasename=swig-$version swigwinbasename=swigwin-$version tarball=$swigbasename.tar.gz +pcre_tarball=`ls pcre-*.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 "and place in the same directory as the SWIG tarball." + exit 1 +fi if test -f "$tarball"; then builddir=build-$version @@ -78,8 +85,11 @@ if test -f "$tarball"; then mv $swigbasename $swigwinbasename tar -zxf ../$tarball cd $swigbasename + (cd ../.. && cp $pcre_tarball $builddir/$swigbasename) + echo Running: Tools/pcre-build.sh $extraconfigureoptions CFLAGS="$compileflags" CXXFLAGS="$compileflags" + ./Tools/pcre-build.sh $extraconfigureoptions CFLAGS="$compileflags" CXXFLAGS="$compileflags" || exit 1 echo Running: ./configure $extraconfigureoptions CFLAGS="$compileflags" CXXFLAGS="$compileflags" - ./configure $extraconfigureoptions CFLAGS="$compileflags" CXXFLAGS="$compileflags" + ./configure $extraconfigureoptions CFLAGS="$compileflags" CXXFLAGS="$compileflags" || exit 1 echo "Compiling (quietly)..." make > build.log echo "Simple check to see if swig.exe runs..." diff --git a/Tools/pcre-build.sh b/Tools/pcre-build.sh new file mode 100755 index 000000000..876a58a7e --- /dev/null +++ b/Tools/pcre-build.sh @@ -0,0 +1,53 @@ +#!/bin/sh + +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 "Usage: pcre-build.sh [--help] [args]" + echo " args - optional additional arguments passed on to the PCRE 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 " 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 " - Afterwards run the SWIG configure scrip 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 PCRE tarball..." +rm -rf pcre +pcre_tarball=`ls pcre-*.tar.*` +test -f "$pcre_tarball" || bail "Could not find 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 -s || bail "Could not build PCRE" +echo "Installing PCRE locally to $pcre_install_dir..." +make -s install || bail "Could not install PCRE" +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." |