summaryrefslogtreecommitdiffstats
path: root/src/mesa
diff options
context:
space:
mode:
authorPaul Berry <[email protected]>2012-11-07 13:03:13 -0800
committerTimothy Arceri <[email protected]>2017-03-16 14:14:18 +1100
commit05dd4a1104ea815e4627bab0fbd35d9abe49f024 (patch)
tree60ba154ffd5b79821eb7c21373dd2a16d4bc6d96 /src/mesa
parentf05524ffaa98488c3faecebe952f1676fbb6a09c (diff)
glapi: Generate GL API marshalling code from the XML.
This is not yet used in the build, just generated. v2: Add missing build dependencies. v3: Avoid mixing declarations and code, remove logic for avoiding emitting code that the compiler's optimizer can deal with anyway. v4: (Timothy Arceri) move safe_mul() genereation here from a later patch. Acked-by: Timothy Arceri <[email protected]> Acked-by: Marek Olšák <[email protected]> Tested-by: Dieter Nützel <[email protected]> Tested-by: Mike Lothian <[email protected]>
Diffstat (limited to 'src/mesa')
-rw-r--r--src/mesa/Android.gen.mk12
-rw-r--r--src/mesa/SConscript16
-rw-r--r--src/mesa/main/.gitignore2
3 files changed, 30 insertions, 0 deletions
diff --git a/src/mesa/Android.gen.mk b/src/mesa/Android.gen.mk
index a985f0a64b1..a1e58a6d3b8 100644
--- a/src/mesa/Android.gen.mk
+++ b/src/mesa/Android.gen.mk
@@ -113,6 +113,18 @@ $(intermediates)/main/api_exec.c: PRIVATE_XML := -f $(glapi)/gl_and_es_API.xml
$(intermediates)/main/api_exec.c: $(dispatch_deps)
$(call es-gen)
+$(intermediates)/main/marshal_generated.c: PRIVATE_SCRIPT := $(MESA_PYTHON2) $(glapi)/gl_marshal.py
+$(intermediates)/main/marshal_generated.c: PRIVATE_XML := -f $(glapi)/gl_and_es_API.xml
+
+$(intermediates)/main/marshal_generated.c: $(dispatch_deps)
+ $(call es-gen)
+
+$(intermediates)/main/marshal_generated.h: PRIVATE_SCRIPT := $(MESA_PYTHON2) $(glapi)/gl_marshal_h.py
+$(intermediates)/main/marshal_generated.h: PRIVATE_XML := -f $(glapi)/gl_and_es_API.xml
+
+$(intermediates)/main/marshal_generated.h: $(dispatch_deps)
+ $(call es-gen)
+
GET_HASH_GEN := $(LOCAL_PATH)/main/get_hash_generator.py
$(intermediates)/main/get_hash.h: PRIVATE_SCRIPT := $(MESA_PYTHON2) $(GET_HASH_GEN)
diff --git a/src/mesa/SConscript b/src/mesa/SConscript
index e375de6ee77..9398ddb13bf 100644
--- a/src/mesa/SConscript
+++ b/src/mesa/SConscript
@@ -118,6 +118,22 @@ if env['platform'] not in ('cygwin', 'darwin', 'windows', 'haiku'):
env.Prepend(CPPPATH = [matypes[0].dir])
+# The marshal_generated.c file is generated from the GL/ES API.xml file
+env.CodeGenerate(
+ target = 'main/marshal_generated.c',
+ script = GLAPI + 'gen/gl_marshal.py',
+ source = GLAPI + 'gen/gl_and_es_API.xml',
+ command = python_cmd + ' $SCRIPT -f $SOURCE > $TARGET'
+ )
+
+# The marshal_generated.h file is generated from the GL/ES API.xml file
+env.CodeGenerate(
+ target = 'main/marshal_generated.h',
+ script = GLAPI + 'gen/gl_marshal_h.py',
+ source = GLAPI + 'gen/gl_and_es_API.xml',
+ command = python_cmd + ' $SCRIPT -f $SOURCE > $TARGET'
+ )
+
#
# Libraries
#
diff --git a/src/mesa/main/.gitignore b/src/mesa/main/.gitignore
index a4da567c94e..836d8f104a8 100644
--- a/src/mesa/main/.gitignore
+++ b/src/mesa/main/.gitignore
@@ -8,3 +8,5 @@ format_info.h
format_info.c
format_pack.c
format_unpack.c
+marshal_generated.c
+marshal_generated.h