anv: use the platform defines in vk.xml instead of hard-coding them
authorEric Engestrom <eric.engestrom@intel.com>
Wed, 27 Feb 2019 12:20:31 +0000 (12:20 +0000)
committerEric Engestrom <eric@engestrom.ch>
Tue, 5 Mar 2019 11:57:10 +0000 (11:57 +0000)
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
src/intel/vulkan/anv_entrypoints_gen.py

index 8e815b102ea41ddf4565db3d480449b5dce9c3c7..4dfde4513f074973988c6e1edcfebe56f0d15398 100644 (file)
@@ -582,12 +582,15 @@ def get_entrypoints_defines(doc):
     """Maps entry points to extension defines."""
     entrypoints_to_defines = {}
 
+    platform_define = {}
+    for platform in doc.findall('./platforms/platform'):
+        name = platform.attrib['name']
+        define = platform.attrib['protect']
+        platform_define[name] = define
+
     for extension in doc.findall('./extensions/extension[@platform]'):
         platform = extension.attrib['platform']
-        ext = '_KHR'
-        if platform.upper() == 'XLIB_XRANDR':
-            ext = '_EXT'
-        define = 'VK_USE_PLATFORM_' + platform.upper() + ext
+        define = platform_define[platform]
 
         for entrypoint in extension.findall('./require/command'):
             fullname = entrypoint.attrib['name']