Mesa (master): scons: Fix MinGW cross compilation.

Jose Fonseca jrfonseca at kemper.freedesktop.org
Wed Aug 31 11:19:47 UTC 2016


Module: Mesa
Branch: master
Commit: 55e417222f774b2a714313391c8f90982e7a7b4f
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=55e417222f774b2a714313391c8f90982e7a7b4f

Author: Jose Fonseca <jfonseca at vmware.com>
Date:   Wed Aug 31 12:16:32 2016 +0100

scons: Fix MinGW cross compilation.

The generated GLSL header files were only being built for the host
platform, and not the target platform.

Trivial.

---

 src/compiler/SConscript.glsl | 46 ++++++++++++++++++++++++--------------------
 1 file changed, 25 insertions(+), 21 deletions(-)

diff --git a/src/compiler/SConscript.glsl b/src/compiler/SConscript.glsl
index d9878a0..f255369 100644
--- a/src/compiler/SConscript.glsl
+++ b/src/compiler/SConscript.glsl
@@ -89,6 +89,26 @@ mesa_objs = env.StaticObject([
 
 compiler_objs += mesa_objs
 
+# GLSL generated sources
+env.CodeGenerate(
+    target = 'glsl/ir_expression_operation.h',
+    script = 'glsl/ir_expression_operation.py',
+    source = [],
+    command = python_cmd + ' $SCRIPT enum > $TARGET'
+)
+env.CodeGenerate(
+    target = 'glsl/ir_expression_operation_constant.h',
+    script = 'glsl/ir_expression_operation.py',
+    source = [],
+    command = python_cmd + ' $SCRIPT constant > $TARGET'
+)
+env.CodeGenerate(
+    target = 'glsl/ir_expression_operation_strings.h',
+    script = 'glsl/ir_expression_operation.py',
+    source = [],
+    command = python_cmd + ' $SCRIPT strings > $TARGET'
+)
+
 glsl = env.ConvenienceLibrary(
     target = 'glsl',
     source = glsl_sources,
@@ -100,6 +120,11 @@ env.Depends(glsl, glsl_parser)
 
 Export('glsl')
 
+#
+# XXX: It's important to not add any generated source files after this point,
+# or it will break MinGW cross-compilation.
+#
+
 # Skip building these programs as they will cause SCons error "Two environments
 # with different actions were specified for the same target"
 if env['crosscompile'] or env['embedded']:
@@ -116,27 +141,6 @@ env.Prepend(LIBS = [compiler, glsl])
 
 compiler_objs += env.StaticObject("glsl/main.cpp")
 
-# GLSL generated sources
-
-env.CodeGenerate(
-    target = 'glsl/ir_expression_operation.h',
-    script = 'glsl/ir_expression_operation.py',
-    source = [],
-    command = python_cmd + ' $SCRIPT enum > $TARGET'
-)
-env.CodeGenerate(
-    target = 'glsl/ir_expression_operation_constant.h',
-    script = 'glsl/ir_expression_operation.py',
-    source = [],
-    command = python_cmd + ' $SCRIPT constant > $TARGET'
-)
-env.CodeGenerate(
-    target = 'glsl/ir_expression_operation_strings.h',
-    script = 'glsl/ir_expression_operation.py',
-    source = [],
-    command = python_cmd + ' $SCRIPT strings > $TARGET'
-)
-
 glsl_compiler = env.Program(
     target = 'glsl_compiler',
     source = compiler_objs,




More information about the mesa-commit mailing list