regenerate vulkan files
authorMichael Gilbert <mgilbert@debian.org>
Sat, 19 Mar 2022 00:48:02 +0000 (00:48 +0000)
committerPeter Michael Green <plugwash@raspbian.org>
Sat, 19 Mar 2022 00:48:02 +0000 (00:48 +0000)
Gbp-Pq: Topic generate
Gbp-Pq: Name vulkan.patch

dlls/wined3d/adapter_vk.c
dlls/wined3d/utils.c
dlls/winevulkan/make_vulkan

index 0404aa1877b6b356975b078789d12ffafd67e50f..dbdfb6a993b5ae881118562ce22aaaae42932c5b 100644 (file)
@@ -2162,7 +2162,7 @@ static bool wined3d_adapter_vk_init_device_extensions(struct wined3d_adapter_vk
     {
         {VK_EXT_TRANSFORM_FEEDBACK_EXTENSION_NAME,          ~0u},
         {VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME,    ~0u,                true},
-        {VK_KHR_MAINTENANCE1_EXTENSION_NAME,                VK_API_VERSION_1_1, true},
+        {VK_KHR_MAINTENANCE_1_EXTENSION_NAME,               VK_API_VERSION_1_1, true},
         {VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME,      VK_API_VERSION_1_1, true},
         {VK_KHR_SWAPCHAIN_EXTENSION_NAME,                   ~0u,                true},
     };
index 58f214b51caaa786d2fede10b4a33e6b3aca115a..dc5bf37771827117c2b7e07dd5a6abce3788cd76 100644 (file)
@@ -5305,9 +5305,9 @@ const char *wined3d_debug_vkresult(VkResult vr)
     switch (vr)
     {
 #define WINED3D_TO_STR(x) case x: return #x
-        WINED3D_TO_STR(VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS_KHR);
+        WINED3D_TO_STR(VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS);
         WINED3D_TO_STR(VK_ERROR_NOT_PERMITTED_EXT);
-        WINED3D_TO_STR(VK_ERROR_FRAGMENTATION_EXT);
+        WINED3D_TO_STR(VK_ERROR_FRAGMENTATION);
         WINED3D_TO_STR(VK_ERROR_INVALID_EXTERNAL_HANDLE);
         WINED3D_TO_STR(VK_ERROR_OUT_OF_POOL_MEMORY);
         WINED3D_TO_STR(VK_ERROR_INVALID_SHADER_NV);
index 0ad169d5e7894b3aff5fbd85e1ca42c540e9eeaa..fd9ef3860e89b5f8797f7abff8d689795272aa58 100755 (executable)
@@ -312,6 +312,8 @@ class VkDefine(object):
             # This complicates TRACEs in the thunks, so just use uint64_t.
             if name == "VK_DEFINE_NON_DISPATCHABLE_HANDLE":
                 value = "#define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef uint64_t object;"
+            elif name == "VK_NULL_HANDLE": # Also VK_NULL_HANDLE type needs to match.
+                value = "#define VK_NULL_HANDLE UINT64_C(0)"
             else:
                 value = define.text
             return VkDefine(name, value)
@@ -1072,7 +1074,7 @@ class VkMember(object):
         if self.needs_conversion():
             if self.is_dynamic_array():
                 if direction == Direction.OUTPUT:
-                    LOGGER.warn("TODO: implement copying of returnedonly dynamic array for {0}.{1}".format(self.type, self.name))
+                    LOGGER.warning("TODO: implement copying of returnedonly dynamic array for {0}.{1}".format(self.type, self.name))
                 else:
                     # Array length is either a variable name (string) or an int.
                     count = self.dyn_array_len if isinstance(self.dyn_array_len, int) else "{0}{1}".format(input, self.dyn_array_len)
@@ -1084,7 +1086,7 @@ class VkMember(object):
                     return "convert_{0}_static_array_host_to_win({2}{1}, {3}{1}, {4});\n".format(self.type, self.name, input, output, count)
                 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))
             else:
                 if direction == Direction.OUTPUT:
                     return "convert_{0}_host_to_win(&{2}{1}, &{3}{1});\n".format(self.type, self.name, input, output)
@@ -1300,7 +1302,7 @@ class VkParam(object):
         # Since we have parsed all types before hand, this should not happen.
         type_info = types.get(type_elem.text, None)
         if type_info is None:
-            LOGGER.err("type info not found for: {0}".format(type_elem.text))
+            LOGGER.error("type info not found for: {0}".format(type_elem.text))
 
         return VkParam(type_info, const=const, pointer=pointer, name=name, array_len=array_len, dyn_array_len=dyn_array_len)
 
@@ -1366,7 +1368,10 @@ class VkParam(object):
         if self.is_static_array() or self.is_pointer():
             self.format_str = "%p"
         else:
-            if self.type_info["category"] in ["bitmask", "enum"]:
+            if self.type == "VkPipelineStageFlags2" or self.type == "VkPipelineStageFlags2KHR":
+                self.format_str = "0x%s"
+                self.format_conv = "wine_dbgstr_longlong({0})"
+            elif self.type_info["category"] in ["bitmask", "enum"]:
                 self.format_str = "%#x"
             elif self.is_handle():
                 # We use uint64_t for non-dispatchable handles as opposed to pointers
@@ -1396,7 +1401,7 @@ class VkParam(object):
                 # Don't care about Linux specific types.
                 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):
         if direction == Direction.INPUT:
@@ -2162,7 +2167,9 @@ 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; DO NOT EDIT!\n")
+        f.write("Automatically generated from ")
+        f.write(self.registry._filename)
+        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()])
@@ -2635,6 +2642,7 @@ class VkRegistry(object):
         self.funcpointers = None
         self.handles = None
         self.structs = None
+        self._filename = reg_filename
 
         # We aggregate all types in here for cross-referencing.
         self.funcs = {}
@@ -3191,11 +3199,6 @@ def set_working_directory():
     path = os.path.dirname(path)
     os.chdir(path)
 
-def download_vk_xml(filename):
-    url = "https://raw.githubusercontent.com/KhronosGroup/Vulkan-Docs/v{0}/xml/vk.xml".format(VK_XML_VERSION)
-    if not os.path.isfile(filename):
-        urllib.request.urlretrieve(url, filename)
-
 def main():
     parser = argparse.ArgumentParser()
     parser.add_argument("-v", "--verbose", action="count", default=0, help="increase output verbosity")
@@ -3215,7 +3218,6 @@ def main():
         vk_xml = args.xml
     else:
         vk_xml = "vk-{0}.xml".format(VK_XML_VERSION)
-        download_vk_xml(vk_xml)
 
     registry = VkRegistry(vk_xml)
     generator = VkGenerator(registry)