diff options
Diffstat (limited to 'libre-multilib/wine-libre/PKGBUILD')
-rw-r--r-- | libre-multilib/wine-libre/PKGBUILD | 182 |
1 files changed, 182 insertions, 0 deletions
diff --git a/libre-multilib/wine-libre/PKGBUILD b/libre-multilib/wine-libre/PKGBUILD new file mode 100644 index 000000000..89c5d4d14 --- /dev/null +++ b/libre-multilib/wine-libre/PKGBUILD @@ -0,0 +1,182 @@ +# $Id: PKGBUILD 105618 2014-02-12 02:15:42Z svenstaro $ +# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com> +# Contributor: Jan "heftig" Steffens <jan.steffens@gmail.com> +# Contributor: Eduardo Romero <eduardo@archlinux.org> +# Contributor: Giovanni Scafora <giovanni@archlinux.org> +# Maintainer (Parabola): André Silva <emulatorman@parabola.nu> + +_pkgname=wine +pkgname=wine-libre +pkgver=1.7.12 +pkgrel=2 + +_pkgbasever=${pkgver/rc/-rc} + +source=(http://prdownloads.sourceforge.net/$_pkgname/$_pkgname-$_pkgbasever.tar.bz2{,.sign} + 30-win32-aliases.conf) +md5sums=('ce32c886af1c8a4e824e8dc1a01c5703' + 'SKIP' + '1ff4e467f59409272088d92173a0f801') + +pkgdesc="A compatibility layer for running Windows programs, with mesa-libcl support" +url="http://www.winehq.com" +arch=(i686 x86_64) +options=(staticlibs) +license=(LGPL) +install=wine.install +provides=$_pkgname=$pkgver +conflicts=$_pkgname +replaces=$_pkgname + +_depends=( + fontconfig lib32-fontconfig + libxcursor lib32-libxcursor + libxrandr lib32-libxrandr + libxdamage lib32-libxdamage + libxi lib32-libxi + gettext lib32-gettext + freetype2 lib32-freetype2 + glu lib32-glu + libsm lib32-libsm + gcc-libs lib32-gcc-libs + desktop-file-utils +) + +makedepends=(autoconf ncurses bison perl fontforge flex prelink + 'gcc>=4.5.0-2' 'gcc-multilib>=4.5.0-2' + giflib lib32-giflib + libpng lib32-libpng + gnutls lib32-gnutls + libxinerama lib32-libxinerama + libxcomposite lib32-libxcomposite + libxmu lib32-libxmu + libxxf86vm lib32-libxxf86vm + libxml2 lib32-libxml2 + libldap lib32-libldap + lcms2 lib32-lcms2 + mpg123 lib32-mpg123 + openal lib32-openal + v4l-utils lib32-v4l-utils + alsa-lib lib32-alsa-lib + libxcomposite lib32-libxcomposite + mesa lib32-mesa + mesa-libgl lib32-mesa-libgl + mesa-libcl lib32-mesa-libcl + samba + opencl-headers +) + +optdepends=( + giflib lib32-giflib + libpng lib32-libpng + libldap lib32-libldap + gnutls lib32-gnutls + lcms2 lib32-lcms2 + libxml2 lib32-libxml2 + mpg123 lib32-mpg123 + openal lib32-openal + v4l-utils lib32-v4l-utils + libpulse lib32-libpulse + alsa-plugins lib32-alsa-plugins + alsa-lib lib32-alsa-lib + libjpeg-turbo lib32-libjpeg-turbo + libxcomposite lib32-libxcomposite + libxinerama lib32-libxinerama + ncurses lib32-ncurses + mesa-libcl lib32-mesa-libcl + cups + samba dosbox +) + +if [[ $CARCH == i686 ]]; then + # Strip lib32 etc. on i686 + _depends=(${_depends[@]/*32-*/}) + makedepends=(${makedepends[@]/*32-*/} ${_depends[@]}) + makedepends=(${makedepends[@]/*-multilib*/}) + optdepends=(${optdepends[@]/*32-*/}) +else + makedepends=(${makedepends[@]} ${_depends[@]}) + provides+=("bin32-wine=$pkgver" "wine-wow64=$pkgver") + conflicts+=('bin32-wine' 'wine-wow64') + replaces+=('bin32-wine') +fi + +depends=(${_depends[@]}) + +build() { + cd "$srcdir" + + # Allow ccache to work + mv $_pkgname-$_pkgbasever $_pkgname + + # ncurses fix + sed -i 's|libncurses|libncursesw|g' "$srcdir/$_pkgname/configure" + sed -i 's|lncurses|lncursesw|g' "$srcdir/$_pkgname/configure" + + # Get rid of old build dirs + rm -rf $_pkgname-{32,64}-build + mkdir $_pkgname-32-build + + # These additional CPPFLAGS solve FS#27662 and FS#34195 + export CPPFLAGS="${CPPFLAGS/-D_FORTIFY_SOURCE=2/} -D_FORTIFY_SOURCE=0" + + if [[ $CARCH == x86_64 ]]; then + msg2 "Building Wine-64..." + + mkdir $_pkgname-64-build + cd "$srcdir/$_pkgname-64-build" + ../$_pkgname/configure \ + --prefix=/usr \ + --libdir=/usr/lib \ + --with-x \ + --without-gstreamer \ + --enable-win64 + # Gstreamer was disabled for FS#33655 + + make + + _wine32opts=( + --libdir=/usr/lib32 + --with-wine64="$srcdir/$_pkgname-64-build" + ) + + export PKG_CONFIG_PATH="/usr/lib32/pkgconfig" + fi + + msg2 "Building Wine-32..." + cd "$srcdir/$_pkgname-32-build" + ../$_pkgname/configure \ + --prefix=/usr \ + --with-x \ + --without-gstreamer \ + "${_wine32opts[@]}" + + # These additional flags solve FS#23277 + make CFLAGS+="-mstackrealign -mincoming-stack-boundary=2" CXXFLAGS+="-mstackrealign -mincoming-stack-boundary=2" +} + +package() { + msg2 "Packaging Wine-32..." + cd "$srcdir/$_pkgname-32-build" + + if [[ $CARCH == i686 ]]; 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 + + # Font aliasing settings for Win32 applications + install -d "$pkgdir"/etc/fonts/conf.{avail,d} + install -m644 "$srcdir/30-win32-aliases.conf" "$pkgdir/etc/fonts/conf.avail" + ln -s ../conf.avail/30-win32-aliases.conf "$pkgdir/etc/fonts/conf.d/30-win32-aliases.conf" +} + +# vim:set ts=8 sts=2 sw=2 et: |