# HG changeset patch # User Volker Grabsch # Date 1181844964 -7200 # Node ID 6933ceaac6d17bbc8d6d82716c15e0a2e18866ec # Parent d04ebdcc7bd60f91e663edae174e2e58d612349f added many libraries diff -r d04ebdcc7bd6 -r 6933ceaac6d1 build_static_win32_libs.sh --- a/build_static_win32_libs.sh Wed Jun 13 11:49:10 2007 +0200 +++ b/build_static_win32_libs.sh Thu Jun 14 20:16:04 2007 +0200 @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash set -e @@ -18,15 +18,26 @@ DOWNLOAD="$ROOT/download" VERSION_pkg_config=0.21 +VERSION_pthreads=2-8-0 VERSION_zlib=1.2.3 VERSION_libxml2=2.6.29 +VERSION_libgpg_error=1.5 +VERSION_libgcrypt=1.2.4 +VERSION_gnutls=1.6.3 +VERSION_curl=7.16.2 VERSION_libpng=1.2.18 VERSION_jpeg=6b +VERSION_tiff=3.8.2 VERSION_freetype=2.3.4 VERSION_fontconfig=2.4.2 +VERSION_gd=2.0.35RC4 VERSION_SDL=1.2.11 VERSION_smpeg=0.4.5+cvs20030824 VERSION_SDL_mixer=1.2.7 +VERSION_geos=3.0.0rc4 +VERSION_proj=4.5.0 +VERSION_libgeotiff=1.2.3 +VERSION_gdal=1.4.1 # @@ -46,36 +57,69 @@ cd "$DOWNLOAD" -tar tfz "pkg-config-$VERSION_pkg_config.tar.gz" >/dev/null || +tar tfz "pkg-config-$VERSION_pkg_config.tar.gz" &>/dev/null || wget -c "http://pkgconfig.freedesktop.org/releases/pkg-config-$VERSION_pkg_config.tar.gz" -tar tfj "zlib-$VERSION_zlib.tar.bz2" >/dev/null || +tar tfz "pthreads-w32-$VERSION_pthreads-release.tar.gz" &>/dev/null || +wget -c "ftp://sourceware.org/pub/pthreads-win32/pthreads-w32-$VERSION_pthreads-release.tar.gz" + +tar tfj "zlib-$VERSION_zlib.tar.bz2" &>/dev/null || wget -c "http://downloads.sourceforge.net/libpng/zlib-$VERSION_zlib.tar.bz2" -tar tfz "libxml2-$VERSION_libxml2.tar.gz" >/dev/null || +tar tfz "libxml2-$VERSION_libxml2.tar.gz" &>/dev/null || wget -c "ftp://xmlsoft.org/libxml2/libxml2-$VERSION_libxml2.tar.gz" -tar tfj "libpng-$VERSION_libpng.tar.bz2" >/dev/null || +tar tfj "libgpg-error-$VERSION_libgpg_error.tar.bz2" &>/dev/null || +wget -c "ftp://ftp.gnupg.org/gcrypt/libgpg-error/libgpg-error-$VERSION_libgpg_error.tar.bz2" + +tar tfj "libgcrypt-$VERSION_libgcrypt.tar.bz2" &>/dev/null || +wget -c "ftp://ftp.gnupg.org/gcrypt/libgcrypt/libgcrypt-$VERSION_libgcrypt.tar.bz2" + +tar tfj "gnutls-$VERSION_gnutls.tar.bz2" &>/dev/null || +wget -c "ftp://ftp.gnutls.org/pub/gnutls/gnutls-$VERSION_gnutls.tar.bz2" + +tar tfj "curl-$VERSION_curl.tar.bz2" &>/dev/null || +wget -c "http://curl.haxx.se/download/curl-$VERSION_curl.tar.bz2" + +tar tfj "libpng-$VERSION_libpng.tar.bz2" &>/dev/null || wget -c "http://downloads.sourceforge.net/libpng/libpng-$VERSION_libpng.tar.bz2" -tar tfz "jpegsrc.v$VERSION_jpeg.tar.gz" >/dev/null || +tar tfz "jpegsrc.v$VERSION_jpeg.tar.gz" &>/dev/null || wget -c "http://www.ijg.org/files/jpegsrc.v$VERSION_jpeg.tar.gz" -tar tfj "freetype-$VERSION_freetype.tar.bz2" >/dev/null || +tar tfz "tiff-$VERSION_tiff.tar.gz" &>/dev/null || +wget -c "ftp://ftp.remotesensing.org/pub/libtiff/tiff-$VERSION_tiff.tar.gz" + +tar tfj "freetype-$VERSION_freetype.tar.bz2" &>/dev/null || wget -c "http://download.savannah.gnu.org/releases/freetype/freetype-$VERSION_freetype.tar.bz2" -tar tfz "fontconfig-$VERSION_fontconfig.tar.gz" >/dev/null || +tar tfz "fontconfig-$VERSION_fontconfig.tar.gz" &>/dev/null || wget -c "http://fontconfig.org/release/fontconfig-$VERSION_fontconfig.tar.gz" -tar tfz "SDL-$VERSION_SDL.tar.gz" >/dev/null || +tar tfj "gd-$VERSION_gd.tar.bz2" &>/dev/null || +wget -c "http://www.libgd.org/releases/gd-$VERSION_gd.tar.bz2" + +tar tfz "SDL-$VERSION_SDL.tar.gz" &>/dev/null || wget -c "http://www.libsdl.org/release/SDL-$VERSION_SDL.tar.gz" -tar tfz "smpeg_$VERSION_smpeg.orig.tar.gz" >/dev/null || +tar tfz "smpeg_$VERSION_smpeg.orig.tar.gz" &>/dev/null || wget -c "http://ftp.debian.org/debian/pool/main/s/smpeg/smpeg_$VERSION_smpeg.orig.tar.gz" -#svn checkout svn://svn.icculus.org/smpeg/trunk smpeg-trunk +#svn checkout -r ... svn://svn.icculus.org/smpeg/trunk ... + +tar tfz "SDL_mixer-$VERSION_SDL_mixer.tar.gz" &>/dev/null || +wget -c "http://www.libsdl.org/projects/SDL_mixer/release/SDL_mixer-$VERSION_SDL_mixer.tar.gz" + +tar tfj "geos-$VERSION_geos.tar.bz2" &>/dev/null || +wget -c "http://geos.refractions.net/geos-$VERSION_geos.tar.bz2" -tar tfz "SDL_mixer-$VERSION_SDL_mixer.tar.gz" >/dev/null || -wget -c "http://www.libsdl.org/projects/SDL_mixer/release/SDL_mixer-$VERSION_SDL_mixer.tar.gz" +tar tfz "proj-$VERSION_proj.tar.gz" &>/dev/null || +wget -c "ftp://ftp.remotesensing.org/proj/proj-$VERSION_proj.tar.gz" + +tar tfz "libgeotiff-$VERSION_libgeotiff.tar.gz" &>/dev/null || +wget -c "ftp://ftp.remotesensing.org/pub/geotiff/libgeotiff/libgeotiff-$VERSION_libgeotiff.tar.gz" + +tar tfz "gdal-$VERSION_gdal.tar.gz" &>/dev/null || +wget -c "http://www.gdal.org/dl/gdal-$VERSION_gdal.tar.gz" # @@ -92,6 +136,23 @@ # +# pthreads-w32 +# +# http://sourceware.org/pthreads-win32/ +# + +cd "$SOURCE" +tar xfvz "$DOWNLOAD/pthreads-w32-$VERSION_pthreads-release.tar.gz" +cd "pthreads-w32-$VERSION_pthreads-release" +sed '35i\#define PTW32_STATIC_LIB' -i pthread.h +make CROSS="$TARGET-" GC-static +install -d "$PREFIX/lib" +install -m664 libpthreadGC2.a "$PREFIX/lib/libpthread.a" +install -d "$PREFIX/include" +install -m664 pthread.h sched.h semaphore.h "$PREFIX/include/" + + +# # zlib # # http://www.zlib.net/ @@ -114,6 +175,7 @@ cd "$SOURCE" tar xfvz "$DOWNLOAD/libxml2-$VERSION_libxml2.tar.gz" cd "libxml2-$VERSION_libxml2" +sed 's,`uname`,MinGW,g' -i xml2-config.in ./configure \ --build="$BUILD" --host="$TARGET" \ --disable-shared \ @@ -124,6 +186,85 @@ # +# libgpg-error +# +# ftp://ftp.gnupg.org/gcrypt/libgpg-error/ +# + +cd "$SOURCE" +tar xfvj "$DOWNLOAD/libgpg-error-$VERSION_libgpg_error.tar.bz2" +cd "libgpg-error-$VERSION_libgpg_error" +./configure \ + --build="$BUILD" --host="$TARGET" \ + --disable-shared \ + --prefix="$PREFIX" \ + PATH="$PREFIX/bin:$PATH" +make install bin_PROGRAMS= noinst_PROGRAMS= + + +# +# libgcrypt +# +# ftp://ftp.gnupg.org/gcrypt/libgcrypt/ +# + +cd "$SOURCE" +tar xfvj "$DOWNLOAD/libgcrypt-$VERSION_libgcrypt.tar.bz2" +cd "libgcrypt-$VERSION_libgcrypt" +sed '26i\#include ' -i src/gcrypt.h.in +sed '26i\#include ' -i src/ath.h +./configure \ + --build="$BUILD" --host="$TARGET" \ + --disable-shared \ + --prefix="$PREFIX" \ + PATH="$PREFIX/bin:$PATH" +make install bin_PROGRAMS= noinst_PROGRAMS= + + +# +# GnuTLS +# +# http://www.gnu.org/software/gnutls/ +# + +cd "$SOURCE" +tar xfvj "$DOWNLOAD/gnutls-$VERSION_gnutls.tar.bz2" +cd "gnutls-$VERSION_gnutls" +./configure \ + --build="$BUILD" --host="$TARGET" \ + --disable-shared \ + --prefix="$PREFIX" \ + --disable-nls \ + --with-included-opencdk \ + --with-included-libtasn1 \ + --with-included-libcfg \ + --with-included-lzo \ + PATH="$PREFIX/bin:$PATH" +make install bin_PROGRAMS= noinst_PROGRAMS= defexec_DATA= + + +# +# cURL +# +# http://curl.haxx.se/libcurl/ +# + +cd "$SOURCE" +tar xfvj "$DOWNLOAD/curl-$VERSION_curl.tar.bz2" +cd "curl-$VERSION_curl" +sed 's,GNUTLS_ENABLED = 1,GNUTLS_ENABLED=1,' -i configure +./configure \ + --build="$BUILD" --host="$TARGET" \ + --disable-shared \ + --prefix="$PREFIX" \ + --with-gnutls \ + PATH="$PREFIX/bin:$PATH" \ + CFLAGS="-I$PREFIX/include" \ + LDFLAGS="-L$PREFIX/lib" +make install bin_PROGRAMS= noinst_PROGRAMS= + + +# # libpng # # http://www.libpng.org/ @@ -156,6 +297,26 @@ # +# LibTIFF +# +# http://www.remotesensing.org/libtiff/ +# + +cd "$SOURCE" +tar xfvz "$DOWNLOAD/tiff-$VERSION_tiff.tar.gz" +cd "tiff-$VERSION_tiff" +./configure \ + --build="$BUILD" --host="$TARGET" \ + --disable-shared \ + --prefix="$PREFIX" \ + PATH="$PREFIX/bin:$PATH" \ + CFLAGS="-I$PREFIX/include" \ + LDFLAGS="-L$PREFIX/lib" \ + --without-x +make install bin_PROGRAMS= noinst_PROGRAMS= + + +# # freetype # # http://freetype.sourceforge.net/ @@ -180,6 +341,7 @@ cd "$SOURCE" tar xfvz "$DOWNLOAD/fontconfig-$VERSION_fontconfig.tar.gz" cd "fontconfig-$VERSION_fontconfig" +sed 's,^install-data-local:.*,install-data-local:,' -i src/Makefile.in ./configure \ --with-arch="$BUILD" --build="$BUILD" --host="$TARGET" \ --disable-shared \ @@ -188,7 +350,31 @@ --enable-libxml2 \ LIBXML2_CFLAGS="`$PREFIX/bin/xml2-config --cflags`" \ LIBXML2_LIBS="`$PREFIX/bin/xml2-config --libs`" -sed 's,^install-data-local:.*,install-data-local:,' -i src/Makefile +make install bin_PROGRAMS= noinst_PROGRAMS= + + +# +# GD +# (without support for xpm) +# +# http://www.libgd.org/ +# + +cd "$SOURCE" +tar xfvj "$DOWNLOAD/gd-$VERSION_gd.tar.bz2" +cd "gd-$VERSION_gd" +touch aclocal.m4 +touch config.hin +touch Makefile.in +sed 's,-lX11 ,,g' -i configure +./configure \ + --build="$BUILD" --host="$TARGET" \ + --disable-shared \ + --prefix="$PREFIX" \ + --without-x \ + PATH="$PREFIX/bin:$PATH" \ + CFLAGS="-DNONDLL -DXMD_H" \ + LIBS="`$PREFIX/bin/xml2-config --libs`" make install bin_PROGRAMS= noinst_PROGRAMS= @@ -251,6 +437,97 @@ # +# GEOS +# +# http://geos.refractions.net/ +# + +cd "$SOURCE" +tar xfvj "$DOWNLOAD/geos-$VERSION_geos.tar.bz2" +cd "geos-$VERSION_geos" +./configure \ + --build="$BUILD" --host="$TARGET" \ + --disable-shared \ + --prefix="$PREFIX" \ + --disable-swig +make install bin_PROGRAMS= noinst_PROGRAMS= + + +# +# proj +# +# http://www.remotesensing.org/proj/ +# + +cd "$SOURCE" +tar xfvz "$DOWNLOAD/proj-$VERSION_proj.tar.gz" +cd "proj-$VERSION_proj" +sed 's,install-exec-local[^:],,' -i src/Makefile.in +./configure \ + --build="$BUILD" --host="$TARGET" \ + --disable-shared \ + --prefix="$PREFIX" \ + PATH="$PREFIX/bin:$PATH" +make install bin_PROGRAMS= noinst_PROGRAMS= + + +# +# GeoTiff +# +# http://www.remotesensing.org/geotiff/ +# + +cd "$SOURCE" +tar xfvz "$DOWNLOAD/libgeotiff-$VERSION_libgeotiff.tar.gz" +cd "libgeotiff-$VERSION_libgeotiff" +sed 's,/usr/local,@prefix@,' -i bin/Makefile.in +touch configure +./configure \ + --build="$BUILD" --host="$TARGET" \ + --disable-shared \ + --prefix="$PREFIX" \ + PATH="$PREFIX/bin:$PATH" \ + CFLAGS="-I$PREFIX/include" \ + LDFLAGS="-L$PREFIX/lib" +make all install EXEEXT=.remove-me +rm -fv "$PREFIX"/bin/*.remove-me + + +# +# GDAL +# +# http://www.gdal.org/ +# + +cd "$SOURCE" +tar xfvz "$DOWNLOAD/gdal-$VERSION_gdal.tar.gz" +cd "gdal-$VERSION_gdal" +./configure \ + --build="$BUILD" --host="$TARGET" \ + --disable-shared \ + --prefix="$PREFIX" \ + PATH="$PREFIX/bin:$PATH" \ + EXTRA_INCLUDES="-I$PREFIX/include" \ + LDFLAGS="-L$PREFIX/lib" \ + LIBS="-ljpeg" \ + CC="$TARGET-g++" \ + CFLAGS="-O2 -fpermissive" \ + --with-png="$PREFIX" \ + --with-libtiff="$PREFIX" \ + --with-geotiff="$PREFIX" \ + --with-jpeg="$PREFIX" \ + --without-python \ + --without-ngpython +make lib-target install-lib +make -C port install +make -C gcore install +make -C frmts install +make -C alg install +make -C ogr install OGR_ENABLED= +make -C apps install BIN_LIST= + + +# # packing #