From 2ebdcfeee38bed8c65daa78aa7d18d8d1d93ed85 Mon Sep 17 00:00:00 2001 From: marha Date: Wed, 12 Jan 2011 20:34:04 +0000 Subject: xkeyboard-config libX11 mesalib git update 12 jan 2011 --- mesalib/src/glsl/SConscript | 40 ++++++++++++++++++++++++++++++++++++++-- 1 file changed, 38 insertions(+), 2 deletions(-) (limited to 'mesalib/src/glsl/SConscript') diff --git a/mesalib/src/glsl/SConscript b/mesalib/src/glsl/SConscript index 03a8b4cf5..1d5ef9e8f 100644 --- a/mesalib/src/glsl/SConscript +++ b/mesalib/src/glsl/SConscript @@ -2,6 +2,8 @@ import common Import('*') +from sys import executable as python_cmd + env = env.Clone() env.Prepend(CPPPATH = [ @@ -20,7 +22,6 @@ sources = [ 'ast_function.cpp', 'ast_to_hir.cpp', 'ast_type.cpp', - 'builtin_function.cpp', 'glsl_lexer.cpp', 'glsl_parser.cpp', 'glsl_parser_extras.cpp', @@ -79,9 +80,44 @@ sources = [ 'strtod.c', ] +if env['msvc']: + env.Prepend(CPPPATH = ['#/src/getopt']) + env.PrependUnique(LIBS = [getopt]) + +if env['platform'] == 'windows': + env.Prepend(LIBS = [talloc]) +else: + env.Prepend(LIBS = ['talloc']) + +env.Append(CPPPATH = ['#/src/glsl']) + +builtin_compiler = env.Program( + target = 'builtin_compiler', + source = sources + ['main.cpp', 'builtin_stubs.cpp', + '#src/mesa/program/hash_table.c', + '#src/mesa/program/symbol_table.c'], +) + +env.CodeGenerate( + target = 'builtin_function.cpp', + script = 'builtins/tools/generate_builtins.py', + source = builtin_compiler, + command = python_cmd + ' $SCRIPT $SOURCE > $TARGET' +) + +env.Depends('builtin_function.cpp', ['builtins/tools/generate_builtins.py', 'builtins/tools/texture_builtins.py'] + Glob('builtins/ir/*')) + +if env['msvc']: + # There is no LD_LIBRARY_PATH equivalent on Windows. We need to ensure + # talloc.dll is on the same dir as builtin_function. + talloc_dll_src = talloc.dir.File('talloc.dll') + talloc_dll_dst = builtin_compiler[0].dir.File('talloc.dll') + talloc_dll = env.Command(talloc_dll_dst, talloc_dll_src, Copy(talloc_dll_dst, talloc_dll_src)) + env.Depends('builtin_function.cpp', talloc_dll) + glsl = env.ConvenienceLibrary( target = 'glsl', - source = sources, + source = sources + [ 'builtin_function.cpp' ], ) Export('glsl') -- cgit v1.2.3