git: 519b9d1c5db1 - main - emulators/wine-proton: update to 9.0-1

From: Neel Chauhan <nc_at_FreeBSD.org>
Date: Wed, 15 May 2024 02:01:09 UTC
The branch main has been updated by nc:

URL: https://cgit.FreeBSD.org/ports/commit/?id=519b9d1c5db1a9edb43ceb29e75aee4665908ec8

commit 519b9d1c5db1a9edb43ceb29e75aee4665908ec8
Author:     Alex S <iwtcex@gmail.com>
AuthorDate: 2024-05-10 11:46:02 +0000
Commit:     Neel Chauhan <nc@FreeBSD.org>
CommitDate: 2024-05-15 02:00:47 +0000

    emulators/wine-proton: update to 9.0-1
    
    PR:             278940
    Approved by:    maintainer/submitter
---
 emulators/wine-proton/Makefile                     |  44 ++++---
 emulators/wine-proton/distinfo                     |   6 +-
 emulators/wine-proton/files/clang/stdarg.h         |  30 +++--
 emulators/wine-proton/files/clang/stdbool.h        |  34 ++++++
 emulators/wine-proton/files/clang/stddef.h         | 128 +++++++++++++++++++++
 emulators/wine-proton/files/patch-configure.ac     |  33 ------
 .../files/patch-dlls__ntdll__unix__loader.c        |  24 ----
 .../files/patch-dlls__ntdll__unix__virtual.c       |  18 ---
 .../files/patch-dlls_ntdll_unix_loader.c           |  24 ++++
 ...4.c => patch-dlls_ntdll_unix_signal__x86__64.c} |   0
 .../files/patch-dlls_ntdll_unix_system.c           |  23 ++++
 .../files/patch-dlls_ntdll_unix_virtual.c          |  50 ++++++++
 ...oss.drv__oss.c => patch-dlls_wineoss.drv_oss.c} |   0
 ...v__pulse.c => patch-dlls_winepulse.drv_pulse.c} |   0
 ...an__vulkan.c => patch-dlls_winevulkan_vulkan.c} |   0
 .../wine-proton/files/patch-include_wine_asm.h     |  14 +++
 .../wine-proton/files/patch-libs__wine__config.c   |  11 --
 emulators/wine-proton/files/patch-server_token.c   |  24 ----
 ...uild__res32.c => patch-tools_winebuild_res32.c} |   0
 emulators/wine-proton/pkg-plist                    |  53 +++++++--
 20 files changed, 371 insertions(+), 145 deletions(-)

diff --git a/emulators/wine-proton/Makefile b/emulators/wine-proton/Makefile
index ff22204d38cc..6dd6087222bd 100644
--- a/emulators/wine-proton/Makefile
+++ b/emulators/wine-proton/Makefile
@@ -1,6 +1,6 @@
 PORTNAME=	wine-proton
-DISTVERSION=	8.0-5
-PORTREVISION=	1
+DISTVERSION=	9.0-1
+PORTREVISION=	0
 CATEGORIES=	emulators
 
 MAINTAINER=	iwtcex@gmail.com
@@ -14,25 +14,34 @@ LICENSE_FILE=	${WRKSRC}/LICENSE
 ONLY_FOR_ARCHS=	amd64 i386
 
 BUILD_DEPENDS=	${LOCALBASE}/bin/flex:textproc/flex \
-		llvm${_LLVM_VERSION}>=0:devel/llvm${_LLVM_VERSION}
+		${LOCALBASE}/include/linux/input.h:devel/evdev-proto
 
 LIB_DEPENDS=	libfontconfig.so:x11-fonts/fontconfig \
 		libfreetype.so:print/freetype2 \
 		libgnutls.so:security/gnutls \
 		libvulkan.so:graphics/vulkan-loader
 
-USES=		autoreconf bison desktop-file-utils gl gmake gnome gstreamer localbase pkgconfig python:build sdl shebangfix tar:xz xorg
+# amd_ags_x64.so
+LIB_DEPENDS+=	libdrm.so:graphics/libdrm \
+		libdrm_amdgpu.so:graphics/libdrm
+
+# winewayland.so
+LIB_DEPENDS+=	libwayland-client.so:graphics/wayland \
+		libxkbcommon.so:x11/libxkbcommon \
+		libxkbregistry.so:x11/libxkbcommon
+
+USES=		autoreconf bison desktop-file-utils gl gmake gnome gstreamer llvm:${_LLVM_VERSION},build localbase perl5 pkgconfig python:build sdl shebangfix tar:xz xorg
 USE_GCC=	yes
-PIE_UNSAFE=	yes
 
 USE_GITHUB=	yes
 GH_ACCOUNT=	ValveSoftware
 GH_PROJECT=	wine
-GH_TAGNAME=	bb66944d9d7a0fc7692f05d4a2db418b468d3021
+GH_TAGNAME=	a8514f9606ee3fdc3d912c988f651edc5d7d0d55
 
 USE_GL=		gl
 USE_GNOME=	glib20
-USE_GSTREAMER=	gl mpeg2dec x264 # https://github.com/ValveSoftware/wine/commit/8cdd506d7e68c27cd564c317320bfc8d3a999eda
+USE_GSTREAMER=	gl good mpeg2dec x264 # https://github.com/ValveSoftware/wine/commit/8cdd506d7e68c27cd564c317320bfc8d3a999eda
+USE_PERL5=	build
 USE_SDL=	sdl2
 USE_XORG=	x11 xext xcomposite xcursor xi xinerama xrandr xrender
 
@@ -43,6 +52,8 @@ GNU_CONFIGURE=		yes
 GNU_CONFIGURE_PREFIX=	${PREFIX}/${PORTNAME}
 
 CONFIGURE_ARGS=	--verbose \
+		--enable-archs=${ARCH:S|amd64|x86_64|} \
+		--with-mingw CROSSCC="clang" CROSSCFLAGS="-isystem ${FILESDIR}/clang" \
 		--libdir=${PREFIX}/${PORTNAME}/lib \
 		--disable-kerberos \
 		--disable-tests \
@@ -52,16 +63,15 @@ CONFIGURE_ARGS=	--verbose \
 		--with-gstreamer \
 		--with-opengl \
 		--with-oss \
+		--with-pthread \
 		--with-sdl \
 		--with-vulkan \
+		--with-wayland \
 		--with-x \
 		--with-xinerama \
 		--with-xinput2 \
 		--with-xrandr \
 		--with-xrender \
-		--with-pcap \
-		--with-pthread \
-		--with-mingw CROSSCC="clang" CROSSCFLAGS="-isystem ${FILESDIR}/clang" \
 		--without-alsa \
 		--without-capi \
 		--without-coreaudio \
@@ -76,6 +86,7 @@ CONFIGURE_ARGS=	--verbose \
 		--without-netapi \
 		--without-opencl \
 		--without-osmesa \
+		--without-pcap \
 		--without-pcsclite \
 		--without-sane \
 		--without-udev \
@@ -86,6 +97,8 @@ CONFIGURE_ARGS=	--verbose \
 CONFIGURE_ENV=	CPPBIN="false" CPPFLAGS="" FLEX="${LOCALBASE}/bin/flex" JXRLIB_CFLAGS="-I${LOCALBASE}/include/jxrlib"
 
 CFLAGS+=	-D__NR_futex="-1" -Werror=implicit-function-declaration
+CFLAGS_i386+=	-mpreferred-stack-boundary=4 -mstackrealign
+PIE_UNSAFE=	yes
 
 BINARY_ALIAS+=	clang=${LOCALBASE}/bin/clang${_LLVM_VERSION} \
 		lld-link=${LOCALBASE}/bin/lld-link${_LLVM_VERSION}
@@ -115,12 +128,16 @@ CONFIGURE_ARGS+=--enable-win64
 PLIST_SUB+=	WINE32="" WINE64="@comment " WINEARCH="i386"
 .endif
 
+post-patch:
+	${REINPLACE_CMD} 's/CFLAGS="$$llvm_extra_cflags $$llvm_cflags"/CFLAGS="$$CROSSCFLAGS $$llvm_extra_cflags $$llvm_cflags"/g' ${WRKSRC}/configure.ac
+
 pre-configure:
 	cd ${WRKSRC} && ${PYTHON_CMD} dlls/winevulkan/make_vulkan --xml vk.xml
+	cd ${WRKSRC} && ${PERL5} tools/make_specfiles
 
 pre-build:
 	cd ${WRKSRC} && ${MAKE_CMD} depend
-	cd ${WRKSRC} && tools/make_requests
+	cd ${WRKSRC} && ${PERL5} tools/make_requests
 
 post-install:
 .if ${ARCH} == i386
@@ -131,14 +148,13 @@ post-install:
 .else
 	${INSTALL_SCRIPT} ${FILESDIR}/pkg32.sh                ${STAGEDIR}${PREFIX}/${PORTNAME}/bin/pkg32.sh
 	${MV} ${STAGEDIR}${PREFIX}/${PORTNAME}/bin/wine64     ${STAGEDIR}${PREFIX}/${PORTNAME}/bin/wine64.bin
-	-${ELFCTL} -e +noaslr                                 ${STAGEDIR}${PREFIX}/${PORTNAME}/bin/wine64.bin
 	${INSTALL_SCRIPT} ${FILESDIR}/wine.sh                 ${STAGEDIR}${PREFIX}/${PORTNAME}/bin/wine64
 	${INSTALL_SCRIPT} ${FILESDIR}/wine-wow64.sh           ${STAGEDIR}${PREFIX}/${PORTNAME}/bin/wine
 .endif
 	${RM} -r ${STAGEDIR}${PREFIX}/${PORTNAME}/include
-	${RM} -r ${STAGEDIR}${PREFIX}/man
+	${RM} -r ${STAGEDIR}${PREFIX}/share/man
 	${MKDIR} ${STAGEDIR}${DOCSDIR}
-.for i in README ANNOUNCE AUTHORS
+.for i in README.md ANNOUNCE.md AUTHORS
 	${INSTALL_DATA} ${WRKSRC}/${i} ${STAGEDIR}${DOCSDIR}
 .endfor
 
diff --git a/emulators/wine-proton/distinfo b/emulators/wine-proton/distinfo
index a504be615dfd..23dcc8b83af2 100644
--- a/emulators/wine-proton/distinfo
+++ b/emulators/wine-proton/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1711968876
-SHA256 (ValveSoftware-wine-8.0-5-bb66944d9d7a0fc7692f05d4a2db418b468d3021_GH0.tar.gz) = 3f8e7e58b235d3101c866ff367afe9745b6abaf6fd1d4d864953bc389abb192d
-SIZE (ValveSoftware-wine-8.0-5-bb66944d9d7a0fc7692f05d4a2db418b468d3021_GH0.tar.gz) = 48756464
+TIMESTAMP = 1715246618
+SHA256 (ValveSoftware-wine-9.0-1-a8514f9606ee3fdc3d912c988f651edc5d7d0d55_GH0.tar.gz) = 68ceb4f987f3de1a03ff82a589de13d3029153ceb21d0129034ccc8042e7b866
+SIZE (ValveSoftware-wine-9.0-1-a8514f9606ee3fdc3d912c988f651edc5d7d0d55_GH0.tar.gz) = 49101467
diff --git a/emulators/wine-proton/files/clang/stdarg.h b/emulators/wine-proton/files/clang/stdarg.h
index 0bc39408c1e5..ba978721f1f3 100644
--- a/emulators/wine-proton/files/clang/stdarg.h
+++ b/emulators/wine-proton/files/clang/stdarg.h
@@ -8,13 +8,30 @@
  */
 
 #ifndef __STDARG_H
-#define __STDARG_H
 
+#ifndef __GNUC_VA_LIST
+#define __GNUC_VA_LIST
+typedef __builtin_va_list __gnuc_va_list;
+#endif
+
+#ifdef __need___va_list
+#undef __need___va_list
+#else
+#define __STDARG_H
 #ifndef _VA_LIST
 typedef __builtin_va_list va_list;
 #define _VA_LIST
 #endif
+
+/* FIXME: This is using the placeholder dates Clang produces for these macros
+   in C2x mode; switch to the correct values once they've been published. */
+#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
+/* C2x does not require the second parameter for va_start. */
+#define va_start(ap, ...) __builtin_va_start(ap, 0)
+#else
+/* Versions before C2x do require the second parameter. */
 #define va_start(ap, param) __builtin_va_start(ap, param)
+#endif
 #define va_end(ap)          __builtin_va_end(ap)
 #define va_arg(ap, type)    __builtin_va_arg(ap, type)
 
@@ -23,13 +40,12 @@ typedef __builtin_va_list va_list;
  */
 #define __va_copy(d,s) __builtin_va_copy(d,s)
 
-#if __STDC_VERSION__ >= 199901L || __cplusplus >= 201103L || !defined(__STRICT_ANSI__)
+#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) ||              \
+    (defined(__cplusplus) && __cplusplus >= 201103L) ||                        \
+    !defined(__STRICT_ANSI__)
 #define va_copy(dest, src)  __builtin_va_copy(dest, src)
 #endif
 
-#ifndef __GNUC_VA_LIST
-#define __GNUC_VA_LIST 1
-typedef __builtin_va_list __gnuc_va_list;
-#endif
-
 #endif /* __STDARG_H */
+
+#endif /* not __STDARG_H */
diff --git a/emulators/wine-proton/files/clang/stdbool.h b/emulators/wine-proton/files/clang/stdbool.h
new file mode 100644
index 000000000000..9406aab0ca72
--- /dev/null
+++ b/emulators/wine-proton/files/clang/stdbool.h
@@ -0,0 +1,34 @@
+/*===---- stdbool.h - Standard header for booleans -------------------------===
+ *
+ * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+ * See https://llvm.org/LICENSE.txt for license information.
+ * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+ *
+ *===-----------------------------------------------------------------------===
+ */
+
+#ifndef __STDBOOL_H
+#define __STDBOOL_H
+
+#define __bool_true_false_are_defined 1
+
+#if defined(__STDC_VERSION__) && __STDC_VERSION__ > 201710L
+/* FIXME: We should be issuing a deprecation warning here, but cannot yet due
+ * to system headers which include this header file unconditionally.
+ */
+#elif !defined(__cplusplus)
+#define bool _Bool
+#define true 1
+#define false 0
+#elif defined(__GNUC__) && !defined(__STRICT_ANSI__)
+/* Define _Bool as a GNU extension. */
+#define _Bool bool
+#if defined(__cplusplus) && __cplusplus < 201103L
+/* For C++98, define bool, false, true as a GNU extension. */
+#define bool bool
+#define false false
+#define true true
+#endif
+#endif
+
+#endif /* __STDBOOL_H */
diff --git a/emulators/wine-proton/files/clang/stddef.h b/emulators/wine-proton/files/clang/stddef.h
new file mode 100644
index 000000000000..42815176dcd0
--- /dev/null
+++ b/emulators/wine-proton/files/clang/stddef.h
@@ -0,0 +1,128 @@
+/*===---- stddef.h - Basic type definitions --------------------------------===
+ *
+ * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+ * See https://llvm.org/LICENSE.txt for license information.
+ * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+ *
+ *===-----------------------------------------------------------------------===
+ */
+
+#if !defined(__STDDEF_H) || defined(__need_ptrdiff_t) ||                       \
+    defined(__need_size_t) || defined(__need_wchar_t) ||                       \
+    defined(__need_NULL) || defined(__need_wint_t)
+
+#if !defined(__need_ptrdiff_t) && !defined(__need_size_t) &&                   \
+    !defined(__need_wchar_t) && !defined(__need_NULL) &&                       \
+    !defined(__need_wint_t)
+/* Always define miscellaneous pieces when modules are available. */
+#if !__has_feature(modules)
+#define __STDDEF_H
+#endif
+#define __need_ptrdiff_t
+#define __need_size_t
+#define __need_wchar_t
+#define __need_NULL
+#define __need_STDDEF_H_misc
+/* __need_wint_t is intentionally not defined here. */
+#endif
+
+#if defined(__need_ptrdiff_t)
+#if !defined(_PTRDIFF_T) || __has_feature(modules)
+/* Always define ptrdiff_t when modules are available. */
+#if !__has_feature(modules)
+#define _PTRDIFF_T
+#endif
+typedef __PTRDIFF_TYPE__ ptrdiff_t;
+#endif
+#undef __need_ptrdiff_t
+#endif /* defined(__need_ptrdiff_t) */
+
+#if defined(__need_size_t)
+#if !defined(_SIZE_T) || __has_feature(modules)
+/* Always define size_t when modules are available. */
+#if !__has_feature(modules)
+#define _SIZE_T
+#endif
+typedef __SIZE_TYPE__ size_t;
+#endif
+#undef __need_size_t
+#endif /*defined(__need_size_t) */
+
+#if defined(__need_STDDEF_H_misc)
+/* ISO9899:2011 7.20 (C11 Annex K): Define rsize_t if __STDC_WANT_LIB_EXT1__ is
+ * enabled. */
+#if (defined(__STDC_WANT_LIB_EXT1__) && __STDC_WANT_LIB_EXT1__ >= 1 && \
+     !defined(_RSIZE_T)) || __has_feature(modules)
+/* Always define rsize_t when modules are available. */
+#if !__has_feature(modules)
+#define _RSIZE_T
+#endif
+typedef __SIZE_TYPE__ rsize_t;
+#endif
+#endif /* defined(__need_STDDEF_H_misc) */
+
+#if defined(__need_wchar_t)
+#if !defined(__cplusplus) || (defined(_MSC_VER) && !_NATIVE_WCHAR_T_DEFINED)
+/* Always define wchar_t when modules are available. */
+#if !defined(_WCHAR_T) || __has_feature(modules)
+#if !__has_feature(modules)
+#define _WCHAR_T
+#if defined(_MSC_EXTENSIONS)
+#define _WCHAR_T_DEFINED
+#endif
+#endif
+typedef __WCHAR_TYPE__ wchar_t;
+#endif
+#endif
+#undef __need_wchar_t
+#endif /* defined(__need_wchar_t) */
+
+#if defined(__need_NULL)
+#undef NULL
+#ifdef __cplusplus
+#  if !defined(__MINGW32__) && !defined(_MSC_VER)
+#    define NULL __null
+#  else
+#    define NULL 0
+#  endif
+#else
+#  define NULL ((void*)0)
+#endif
+#ifdef __cplusplus
+#if defined(_MSC_EXTENSIONS) && defined(_NATIVE_NULLPTR_SUPPORTED)
+namespace std { typedef decltype(nullptr) nullptr_t; }
+using ::std::nullptr_t;
+#endif
+#endif
+#undef __need_NULL
+#endif /* defined(__need_NULL) */
+
+/* FIXME: This is using the placeholder dates Clang produces for these macros
+   in C2x mode; switch to the correct values once they've been published. */
+#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
+typedef typeof(nullptr) nullptr_t;
+#endif /* defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L */
+
+#if defined(__need_STDDEF_H_misc)
+#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) ||              \
+    (defined(__cplusplus) && __cplusplus >= 201103L)
+#include "__stddef_max_align_t.h"
+#endif
+#define offsetof(t, d) __builtin_offsetof(t, d)
+#undef __need_STDDEF_H_misc
+#endif  /* defined(__need_STDDEF_H_misc) */
+
+/* Some C libraries expect to see a wint_t here. Others (notably MinGW) will use
+__WINT_TYPE__ directly; accommodate both by requiring __need_wint_t */
+#if defined(__need_wint_t)
+/* Always define wint_t when modules are available. */
+#if !defined(_WINT_T) || __has_feature(modules)
+#if !__has_feature(modules)
+#define _WINT_T
+#endif
+typedef __WINT_TYPE__ wint_t;
+#endif
+#undef __need_wint_t
+#endif /* __need_wint_t */
+
+#endif
diff --git a/emulators/wine-proton/files/patch-configure.ac b/emulators/wine-proton/files/patch-configure.ac
deleted file mode 100644
index f43286842991..000000000000
--- a/emulators/wine-proton/files/patch-configure.ac
+++ /dev/null
@@ -1,33 +0,0 @@
---- configure.ac.orig	2023-09-02 23:55:42.978760000 +0300
-+++ configure.ac	2023-09-03 00:08:27.789243000 +0300
-@@ -863,11 +863,13 @@
- 
-     saved_CC=$CC
-     saved_CFLAGS=$CFLAGS
-+    saved_LDFLAGS=$LDFLAGS
- 
-     CFLAGS=${CROSSCFLAGS:-"-g -O2"}
-+    LDFLAGS=${CROSSLDFLAGS:-""}
-     AS_VAR_COPY([CC],[${wine_arch}_CC])
-     AS_VAR_COPY([${wine_arch}_CFLAGS],[CFLAGS])
--    AS_VAR_COPY([${wine_arch}_LDFLAGS],[CROSSLDFLAGS])
-+    AS_VAR_COPY([${wine_arch}_LDFLAGS],[LDFLAGS])
-     AS_VAR_SET([${wine_arch}_EXTRACFLAGS],["-D__WINE_PE_BUILD -Wall"])
- 
-     target=""
-@@ -915,6 +915,7 @@
-     then
-         CC=$saved_CC
-         CFLAGS=$saved_CFLAGS
-+        LDFLAGS=$saved_LDFLAGS
-         continue
-     fi
-     AS_VAR_APPEND([PE_ARCHS],[" $wine_arch"])
-@@ -1005,6 +1006,7 @@
- 
-     CC=$saved_CC
-     CFLAGS=$saved_CFLAGS
-+    LDFLAGS=$saved_LDFLAGS
- done
- 
- if test $HOST_ARCH = aarch64 -a "x$PE_ARCHS" = x
diff --git a/emulators/wine-proton/files/patch-dlls__ntdll__unix__loader.c b/emulators/wine-proton/files/patch-dlls__ntdll__unix__loader.c
deleted file mode 100644
index 302e91daef47..000000000000
--- a/emulators/wine-proton/files/patch-dlls__ntdll__unix__loader.c
+++ /dev/null
@@ -1,24 +0,0 @@
---- dlls/ntdll/unix/loader.c.orig	2023-07-17 16:05:30.000000000 +0300
-+++ dlls/ntdll/unix/loader.c	2023-09-12 03:00:51.850143000 +0300
-@@ -742,6 +742,21 @@ static NTSTATUS loader_exec( char **argv, WORD machine
- {
-     if (machine != current_machine)
-     {
-+        char* wineserver_path = getenv("WINESERVER");
-+        if (wineserver_path != NULL && wineserver_path[0] == '/') {
-+            char* s = remove_tail(wineserver_path, "server");
-+            if (s != NULL) {
-+                if (machine == IMAGE_FILE_MACHINE_AMD64) {
-+                    argv[1] = malloc(strlen(s) + 3);
-+                    strcpy(argv[1], s);
-+                    strcat(argv[1], "64");
-+                } else {
-+                    argv[1] = s;
-+                }
-+                preloader_exec(argv);
-+            }
-+        }
-+
-         if (machine == IMAGE_FILE_MACHINE_AMD64)  /* try the 64-bit loader */
-         {
-             size_t len = strlen(wineloader);
diff --git a/emulators/wine-proton/files/patch-dlls__ntdll__unix__virtual.c b/emulators/wine-proton/files/patch-dlls__ntdll__unix__virtual.c
deleted file mode 100644
index 780ddacc5388..000000000000
--- a/emulators/wine-proton/files/patch-dlls__ntdll__unix__virtual.c
+++ /dev/null
@@ -1,18 +0,0 @@
---- dlls/ntdll/unix/virtual.c.orig
-+++ dlls/ntdll/unix/virtual.c
-@@ -1562,7 +1562,6 @@ static NTSTATUS create_view( struct file_view **view_ret, void *base, size_t siz
- 
-     if (vprot & VPROT_WRITEWATCH && use_kernel_writewatch)
-     {
--        madvise( view->base, view->size, MADV_NOHUGEPAGE );
-         reset_write_watches( view->base, view->size );
-     }
- 
-@@ -2158,7 +2157,6 @@ static NTSTATUS map_view( struct file_view **view_ret, void *base, size_t size,
-                 ERR("set_protection failed.\n");
-             if (vprot & VPROT_WRITEWATCH)
-             {
--                madvise( base, size, MADV_NOHUGEPAGE );
-                 reset_write_watches( base, size );
-             }
-             return STATUS_SUCCESS;
diff --git a/emulators/wine-proton/files/patch-dlls_ntdll_unix_loader.c b/emulators/wine-proton/files/patch-dlls_ntdll_unix_loader.c
new file mode 100644
index 000000000000..5b1b1d9444f3
--- /dev/null
+++ b/emulators/wine-proton/files/patch-dlls_ntdll_unix_loader.c
@@ -0,0 +1,24 @@
+--- 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;
+ 
++    char* wineserver_path = getenv("WINESERVER");
++    if (wineserver_path != NULL && wineserver_path[0] == '/') {
++        char* s = remove_tail(wineserver_path, "server");
++        if (s != NULL) {
++            if (machine == IMAGE_FILE_MACHINE_AMD64) {
++                ret = malloc(strlen(s) + 3);
++                strcpy(ret, s);
++                strcat(ret, "64");
++            } else {
++                ret = s;
++            }
++            return ret;
++        }
++    }
++
+     if (machine == IMAGE_FILE_MACHINE_AMD64)  /* try the 64-bit loader */
+     {
+          size_t len = strlen(wineloader);
diff --git a/emulators/wine-proton/files/patch-dlls__ntdll__unix__signal_x86_64.c b/emulators/wine-proton/files/patch-dlls_ntdll_unix_signal__x86__64.c
similarity index 100%
rename from emulators/wine-proton/files/patch-dlls__ntdll__unix__signal_x86_64.c
rename to emulators/wine-proton/files/patch-dlls_ntdll_unix_signal__x86__64.c
diff --git a/emulators/wine-proton/files/patch-dlls_ntdll_unix_system.c b/emulators/wine-proton/files/patch-dlls_ntdll_unix_system.c
new file mode 100644
index 000000000000..fa05443c479a
--- /dev/null
+++ b/emulators/wine-proton/files/patch-dlls_ntdll_unix_system.c
@@ -0,0 +1,23 @@
+--- dlls/ntdll/unix/system.c.orig	2024-04-26 15:24:41 UTC
++++ dlls/ntdll/unix/system.c
+@@ -574,6 +574,7 @@ static void get_cpuinfo( SYSTEM_CPU_INFORMATION *info 
+ 
+ #endif /* End architecture specific feature detection for CPUs */
+ 
++#ifdef __linux__
+ static void fill_performance_core_info(void);
+ static BOOL sysfs_parse_bitmap(const char *filename, ULONG_PTR *mask);
+ 
+@@ -712,6 +713,12 @@ error:
+     cpu_override.mapping.cpu_count = 0;
+     ERR("Invalid WINE_CPU_TOPOLOGY string %s (%s).\n", debugstr_a(env_override), debugstr_a(s));
+ }
++#else
++static void fill_cpu_override(unsigned int)
++{
++    /* do nothing */
++}
++#endif
+ 
+ struct cpu_topology_override *get_cpu_topology_override(void)
+ {
diff --git a/emulators/wine-proton/files/patch-dlls_ntdll_unix_virtual.c b/emulators/wine-proton/files/patch-dlls_ntdll_unix_virtual.c
new file mode 100644
index 000000000000..b010c2d834de
--- /dev/null
+++ b/emulators/wine-proton/files/patch-dlls_ntdll_unix_virtual.c
@@ -0,0 +1,50 @@
+--- dlls/ntdll/unix/virtual.c.orig	2024-04-26 15:24:41 UTC
++++ dlls/ntdll/unix/virtual.c
+@@ -64,9 +64,11 @@
+ # include <mach/mach_vm.h>
+ #endif
+ 
++#ifdef __linux__
+ #include <linux/userfaultfd.h>
+ #include <sys/ioctl.h>
+ #include "uffd_tmp_defs.h"
++#endif
+ 
+ #include <sys/uio.h>
+ 
+@@ -258,6 +260,7 @@ void *anon_mmap_alloc( size_t size, int prot )
+     return mmap( NULL, size, prot, MAP_PRIVATE | MAP_ANON, -1, 0 );
+ }
+ 
++#ifdef __linux__
+ static void kernel_writewatch_softdirty_init(void)
+ {
+     if ((pagemap_reset_fd = open( "/proc/self/pagemap_reset", O_RDONLY | O_CLOEXEC )) == -1) return;
+@@ -494,7 +497,27 @@ static NTSTATUS kernel_get_write_watches( void *base, 
+     }
+     return STATUS_SUCCESS;
+ }
++#else
++static void kernel_writewatch_init(void)
++{
++    use_kernel_writewatch = 0;
++}
+ 
++static void kernel_writewatch_register_range(struct file_view*, void*, size_t)
++{
++    /* do nothing */
++}
++
++static void kernel_writewatch_reset(void*, SIZE_T)
++{
++    abort();
++}
++
++static NTSTATUS kernel_get_write_watches(void*, SIZE_T, void**, ULONG_PTR*, BOOL)
++{
++    abort();
++}
++#endif
+ 
+ static void mmap_add_reserved_area( void *addr, SIZE_T size )
+ {
diff --git a/emulators/wine-proton/files/patch-dlls__wineoss.drv__oss.c b/emulators/wine-proton/files/patch-dlls_wineoss.drv_oss.c
similarity index 100%
rename from emulators/wine-proton/files/patch-dlls__wineoss.drv__oss.c
rename to emulators/wine-proton/files/patch-dlls_wineoss.drv_oss.c
diff --git a/emulators/wine-proton/files/patch-dlls__winepulse.drv__pulse.c b/emulators/wine-proton/files/patch-dlls_winepulse.drv_pulse.c
similarity index 100%
rename from emulators/wine-proton/files/patch-dlls__winepulse.drv__pulse.c
rename to emulators/wine-proton/files/patch-dlls_winepulse.drv_pulse.c
diff --git a/emulators/wine-proton/files/patch-dlls__winevulkan__vulkan.c b/emulators/wine-proton/files/patch-dlls_winevulkan_vulkan.c
similarity index 100%
rename from emulators/wine-proton/files/patch-dlls__winevulkan__vulkan.c
rename to emulators/wine-proton/files/patch-dlls_winevulkan_vulkan.c
diff --git a/emulators/wine-proton/files/patch-include_wine_asm.h b/emulators/wine-proton/files/patch-include_wine_asm.h
new file mode 100644
index 000000000000..f9d791b66580
--- /dev/null
+++ b/emulators/wine-proton/files/patch-include_wine_asm.h
@@ -0,0 +1,14 @@
+--- include/wine/asm.h.orig	2024-02-24 10:23:40.551780000 +0300
++++ include/wine/asm.h	2024-02-24 10:23:43.285931000 +0300
+@@ -242,9 +242,9 @@
+                        ".byte 0x75,0x03\n\t"      /* jne 1f */ \
+                        ".byte 0x0f,0x05\n\t"      /* syscall */ \
+                        ".byte 0xc3\n\t"           /* ret */ \
+-                       "jmp 1f\n\t" \
++                       ".byte 0xeb,0x01\n\t"      /* jmp 1f */ \
+                        ".byte 0xc3\n"             /* ret */ \
+-                       "1:\t.byte 0xff,0x14,0x25\n\t" /* 1: callq *(0x7ffe1000) */ \
++                       ".byte 0xff,0x14,0x25\n\t" /* 1: callq *(0x7ffe1000) */ \
+                        ".long 0x7ffe1000\n\t" \
+                        "ret" )
+ # else
diff --git a/emulators/wine-proton/files/patch-libs__wine__config.c b/emulators/wine-proton/files/patch-libs__wine__config.c
deleted file mode 100644
index fc89f6efc3e0..000000000000
--- a/emulators/wine-proton/files/patch-libs__wine__config.c
+++ /dev/null
@@ -1,11 +0,0 @@
---- libs/wine/config.c.orig	2023-07-17 16:05:30.000000000 +0300
-+++ libs/wine/config.c	2023-09-10 09:32:37.552268000 +0300
-@@ -147,7 +147,7 @@ static char *get_runtime_exedir(void)
-     static int pathname[] = { CTL_KERN, KERN_PROC, KERN_PROC_PATHNAME, -1 };
-     size_t dir_size = PATH_MAX;
-     char *dir = malloc( dir_size );
--    if (dir && !sysctl( pathname, ARRAY_SIZE( pathname ), dir, &dir_size, NULL, 0 ))
-+    if (dir && !sysctl( pathname, sizeof(pathname)/sizeof(pathname[0]), dir, &dir_size, NULL, 0 ))
-         return dir;
-     free( dir );
-     return NULL;
diff --git a/emulators/wine-proton/files/patch-server_token.c b/emulators/wine-proton/files/patch-server_token.c
deleted file mode 100644
index 384adf3085b8..000000000000
--- a/emulators/wine-proton/files/patch-server_token.c
+++ /dev/null
@@ -1,24 +0,0 @@
---- server/token.c.orig	2022-12-18 11:53:01.498015000 +0300
-+++ server/token.c	2022-12-18 11:53:14.540515000 +0300
-@@ -212,10 +212,10 @@ void init_user_sid(void)
-     size_t n;
-     FILE *f;
- 
--    f = fopen( "/etc/machine-id", "r" );
-+    f = fopen( "/var/lib/dbus/machine-id", "r" );
-     if (!f)
-     {
--        fprintf( stderr, "Failed to open /etc/machine-id, error %s.\n", strerror( errno ));
-+        fprintf( stderr, "Failed to open /var/lib/dbus/machine-id, error %s.\n", strerror( errno ));
-         return;
-     }
- 
-@@ -224,7 +224,7 @@ void init_user_sid(void)
- 
-     if (n != 16)
-     {
--        fprintf( stderr, "Failed to read /etc/machine-id, error %s.\n", strerror( errno ));
-+        fprintf( stderr, "Failed to read /var/lib/dbus/machine-id, error %s.\n", strerror( errno ));
-         return;
-     }
-     machine_id[n] = 0;
diff --git a/emulators/wine-proton/files/patch-tools__winebuild__res32.c b/emulators/wine-proton/files/patch-tools_winebuild_res32.c
similarity index 100%
rename from emulators/wine-proton/files/patch-tools__winebuild__res32.c
rename to emulators/wine-proton/files/patch-tools_winebuild_res32.c
diff --git a/emulators/wine-proton/pkg-plist b/emulators/wine-proton/pkg-plist
index a0c50207809f..16a4e8cec183 100644
--- a/emulators/wine-proton/pkg-plist
+++ b/emulators/wine-proton/pkg-plist
@@ -1,6 +1,6 @@
-%%DOCSDIR%%/ANNOUNCE
+%%DOCSDIR%%/ANNOUNCE.md
 %%DOCSDIR%%/AUTHORS
-%%DOCSDIR%%/README
+%%DOCSDIR%%/README.md
 %%PULSEAUDIO%%wine-proton/lib/wine/%%WINEARCH%%-unix/winepulse.so
 %%PULSEAUDIO%%wine-proton/lib/wine/%%WINEARCH%%-windows/winepulse.drv
 %%WINE32%%wine-proton/bin/wine.bin
@@ -77,7 +77,9 @@
 %%WINE64%%wine-proton/bin/wine64.bin
 %%WINE64%%wine-proton/bin/wineserver
 %%WINE64%%wine-proton/lib/wine/%%WINEARCH%%-unix/libwow64.a
-%%WINE64%%wine-proton/lib/wine/%%WINEARCH%%-windows/libwow64.a
+%%WINE64%%wine-proton/lib/wine/%%WINEARCH%%-unix/winewayland.so
+%%WINE64%%wine-proton/lib/wine/%%WINEARCH%%-windows/vcruntime140_1.dll
+%%WINE64%%wine-proton/lib/wine/%%WINEARCH%%-windows/winewayland.drv
 %%WINE64%%wine-proton/lib/wine/%%WINEARCH%%-windows/wow64.dll
 %%WINE64%%wine-proton/lib/wine/%%WINEARCH%%-windows/wow64cpu.dll
 %%WINE64%%wine-proton/lib/wine/%%WINEARCH%%-windows/wow64win.dll
@@ -104,6 +106,7 @@ wine-proton/bin/winemine
 wine-proton/bin/winepath
 wine-proton/bin/wmc
 wine-proton/bin/wrc
+wine-proton/lib/wine/%%WINEARCH%%-unix/amd_ags_x64.so
 wine-proton/lib/wine/%%WINEARCH%%-unix/avicap32.so
 wine-proton/lib/wine/%%WINEARCH%%-unix/bcrypt.so
 wine-proton/lib/wine/%%WINEARCH%%-unix/crypt32.so
@@ -125,6 +128,7 @@ wine-proton/lib/wine/%%WINEARCH%%-unix/libavicap32.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libavifil32.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libavrt.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libbcrypt.a
+wine-proton/lib/wine/%%WINEARCH%%-unix/libbluetoothapis.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libcabinet.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libcards.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libcfgmgr32.a
@@ -132,6 +136,7 @@ wine-proton/lib/wine/%%WINEARCH%%-unix/libclusapi.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libcombase.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libcomctl32.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libcomdlg32.a
+wine-proton/lib/wine/%%WINEARCH%%-unix/libcoml2.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libcompstui.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libcomsvcs.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libcredui.a
@@ -315,8 +320,6 @@ wine-proton/lib/wine/%%WINEARCH%%-unix/libwevtapi.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libwin32u.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libwindowscodecs.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libwindowscodecsext.a
-wine-proton/lib/wine/%%WINEARCH%%-unix/libwine.so.1
-wine-proton/lib/wine/%%WINEARCH%%-unix/libwine.so.1.0
 wine-proton/lib/wine/%%WINEARCH%%-unix/libwinecrt0.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libwined3d.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libwinegstreamer.a
@@ -325,7 +328,6 @@ wine-proton/lib/wine/%%WINEARCH%%-unix/libwinhttp.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libwininet.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libwinmm.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libwinnls32.a
-wine-proton/lib/wine/%%WINEARCH%%-unix/libwinscard.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libwinspool.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libwintab32.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libwintrust.a
@@ -339,6 +341,7 @@ wine-proton/lib/wine/%%WINEARCH%%-unix/libwsdapi.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libwsnmp32.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libwsock32.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libwtsapi32.a
+wine-proton/lib/wine/%%WINEARCH%%-unix/libxaudio2_8.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libxinput.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/libxmllite.a
 wine-proton/lib/wine/%%WINEARCH%%-unix/localspl.so
@@ -355,10 +358,10 @@ wine-proton/lib/wine/%%WINEARCH%%-unix/win32u.so
 wine-proton/lib/wine/%%WINEARCH%%-unix/winebus.so
 wine-proton/lib/wine/%%WINEARCH%%-unix/winegstreamer.so
 wine-proton/lib/wine/%%WINEARCH%%-unix/wineoss.so
+wine-proton/lib/wine/%%WINEARCH%%-unix/wineps.so
 wine-proton/lib/wine/%%WINEARCH%%-unix/winevulkan.so
 wine-proton/lib/wine/%%WINEARCH%%-unix/winex11.so
 wine-proton/lib/wine/%%WINEARCH%%-unix/winspool.so
-wine-proton/lib/wine/%%WINEARCH%%-unix/wpcap.so
 wine-proton/lib/wine/%%WINEARCH%%-unix/ws2_32.so
 wine-proton/lib/wine/%%WINEARCH%%-windows/acledit.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/aclui.dll
@@ -375,6 +378,7 @@ wine-proton/lib/wine/%%WINEARCH%%-windows/amstream.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/apisetschema.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/apphelp.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/appwiz.cpl
+wine-proton/lib/wine/%%WINEARCH%%-windows/appxdeploymentclient.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/arp.exe
 wine-proton/lib/wine/%%WINEARCH%%-windows/aspnet_regiis.exe
 wine-proton/lib/wine/%%WINEARCH%%-windows/atiadlxx.dll
@@ -392,6 +396,7 @@ wine-proton/lib/wine/%%WINEARCH%%-windows/avicap32.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/avifil32.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/avrt.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/bcrypt.dll
+wine-proton/lib/wine/%%WINEARCH%%-windows/bcryptprimitives.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/belauncher.exe
 wine-proton/lib/wine/%%WINEARCH%%-windows/bluetoothapis.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/browseui.dll
@@ -412,6 +417,7 @@ wine-proton/lib/wine/%%WINEARCH%%-windows/combase.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/comcat.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/comctl32.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/comdlg32.dll
+wine-proton/lib/wine/%%WINEARCH%%-windows/coml2.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/compstui.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/comsvcs.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/concrt140.dll
@@ -437,6 +443,7 @@ wine-proton/lib/wine/%%WINEARCH%%-windows/d3d10.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/d3d10core.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/d3d11.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/d3d12.dll
+wine-proton/lib/wine/%%WINEARCH%%-windows/d3d12core.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/d3d8.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/d3d8thk.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/d3d9.dll
@@ -542,6 +549,7 @@ wine-proton/lib/wine/%%WINEARCH%%-windows/dswave.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/dwmapi.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/dwrite.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/dx8vb.dll
+wine-proton/lib/wine/%%WINEARCH%%-windows/dxcore.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/dxdiag.exe
 wine-proton/lib/wine/%%WINEARCH%%-windows/dxdiagn.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/dxgi.dll
@@ -570,9 +578,11 @@ wine-proton/lib/wine/%%WINEARCH%%-windows/gameux.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/gamingtcui.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/gdi32.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/gdiplus.dll
+wine-proton/lib/wine/%%WINEARCH%%-windows/geolocation.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/getminidump.exe
 wine-proton/lib/wine/%%WINEARCH%%-windows/glu32.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/gpkcsp.dll
+wine-proton/lib/wine/%%WINEARCH%%-windows/graphicscapture.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/hal.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/hh.exe
 wine-proton/lib/wine/%%WINEARCH%%-windows/hhctrl.ocx
@@ -582,8 +592,10 @@ wine-proton/lib/wine/%%WINEARCH%%-windows/hidparse.sys
 wine-proton/lib/wine/%%WINEARCH%%-windows/hlink.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/hnetcfg.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/hostname.exe
+wine-proton/lib/wine/%%WINEARCH%%-windows/hrtfapo.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/http.sys
 wine-proton/lib/wine/%%WINEARCH%%-windows/httpapi.dll
+wine-proton/lib/wine/%%WINEARCH%%-windows/hvsimanagementapi.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/ia2comproxy.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/icacls.exe
 wine-proton/lib/wine/%%WINEARCH%%-windows/iccvid.dll
@@ -613,6 +625,7 @@ wine-proton/lib/wine/%%WINEARCH%%-windows/jscript.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/jsproxy.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/kernel32.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/kernelbase.dll
+wine-proton/lib/wine/%%WINEARCH%%-windows/klist.exe
 wine-proton/lib/wine/%%WINEARCH%%-windows/ksecdd.sys
 wine-proton/lib/wine/%%WINEARCH%%-windows/ksproxy.ax
 wine-proton/lib/wine/%%WINEARCH%%-windows/ksuser.dll
@@ -633,6 +646,7 @@ wine-proton/lib/wine/%%WINEARCH%%-windows/libavicap32.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libavifil32.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libavrt.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libbcrypt.a
+wine-proton/lib/wine/%%WINEARCH%%-windows/libbluetoothapis.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libcabinet.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libcards.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libcfgmgr32.a
@@ -640,6 +654,7 @@ wine-proton/lib/wine/%%WINEARCH%%-windows/libclusapi.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libcombase.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libcomctl32.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libcomdlg32.a
+wine-proton/lib/wine/%%WINEARCH%%-windows/libcoml2.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libcompstui.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libcomsvcs.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libcredui.a
@@ -831,7 +846,6 @@ wine-proton/lib/wine/%%WINEARCH%%-windows/libwinhttp.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libwininet.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libwinmm.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libwinnls32.a
-wine-proton/lib/wine/%%WINEARCH%%-windows/libwinscard.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libwinspool.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libwintab32.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libwintrust.a
@@ -840,11 +854,13 @@ wine-proton/lib/wine/%%WINEARCH%%-windows/libwldap32.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libwmcodecdspuuid.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libwmvcore.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libwnaspi32.a
+wine-proton/lib/wine/%%WINEARCH%%-windows/libwow64.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libws2_32.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libwsdapi.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libwsnmp32.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libwsock32.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libwtsapi32.a
+wine-proton/lib/wine/%%WINEARCH%%-windows/libxaudio2_8.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libxinput.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/libxmllite.a
 wine-proton/lib/wine/%%WINEARCH%%-windows/light.msstyles
@@ -853,6 +869,7 @@ wine-proton/lib/wine/%%WINEARCH%%-windows/localspl.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/localui.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/lodctr.exe
 wine-proton/lib/wine/%%WINEARCH%%-windows/lz32.dll
+wine-proton/lib/wine/%%WINEARCH%%-windows/magnification.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/mapi32.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/mapistub.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/mciavi32.dll
@@ -922,6 +939,7 @@ wine-proton/lib/wine/%%WINEARCH%%-windows/msscript.ocx
 wine-proton/lib/wine/%%WINEARCH%%-windows/mssign32.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/mssip32.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/mstask.dll
+wine-proton/lib/wine/%%WINEARCH%%-windows/msttsengine.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/msv1_0.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/msvcirt.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/msvcm80.dll
@@ -934,6 +952,7 @@ wine-proton/lib/wine/%%WINEARCH%%-windows/msvcp120.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/msvcp140_1.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/msvcp140_2.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/msvcp140_atomic_wait.dll
+wine-proton/lib/wine/%%WINEARCH%%-windows/msvcp140_codecvt_ids.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/msvcp140.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/msvcp60.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/msvcp70.dll
@@ -1009,6 +1028,7 @@ wine-proton/lib/wine/%%WINEARCH%%-windows/photometadatahandler.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/pidgen.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/ping.exe
 wine-proton/lib/wine/%%WINEARCH%%-windows/plugplay.exe
+wine-proton/lib/wine/%%WINEARCH%%-windows/pnputil.exe
 wine-proton/lib/wine/%%WINEARCH%%-windows/powershell.exe
 wine-proton/lib/wine/%%WINEARCH%%-windows/powrprof.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/presentationfontcache.exe
@@ -1054,6 +1074,7 @@ wine-proton/lib/wine/%%WINEARCH%%-windows/sapi.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/sas.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/sc.exe
 wine-proton/lib/wine/%%WINEARCH%%-windows/scarddlg.dll
+wine-proton/lib/wine/%%WINEARCH%%-windows/scardsvr.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/sccbase.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/schannel.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/schedsvc.dll
@@ -1091,6 +1112,7 @@ wine-proton/lib/wine/%%WINEARCH%%-windows/spoolsv.exe
 wine-proton/lib/wine/%%WINEARCH%%-windows/sppc.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/srclient.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/srvcli.dll
+wine-proton/lib/wine/%%WINEARCH%%-windows/srvsvc.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/sspicli.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/start.exe
 wine-proton/lib/wine/%%WINEARCH%%-windows/stdole2.tlb
@@ -1141,7 +1163,6 @@ wine-proton/lib/wine/%%WINEARCH%%-windows/vcomp110.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/vcomp120.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/vcomp140.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/vcomp90.dll
-wine-proton/lib/wine/%%WINEARCH%%-windows/vcruntime140_1.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/vcruntime140.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/vdmdbg.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/version.dll
@@ -1164,14 +1185,24 @@ wine-proton/lib/wine/%%WINEARCH%%-windows/whoami.exe
 wine-proton/lib/wine/%%WINEARCH%%-windows/wiaservc.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/wimgapi.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/win32u.dll
+wine-proton/lib/wine/%%WINEARCH%%-windows/windows.applicationmodel.dll
+wine-proton/lib/wine/%%WINEARCH%%-windows/windows.devices.bluetooth.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/windows.devices.enumeration.dll
+wine-proton/lib/wine/%%WINEARCH%%-windows/windows.devices.usb.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/windows.gaming.input.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/windows.gaming.ui.gamebar.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/windows.globalization.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/windows.media.devices.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/windows.media.dll
+wine-proton/lib/wine/%%WINEARCH%%-windows/windows.media.mediacontrol.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/windows.media.speech.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/windows.networking.dll
+wine-proton/lib/wine/%%WINEARCH%%-windows/windows.networking.hostname.dll
+wine-proton/lib/wine/%%WINEARCH%%-windows/windows.perception.stub.dll
+wine-proton/lib/wine/%%WINEARCH%%-windows/windows.security.credentials.ui.userconsentverifier.dll
+wine-proton/lib/wine/%%WINEARCH%%-windows/windows.storage.applicationdata.dll
+wine-proton/lib/wine/%%WINEARCH%%-windows/windows.system.profile.systemmanufacturers.dll
+wine-proton/lib/wine/%%WINEARCH%%-windows/windows.ui.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/windowscodecs.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/windowscodecsext.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/wineboot.exe
@@ -1186,6 +1217,7 @@ wine-proton/lib/wine/%%WINEARCH%%-windows/winefile.exe
 wine-proton/lib/wine/%%WINEARCH%%-windows/winegstreamer.dll
 wine-proton/lib/wine/%%WINEARCH%%-windows/winehid.sys
 wine-proton/lib/wine/%%WINEARCH%%-windows/winemapi.dll
+wine-proton/lib/wine/%%WINEARCH%%-windows/winemenubuilder.exe
 wine-proton/lib/wine/%%WINEARCH%%-windows/winemine.exe
*** 26 LINES SKIPPED ***