Source: wine
Version: 10.0~repack-3
Severity: normal
Tags: patch
X-Debbugs-Cc: f...@morgwai.pl

After the update of Vulkan libs in trixie, when using DXVK most Wine apps fail
to start and exit with the error message included in the subject. Updating the
Vulkan
version in the patch generate/vulkan.patch from '1.3.296' to '1.4.309' (the
current one for trixie) and rebuilding solves the issue.

description: regenerate vulkan files
forwarded: not-needed
author: Michael Gilbert <mgilb...@debian.org>

--- a/dlls/winevulkan/make_vulkan
+++ b/dlls/winevulkan/make_vulkan
@@ -64,8 +64,8 @@ from enum import Enum
 LOGGER = logging.Logger("vulkan")
 LOGGER.addHandler(logging.StreamHandler())

-VK_XML_VERSION = "1.4.303"
+VK_XML_VERSION = "1.4.309"
 WINE_VK_VERSION = (1, 4)

 # Filenames to create.
 WINE_VULKAN_H = "../../include/wine/vulkan.h"
@@ -1550,14 +1550,14 @@ class VkMember(VkVariable):
             elif self.is_static_array():
                 count = self.array_lens[0]
                 if len(self.array_lens) > 1:
-                    LOGGER.warn("TODO: implement conversion of
multidimensional static array for {0}.{1}".format(self.type, self.name))
+                    LOGGER.warning("TODO: implement conversion of
multidimensional static array for {0}.{1}".format(self.type, self.name))
                 elif direction == Direction.OUTPUT:
                     # Needed by VkMemoryHeap.memoryHeaps
                     return "convert_{0}_array_{5}({2}{1}, {3}{1},
{4});\n".format(self.type,
                         self.name, input, output, count, suffix)
                 else:
                     # Nothing needed this yet.
-                    LOGGER.warn("TODO: implement copying of static array for
{0}.{1}".format(self.type, self.name))
+                    LOGGER.warning("TODO: implement copying of static array
for {0}.{1}".format(self.type, self.name))
             elif self.is_handle() and self.is_wrapped():
                 handle = self.type_info["data"]
                 if direction == Direction.OUTPUT:
@@ -1788,7 +1788,7 @@ class VkParam(VkVariable):
                 # Don't care about specific types for non-Windows platforms.
                 self.format_str = ""
             else:
-                LOGGER.warn("Unhandled type: {0}".format(self.type_info))
+                LOGGER.warning("Unhandled type: {0}".format(self.type_info))

     def copy(self, direction, conv, unwrap, prefix=""):
         win_type = "win32" if conv else "win64"
@@ -2700,7 +2700,12 @@ class VkGenerator(object):

     def _generate_copyright(self, f, spec_file=False):
         f.write("# " if spec_file else "/* ")
-        f.write("Automatically generated from Vulkan vk.xml and video.xml; DO
NOT EDIT!\n")
+        f.write("Automatically generated from ")
+        f.write(self.registry._vk)
+        f.write(" and ")
+        f.write(self.registry._video)
+        f.write("; DO NOT EDIT!\n")
+
         lines = ["", "This file is generated from Vulkan vk.xml file covered",
             "by the following copyright and permission notice:"]
         lines.extend([l.rstrip(" ") for l in
self.registry.copyright.splitlines()])
@@ -3198,6 +3203,8 @@ class VkRegistry(object):
         self.funcpointers = None
         self.handles = None
         self.structs = None
+        self._vk = vk_xml
+        self._video = video_xml

         # We aggregate all types in here for cross-referencing.
         self.funcs = {}
@@ -3844,11 +3851,6 @@ def set_working_directory():
     path = os.path.dirname(path)
     os.chdir(path)

-def download_vk_xml(dst_filename, src_filename):
-    url = "https://raw.githubusercontent.com/KhronosGroup/Vulkan-
Docs/v{0}/xml/{1}".format(VK_XML_VERSION, src_filename)
-    if not os.path.isfile(dst_filename):
-        urllib.request.urlretrieve(url, dst_filename)
-
 def main():
     parser = argparse.ArgumentParser()
     parser.add_argument("-v", "--verbose", action="count", default=0,
help="increase output verbosity")
@@ -3865,23 +3867,15 @@ def main():

     set_working_directory()

-    if "XDG_CACHE_HOME" in os.environ:
-        cache = os.path.expandvars("$XDG_CACHE_HOME/wine")
-    else:
-        cache = os.path.expandvars("$HOME/.cache/wine")
-    os.makedirs(cache, exist_ok=True)
-
     if args.xml:
         vk_xml = args.xml
     else:
         vk_xml = os.path.join(cache, "vk-{0}.xml".format(VK_XML_VERSION))
-        download_vk_xml(vk_xml, "vk.xml")

     if args.video_xml:
         video_xml = args.video_xml
     else:
         video_xml = os.path.join(cache,
"video-{0}.xml".format(VK_XML_VERSION))
-        download_vk_xml(video_xml, "video.xml")

     registry = VkRegistry(vk_xml, video_xml)
     generator = VkGenerator(registry)


-- System Information:
Debian Release: trixie/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 6.14-amd64 (SMP w/4 CPU threads; PREEMPT)
Kernel taint flags: TAINT_USER, TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=en_IE.UTF-8, LC_CTYPE=en_IE.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Reply via email to