summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJose Fonseca <jfonseca@vmware.com>2015-10-19 14:29:28 +0100
committerJose Fonseca <jfonseca@vmware.com>2015-10-19 15:59:59 +0100
commitb23a4859f4dbbcca7d6a637010167d470211e45b (patch)
tree6e47c0a14c1766befc7c051a1e69a5d2700e4a92
parent530eb39c71d2f42ef5d6c556aff77c322434f4e2 (diff)
scons: Build nir/glsl_types.cpp once.
Undoes early hacks, and ensures nir/glsl_types.cpp is built once, and only once. The root problem is that SCons doesn't know about NIR nor any source file in the NIR_FILES source list. Tested with libgl-gdi and libgl-xlib scons targets. Reviewed-by: Brian Paul <brianp@vmware.com>
-rw-r--r--src/gallium/targets/libgl-gdi/SConscript10
-rw-r--r--src/gallium/targets/libgl-gdi/glsl_types_hack.cpp3
-rw-r--r--src/gallium/targets/libgl-xlib/SConscript3
-rw-r--r--src/gallium/targets/libgl-xlib/glsl_types_hack.cpp3
-rw-r--r--src/gallium/targets/osmesa/SConscript7
-rw-r--r--src/gallium/targets/osmesa/glsl_types_hack.cpp3
-rw-r--r--src/glsl/SConscript7
-rw-r--r--src/mesa/drivers/x11/SConscript1
8 files changed, 8 insertions, 29 deletions
diff --git a/src/gallium/targets/libgl-gdi/SConscript b/src/gallium/targets/libgl-gdi/SConscript
index eb777a86cb2..594f34d7fad 100644
--- a/src/gallium/targets/libgl-gdi/SConscript
+++ b/src/gallium/targets/libgl-gdi/SConscript
@@ -7,10 +7,6 @@ env = env.Clone()
env.Append(CPPPATH = [
'#src',
- '#src/mesa',
- '#src/mapi',
- '#src/glsl',
- '#src/glsl/nir',
'#src/gallium/state_trackers/wgl',
'#src/gallium/winsys/sw',
])
@@ -24,11 +20,7 @@ env.Append(LIBS = [
env.Prepend(LIBS = [mesautil])
-sources = [
- 'libgl_gdi.c',
- 'glsl_types_hack.cpp'
-]
-
+sources = ['libgl_gdi.c']
drivers = []
if True:
diff --git a/src/gallium/targets/libgl-gdi/glsl_types_hack.cpp b/src/gallium/targets/libgl-gdi/glsl_types_hack.cpp
deleted file mode 100644
index 5c042f23e3b..00000000000
--- a/src/gallium/targets/libgl-gdi/glsl_types_hack.cpp
+++ /dev/null
@@ -1,3 +0,0 @@
-/* errrg scons.. otherwise "scons: *** Two environments with different actions were specified for the same target: $mesa/build/linux-x86_64-debug/glsl/nir/glsl_types.os" */
-#include "glsl_types.cpp"
-
diff --git a/src/gallium/targets/libgl-xlib/SConscript b/src/gallium/targets/libgl-xlib/SConscript
index fedc522fbdc..df5a220ac25 100644
--- a/src/gallium/targets/libgl-xlib/SConscript
+++ b/src/gallium/targets/libgl-xlib/SConscript
@@ -6,8 +6,6 @@ Import('*')
env = env.Clone()
env.Append(CPPPATH = [
- '#/src/glsl',
- '#/src/glsl/nir',
'#/src/mapi',
'#/src/mesa',
'#/src/mesa/main',
@@ -38,7 +36,6 @@ env.Prepend(LIBS = [
sources = [
'xlib.c',
- 'glsl_types_hack.cpp',
]
if True:
diff --git a/src/gallium/targets/libgl-xlib/glsl_types_hack.cpp b/src/gallium/targets/libgl-xlib/glsl_types_hack.cpp
deleted file mode 100644
index 5c042f23e3b..00000000000
--- a/src/gallium/targets/libgl-xlib/glsl_types_hack.cpp
+++ /dev/null
@@ -1,3 +0,0 @@
-/* errrg scons.. otherwise "scons: *** Two environments with different actions were specified for the same target: $mesa/build/linux-x86_64-debug/glsl/nir/glsl_types.os" */
-#include "glsl_types.cpp"
-
diff --git a/src/gallium/targets/osmesa/SConscript b/src/gallium/targets/osmesa/SConscript
index 78930a98e03..4a9115ba1cf 100644
--- a/src/gallium/targets/osmesa/SConscript
+++ b/src/gallium/targets/osmesa/SConscript
@@ -5,8 +5,6 @@ env = env.Clone()
env.Prepend(CPPPATH = [
'#src/mapi',
'#src/mesa',
- '#src/glsl',
- '#src/glsl/nir',
#Dir('../../../mapi'), # src/mapi build path for python-generated GL API files/headers
])
@@ -24,10 +22,7 @@ env.Prepend(LIBS = [
env.Append(CPPDEFINES = ['GALLIUM_TRACE', 'GALLIUM_SOFTPIPE'])
-sources = [
- 'target.c',
- 'glsl_types_hack.cpp'
-]
+sources = ['target.c']
if env['llvm']:
env.Append(CPPDEFINES = 'GALLIUM_LLVMPIPE')
diff --git a/src/gallium/targets/osmesa/glsl_types_hack.cpp b/src/gallium/targets/osmesa/glsl_types_hack.cpp
deleted file mode 100644
index 5c042f23e3b..00000000000
--- a/src/gallium/targets/osmesa/glsl_types_hack.cpp
+++ /dev/null
@@ -1,3 +0,0 @@
-/* errrg scons.. otherwise "scons: *** Two environments with different actions were specified for the same target: $mesa/build/linux-x86_64-debug/glsl/nir/glsl_types.os" */
-#include "glsl_types.cpp"
-
diff --git a/src/glsl/SConscript b/src/glsl/SConscript
index 927cbdcdb78..70bf5b09c3c 100644
--- a/src/glsl/SConscript
+++ b/src/glsl/SConscript
@@ -61,6 +61,12 @@ source_lists = env.ParseSourceList('Makefile.sources')
for l in ('LIBGLCPP_FILES', 'LIBGLSL_FILES'):
glsl_sources += source_lists[l]
+# add nir/glsl_types.cpp manually, because SCons still doesn't know about NIR.
+# XXX: Remove this once we build NIR and NIR_FILES.
+glsl_sources += [
+ 'nir/glsl_types.cpp',
+]
+
if env['msvc']:
env.Prepend(CPPPATH = ['#/src/getopt'])
env.PrependUnique(LIBS = [getopt])
@@ -81,7 +87,6 @@ mesa_objs = env.StaticObject([
'prog_hash_table.c',
'symbol_table.c',
'dummy_errors.c',
- 'nir/glsl_types.cpp',
])
compiler_objs += mesa_objs
diff --git a/src/mesa/drivers/x11/SConscript b/src/mesa/drivers/x11/SConscript
index aa1e73a9d4a..cd5cccda0d1 100644
--- a/src/mesa/drivers/x11/SConscript
+++ b/src/mesa/drivers/x11/SConscript
@@ -33,7 +33,6 @@ sources = [
'xm_dd.c',
'xm_line.c',
'xm_tri.c',
- '../../../glsl/nir/glsl_types.cpp',
]
# Disallow undefined symbols