Module: wine Branch: master Commit: 427f3599103cf07de45e6dc008dbbd5dcc5f183b URL: https://source.winehq.org/git/wine.git/?a=commit;h=427f3599103cf07de45e6dc00...
Author: Jacek Caban jacek@codeweavers.com Date: Fri Jul 20 12:49:06 2018 +0200
wine/vulkan.h: Properly declare enum values that use value attribute in spec.
Signed-off-by: Jacek Caban jacek@codeweavers.com Signed-off-by: Józef Kucia jkucia@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/winevulkan/make_vulkan | 12 +++++++----- include/wine/vulkan.h | 5 ++--- 2 files changed, 9 insertions(+), 8 deletions(-)
diff --git a/dlls/winevulkan/make_vulkan b/dlls/winevulkan/make_vulkan index a7dc040..fe742b7 100755 --- a/dlls/winevulkan/make_vulkan +++ b/dlls/winevulkan/make_vulkan @@ -2490,11 +2490,12 @@ class VkRegistry(object): self.enums = OrderedDict(sorted(enums.items()))
def _process_require_enum(self, enum_elem, ext=None): + if "extends" in enum_elem.keys(): + enum = self.types[enum_elem.attrib["extends"]]["data"] + if "bitpos" in enum_elem.keys(): # We need to add an extra value to an existing enum type. # E.g. VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG to VkFormatFeatureFlagBits. - type_name = enum_elem.attrib["extends"] - enum = self.types[type_name]["data"] enum.add(VkEnumValue(enum_elem.attrib["name"], 1 << int(enum_elem.attrib["bitpos"]), hex=True))
elif "offset" in enum_elem.keys(): @@ -2512,12 +2513,13 @@ class VkRegistry(object): if direction is not None: value = -value
- type_name = enum_elem.attrib["extends"] - enum = self.types[type_name]["data"] enum.add(VkEnumValue(enum_elem.attrib["name"], value))
elif "value" in enum_elem.keys(): - self.consts.append(VkConstant(enum_elem.attrib.get("name"), enum_elem.attrib.get("value"))) + enum.add(VkEnumValue(enum_elem.attrib["name"], int(enum_elem.attrib["value"]))) + + elif "value" in enum_elem.keys(): + self.consts.append(VkConstant(enum_elem.attrib["name"], enum_elem.attrib["value"]))
def _parse_extensions(self, root): """ Parse extensions section and pull in any types and commands for this extensioin. """ diff --git a/include/wine/vulkan.h b/include/wine/vulkan.h index 965e26f..31e8e5c 100644 --- a/include/wine/vulkan.h +++ b/include/wine/vulkan.h @@ -94,7 +94,6 @@ #define VK_EXT_DEPTH_RANGE_UNRESTRICTED_EXTENSION_NAME "VK_EXT_depth_range_unrestricted" #define VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_SPEC_VERSION 1 #define VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_EXTENSION_NAME "VK_KHR_sampler_mirror_clamp_to_edge" -#define VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE 4 #define VK_IMG_FILTER_CUBIC_SPEC_VERSION 1 #define VK_IMG_FILTER_CUBIC_EXTENSION_NAME "VK_IMG_filter_cubic" #define VK_AMD_RASTERIZATION_ORDER_SPEC_VERSION 1 @@ -143,14 +142,12 @@ #define VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME "VK_KHR_device_group_creation" #define VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION 2 #define VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME "VK_KHR_push_descriptor" -#define VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR 1 #define VK_KHR_16BIT_STORAGE_SPEC_VERSION 1 #define VK_KHR_16BIT_STORAGE_EXTENSION_NAME "VK_KHR_16bit_storage" #define VK_KHR_INCREMENTAL_PRESENT_SPEC_VERSION 1 #define VK_KHR_INCREMENTAL_PRESENT_EXTENSION_NAME "VK_KHR_incremental_present" #define VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION 1 #define VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME "VK_KHR_descriptor_update_template" -#define VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR 1 #define VK_NV_CLIP_SPACE_W_SCALING_SPEC_VERSION 1 #define VK_NV_CLIP_SPACE_W_SCALING_EXTENSION_NAME "VK_NV_clip_space_w_scaling" #define VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_SPEC_VERSION 1 @@ -706,6 +703,7 @@ typedef enum VkDescriptorType typedef enum VkDescriptorUpdateTemplateType { VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET = 0, + VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR = 1, VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_MAX_ENUM = 0x7fffffff, } VkDescriptorUpdateTemplateType;
@@ -1481,6 +1479,7 @@ typedef enum VkSamplerAddressMode VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT = 1, VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE = 2, VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER = 3, + VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE = 4, VK_SAMPLER_ADDRESS_MODE_MAX_ENUM = 0x7fffffff, } VkSamplerAddressMode;