diff options
| author | Brian Paul <brianp@vmware.com> | 2012-05-30 10:08:11 -0600 |
|---|---|---|
| committer | Brian Paul <brianp@vmware.com> | 2012-05-31 09:40:35 -0600 |
| commit | dff36e900c645401b26c9a44106459e96ee7a24d (patch) | |
| tree | 7ca932a8752ad8bb7ab215d1d496aa696b8ceec8 /src/glx/SConscript | |
| parent | 185ed2105829d6f5eb19edb9abbf0d7977e157c3 (diff) | |
| download | external_mesa3d-dff36e900c645401b26c9a44106459e96ee7a24d.tar.gz external_mesa3d-dff36e900c645401b26c9a44106459e96ee7a24d.tar.bz2 external_mesa3d-dff36e900c645401b26c9a44106459e96ee7a24d.zip | |
scons: add code to generate the various GL API files
This fixes recent build breakage when we began building the generated
API files from xml as part of the normal build process.
Fixes http://bugs.freedesktop.org/show_bug.cgi?id=50475
Diffstat (limited to 'src/glx/SConscript')
| -rw-r--r-- | src/glx/SConscript | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/src/glx/SConscript b/src/glx/SConscript index 17a5690ee8..664cb86268 100644 --- a/src/glx/SConscript +++ b/src/glx/SConscript @@ -1,8 +1,11 @@ Import('*') +from sys import executable as python_cmd + env = env.Clone() env.Prepend(CPPPATH = [ + '.', # the build/<platform>/glx/ directory '#include', '#include/GL/internal', '#src/mesa', @@ -80,6 +83,54 @@ libgl = env.SharedLibrary( source = sources, ) + +# Generate GLX-specific .c and .h files here. Other GL API-related +# files are used, but they're generated in mapi/glapi/gen/ since they're +# used by other targets as well. + +GLAPI = '#src/mapi/glapi/' + +env.CodeGenerate( + target = 'indirect.c', + script = GLAPI + 'gen/glX_proto_send.py', + source = GLAPI + 'gen/gl_and_es_API.xml', + command = python_cmd + ' $SCRIPT -f $SOURCE -m proto > $TARGET' + ) + +env.CodeGenerate( + target = 'indirect_size.c', + script = GLAPI + 'gen/glX_proto_size.py', + source = GLAPI + 'gen/gl_API.xml', + command = python_cmd + ' $SCRIPT -f $SOURCE -m size_c --only-set > $TARGET' +) + +env.CodeGenerate( + target = 'indirect_init.c', + script = GLAPI + 'gen/glX_proto_send.py', + source = GLAPI + 'gen/gl_API.xml', + command = python_cmd + ' $SCRIPT -f $SOURCE -m init_c > $TARGET' +) + +headers = [] + +headers += env.CodeGenerate( + target = 'indirect_size.h', + script = GLAPI + 'gen/glX_proto_size.py', + source = GLAPI + 'gen/gl_API.xml', + command = python_cmd + ' $SCRIPT -f $SOURCE -m size_h --only-set -h _INDIRECT_SIZE_H > $TARGET' +) + +headers += env.CodeGenerate( + target = 'indirect.h', + script = GLAPI + 'gen/glX_proto_send.py', + source = GLAPI + 'gen/gl_API.xml', + command = python_cmd + ' $SCRIPT -m init_h -f $SOURCE > $TARGET', + ) + + +env.Depends(sources, headers) + + libgl = env.InstallSharedLibrary(libgl, version=(1, 2)) env.Alias('glx', libgl) |
