import common Import('*') from sys import executable as python_cmd env = env.Clone() env.MSVC2013Compat() env.Prepend(CPPPATH = [ '#include', '#src', '#src/mapi', '#src/mesa', '#src/gallium/include', '#src/gallium/auxiliary', '#src/compiler/nir', ]) # Make generated headers reachable from the include path. env.Prepend(CPPPATH = [Dir('.').abspath, Dir('glsl').abspath]) env.Prepend(CPPPATH = [Dir('.').abspath, Dir('nir').abspath]) # nir generated sources nir_builder_opcodes_h = env.CodeGenerate( target = 'nir/nir_builder_opcodes.h', script = 'nir/nir_builder_opcodes_h.py', source = [], command = python_cmd + ' $SCRIPT > $TARGET' ) env.CodeGenerate( target = 'nir/nir_constant_expressions.c', script = 'nir/nir_constant_expressions.py', source = [], command = python_cmd + ' $SCRIPT > $TARGET' ) env.CodeGenerate( target = 'nir/nir_opcodes.h', script = 'nir/nir_opcodes_h.py', source = [], command = python_cmd + ' $SCRIPT > $TARGET' ) env.CodeGenerate( target = 'nir/nir_opcodes.c', script = 'nir/nir_opcodes_c.py', source = [], command = python_cmd + ' $SCRIPT > $TARGET' ) env.CodeGenerate( target = 'nir/nir_opt_algebraic.c', script = 'nir/nir_opt_algebraic.py', source = [], command = python_cmd + ' $SCRIPT > $TARGET' ) bldroot = Dir('.').abspath env.CodeGenerate( target = 'nir/nir_intrinsics.h', script = 'nir/nir_intrinsics_h.py', source = [], command = python_cmd + ' $SCRIPT --outdir ' + bldroot + '/nir' ) env.CodeGenerate( target = 'nir/nir_intrinsics.c', script = 'nir/nir_intrinsics_c.py', source = [], command = python_cmd + ' $SCRIPT --outdir ' + bldroot + '/nir' ) # parse Makefile.sources source_lists = env.ParseSourceList('Makefile.sources') nir_sources = source_lists['NIR_FILES'] nir_sources += source_lists['NIR_GENERATED_FILES'] nir = env.ConvenienceLibrary( target = 'nir', source = nir_sources, ) env.Alias('nir', nir) Export('nir')