summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
author Steven Voges <svoges.sbo@gmail.com>2024-04-14 10:57:56 +0700
committer Willy Sudiarto Raharjo <willysr@slackbuilds.org>2024-04-14 11:28:46 +0700
commite700e6be84f51d2a7c6d78f5f465cdcd84648594 (patch)
tree359e56149450d5b3acfd1f5a01ce559628270aee
parent13775155ede1faa058f3ce739db1ede6124acf30 (diff)
downloadslackbuilds-e700e6be84f51d2a7c6d78f5f465cdcd84648594.tar.gz
slackbuilds-e700e6be84f51d2a7c6d78f5f465cdcd84648594.tar.xz
system/wine-staging: Updated for version 9.6.
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
-rw-r--r--system/wine-staging/README.MULTILIB31
-rw-r--r--system/wine-staging/wine-staging.SlackBuild31
-rw-r--r--system/wine-staging/wine-staging.info10
-rw-r--r--system/wine-staging/writecopy.patch18
4 files changed, 61 insertions, 29 deletions
diff --git a/system/wine-staging/README.MULTILIB b/system/wine-staging/README.MULTILIB
new file mode 100644
index 0000000000..d14bd8b2ad
--- /dev/null
+++ b/system/wine-staging/README.MULTILIB
@@ -0,0 +1,31 @@
+The legacy method to build 32 bit wine on x86_64 will will require
+a multilib installation.
+
+Please read up alienBOB's multilib readme and repo:
+
+https://docs.slackware.com/slackware:multilib
+http://www.slackware.com/~alien/multilib/
+
+A script that rsyncs with alienBOB's repo and installs the multilib
+packages which can be found here:
+
+https://slackware.uk/~dive/scripts/alien-multilib-rsync.sh
+
+Be sure to read the short instructions at the top. If you use slackpkg
+then you will also want to blacklist his packages in
+/etc/slackpkg/blacklist:
+
+[0-9]+alien
+[0-9]+compat32
+
+If you have a combined 32 and 64 bit package you need to set the
+environmental variable WINEPREFIX to point to the 64 bit wine directory
+when running wine64, which should be different to the 32 bit directory
+(~/.wine by default).
+
+Example:
+
+WINEPREFIX=~/.wine64 wine64 notepad
+
+To build wine using the legacy method, pass MULTILIB=yes to the build
+script.
diff --git a/system/wine-staging/wine-staging.SlackBuild b/system/wine-staging/wine-staging.SlackBuild
index b19acbe462..4c669faaec 100644
--- a/system/wine-staging/wine-staging.SlackBuild
+++ b/system/wine-staging/wine-staging.SlackBuild
@@ -33,9 +33,10 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=wine-staging
-VERSION=${VERSION:-9.5}
-WINEVERSION=${WINEVERSION:-9.5}
-STAGINGVERSION=$WINEVERSION
+VERSION=${VERSION:-9.6}
+WINEVERSION=$VERSION
+STAGINGVERSION=$VERSION
+ARCHS="i386,x86_64"
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -87,6 +88,26 @@ case "$ARCH" in
;;
esac
+MULTILIB=${MULTILIB@L}
+if [[ "$ARCH" != "x86_64" && "$MULTILIB" = "yes" ]]; then
+ echo "Cannot build for multilib on non-64bit systems."
+ exit 1
+elif [[ "$ARCH" = "x86_64" && "$MULTILIB" = "yes" ]]; then
+ WINETMP="$( mktemp -d $TMP/wine-test-XXXXXX )"
+ echo "int main(void) {; return(0); }" > "$WINETMP/test.c"
+ gcc -m32 "$WINETMP/test.c" -o /dev/null >/dev/null 2>&1 && WINE32TEST=${WINE32TEST:-yes}
+ rm -rf "$WINETMP"
+ if [[ $WINE32TEST = "yes" ]]; then
+ ARCHS="x86_64"
+ WINE32="yes"
+ else
+ echo "MULTILIB was requested, however the multilib test has failed."
+ echo "Have the compat32 libraries been installed?"
+ echo "Please see README.MULTILIB"
+ exit 1
+ fi
+fi
+
set -e
rm -rf $PKG
@@ -115,8 +136,6 @@ find -L . \
# Fix for flex.
patch -p1 < $CWD/flex.patch
-# WriteCopy Fix.
-patch -p1 < $CWD/writecopy.patch
# Fix path of opencl headers.
sed 's|OpenCL/opencl.h|CL/opencl.h|g' -i configure*
@@ -135,7 +154,7 @@ if [ "$WINE64" = "yes" ]; then
--sysconfdir=/etc \
--mandir=/usr/man \
--enable-win64 \
- --enable-archs="i386,x86_64" \
+ --enable-archs=$ARCHS \
--with-x \
--with-gnutls \
--${do_opengl}-opengl \
diff --git a/system/wine-staging/wine-staging.info b/system/wine-staging/wine-staging.info
index 5e7b18942c..9eba5cc053 100644
--- a/system/wine-staging/wine-staging.info
+++ b/system/wine-staging/wine-staging.info
@@ -1,10 +1,10 @@
PRGNAM="wine-staging"
-VERSION="9.5"
+VERSION="9.6"
HOMEPAGE="https://wiki.winehq.org/Wine-Staging"
-DOWNLOAD="https://dl.winehq.org/wine/source/9.x/wine-9.5.tar.xz \
- https://github.com/wine-staging/wine-staging/archive/v9.5/wine-staging-9.5.tar.gz"
-MD5SUM="15d0aeeeb4221f349b30edefffdc25e1 \
- 3edfd7c8c6a782be9d547dbfde462b20"
+DOWNLOAD="https://dl.winehq.org/wine/source/9.x/wine-9.6.tar.xz \
+ https://github.com/wine-staging/wine-staging/archive/v9.6/wine-staging-9.6.tar.gz"
+MD5SUM="9bc6c11d200b717fa2ad33be31d91da2 \
+ ab997f4aded3004ed736d0bdbf114fb3"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/system/wine-staging/writecopy.patch b/system/wine-staging/writecopy.patch
deleted file mode 100644
index d067dccd92..0000000000
--- a/system/wine-staging/writecopy.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-@@ -, +, @@
----
- dlls/kernelbase/memory.c | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
---- a/dlls/kernelbase/memory.c
-+++ a/dlls/kernelbase/memory.c
-@@ -481,7 +481,9 @@ BOOL WINAPI DECLSPEC_HOTPATCH VirtualLock( void *addr, SIZE_T size )
- */
- BOOL WINAPI DECLSPEC_HOTPATCH VirtualProtect( void *addr, SIZE_T size, DWORD new_prot, DWORD *old_prot )
- {
-- return VirtualProtectEx( GetCurrentProcess(), addr, size, new_prot, old_prot );
-+ BOOL ret = VirtualProtectEx( GetCurrentProcess(), addr, size, new_prot, old_prot );
-+ if (*old_prot == PAGE_WRITECOPY) *old_prot = PAGE_READWRITE;
-+ return ret;
- }
-
-
---