1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-22 04:17:44 +00:00

Update to Wine 5.10. This includes the following changes:

- More progress on the WineD3D Vulkan backend.
 - Beginnings of a separate Unix library for NTDLL.
 - Better support for anti-cheat kernel drivers.
 - More glyph substitutions in DirectWrite.
 - Support for DSS private keys.
 - ARM64 exception handling fixes.
 - Various bug fixes.

files/patch-libs-wine-mmap.c has been included upstream, so remove it.

The area that files/patch-dlls_kernel32_Makefile.in touches has changed
upstream; adjust the patch to those changes, maintaining the gist of our
patch all along.

dlls/ntdll has seen significant rework upstream, unfortunately breaking
on i386 with GCC 9 (though apparently not GCC 10); address that with the
new files/patch-dlls_ntdll that I submitted upstream also.
This commit is contained in:
Gerald Pfeifer 2020-06-09 21:28:01 +00:00
parent 36aa6dc32d
commit f6f24dddc2
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=538346
6 changed files with 60 additions and 41 deletions

View File

@ -2,8 +2,7 @@
# $FreeBSD$
PORTNAME= wine
DISTVERSION= 5.9
PORTREVISION= 1
DISTVERSION= 5.10
PORTEPOCH= 1
CATEGORIES= emulators
MASTER_SITES= SF/${PORTNAME}/Source \

View File

@ -1,5 +1,5 @@
TIMESTAMP = 1590224935
SHA256 (wine-5.9.tar.xz) = 843e34b7c9bf413fd443fceba5946ef0f44a4c597b434d43927719f482b89583
SIZE (wine-5.9.tar.xz) = 23802356
SHA256 (v5.9.tar.gz) = 0d60a5942dedbbec2f1773e74bf9fe23eadd50e1b4cdade80b0ea3a5498f8307
SIZE (v5.9.tar.gz) = 9861847
TIMESTAMP = 1591460814
SHA256 (wine-5.10.tar.xz) = 9baaa09216c817f61bce39626b869d1e387d436eccda3d9e054cfab84802333d
SIZE (wine-5.10.tar.xz) = 23859084
SHA256 (v5.10.tar.gz) = 4cbca4db68ce0d2f200ce9a267092ffdded84aab4ad49a71e5450f6cec687250
SIZE (v5.10.tar.gz) = 9863893

View File

@ -1,7 +1,7 @@
Author: David Naylor <naylor.b.david@gmail.com>
Date: Mon Feb 2 22:10:55 2015 +0200
Author: Gerald Pfeifer <gerald@pfeifer.com>
Date: Sat Jun 22 7:47:55 UTC 2019
Date: Sat Jun 6, 17:32:59 UTC 2020
kernel32: force 4096 byte page alignment.
@ -14,13 +14,12 @@ diff --git a/dlls/kernel32/Makefile.in b/dlls/kernel32/Makefile.in
index c09771d..a006c2c 100644
--- dlls/kernel32/Makefile.in
+++ dlls/kernel32/Makefile.in
@@ -3,7 +3,8 @@ MODULE = kernel32.dll
@@ -3,7 +3,7 @@
IMPORTLIB = kernel32
IMPORTS = winecrt0 ntdll
IMPORTS = winecrt0 kernelbase ntdll
EXTRALIBS = $(COREFOUNDATION_LIBS) $(POLL_LIBS) $(RT_LIBS)
-EXTRADLLFLAGS = -nodefaultlibs -Wb,-F,KERNEL32.dll -Wl,--image-base,0x7b400000
+EXTRADLLFLAGS = -nodefaultlibs -Wb,-F,KERNEL32.dll -Wl,--image-base,0x7b400000 \
+ -Wl,-z,max-page-size=0x1000
-EXTRADLLFLAGS = -nodefaultlibs -Wb,-F,KERNEL32.dll -Wl,--image-base,0x7b600000
+EXTRADLLFLAGS = -nodefaultlibs -Wb,-F,KERNEL32.dll -Wl,--image-base,0x7b600000 -Wl,-z,max-page-size=0x1000
C_SRCS = \
actctx.c \
atom.c \

View File

@ -0,0 +1,35 @@
From: Gerald Pfeifer <gerald@pfeifer.com>
To: wine-devel@winehq.org
Date: Sun, 7 Jun 2020 00:38:02 +0200 (CEST)
Subject: [PATCH] ntdll: Replicate InterlockedCompareExchange64 to the Unix library.
Between Wine 5.9 and 5.10 many ntdll functions moved to the Unix
library. Make the implementation of InterlockedCompareExchange64 via
RtlInterlockedCompareExchange64 available there as well for targets
without __GCC_HAVE_SYNC_COMPARE_AND_SWAP_8.
This fixes the build on FreeBSD/i386 with GCC 9.
Signed-off-by: Gerald Pfeifer <gerald@pfeifer.com>
---
dlls/ntdll/unix/unix_private.h | 4 ++++
1 file changed, 4 insertions(+)
--- UTC
diff --git a/dlls/ntdll/unix/unix_private.h b/dlls/ntdll/unix/unix_private.h
index a422fd825e..a0485b411d 100644
--- dlls/ntdll/unix/unix_private.h
+++ dlls/ntdll/unix/unix_private.h
@@ -23,6 +23,10 @@
#include "unixlib.h"
+#ifndef __GCC_HAVE_SYNC_COMPARE_AND_SWAP_8
+#define InterlockedCompareExchange64(dest,xchg,cmp) RtlInterlockedCompareExchange64(dest,xchg,cmp)
+#endif
+
struct debug_info
{
unsigned int str_pos; /* current position in strings buffer */
--
2.25.0

View File

@ -1,27 +0,0 @@
From: Damjan Jovanovic <damjan.jov@gmail.com>
Subject: [PATCH] libwine: Fix a regression in the return value check for mmap() on FreeBSD
Message-Id: <CAJm2B-=eV0e12Dw7mODFf5An=USGa-3bHhvLLDFsj2kDWsiyJw@mail.gmail.com>
Date: Sat, 23 May 2020 11:01:49 +0200
This fixes a regression from my previous patch in commit
55ba3648379d90642f174e74809b84130d6d1ddc, which was
checking for mmap() returning NULL instead of MAP_FAILED.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49225
Signed-off-by: Damjan Jovanovic <damjan.jov@gmail.com>
--- UTC
diff --git a/libs/wine/mmap.c b/libs/wine/mmap.c
index 0fbe2efea7..af91b3e352 100644
--- libs/wine/mmap.c
+++ libs/wine/mmap.c
@@ -215,7 +215,7 @@ void *wine_anon_mmap( void *start, size_t size, int prot, int flags )
/* If available, this will attempt a fixed mapping in-kernel */
flags |= MAP_TRYFIXED;
#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
- if ( start && mmap( start, size, prot, flags | MAP_FIXED | MAP_EXCL, get_fdzero(), 0 ) )
+ if ( start && mmap( start, size, prot, flags | MAP_FIXED | MAP_EXCL, get_fdzero(), 0 ) != MAP_FAILED )
return start;
#elif defined(__svr4__) || defined(__NetBSD__) || defined(__APPLE__)
if ( try_mmap_fixed( start, size, prot, flags, get_fdzero(), 0 ) )

View File

@ -162,6 +162,7 @@ include/wine/windows/bthsdpdef.h
include/wine/windows/cderr.h
include/wine/windows/cdosys.h
include/wine/windows/cdosys.idl
include/wine/windows/cfg.h
include/wine/windows/cfgmgr32.h
include/wine/windows/cguid.h
include/wine/windows/chprst.idl
@ -1054,6 +1055,7 @@ include/wine/windows/ddk/usbiodef.h
include/wine/windows/ddk/wdm.h
include/wine/windows/ddk/winddiui.h
include/wine/windows/ddk/winsplp.h
include/wine/windows/ddk/wsk.h
lib/libwine.so
lib/libwine.so.1
lib/wine/acledit.dll.so
@ -1122,9 +1124,11 @@ lib/wine/api-ms-win-core-libraryloader-l1-1-1.dll.so
lib/wine/api-ms-win-core-libraryloader-l1-2-0.dll.so
lib/wine/api-ms-win-core-libraryloader-l1-2-1.dll.so
lib/wine/api-ms-win-core-libraryloader-l1-2-2.dll.so
lib/wine/api-ms-win-core-libraryloader-l2-1-0.dll.so
lib/wine/api-ms-win-core-localization-l1-1-0.dll.so
lib/wine/api-ms-win-core-localization-l1-2-0.dll.so
lib/wine/api-ms-win-core-localization-l1-2-1.dll.so
lib/wine/api-ms-win-core-localization-l1-2-2.dll.so
lib/wine/api-ms-win-core-localization-l2-1-0.dll.so
lib/wine/api-ms-win-core-localization-obsolete-l1-1-0.dll.so
lib/wine/api-ms-win-core-localization-obsolete-l1-2-0.dll.so
@ -1134,6 +1138,7 @@ lib/wine/api-ms-win-core-localregistry-l1-1-0.dll.so
lib/wine/api-ms-win-core-memory-l1-1-0.dll.so
lib/wine/api-ms-win-core-memory-l1-1-1.dll.so
lib/wine/api-ms-win-core-memory-l1-1-2.dll.so
lib/wine/api-ms-win-core-memory-l1-1-4.dll.so
lib/wine/api-ms-win-core-misc-l1-1-0.dll.so
lib/wine/api-ms-win-core-namedpipe-l1-1-0.dll.so
lib/wine/api-ms-win-core-namedpipe-l1-2-0.dll.so
@ -1222,6 +1227,7 @@ lib/wine/api-ms-win-devices-config-l1-1-1.dll.so
lib/wine/api-ms-win-devices-query-l1-1-1.dll.so
lib/wine/api-ms-win-downlevel-advapi32-l1-1-0.dll.so
lib/wine/api-ms-win-downlevel-advapi32-l2-1-0.dll.so
lib/wine/api-ms-win-downlevel-kernel32-l2-1-0.dll.so
lib/wine/api-ms-win-downlevel-normaliz-l1-1-0.dll.so
lib/wine/api-ms-win-downlevel-ole32-l1-1-0.dll.so
lib/wine/api-ms-win-downlevel-shell32-l1-1-0.dll.so
@ -1578,9 +1584,11 @@ lib/wine/fakedlls/api-ms-win-core-libraryloader-l1-1-1.dll
lib/wine/fakedlls/api-ms-win-core-libraryloader-l1-2-0.dll
lib/wine/fakedlls/api-ms-win-core-libraryloader-l1-2-1.dll
lib/wine/fakedlls/api-ms-win-core-libraryloader-l1-2-2.dll
lib/wine/fakedlls/api-ms-win-core-libraryloader-l2-1-0.dll
lib/wine/fakedlls/api-ms-win-core-localization-l1-1-0.dll
lib/wine/fakedlls/api-ms-win-core-localization-l1-2-0.dll
lib/wine/fakedlls/api-ms-win-core-localization-l1-2-1.dll
lib/wine/fakedlls/api-ms-win-core-localization-l1-2-2.dll
lib/wine/fakedlls/api-ms-win-core-localization-l2-1-0.dll
lib/wine/fakedlls/api-ms-win-core-localization-obsolete-l1-1-0.dll
lib/wine/fakedlls/api-ms-win-core-localization-obsolete-l1-2-0.dll
@ -1590,6 +1598,7 @@ lib/wine/fakedlls/api-ms-win-core-localregistry-l1-1-0.dll
lib/wine/fakedlls/api-ms-win-core-memory-l1-1-0.dll
lib/wine/fakedlls/api-ms-win-core-memory-l1-1-1.dll
lib/wine/fakedlls/api-ms-win-core-memory-l1-1-2.dll
lib/wine/fakedlls/api-ms-win-core-memory-l1-1-4.dll
lib/wine/fakedlls/api-ms-win-core-misc-l1-1-0.dll
lib/wine/fakedlls/api-ms-win-core-namedpipe-l1-1-0.dll
lib/wine/fakedlls/api-ms-win-core-namedpipe-l1-2-0.dll
@ -1678,6 +1687,7 @@ lib/wine/fakedlls/api-ms-win-devices-config-l1-1-1.dll
lib/wine/fakedlls/api-ms-win-devices-query-l1-1-1.dll
lib/wine/fakedlls/api-ms-win-downlevel-advapi32-l1-1-0.dll
lib/wine/fakedlls/api-ms-win-downlevel-advapi32-l2-1-0.dll
lib/wine/fakedlls/api-ms-win-downlevel-kernel32-l2-1-0.dll
lib/wine/fakedlls/api-ms-win-downlevel-normaliz-l1-1-0.dll
lib/wine/fakedlls/api-ms-win-downlevel-ole32-l1-1-0.dll
lib/wine/fakedlls/api-ms-win-downlevel-shell32-l1-1-0.dll
@ -2151,6 +2161,7 @@ lib/wine/fakedlls/ndis.sys
lib/wine/fakedlls/net.exe
lib/wine/fakedlls/netapi32.dll
lib/wine/fakedlls/netcfgx.dll
lib/wine/fakedlls/netio.sys
lib/wine/fakedlls/netprofm.dll
lib/wine/fakedlls/netsh.exe
lib/wine/fakedlls/netstat.exe
@ -2662,6 +2673,7 @@ lib/wine/libmsvfw32.def
lib/wine/libmswsock.def
lib/wine/libnddeapi.def
lib/wine/libnetapi32.def
lib/wine/libnetio.def
lib/wine/libnewdev.def
lib/wine/libninput.def
lib/wine/libnormaliz.def
@ -2872,6 +2884,7 @@ lib/wine/ndis.sys.so
lib/wine/net.exe.so
lib/wine/netapi32.dll.so
lib/wine/netcfgx.dll.so
lib/wine/netio.sys.so
lib/wine/netprofm.dll.so
lib/wine/netsh.exe.so
lib/wine/netstat.exe.so