git: 309d3c189e78 - main - emulators/wine-devel: Update to Wine 10.2

From: Gerald Pfeifer <gerald_at_FreeBSD.org>
Date: Wed, 09 Apr 2025 07:56:21 UTC
The branch main has been updated by gerald:

URL: https://cgit.FreeBSD.org/ports/commit/?id=309d3c189e787b29ab7a81a76716329ca0507c49

commit 309d3c189e787b29ab7a81a76716329ca0507c49
Author:     Thibault Payet <monwarez@mailoo.org>
AuthorDate: 2025-04-08 23:19:21 +0000
Commit:     Gerald Pfeifer <gerald@FreeBSD.org>
CommitDate: 2025-04-09 07:53:44 +0000

    emulators/wine-devel: Update to Wine 10.2
    
    This is the second snapshot of the Wine 10.x branch. It includes the
    following changes:
    
     - Bundled vkd3d is upgraded to version 1.15.
     - Support for setting thread priorities.
     - New Wow64 mode can be enabled dynamically. (Not yet on FreeBSD!)
     - More progress on the Bluetooth driver.
     - Various bug fixes.
    
    Upstream renamed the wine64 binary to wine; account for that when
    renaming it to wine64.bin.
    
    Revert the support for new WoW64 mode detection at runtime since it
    is not supported on FreeBSD yet (files/patch-dlls_ntdll_unix_loader.c).
    
    PR:             285446
---
 emulators/wine-devel/Makefile                           |  4 ++--
 emulators/wine-devel/distinfo                           |  6 +++---
 .../wine-devel/files/patch-dlls_ntdll_unix_loader.c     | 17 ++++++++++-------
 emulators/wine-devel/pkg-plist                          |  5 +++++
 4 files changed, 20 insertions(+), 12 deletions(-)

diff --git a/emulators/wine-devel/Makefile b/emulators/wine-devel/Makefile
index d0410003b933..1859b1c1b5cc 100644
--- a/emulators/wine-devel/Makefile
+++ b/emulators/wine-devel/Makefile
@@ -1,5 +1,5 @@
 PORTNAME=	wine
-DISTVERSION=	10.1
+DISTVERSION=	10.2
 PORTEPOCH=	1
 CATEGORIES=	emulators
 MASTER_SITES=	https://dl.winehq.org/wine/source/10.x/
@@ -167,7 +167,7 @@ post-install:
 	-${ELFCTL} -e +noaslr				${STAGEDIR}${PREFIX}/bin/wine.bin
 	${INSTALL_SCRIPT} ${FILESDIR}/wine.sh		${STAGEDIR}${PREFIX}/bin/wine
 .else
-	${MV} ${STAGEDIR}${PREFIX}/bin/wine64		${STAGEDIR}${PREFIX}/bin/wine64.bin
+	${MV} ${STAGEDIR}${PREFIX}/bin/wine		${STAGEDIR}${PREFIX}/bin/wine64.bin
 	-${ELFCTL} -e +noaslr				${STAGEDIR}${PREFIX}/bin/wine64.bin
 	${INSTALL_SCRIPT} ${FILESDIR}/wine.sh		${STAGEDIR}${PREFIX}/bin/wine64
 	${INSTALL_SCRIPT} ${FILESDIR}/wine-wow64.sh	${STAGEDIR}${PREFIX}/bin/wine
diff --git a/emulators/wine-devel/distinfo b/emulators/wine-devel/distinfo
index 870ec81f9689..dee53924c784 100644
--- a/emulators/wine-devel/distinfo
+++ b/emulators/wine-devel/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1739013551
-SHA256 (wine-10.1.tar.xz) = 63471e37b1a515795ff3368d26a039261660e1377cb427d1b61b3a7b76091663
-SIZE (wine-10.1.tar.xz) = 32026152
+TIMESTAMP = 1742034053
+SHA256 (wine-10.2.tar.xz) = 9d90dfb6cf10b810a7b4789f0067712b4730d3ea2a88b91f1be273b2ad04243f
+SIZE (wine-10.2.tar.xz) = 32050716
diff --git a/emulators/wine-devel/files/patch-dlls_ntdll_unix_loader.c b/emulators/wine-devel/files/patch-dlls_ntdll_unix_loader.c
index 97f237d79c30..1644d6387c51 100644
--- a/emulators/wine-devel/files/patch-dlls_ntdll_unix_loader.c
+++ b/emulators/wine-devel/files/patch-dlls_ntdll_unix_loader.c
@@ -1,9 +1,11 @@
---- dlls/ntdll/unix/loader.c.orig	2024-04-05 17:03:05 UTC
-+++ dlls/ntdll/unix/loader.c
-@@ -480,6 +480,21 @@ char *get_alternate_wineloader( WORD machine )
- 
-     if (machine == current_machine) return NULL;
+--- dlls/ntdll/unix/loader.c.orig	2025-02-21 21:19:31.000000000 +0000
++++ dlls/ntdll/unix/loader.c	2025-04-08 21:22:55.162201000 +0000
+@@ -503,6 +503,24 @@
+     BOOL force_wow64 = (arch = getenv( "WINEARCH" )) && !strcmp( arch, "wow64" );
+     char *ret = NULL;
  
++    if (machine == current_machine) return NULL;
++
 +    char* wineserver_path = getenv("WINESERVER");
 +    if (wineserver_path != NULL && wineserver_path[0] == '/') {
 +        char* s = remove_tail(wineserver_path, "server");
@@ -19,6 +21,7 @@
 +        }
 +    }
 +
-     /* try the 64-bit loader */
-     if (current_machine == IMAGE_FILE_MACHINE_I386 && machine == IMAGE_FILE_MACHINE_AMD64)
++
+     if (is_win64)
      {
+         if (force_wow64) return NULL;
diff --git a/emulators/wine-devel/pkg-plist b/emulators/wine-devel/pkg-plist
index 795ddf432a6c..b7fa01f399e0 100644
--- a/emulators/wine-devel/pkg-plist
+++ b/emulators/wine-devel/pkg-plist
@@ -1631,6 +1631,7 @@ lib/wine/%%WINEARCH%%-unix/opengl32.so
 lib/wine/%%WINEARCH%%-unix/qcap.so
 lib/wine/%%WINEARCH%%-unix/secur32.so
 lib/wine/%%WINEARCH%%-unix/win32u.so
+lib/wine/%%WINEARCH%%-unix/wine
 %%ALSA%%lib/wine/%%WINEARCH%%-unix/winealsa.so
 lib/wine/%%WINEARCH%%-unix/winebth.so
 lib/wine/%%WINEARCH%%-unix/winebus.so
@@ -2028,6 +2029,7 @@ lib/wine/%%WINEARCH%%-windows/libinetcomm.a
 lib/wine/%%WINEARCH%%-windows/libiphlpapi.a
 lib/wine/%%WINEARCH%%-windows/libjsproxy.a
 lib/wine/%%WINEARCH%%-windows/libkernel32.a
+%%WINE32%%lib/wine/%%WINEARCH%%-windows/libkernel.a
 lib/wine/%%WINEARCH%%-windows/libkernelbase.a
 lib/wine/%%WINEARCH%%-windows/libloadperf.a
 lib/wine/%%WINEARCH%%-windows/liblz32.a
@@ -2162,6 +2164,7 @@ lib/wine/%%WINEARCH%%-windows/libwldap32.a
 lib/wine/%%WINEARCH%%-windows/libwmcodecdspuuid.a
 lib/wine/%%WINEARCH%%-windows/libwmvcore.a
 lib/wine/%%WINEARCH%%-windows/libwnaspi32.a
+%%WINE32%%lib/wine/%%WINEARCH%%-windows/libwow32.a
 %%WINE64%%lib/wine/%%WINEARCH%%-windows/libwow64.a
 lib/wine/%%WINEARCH%%-windows/libws2_32.a
 lib/wine/%%WINEARCH%%-windows/libwsdapi.a
@@ -2473,6 +2476,7 @@ lib/wine/%%WINEARCH%%-windows/tdh.dll
 lib/wine/%%WINEARCH%%-windows/tdi.sys
 lib/wine/%%WINEARCH%%-windows/termsv.exe
 lib/wine/%%WINEARCH%%-windows/threadpoolwinrt.dll
+lib/wine/%%WINEARCH%%-windows/timeout.exe
 %%WINE32%%lib/wine/%%WINEARCH%%-windows/toolhelp.dll16
 lib/wine/%%WINEARCH%%-windows/traffic.dll
 %%WINE32%%lib/wine/%%WINEARCH%%-windows/twain.dll16
@@ -2557,6 +2561,7 @@ lib/wine/%%WINEARCH%%-windows/windows.networking.hostname.dll
 lib/wine/%%WINEARCH%%-windows/windows.perception.stub.dll
 lib/wine/%%WINEARCH%%-windows/windows.security.authentication.onlineid.dll
 lib/wine/%%WINEARCH%%-windows/windows.security.credentials.ui.userconsentverifier.dll
+lib/wine/%%WINEARCH%%-windows/windows.storage.dll
 lib/wine/%%WINEARCH%%-windows/windows.storage.applicationdata.dll
 lib/wine/%%WINEARCH%%-windows/windows.system.profile.systemmanufacturers.dll
 lib/wine/%%WINEARCH%%-windows/windows.ui.dll