diff lib/swig/swigwin-2.0.11/Tools/mkwindows.sh @ 1899:b3009adc0e2f

Adding swig, gitignore, hgignore
author Nomad
date Mon, 21 Oct 2013 10:42:27 +0200
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lib/swig/swigwin-2.0.11/Tools/mkwindows.sh	Mon Oct 21 10:42:27 2013 +0200
@@ -0,0 +1,122 @@
+#!/bin/sh
+
+# Build Windows distribution (swigwin-2.0.x.zip) from source tarball (swig-2.0.x.tar.gz)
+# Requires running in either:
+# - MinGW environment
+# - Linux using MinGW cross compiler
+# - Cygwin using MinGW compiler
+
+# path to zip program
+zip=
+
+# options for configure
+extraconfigureoptions=
+compileflags="-O2"
+extracompileflags=
+
+if test x$1 != x; then
+    version=$1
+    if test x$2 != x; then
+        zip=$2;
+        echo zip: $zip;
+    fi
+else
+    echo "Usage: mkwindows.sh version [zip]"
+    echo "       Build SWIG Windows distribution from source tarball. Works on Cygwin, MinGW or Linux"
+    echo "       version should be 2.0.x"
+    echo "       zip is full path to zip program - default is /c/cygwin/bin/zip on MinGW, zip on Linux and Cygwin"
+    exit 1
+fi
+
+uname=`uname -a`
+mingw=`echo "$uname" | grep -i mingw`
+linux=`echo "$uname" | grep -i linux`
+cygwin=`echo "$uname" | grep -i cygwin`
+if test "$mingw"; then
+  echo "Building native Windows executable on MinGW";
+  if test x$zip = x; then
+    zip=/c/cygwin/bin/zip
+  fi
+else 
+  if test "$linux"; then
+    echo "Building native Windows executable on Linux"
+    if test x$zip = x; then
+      zip=zip
+    fi
+    extraconfigureoptions="--host=i586-mingw32msvc --build=i686-linux"
+  else 
+    if test "$cygwin"; then
+      echo "Building native Windows executable on Cygwin"
+      if test x$zip = x; then
+        zip=zip
+      fi
+      compileflags="-O2 -mno-cygwin"
+    else
+      echo "Unknown platform. Requires either Linux or MinGW."
+      exit 1;
+    fi
+  fi
+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
+    if test -e $builddir; then
+      echo "Deleting directory $builddir..."
+      rm -rf $builddir
+    fi
+    echo "Creating directory $builddir..."
+    mkdir $builddir
+    cd $builddir
+    echo "Unzipping tarball..."
+    tar -zxf ../$tarball
+    sleep 2 # fix strange not finding newly created directory
+    if test -d $swigbasename; 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" || exit 1
+      echo "Compiling (quietly)..."
+      make > build.log
+      echo "Simple check to see if swig.exe runs..."
+      env LD_LIBRARY_PATH= PATH= ./swig.exe -version || exit 1
+      echo "Simple check to see if ccache-swig.exe runs..."
+      env LD_LIBRARY_PATH= PATH= ./CCache/ccache-swig.exe -V || exit 1
+      echo "Creating $swigwinbasename.zip..."
+      cd ..
+      cp $swigbasename/swig.exe $swigwinbasename
+      cp $swigbasename/CCache/ccache-swig.exe $swigwinbasename/CCache
+      cp $swigbasename/Lib/swigwarn.swg $swigwinbasename/Lib
+      sleep 2 # fix strange not finding swig.exe
+      echo "Unzip into a directory of your choice. Please read the README file as well as Doc\Manual\Windows.html for installation instructions." > swig_windows_zip_comments.txt
+      rm -f ../$swigwinbasename.zip
+      $zip -q -r -9 -z < swig_windows_zip_comments.txt ../$swigwinbasename.zip $swigwinbasename
+      rm -f swig_windows_zip_comments.txt
+      echo "Cleaning up..."
+      cd ..
+      rm -rf $builddir
+      echo "Finished building $swigwinbasename.zip"
+    else
+      echo "Expecting tarball to create directory: $swigbasename but it does not exist"
+      exit 1
+    fi
+else
+    echo tarball missing: $tarball 
+    exit 1
+fi
+
+exit 0