diff options
-rw-r--r-- | .SRCINFO | 142 | ||||
-rw-r--r-- | PKGBUILD | 218 |
2 files changed, 101 insertions, 259 deletions
@@ -1,40 +1,24 @@ pkgbase = wine-staging-git pkgdesc = A compatibility layer for running Windows programs (staging branch, git version) - pkgver = 5.3.r14.g5213d551+wine.5.3.r139.g4f53be1a6e + pkgver = 8.2.r7.g7b0d44f8 pkgrel = 1 url = https://www.wine-staging.com/ install = wine-staging-git.install - arch = i686 arch = x86_64 license = LGPL makedepends = git - makedepends = autoconf - makedepends = ncurses - makedepends = bison makedepends = perl - makedepends = fontforge - makedepends = flex - makedepends = gcc>=4.5.0-2 + makedepends = mingw-w64-gcc makedepends = giflib makedepends = lib32-giflib - makedepends = libpng - makedepends = lib32-libpng makedepends = gnutls makedepends = lib32-gnutls makedepends = libxinerama makedepends = lib32-libxinerama makedepends = libxcomposite makedepends = lib32-libxcomposite - makedepends = libxmu - makedepends = lib32-libxmu makedepends = libxxf86vm makedepends = lib32-libxxf86vm - makedepends = libldap - makedepends = lib32-libldap - makedepends = mpg123 - makedepends = lib32-mpg123 - makedepends = openal - makedepends = lib32-openal makedepends = v4l-utils makedepends = lib32-v4l-utils makedepends = alsa-lib @@ -43,12 +27,10 @@ pkgbase = wine-staging-git makedepends = lib32-libxcomposite makedepends = mesa makedepends = lib32-mesa - makedepends = libgl - makedepends = lib32-libgl + makedepends = mesa-libgl + makedepends = lib32-mesa-libgl makedepends = opencl-icd-loader makedepends = lib32-opencl-icd-loader - makedepends = libxslt - makedepends = lib32-libxslt makedepends = libpulse makedepends = lib32-libpulse makedepends = libva @@ -61,60 +43,37 @@ pkgbase = wine-staging-git makedepends = lib32-vulkan-icd-loader makedepends = sdl2 makedepends = lib32-sdl2 - makedepends = vkd3d - makedepends = lib32-vkd3d makedepends = libcups makedepends = lib32-libcups makedepends = sane makedepends = libgphoto2 - makedepends = gsm makedepends = ffmpeg makedepends = samba makedepends = opencl-headers - makedepends = vulkan-headers - makedepends = attr - makedepends = lib32-attr - makedepends = fontconfig - makedepends = lib32-fontconfig - makedepends = lcms2 - makedepends = lib32-lcms2 - makedepends = libxml2 - makedepends = lib32-libxml2 - makedepends = libxcursor - makedepends = lib32-libxcursor - makedepends = libxrandr - makedepends = lib32-libxrandr - makedepends = libxdamage - makedepends = lib32-libxdamage - makedepends = libxi - makedepends = lib32-libxi - makedepends = gettext - makedepends = lib32-gettext - makedepends = freetype2 - makedepends = lib32-freetype2 - makedepends = glu - makedepends = lib32-glu - makedepends = libsm - makedepends = lib32-libsm - makedepends = gcc-libs - makedepends = lib32-gcc-libs - makedepends = libpcap - makedepends = lib32-libpcap - makedepends = faudio - makedepends = lib32-faudio - makedepends = desktop-file-utils + makedepends = python + depends = attr + depends = lib32-attr + depends = fontconfig + depends = lib32-fontconfig + depends = libxcursor + depends = lib32-libxcursor + depends = libxrandr + depends = lib32-libxrandr + depends = libxi + depends = lib32-libxi + depends = gettext + depends = lib32-gettext + depends = freetype2 + depends = lib32-freetype2 + depends = gcc-libs + depends = lib32-gcc-libs + depends = libpcap + depends = lib32-libpcap + depends = desktop-file-utils optdepends = giflib optdepends = lib32-giflib - optdepends = libpng - optdepends = lib32-libpng - optdepends = libldap - optdepends = lib32-libldap optdepends = gnutls optdepends = lib32-gnutls - optdepends = mpg123 - optdepends = lib32-mpg123 - optdepends = openal - optdepends = lib32-openal optdepends = v4l-utils optdepends = lib32-v4l-utils optdepends = libpulse @@ -123,18 +82,12 @@ pkgbase = wine-staging-git optdepends = lib32-alsa-plugins optdepends = alsa-lib optdepends = lib32-alsa-lib - optdepends = libjpeg-turbo - optdepends = lib32-libjpeg-turbo optdepends = libxcomposite optdepends = lib32-libxcomposite optdepends = libxinerama optdepends = lib32-libxinerama - optdepends = ncurses - optdepends = lib32-ncurses optdepends = opencl-icd-loader optdepends = lib32-opencl-icd-loader - optdepends = libxslt - optdepends = lib32-libxslt optdepends = libva optdepends = lib32-libva optdepends = gtk3 @@ -145,24 +98,21 @@ pkgbase = wine-staging-git optdepends = lib32-vulkan-icd-loader optdepends = sdl2 optdepends = lib32-sdl2 - optdepends = vkd3d - optdepends = lib32-vkd3d optdepends = sane optdepends = libgphoto2 - optdepends = gsm optdepends = ffmpeg optdepends = cups optdepends = samba optdepends = dosbox - provides = wine=5.3.r139.g4f53be1a6e - provides = wine-wow64=5.3.r139.g4f53be1a6e - provides = wine-git=5.3.r139.g4f53be1a6e - provides = wine-staging=5.3.r14.g5213d551 + provides = wine-staging=8.2.r7.g7b0d44f8 + provides = wine=8.2 + provides = wine-wow64 conflicts = wine conflicts = wine-wow64 options = staticlibs - source = git://source.winehq.org/git/wine.git - source = git+https://github.com/wine-staging/wine-staging.git + options = !lto + source = git+https://gitlab.winehq.org/wine/wine-staging.git + source = git+https://gitlab.winehq.org/wine/wine.git source = 30-win32-aliases.conf source = wine-binfmt.conf sha256sums = SKIP @@ -171,35 +121,3 @@ pkgbase = wine-staging-git sha256sums = 6dfdefec305024ca11f35ad7536565f5551f09119dda2028f194aee8f77077a4 pkgname = wine-staging-git - depends = attr - depends = lib32-attr - depends = fontconfig - depends = lib32-fontconfig - depends = lcms2 - depends = lib32-lcms2 - depends = libxml2 - depends = lib32-libxml2 - depends = libxcursor - depends = lib32-libxcursor - depends = libxrandr - depends = lib32-libxrandr - depends = libxdamage - depends = lib32-libxdamage - depends = libxi - depends = lib32-libxi - depends = gettext - depends = lib32-gettext - depends = freetype2 - depends = lib32-freetype2 - depends = glu - depends = lib32-glu - depends = libsm - depends = lib32-libsm - depends = gcc-libs - depends = lib32-gcc-libs - depends = libpcap - depends = lib32-libpcap - depends = faudio - depends = lib32-faudio - depends = desktop-file-utils - @@ -1,100 +1,78 @@ # Maintainer: Daniel Bermond <dbermond@archlinux.org> pkgname=wine-staging-git -pkgver=5.3.r14.g5213d551+wine.5.3.r139.g4f53be1a6e +pkgver=8.2.r7.g7b0d44f8 pkgrel=1 pkgdesc='A compatibility layer for running Windows programs (staging branch, git version)' -arch=('i686' 'x86_64') +arch=('x86_64') url='https://www.wine-staging.com/' 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' - 'faudio' 'lib32-faudio' +depends=( + 'attr' 'lib32-attr' + 'fontconfig' 'lib32-fontconfig' + 'libxcursor' 'lib32-libxcursor' + 'libxrandr' 'lib32-libxrandr' + 'libxi' 'lib32-libxi' + 'gettext' 'lib32-gettext' + 'freetype2' 'lib32-freetype2' + 'gcc-libs' 'lib32-gcc-libs' + 'libpcap' 'lib32-libpcap' 'desktop-file-utils' ) -makedepends=('git' 'autoconf' 'ncurses' 'bison' 'perl' 'fontforge' 'flex' - 'gcc>=4.5.0-2' +makedepends=('git' 'perl' 'mingw-w64-gcc' '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' - 'libgl' 'lib32-libgl' + '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' - 'vkd3d' 'lib32-vkd3d' 'libcups' 'lib32-libcups' 'sane' 'libgphoto2' - 'gsm' 'ffmpeg' 'samba' 'opencl-headers' - 'vulkan-headers' + 'python' ) 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' - 'vkd3d' 'lib32-vkd3d' 'sane' 'libgphoto2' - 'gsm' 'ffmpeg' 'cups' 'samba' 'dosbox' ) -options=('staticlibs') +options=('staticlibs' '!lto') install="${pkgname}.install" -source=('git://source.winehq.org/git/wine.git' - 'git+https://github.com/wine-staging/wine-staging.git' +provides=("wine-staging=${pkgver}" "wine=${pkgver%%.r*}" 'wine-wow64') +conflicts=('wine' 'wine-wow64') +source=('git+https://gitlab.winehq.org/wine/wine-staging.git' + 'git+https://gitlab.winehq.org/wine/wine.git' '30-win32-aliases.conf' 'wine-binfmt.conf') sha256sums=('SKIP' @@ -102,142 +80,88 @@ sha256sums=('SKIP' '9901a5ee619f24662b241672a7358364617227937d5f6d3126f70528ee5111e7' '6dfdefec305024ca11f35ad7536565f5551f09119dda2028f194aee8f77077a4') -if [ "$CARCH" = 'i686' ] -then - # strip lib32 etc. on i686 - _depends=("${_depends[@]/*32-*/}") - makedepends=("${makedepends[@]/*32-*/}" "${_depends[@]}") - optdepends=("${optdepends[@]/*32-*/}") - provides=( - "wine=$( printf '%s' "$pkgver" | sed 's/.*\+wine\.//')" - "wine-git=$( printf '%s' "$pkgver" | sed 's/.*\+wine\.//')" - "wine-staging=$(printf '%s' "$pkgver" | sed 's/\+wine.*//')" - ) - conflicts=('wine') -else - makedepends=("${makedepends[@]}" "${_depends[@]}") - provides=( - "wine=$( printf '%s' "$pkgver" | sed 's/.*\+wine\.//')" - "wine-wow64=$( printf '%s' "$pkgver" | sed 's/.*\+wine\.//')" - "wine-git=$( printf '%s' "$pkgver" | sed 's/.*\+wine\.//')" - "wine-staging=$(printf '%s' "$pkgver" | sed 's/\+wine.*//')" - ) - conflicts=('wine' 'wine-wow64') -fi - prepare() { - # delete old build dirs (from previous builds) and make new ones - rm -rf "$pkgname"-{32,64}-build - mkdir -p "$pkgname"-32-build - [ "$CARCH" = 'x86_64' ] && mkdir "$pkgname"-64-build - - cd wine + rm -rf build-{32,64} + mkdir -p build-{32,64} # restore the wine tree to its git origin state, without wine-staging patches - # (necessary for reapllying wine-staging patches in succedent builds, - # otherwise the patches will fail to be reapplied) printf '%s\n' ' -> Cleaning wine source code tree...' - git reset --hard HEAD # restore tracked files - git clean -xdf # delete untracked files + git -C wine reset --hard HEAD # restore tracked files + git -C wine clean -xdf # delete untracked files # change back to the wine upstream commit that this version of wine-staging is based in printf '%s\n' ' -> Changing wine HEAD to the wine-staging base commit...' - git checkout "$(../wine-staging/patches/patchinstall.sh --upstream-commit)" - - # fix path of opencl headers - sed 's|OpenCL/opencl.h|CL/opencl.h|g' -i configure* + git -C wine config --local advice.detachedHead false + git -C wine checkout "$(wine-staging/staging/patchinstall.py --upstream-commit)" - # apply wine-staging patches (exclude xactengine-initial due to build error) + # apply all wine-staging patches printf '%s\n' ' -> Applying wine-staging patches...' - cd "${srcdir}/wine-staging/patches" - ./patchinstall.sh DESTDIR="${srcdir}/wine" --all -W xactengine-initial + wine-staging/staging/patchinstall.py DESTDIR="${srcdir}/wine" --all } pkgver() { - local _staging_tag - local _staging_version - local _wine_version - - cd wine-staging - _staging_tag="$(git tag --sort='version:refname' | tail -n1 | sed 's/-/./g;s/^v//;s/\.rc/rc/')" - _staging_version="$(git describe --long --tags \ - | sed 's/\([^-]*-g\)/r\1/;s/-/./g;s/^v//;s/\.rc/rc/' \ - | sed "s/^latest.release/${_staging_tag}/")" - cd "${srcdir}/wine" - _wine_version="$(git describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g;s/^v//;s/\.rc/rc/')" - - printf '%s+%s' "$_staging_version" "$_wine_version" + git -C wine-staging describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g;s/^wine.//;s/^v//;s/\.rc/rc/' } build() { - # workaround for FS#55128 - # https://bugs.archlinux.org/task/55128 - # https://bugs.winehq.org/show_bug.cgi?id=43530 + # does not compile without remove these flags as of 4.10 export CFLAGS="${CFLAGS/-fno-plt/}" export LDFLAGS="${LDFLAGS/,-z,now/}" # build wine-staging 64-bit # (according to the wine wiki, this 64-bit/32-bit building order is mandatory) - if [ "$CARCH" = 'x86_64' ] - then - printf '%s\n' ' -> Building Wine-64...' - cd "$pkgname"-64-build - ../wine/configure \ - --prefix='/usr' \ - --libdir='/usr/lib' \ - --with-x \ - --with-gstreamer \ - --enable-win64 \ - --with-xattr - make - local _wine32opts=( - '--libdir=/usr/lib32' - "--with-wine64=${srcdir}/${pkgname}-64-build" - ) - export PKG_CONFIG_PATH='/usr/lib32/pkgconfig' - fi + printf '%s\n' ' -> Building wine-staging-64...' + cd build-64 + ../wine/configure \ + --prefix='/usr' \ + --libdir='/usr/lib' \ + --with-x \ + --with-gstreamer \ + --with-xattr \ + --enable-win64 + make # build wine-staging 32-bit - printf '%s\n' ' -> Building Wine-32...' - cd "${srcdir}/${pkgname}"-32-build + printf '%s\n' ' -> Building wine-staging-32...' + cd "${srcdir}/build-32" + export PKG_CONFIG_PATH='/usr/lib32/pkgconfig' ../wine/configure \ - --prefix='/usr' \ - --with-x \ - --with-gstreamer \ - --with-xattr \ - "${_wine32opts[@]}" + --prefix='/usr' \ + --libdir='/usr/lib32' \ + --with-x \ + --with-gstreamer \ + --with-xattr \ + --with-wine64="${srcdir}/build-64" make } package() { - depends=("${_depends[@]}") - # package wine-staging 32-bit # (according to the wine wiki, this reverse 32-bit/64-bit packaging order is important) - printf '%s\n' ' -> Packaging Wine-32...' - cd "$pkgname"-32-build + printf '%s\n' ' -> Packaging wine-staging-32...' + cd build-32 + make prefix="${pkgdir}/usr" \ + libdir="${pkgdir}/usr/lib32" \ + dlldir="${pkgdir}/usr/lib32/wine" \ + install - if [ "$CARCH" = 'i686' ] - then - make prefix="${pkgdir}/usr" install - else - make prefix="${pkgdir}/usr" \ - libdir="${pkgdir}/usr/lib32" \ - dlldir="${pkgdir}/usr/lib32/wine" install - - # package wine-staging 64-bit - printf '%s\n' ' -> Packaging Wine-64...' - cd "${srcdir}/${pkgname}"-64-build - make prefix="${pkgdir}/usr" \ - libdir="${pkgdir}/usr/lib" \ - dlldir="${pkgdir}/usr/lib/wine" install - fi + # package wine-staging 64-bit + printf '%s\n' ' -> Packaging wine-staging-64...' + cd "${srcdir}/build-64" + 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" + # font aliasing settings for win32 applications + install -d -m755 "${pkgdir}/usr/share/fontconfig/conf.default" + install -D -m644 "${srcdir}/30-win32-aliases.conf" -t "${pkgdir}/usr/share/fontconfig/conf.avail" + ln -s ../conf.avail/30-win32-aliases.conf "${pkgdir}/usr/share/fontconfig/conf.default/30-win32-aliases.conf" # wine binfmt - install -D -m644 "${srcdir}/wine-binfmt.conf" "${pkgdir}/usr/lib/binfmt.d/wine.conf" + install -D -m644 "${srcdir}/wine-binfmt.conf" "${pkgdir}/usr/lib/binfmt.d/wine.conf" + + # strip native PE libraries + i686-w64-mingw32-strip --strip-unneeded "${pkgdir}/usr/lib32/wine/i386-windows"/*.dll + "${CARCH}-w64-mingw32-strip" --strip-unneeded "${pkgdir}/usr/lib/wine/${CARCH}-windows"/*.dll } |