#!/bin/bash # Download and cross-compile dependencies for Yoink. This script requires # bash, wget, md5sum, unzip, tar, patch, make and install. Have fun! HOST="i686-mingw32" PREFIX="/usr/$HOST/usr" MAKEOPTS="-j8" ##### function die() { echo "die:" $@ exit 1 } DESTDIR="`pwd`/deps" mkdir -p $DESTDIR rm -f $DESTDIR/README PACKAGE="boost_1_42_0" VERSION="1.42.0" cd $DESTDIR [[ ! -f $PACKAGE.tar.bz2 ]] && (wget "http://sourceforge.net/projects/boost/files/boost/$VERSION/$PACKAGE.tar.bz2/download" || die "downloading $PACKAGE") (md5sum -c <<"EOL" 7bf3b4eb841b62ffb0ade2b82218ebe6 boost_1_42_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 [[ ! -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.1.4" cd $DESTDIR [[ ! -f $PACKAGE.tar.gz ]] && (wget "http://downloads.xiph.org/releases/ogg/$PACKAGE.tar.gz" || die "downloading $PACKAGE") (md5sum -c <<"EOL" 10200ec22543841d9d1c23e0aed4e5e9 libogg-1.1.4.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.2.3" cd $DESTDIR [[ ! -f $PACKAGE.tar.gz ]] && (wget "http://downloads.xiph.org/releases/vorbis/$PACKAGE.tar.gz" || die "downloading $PACKAGE") (md5sum -c <<"EOL" 5aa77f55c0e0aab8eb8ed982335daac8 libvorbis-1.2.3.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.11.753-bin" cd $DESTDIR [[ ! -f $PACKAGE.zip ]] && (wget "http://kcat.strangesoft.net/$PACKAGE.zip" || die "downloading $PACKAGE") (md5sum -c <<"EOL" 20747ce5ca0f902ae082fef15d7b41a5 openal-soft-1.11.753-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 <$DESTDIR/$PREFIX/lib/pkgconfig/gl.pc <$DESTDIR/$PREFIX/lib/pkgconfig/glu.pc <README <