# $Id$ # Maintainer: Stefan Schmidt # Contributor: Felix Yan # Contributor: Sven-Hendrik Haase # Contributor: Jan "heftig" Steffens # Contributor: Eduardo Romero # Contributor: Giovanni Scafora pkgname=wine-staging-pba pkgver=3.7 pkgrel=1 _pkgbasever=${pkgver/rc/-rc} source=(https://dl.winehq.org/wine/source/3.x/wine-$_pkgbasever.tar.xz{,.sign} "wine-staging-v$_pkgbasever.tar.gz::https://github.com/wine-staging/wine-staging/archive/v$_pkgbasever.tar.gz" harmony-fix.diff 30-win32-aliases.conf wine-binfmt.conf steam.patch "pba-patches::git+https://github.com/acomminos/wine-pba.git") sha512sums=('a699418574dd8f407c064421cf6cdfe3923562c8adf9a7749e716f3853291eab05358ea64f0217c303c26c0f8f59d2116024b7b6978f9a52a055147e689a8694' 'SKIP' '4a00b7c61121798b6c4e918aadeb71865e359f6471035b9ed33ae242f3fe70f1977b1c0b3628fb244b5ba4942d771d2ee797bcc087d38192fcd9325e1886ed14' 'b86edf07bfc560f403fdfd5a71f97930ee2a4c3f76c92cc1a0dbb2e107be9db3bed3a727a0430d8a049583c63dd11f5d4567fb7aa69b193997c6da241acc4f2e' '6e54ece7ec7022b3c9d94ad64bdf1017338da16c618966e8baf398e6f18f80f7b0576edf1d1da47ed77b96d577e4cbb2bb0156b0b11c183a0accf22654b0a2bb' 'bdde7ae015d8a98ba55e84b86dc05aca1d4f8de85be7e4bd6187054bfe4ac83b5a20538945b63fb073caab78022141e9545685e4e3698c97ff173cf30859e285' 'f3e42a0720777256ca583f96044f6482aae8f4c707189104216f86f6c7a1b68a186c5124c72866229d46eb66c20c555ba9f32a230ec50f968faa8a12b8372b0a' 'SKIP') validpgpkeys=(5AC1A08B03BD7A313E0A955AF5E6E9EEB9461DD7 DA23579A74D4AD9AF9D3F945CEFAC8EAAF17519D) pkgdesc="A compatibility layer for running Windows programs - Staging branch with PBA patches" url="http://www.wine-staging.com" arch=(x86_64) options=(staticlibs) license=(LGPL) depends=( attr lib32-attr fontconfig lib32-fontconfig lcms2 lib32-lcms2 libxml2 lib32-libxml2 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 libpcap lib32-libpcap desktop-file-utils ) makedepends=(autoconf ncurses bison perl fontforge flex 'gcc>=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 libldap lib32-libldap 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 opencl-icd-loader lib32-opencl-icd-loader libxslt lib32-libxslt libpulse lib32-libpulse libva lib32-libva gtk3 lib32-gtk3 gst-plugins-base-libs lib32-gst-plugins-base-libs vulkan-icd-loader lib32-vulkan-icd-loader sdl2 lib32-sdl2 samba opencl-headers git ) optdepends=( giflib lib32-giflib libpng lib32-libpng libldap lib32-libldap gnutls lib32-gnutls 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 opencl-icd-loader lib32-opencl-icd-loader libxslt lib32-libxslt libva lib32-libva gtk3 lib32-gtk3 gst-plugins-base-libs lib32-gst-plugins-base-libs vulkan-icd-loader lib32-vulkan-icd-loader sdl2 lib32-sdl2 cups samba dosbox ) provides=("wine=$pkgver" "wine-wow64=$pkgver") conflicts=('wine' 'wine-wow64' 'wine-staging') install=wine.install prepare() { # Allow ccache to work mv wine-$_pkgbasever $pkgname # apply wine-staging patchset pushd wine-staging-$_pkgbasever/patches ./patchinstall.sh DESTDIR="$srcdir/$pkgname" --all popd # https://bugs.winehq.org/show_bug.cgi?id=43530 export CFLAGS="${CFLAGS/-fno-plt/}" export LDFLAGS="${LDFLAGS/,-z,now/}" patch -d $pkgname -Np1 < harmony-fix.diff # steam fix pushd $pkgname patch -Np1 -i ../steam.patch popd pushd pba-patches git checkout 8f20f0718a47e3773f0f3f30c475516378191c67 popd for f in $(ls pba-patches/patches); do patch -d $pkgname -Np1 < "pba-patches/patches/${f}" done sed 's|OpenCL/opencl.h|CL/opencl.h|g' -i $pkgname/configure* # Get rid of old build dirs rm -rf $pkgname-{32,64}-build mkdir $pkgname-{32,64}-build } build() { cd "$srcdir" msg2 "Building Wine-64..." cd "$srcdir/$pkgname-64-build" ../$pkgname/configure \ --prefix=/usr \ --libdir=/usr/lib \ --with-x \ --with-gstreamer \ --enable-win64 \ --with-xattr make msg2 "Building Wine-32..." export PKG_CONFIG_PATH="/usr/lib32/pkgconfig" cd "$srcdir/$pkgname-32-build" ../$pkgname/configure \ --prefix=/usr \ --with-x \ --with-gstreamer \ --with-xattr \ --libdir=/usr/lib32 \ --with-wine64="$srcdir/$pkgname-64-build" make } package() { msg2 "Packaging Wine-32..." cd "$srcdir/$pkgname-32-build" 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 # 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" install -Dm 644 "$srcdir/wine-binfmt.conf" "$pkgdir/usr/lib/binfmt.d/wine.conf" } # vim:set ts=8 sts=2 sw=2 et: