summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEmil Velikov <emil.velikov@collabora.com>2017-02-28 18:53:04 +0000
committerEmil Velikov <emil.l.velikov@gmail.com>2017-02-28 18:53:04 +0000
commitca7d2025a7547275101efbca0b45adb67f8fa59d (patch)
tree8fb0fbc0c67efe47a9c9e6a3ab9b1469e62e3e6f
parent14281c9035d6b30cda08fd6ab573ee3bfafa2c2d (diff)
vulkan: provide vk.xml as argument to the python generator
Do not hardcode the file in the python script, but pass it via the build system(s). The latter is the only one that should know about the file location/tree structure. Cc: Dylan Baker <dylan@pnwbakers.com> Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com>
-rw-r--r--src/vulkan/Android.mk2
-rw-r--r--src/vulkan/Makefile.am2
-rw-r--r--src/vulkan/util/gen_enum_to_str.py5
3 files changed, 4 insertions, 5 deletions
diff --git a/src/vulkan/Android.mk b/src/vulkan/Android.mk
index 0825c1ac108..9f71d8ff8f3 100644
--- a/src/vulkan/Android.mk
+++ b/src/vulkan/Android.mk
@@ -45,7 +45,7 @@ vulkan_api_xml = $(MESA_TOP)/src/vulkan/registry/vk.xml
$(LOCAL_GENERATED_SOURCES): $(MESA_TOP)/src/vulkan/util/gen_enum_to_str.py $(vulkan_api_xml)
@echo "target Generated: $(PRIVATE_MODULE) <= $(notdir $(@))"
@mkdir -p $(dir $@)
- $(hide) $(MESA_PYTHON2) $(MESA_TOP)/src/vulkan/util/gen_enum_to_str.py --outdir $(intermediates)/util
+ $(hide) $(MESA_PYTHON2) $(MESA_TOP)/src/vulkan/util/gen_enum_to_str.py --xml $(vulkan_api_xml) --outdir $(intermediates)/util
LOCAL_EXPORT_C_INCLUDE_DIRS := \
$(intermediates)
diff --git a/src/vulkan/Makefile.am b/src/vulkan/Makefile.am
index e28a81c8cf7..f7aca8e9371 100644
--- a/src/vulkan/Makefile.am
+++ b/src/vulkan/Makefile.am
@@ -16,7 +16,7 @@ BUILT_SOURCES = \
util/vk_enum_to_str.c util/vk_enum_to_str.h: util/gen_enum_to_str.py $(vulkan_api_xml)
$(MKDIR_GEN)
- $(PYTHON_GEN) $(srcdir)/util/gen_enum_to_str.py --outdir $(top_builddir)/src/vulkan/util
+ $(PYTHON_GEN) $(srcdir)/util/gen_enum_to_str.py --xml $(vulkan_api_xml) --outdir $(top_builddir)/src/vulkan/util
libvulkan_util_la_SOURCES = $(VULKAN_UTIL_GENERATED_FILES)
diff --git a/src/vulkan/util/gen_enum_to_str.py b/src/vulkan/util/gen_enum_to_str.py
index 8c11569b6ae..fb31addf94f 100644
--- a/src/vulkan/util/gen_enum_to_str.py
+++ b/src/vulkan/util/gen_enum_to_str.py
@@ -29,8 +29,6 @@ import xml.etree.cElementTree as et
from mako.template import Template
-VK_XML = os.path.join(os.path.dirname(__file__), '..', 'registry', 'vk.xml')
-
COPYRIGHT = textwrap.dedent(u"""\
* Copyright © 2017 Intel Corporation
*
@@ -160,13 +158,14 @@ def xml_parser(filename):
def main():
parser = argparse.ArgumentParser()
+ parser.add_argument('--xml', help='Vulkan API XML file.', required=True)
parser.add_argument('--outdir',
help='Directory to put the generated files in',
required=True)
args = parser.parse_args()
- enums = xml_parser(VK_XML)
+ enums = xml_parser(args.xml)
for template, file_ in [(C_TEMPLATE, os.path.join(args.outdir, 'vk_enum_to_str.c')),
(H_TEMPLATE, os.path.join(args.outdir, 'vk_enum_to_str.h'))]:
with open(file_, 'wb') as f: