| ####################################################################### |
| # SConscript for GLSL builtin library |
| |
| Import('*') |
| |
| env = env.Clone() |
| |
| # See also http://www.scons.org/wiki/UsingCodeGenerators |
| |
| def glsl_compile_emitter(target, source, env): |
| env.Depends(target, glsl_compile) |
| return (target, source) |
| |
| bld_frag = Builder( |
| action = Action(glsl_compile[0].abspath + ' fragment $SOURCE $TARGET', '$CODEGENCODESTR'), |
| emitter = glsl_compile_emitter, |
| suffix = '.gc', |
| src_suffix = '_gc.h') |
| |
| bld_vert = Builder( |
| action = Action(glsl_compile[0].abspath + ' vertex $SOURCE $TARGET', '$CODEGENCODESTR'), |
| emitter = glsl_compile_emitter, |
| suffix = '.gc', |
| src_suffix = '_gc.h') |
| |
| bld_geom = Builder( |
| action = Action(glsl_compile[0].abspath + ' geometry $SOURCE $TARGET', '$CODEGENCODESTR'), |
| emitter = glsl_compile_emitter, |
| suffix = '.gc', |
| src_suffix = '_gc.h') |
| |
| env['BUILDERS']['bld_frag'] = bld_frag |
| env['BUILDERS']['bld_vert'] = bld_vert |
| env['BUILDERS']['bld_geom'] = bld_geom |
| |
| # Generate GLSL builtin library binaries |
| env.bld_frag( |
| '#src/mesa/slang/library/slang_core_gc.h', |
| '#src/mesa/slang/library/slang_core.gc') |
| env.bld_frag( |
| '#src/mesa/slang/library/slang_common_builtin_gc.h', |
| '#src/mesa/slang/library/slang_common_builtin.gc') |
| env.bld_frag( |
| '#src/mesa/slang/library/slang_fragment_builtin_gc.h', |
| '#src/mesa/slang/library/slang_fragment_builtin.gc') |
| env.bld_vert( |
| '#src/mesa/slang/library/slang_vertex_builtin_gc.h', |
| '#src/mesa/slang/library/slang_vertex_builtin.gc') |
| env.bld_geom( |
| '#src/mesa/slang/library/slang_geometry_builtin_gc.h', |
| '#src/mesa/slang/library/slang_geometry_builtin.gc') |
| |
| # Generate GLSL 1.20 builtin library binaries |
| env.bld_frag( |
| '#src/mesa/slang/library/slang_120_core_gc.h', |
| '#src/mesa/slang/library/slang_120_core.gc') |
| env.bld_frag( |
| '#src/mesa/slang/library/slang_builtin_120_common_gc.h', |
| '#src/mesa/slang/library/slang_builtin_120_common.gc') |
| env.bld_frag( |
| '#src/mesa/slang/library/slang_builtin_120_fragment_gc.h', |
| '#src/mesa/slang/library/slang_builtin_120_fragment.gc') |