]> Dogcows Code - chaz/yoink/blobdiff - arch/win32/makedeps.sh
build system enhancements
[chaz/yoink] / arch / win32 / makedeps.sh
diff --git a/arch/win32/makedeps.sh b/arch/win32/makedeps.sh
deleted file mode 100755 (executable)
index cc8a8bf..0000000
+++ /dev/null
@@ -1,366 +0,0 @@
-#!/bin/sh
-
-#
-# Yoink
-# Run this script to download and cross-compile dependencies for win32.
-#
-# A directory named deps will be created and/or populated in the current
-# directory.  Upon successful completion (be patient), the compiled
-# dependencies will be packaged into an archive named deps.tar.bz2 in the
-# current directory.  To install the dependencies, execute this command:
-#
-# tar xjf deps.tar.bz2 -C $PREFIX
-# 
-# where $PREFIX is the path to your mingw32 toolchain.  If problems occur,
-# check stdout and stderr for clues.  You may be able to easily determine
-# the problem and make the necessary corrections.  These packages will be
-# downloaded and built:
-#
-# SDL 1.2.14
-# boost 1.43.0 (headers only)
-# libogg 1.2.0
-# libpng 1.4.2
-# libvorbis 1.3.1
-# lua 5.1.4
-# openal-soft 1.12.854
-# zlib 1.2.5
-#
-# This script requires a working mingw32 toolchain and other basic tools.
-#
-# Example usage:
-#   ./makedeps.sh -H i486-mingw32 -p /usr/i486-mingw32 -m "-j8"
-#
-# Bugs: Each time the script is run, all of the dependencies will be
-# rebuilt, even the ones which were already built successfully.
-#
-
-showhelp()
-{
-       echo "Usage: $0 [-h] [-m makeopts] -H host -p prefix"
-       echo "  Downloads and cross-compiles dependencies for win32."
-       echo ""
-       echo "  -H  Specify the name of your toolchain, like i486-mingw32."
-       echo "  -h  Show this help an exit."
-       echo "  -m  Specify options to be passed to make."
-       echo "  -p  Specify the path to your toolchain installation."
-}
-
-while getopts ":H:hm:p:" opt
-do
-       case $opt in
-               H)
-                       HOST="$OPTARG"
-                       ;;
-               h)
-                       showhelp
-                       exit 0
-                       ;;
-               m)
-                       MAKEOPTS="$OPTARG"
-                       ;;
-               p)
-                       PREFIX="$OPTARG"
-                       ;;
-               \?)
-                       echo "Invalid option: -$OPTARG" >&2
-                       showhelp
-                       exit 1
-                       ;;
-       esac
-done
-
-if test x$HOST = x || test x$PREFIX = x
-then
-       showhelp
-       exit 1
-fi
-
-
-die()
-{
-       echo "die:" $@
-       exit 1
-}
-
-DESTDIR="`pwd`/deps"
-mkdir -p "$DESTDIR"
-rm -f "$DESTDIR/README"
-rm -rf "$DESTDIR/$PREFIX"
-
-
-PACKAGE="boost_1_43_0"
-VERSION="1.43.0"
-cd $DESTDIR
-test ! -f $PACKAGE.tar.bz2 && (wget "http://sourceforge.net/projects/boost/files/boost/$VERSION/$PACKAGE.tar.bz2/download" || die "downloading $PACKAGE")
-(md5sum -c <<"EOL"
-dd49767bfb726b0c774f7db0cef91ed1  boost_1_43_0.tar.bz2
-EOL
-) || die "verifying $PACKAGE"
-rm -rf $PACKAGE
-tar xjf $PACKAGE.tar.bz2 || die "unpackaging $PACKAGE"
-(mkdir -p $DESTDIR/$PREFIX/include && \
-rm -rf $DESTDIR/$PREFIX/include/boost && \
-cp -r $PACKAGE/boost $DESTDIR/$PREFIX/include/boost) || die "installing $PACKAGE"
-
-
-PACKAGE="SDL-1.2.14"
-cd $DESTDIR
-test ! -f $PACKAGE.tar.gz && (wget "http://www.libsdl.org/release/$PACKAGE.tar.gz" || die "downloading $PACKAGE")
-(md5sum -c <<"EOL"
-e52086d1b508fa0b76c52ee30b55bec4  SDL-1.2.14.tar.gz
-EOL
-) || die "verifying $PACKAGE"
-rm -rf $PACKAGE
-tar xzf $PACKAGE.tar.gz || die "unpackaging $PACKAGE"
-cd $PACKAGE
-./configure --host=$HOST --prefix=$PREFIX --disable-stdio-redirect || die "configuring $PACKAGE"
-make $MAKEOPTS || die "making $PACKAGE"
-make DESTDIR=$DESTDIR install || die "installing $PACKAGE"
-
-
-PACKAGE="libogg-1.2.0"
-cd $DESTDIR
-test ! -f $PACKAGE.tar.gz && (wget "http://downloads.xiph.org/releases/ogg/$PACKAGE.tar.gz" || die "downloading $PACKAGE")
-(md5sum -c <<"EOL"
-c95b73759acfc30712beef6ce4e88efa  libogg-1.2.0.tar.gz
-EOL
-) || die "verifying $PACKAGE"
-rm -rf $PACKAGE
-tar xzf $PACKAGE.tar.gz || die "unpackaging $PACKAGE"
-cd $PACKAGE
-./configure --host=$HOST --prefix=$PREFIX || die "configuring $PACKAGE"
-make $MAKEOPTS || die "making $PACKAGE"
-make DESTDIR=$DESTDIR install || die "installing $PACKAGE"
-
-
-PACKAGE="libvorbis-1.3.1"
-cd $DESTDIR
-test ! -f $PACKAGE.tar.gz && (wget "http://downloads.xiph.org/releases/vorbis/$PACKAGE.tar.gz" || die "downloading $PACKAGE")
-(md5sum -c <<"EOL"
-016e523fac70bdd786258a9d15fd36e9  libvorbis-1.3.1.tar.gz
-EOL
-) || die "verifying $PACKAGE"
-rm -rf $PACKAGE
-tar xzf $PACKAGE.tar.gz || die "unpackaging $PACKAGE"
-cd $PACKAGE
-./configure --host=$HOST --prefix=$PREFIX \
-CPPFLAGS="-I$DESTDIR/$PREFIX/include" \
-LDFLAGS="-L$DESTDIR/$PREFIX/lib" || die "configuring $PACKAGE"
-make $MAKEOPTS || die "making $PACKAGE"
-make DESTDIR=$DESTDIR install || die "installing $PACKAGE"
-
-
-PACKAGE="openal-soft-1.12.854-bin"
-cd $DESTDIR
-test ! -f $PACKAGE.zip && (wget "http://kcat.strangesoft.net/$PACKAGE.zip" || die "downloading $PACKAGE")
-(md5sum -c <<"EOL"
-a0d92a959895fa9d0981b39089897a01  openal-soft-1.12.854-bin.zip
-EOL
-) || die "verifying $PACKAGE"
-rm -rf $PACKAGE
-unzip $PACKAGE.zip || die "unpackaging $PACKAGE"
-cd $PACKAGE
-(mkdir -p $DESTDIR/$PREFIX/{lib/pkgconfig,include/AL} && \
-install -p -m 0644 include/AL/* $DESTDIR/$PREFIX/include/AL/ && \
-install -p -m 0755 Win32/soft_oal.dll $DESTDIR/$PREFIX/bin/OpenAL32.dll && \
-install -p -m 0755 openal-info.exe $DESTDIR/$PREFIX/bin/ && \
-install -p -m 0755 lib/Win32/libOpenAL32.dll.a $DESTDIR/$PREFIX/lib/ && \
-cat >$DESTDIR/$PREFIX/lib/pkgconfig/openal.pc <<EOL
-prefix=$PREFIX
-exec_prefix=\${prefix}
-libdir=\${exec_prefix}/lib
-includedir=\${prefix}/include
-
-Name: OpenAL
-Description: OpenAL is a cross-platform 3D audio API
-Requires: 
-Version: 1.11.753
-Libs: -L\${libdir} -lOpenAL32
-Cflags: -I\${includedir}
-EOL
-) || die "installing $PACKAGE"
-
-
-PACKAGE="zlib-1.2.5"
-cd $DESTDIR
-test ! -f $PACKAGE.zip && (wget "http://www.zlib.net/$PACKAGE.tar.gz" || die "downloading $PACKAGE")
-(md5sum -c <<"EOL"
-c735eab2d659a96e5a594c9e8541ad63  zlib-1.2.5.tar.gz
-EOL
-) || die "verifying $PACKAGE"
-rm -rf $PACKAGE
-tar xf $PACKAGE.tar.gz || die "unpackaging $PACKAGE"
-cd $PACKAGE
-cp win32/Makefile.gcc Makefile && \
-make $MAKEOPTS prefix="$PREFIX" PREFIX="$HOST-" || die "making $PACKAGE"
-(install -p -m 0644 zconf.h $DESTDIR/$PREFIX/include/ && \
-install -p -m 0644 zlib.h $DESTDIR/$PREFIX/include/ && \
-install -p -m 0755 zlib1.dll $DESTDIR/$PREFIX/bin/ && \
-install -p -m 0755 libzdll.a $DESTDIR/$PREFIX/lib/ && \
-cd $DESTDIR/$PREFIX/lib && \
-ln -fs libzdll.a libz.dll.a) || die "installing $PACKAGE"
-
-
-PACKAGE="libpng-1.4.2"
-cd $DESTDIR
-test ! -f $PACKAGE.tar.gz && (wget "http://prdownloads.sourceforge.net/libpng/$PACKAGE.tar.gz?download" || die "downloading $PACKAGE")
-(md5sum -c <<"EOL"
-89fd334dc5fc84ff146b9269c4fa452f  libpng-1.4.2.tar.gz
-EOL
-) || die "verifying $PACKAGE"
-rm -rf $PACKAGE
-tar xzf $PACKAGE.tar.gz || die "unpackaging $PACKAGE"
-cd $PACKAGE
-cp scripts/makefile.mingw Makefile && \
-make $MAKEOPTS prefix="$PREFIX" CC="$HOST-gcc" AR="$HOST-ar" RANLIB="$HOST-ranlib" \
-ZLIBINC="$DESTDIR/$PREFIX/include" \
-ZLIBLIB="$DESTDIR/$PREFIX/lib" libpng.a libpng14.dll || die "making $PACKAGE"
-make DESTDIR=$DESTDIR install prefix="$PREFIX" || die "installing $PACKAGE"
-
-
-PACKAGE="lua-5.1.4"
-cd $DESTDIR
-test ! -f $PACKAGE.tar.gz && (wget "http://www.lua.org/ftp/$PACKAGE.tar.gz" || die "downloading $PACKAGE")
-(md5sum -c <<"EOL"
-d0870f2de55d59c1c8419f36e8fac150  lua-5.1.4.tar.gz
-EOL
-) || die "verifying $PACKAGE"
-rm -rf $PACKAGE
-tar xzf $PACKAGE.tar.gz || die "unpackaging $PACKAGE"
-cd $PACKAGE
-patch -p1 <<"EOL"
-diff -ur lua-5.1.4.orig/Makefile lua-5.1.4/Makefile
---- lua-5.1.4.orig/Makefile    2008-08-11 18:40:48.000000000 -0600
-+++ lua-5.1.4/Makefile 2010-03-03 23:11:41.673472345 -0700
-@@ -13,7 +13,8 @@
- INSTALL_BIN= $(INSTALL_TOP)/bin
- INSTALL_INC= $(INSTALL_TOP)/include
- INSTALL_LIB= $(INSTALL_TOP)/lib
--INSTALL_MAN= $(INSTALL_TOP)/man/man1
-+INSTALL_MAN= $(INSTALL_TOP)/share/man/man1
-+INSTALL_PC=  $(INSTALL_LIB)/pkgconfig
- #
- # You probably want to make INSTALL_LMOD and INSTALL_CMOD consistent with
- # LUA_ROOT, LUA_LDIR, and LUA_CDIR in luaconf.h (and also with etc/lua.pc).
-@@ -41,10 +42,11 @@
- PLATS= aix ansi bsd freebsd generic linux macosx mingw posix solaris
- # What to install.
--TO_BIN= lua luac
-+TO_BIN= lua.exe luac.exe lua51.dll
- TO_INC= lua.h luaconf.h lualib.h lauxlib.h ../etc/lua.hpp
--TO_LIB= liblua.a
-+TO_LIB= liblua.a liblua.dll.a
- TO_MAN= lua.1 luac.1
-+TO_PC=  lua.pc
- # Lua version and release.
- V= 5.1
-@@ -59,11 +61,12 @@
-       src/lua test/hello.lua
- install: dummy
--      cd src && $(MKDIR) $(INSTALL_BIN) $(INSTALL_INC) $(INSTALL_LIB) $(INSTALL_MAN) $(INSTALL_LMOD) $(INSTALL_CMOD)
-+      cd src && $(MKDIR) $(INSTALL_BIN) $(INSTALL_INC) $(INSTALL_LIB) $(INSTALL_MAN) $(INSTALL_PC) $(INSTALL_LMOD) $(INSTALL_CMOD)
-       cd src && $(INSTALL_EXEC) $(TO_BIN) $(INSTALL_BIN)
-       cd src && $(INSTALL_DATA) $(TO_INC) $(INSTALL_INC)
-       cd src && $(INSTALL_DATA) $(TO_LIB) $(INSTALL_LIB)
-       cd doc && $(INSTALL_DATA) $(TO_MAN) $(INSTALL_MAN)
-+      cd etc && $(INSTALL_DATA) $(TO_PC)  $(INSTALL_PC)
- ranlib:
-       cd src && cd $(INSTALL_LIB) && $(RANLIB) $(TO_LIB)
-diff -ur lua-5.1.4.orig/src/Makefile lua-5.1.4/src/Makefile
---- lua-5.1.4.orig/src/Makefile        2008-01-19 12:37:58.000000000 -0700
-+++ lua-5.1.4/src/Makefile     2010-03-03 22:45:47.101159854 -0700
-@@ -105,7 +105,7 @@
- mingw:
-       $(MAKE) "LUA_A=lua51.dll" "LUA_T=lua.exe" \
--      "AR=$(CC) -shared -o" "RANLIB=strip --strip-unneeded" \
-+      "AR=$(CC) -shared -Wl,--out-implib,liblua.dll.a -o" "RANLIB=strip --strip-unneeded" \
-       "MYCFLAGS=-DLUA_BUILD_AS_DLL" "MYLIBS=" "MYLDFLAGS=-s" lua.exe
-       $(MAKE) "LUAC_T=luac.exe" luac.exe
-EOL
-patch -p1 <<EOL
-diff -ur lua-5.1.4.orig/etc/lua.pc lua-5.1.4/etc/lua.pc
---- lua-5.1.4.orig/etc/lua.pc  2008-08-08 06:46:11.000000000 -0600
-+++ lua-5.1.4/etc/lua.pc       2010-03-03 22:46:49.160471491 -0700
-@@ -8,7 +8,7 @@
- R= 5.1.4
- # grep '^INSTALL_.*=' ../Makefile | sed 's/INSTALL_TOP/prefix/'
--prefix= /usr/local
-+prefix= $PREFIX
- INSTALL_BIN= \${prefix}/bin
- INSTALL_INC= \${prefix}/include
- INSTALL_LIB= \${prefix}/lib
-EOL
-make $MAKEOPTS CC="$HOST-gcc" RANLIB="$HOST-ranlib" mingw || die "making $PACKAGE"
-make INSTALL_TOP=$DESTDIR/$PREFIX install || die "installing $PACKAGE"
-chmod 755 $DESTDIR/$PREFIX/lib/liblua.dll.a
-
-
-# libopengl32 and libglu32 pc files
-mkdir -p $DESTDIR/$PREFIX/lib/pkgconfig
-cat >$DESTDIR/$PREFIX/lib/pkgconfig/gl.pc <<EOL
-prefix=$PREFIX
-exec_prefix=\${prefix}
-libdir=\${exec_prefix}/lib
-includedir=\${prefix}/include
-
-Name: gl
-Description: OpenGL library
-Requires: 
-Version: 
-Libs: -L\${libdir} -lopengl32
-Cflags: -I\${includedir} 
-EOL
-cat >$DESTDIR/$PREFIX/lib/pkgconfig/glu.pc <<EOL
-prefix=$PREFIX
-exec_prefix=\${prefix}
-libdir=\${exec_prefix}/lib
-includedir=\${prefix}/include
-
-Name: glu
-Description: OpenGL Utility library
-Requires: gl
-Version: 
-Libs: -L\${libdir} -lglu32
-Cflags: -I\${includedir} 
-EOL
-
-
-# wspiapi.h header file
-install -p -m 0644 $DESTDIR/../wspiapi.h $DESTDIR/$PREFIX/include/ || die "installing wspiapi.h"
-
-
-cd $DESTDIR/$PREFIX
-cat >README <<EOL
-
-Yoink Win32 Dependencies
-Created `date +"%d %b %Y"`
-
-These dependencies were generated automatically by makedeps.sh, a script
-available in the Yoink repository.  You should find here all the header
-files, DLL's, implibs, and pkgconfig files required to build Yoink that are
-not provided with the standard mingw32 toolchain.  Yoink itself can be
-built with mingw32 and these installed dependencies like this:
-
-./configure --host=$HOST --prefix=$PREFIX \\
-            PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig
-make installer
-
-These files are licensed such that their general distribution under
-reasonable conditions is allowable.  The copyrights of these binaries go to
-their various respective owners.  Look up the specific library for specific
-terms and conditions, or see the file COPYING in the Yoink package.
-
-EOL
-tar cjf deps.tar.bz2 * || die "archiving dependencies"
-mv deps.tar.bz2 $DESTDIR/..
-
-echo "Done!"
-echo "The dependencies are packed into the archive deps.tar.bz2."
-
This page took 0.024307 seconds and 4 git commands to generate.