#!/bin/bash pkgdir=`pwd` mkdir wine-wow cd wine-wow pkgname=wine-wowmc pkgver=1.3.16 srcdir=`pwd` # Source files src1="http://www.aewi.info/rgl/rgl.patch.gz" src2="http://www.aewi.info/rgl/rgl_max.patch" src3="http://sourceforge.net/projects/wine/files/Source/wine-${pkgver}.tar.bz2" # Source files checksums #src1_sum="4e359d825c623200aa8bbe1632aa8aa2" #src2_sum="1674c1bb514d16451e2a084372a551b2" src3_sum="74627787556240473a85daaf51d4f620" # Get rid of old build dirs and sums rm -rf $pkgname-{32,64}-build rm -rf wine-$pkgver rm rgl.patch.gz.md5 rm rgl_max.patch.md5 rm wine-${pkgver}.tar.bz2.md5 mkdir $pkgname-32-build # Fetching sources if not already fetched if [[ "`ls | grep rgl.patch.gz`" != "rgl.patch.gz" ]]; then wget $src1 fi #if [[ "`ls | grep rgl_max.patch`" != "rgl_max.patch" ]]; then #wget $src2 #fi if [[ "`ls | grep wine-${pkgver}.tar.bz2`" != "wine-${pkgver}.tar.bz2" ]]; then wget $src3 fi # Creating md5 sums to check the sources #echo "$src1_sum rgl.patch.gz" > rgl.patch.gz.md5 #echo "$src2_sum rgl_max.patch" > rgl_max.patch.md5 echo "$src3_sum wine-$pkgver.tar.bz2" > wine-$pkgver.tar.bz2.md5 #echo "Checking $src1 ..." #if [[ "`md5sum -c rgl.patch.gz.md5 | grep OK`" != "rgl.patch.gz: OK" ]]; then # echo "Delete the file and start the script again" # exit #fi #echo "OK" #echo "Checking $src2 ..." #if [[ "`md5sum -c rgl_max.patch.md5 | grep OK`" != "rgl_max.patch: OK" ]]; then # echo "Delete the file and start the script again" # exit #fi #echo "OK" echo "Checking $src3 ..." if [[ "`md5sum -c wine-$pkgver.tar.bz2.md5 | grep OK`" != "wine-$pkgver.tar.bz2: OK" ]]; then echo "Delete the file and start the script again" exit fi echo "OK" # Extracting sources gunzip rgl.patch.gz tar -xvjf wine-$pkgver.tar.bz2 # Patching Wine cd "$srcdir/wine-$pkgver" patch -p1 < ../rgl.patch echo "Do you wish to apply rgl_max.patch? It improves performance even a little bit more than the main patch but some players faced some sound and graphical glitches (like black screen inside flying ships). (y/n):" until [[ $Answer = "y" || $Answer = "n" ]];do read Answer if [[ "$Answer" = "y" ]];then cd "$srcdir" if [[ "`ls | grep rgl_max.patch`" != "rgl_max.patch" ]]; then wget $src2 fi echo "Applying the patch" cd "$srcdir/wine-$pkgver" patch -p1 < ../rgl_max.patch fi done # Building cd "$srcdir" if [ "`uname -m`" = "x86_64" ]; then echo "Building Wine-64..." mkdir $pkgname-64-build cd "$srcdir/$pkgname-64-build" ../wine-$pkgver/configure \ --prefix=/usr \ --sysconfdir=/etc \ --libdir=/usr/lib \ --with-x \ --enable-win64 make # Wine32 build needs a patched ldd # Do it here until it's patched in glibc cp /usr/bin/ldd "$srcdir/ldd" sed -i '/^RTLDLIST=/s:"$: /lib/ld-linux.so.2&:' "$srcdir/ldd" _wine32opts=( LDD="$srcdir/ldd" --libdir=/usr/lib32 --with-wine64="$srcdir/$pkgname-64-build" ) export PKG_CONFIG_PATH="/usr/lib32/pkgconfig" fi echo "Building Wine-32..." cd "$srcdir/$pkgname-32-build" ../wine-$pkgver/configure \ --prefix=/usr \ --sysconfdir=/etc \ --with-x \ "${_wine32opts[@]}" make # Packaging echo "Packaging Wine-32..." cd "$srcdir/$pkgname-32-build" if [[ "`uname -m`" != "x86_64" ]]; then make prefix="$pkgdir/usr" install else make prefix="$pkgdir/usr" \ libdir="$pkgdir/usr/lib32" \ dlldir="$pkgdir/usr/lib32/wine" install msg2 "Packaging Wine-64..." cd "$srcdir/$pkgname-64-build" make prefix="$pkgdir/usr" \ libdir="$pkgdir/usr/lib" \ dlldir="$pkgdir/usr/lib/wine" install fi