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