diff options
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 178 |
1 files changed, 178 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..20dbc6cfd8a8 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,178 @@ +# Maintainer: Hugo "ThePooN" Denizart <thepoon@cartooncraft.fr> +# Contributor: Felix Yan <felixonmars@archlinux.org> +# Contributor: 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> + +pkgname=wine-osu +pkgver=3.10 +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 + winealsa_latency.patch + winepulse_latency.patch) +sha512sums=('bb1a1d8e8ad7f48d9fcf48ebbf0ebbb8e3b45ea211736bd7837144ea34b373f74955d3c0ccc4cdc44020eea23c8af8e67252e1c5cd6115e11419ad5f6ef24843' + 'SKIP' + 'baae31ce569c06f8ac5ffc579d8f3bb95de55c50b83c1db13eaaeaee5c8c5b3b7fb6028d69dce6645ac697692372a65be8d60532123a94e0f5fcd0778d2082c5' + 'b86edf07bfc560f403fdfd5a71f97930ee2a4c3f76c92cc1a0dbb2e107be9db3bed3a727a0430d8a049583c63dd11f5d4567fb7aa69b193997c6da241acc4f2e' + '8212f4ec07045faa28704035ea6c8173ade503afe3bf94c4ec19e9edb788004579bb37e16c58d92ddc23e9a4de52480437f8486a32d794c5edc59d448db46874' + '3c5eda2d24892ca6428138bd9f07d5c598b606f9e181533d73556b25aabe41935efb44748cdb65524d7598ceac1bc81d9c9d507b76a15c51f32e34b3cdc3969a') +validpgpkeys=(5AC1A08B03BD7A313E0A955AF5E6E9EEB9461DD7 + DA23579A74D4AD9AF9D3F945CEFAC8EAAF17519D) + +pkgdesc="A compatibility layer for running Windows programs - Staging branch, optimized for audio low latency on osu!" +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 +) + +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 +) + +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 + + patch -d $pkgname -Np1 < winealsa_latency.patch + patch -d $pkgname -Np1 < winepulse_latency.patch + + 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=/opt/wine-osu \ + --libdir=/opt/wine-osu/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=/opt/wine-osu \ + --with-x \ + --with-gstreamer \ + --with-xattr \ + --libdir=/opt/wine-osu/lib32 \ + --with-wine64="$srcdir/$pkgname-64-build" + + make +} + +package() { + msg2 "Packaging Wine-32..." + cd "$srcdir/$pkgname-32-build" + + make prefix="$pkgdir/opt/wine-osu" \ + libdir="$pkgdir/opt/wine-osu/lib32" \ + dlldir="$pkgdir/opt/wine-osu/lib32/wine" install + + msg2 "Packaging Wine-64..." + cd "$srcdir/$pkgname-64-build" + make prefix="$pkgdir/opt/wine-osu" \ + libdir="$pkgdir/opt/wine-osu/lib" \ + dlldir="$pkgdir/opt/wine-osu/lib/wine" install +} + +# vim:set ts=8 sts=2 sw=2 et: |