1b8e80941Smrgimport common 2b8e80941Smrg 3b8e80941SmrgImport('*') 4b8e80941Smrg 5b8e80941Smrgfrom sys import executable as python_cmd 6b8e80941Smrg 7b8e80941Smrgenv = env.Clone() 8b8e80941Smrg 9b8e80941Smrgenv.MSVC2013Compat() 10b8e80941Smrg 11b8e80941Smrgenv.Prepend(CPPPATH = [ 12b8e80941Smrg '#include', 13b8e80941Smrg '#src', 14b8e80941Smrg '#src/mapi', 15b8e80941Smrg '#src/mesa', 16b8e80941Smrg '#src/gallium/include', 17b8e80941Smrg '#src/gallium/auxiliary', 18b8e80941Smrg '#src/compiler/nir', 19b8e80941Smrg]) 20b8e80941Smrg 21b8e80941Smrg# Make generated headers reachable from the include path. 22b8e80941Smrgenv.Prepend(CPPPATH = [Dir('.').abspath, Dir('glsl').abspath]) 23b8e80941Smrgenv.Prepend(CPPPATH = [Dir('.').abspath, Dir('nir').abspath]) 24b8e80941Smrg 25b8e80941Smrg# nir generated sources 26b8e80941Smrg 27b8e80941Smrgnir_builder_opcodes_h = env.CodeGenerate( 28b8e80941Smrg target = 'nir/nir_builder_opcodes.h', 29b8e80941Smrg script = 'nir/nir_builder_opcodes_h.py', 30b8e80941Smrg source = [], 31b8e80941Smrg command = python_cmd + ' $SCRIPT > $TARGET' 32b8e80941Smrg) 33b8e80941Smrg 34b8e80941Smrgenv.CodeGenerate( 35b8e80941Smrg target = 'nir/nir_constant_expressions.c', 36b8e80941Smrg script = 'nir/nir_constant_expressions.py', 37b8e80941Smrg source = [], 38b8e80941Smrg command = python_cmd + ' $SCRIPT > $TARGET' 39b8e80941Smrg) 40b8e80941Smrg 41b8e80941Smrgenv.CodeGenerate( 42b8e80941Smrg target = 'nir/nir_opcodes.h', 43b8e80941Smrg script = 'nir/nir_opcodes_h.py', 44b8e80941Smrg source = [], 45b8e80941Smrg command = python_cmd + ' $SCRIPT > $TARGET' 46b8e80941Smrg) 47b8e80941Smrg 48b8e80941Smrgenv.CodeGenerate( 49b8e80941Smrg target = 'nir/nir_opcodes.c', 50b8e80941Smrg script = 'nir/nir_opcodes_c.py', 51b8e80941Smrg source = [], 52b8e80941Smrg command = python_cmd + ' $SCRIPT > $TARGET' 53b8e80941Smrg) 54b8e80941Smrg 55b8e80941Smrgenv.CodeGenerate( 56b8e80941Smrg target = 'nir/nir_opt_algebraic.c', 57b8e80941Smrg script = 'nir/nir_opt_algebraic.py', 58b8e80941Smrg source = [], 59b8e80941Smrg command = python_cmd + ' $SCRIPT > $TARGET' 60b8e80941Smrg) 61b8e80941Smrg 62b8e80941Smrgbldroot = Dir('.').abspath 63b8e80941Smrg 64b8e80941Smrgenv.CodeGenerate( 65b8e80941Smrg target = 'nir/nir_intrinsics.h', 66b8e80941Smrg script = 'nir/nir_intrinsics_h.py', 67b8e80941Smrg source = [], 68b8e80941Smrg command = python_cmd + ' $SCRIPT --outdir ' + bldroot + '/nir' 69b8e80941Smrg) 70b8e80941Smrg 71b8e80941Smrgenv.CodeGenerate( 72b8e80941Smrg target = 'nir/nir_intrinsics.c', 73b8e80941Smrg script = 'nir/nir_intrinsics_c.py', 74b8e80941Smrg source = [], 75b8e80941Smrg command = python_cmd + ' $SCRIPT --outdir ' + bldroot + '/nir' 76b8e80941Smrg) 77b8e80941Smrg 78b8e80941Smrg# parse Makefile.sources 79b8e80941Smrgsource_lists = env.ParseSourceList('Makefile.sources') 80b8e80941Smrg 81b8e80941Smrgnir_sources = source_lists['NIR_FILES'] 82b8e80941Smrgnir_sources += source_lists['NIR_GENERATED_FILES'] 83b8e80941Smrg 84b8e80941Smrgnir = env.ConvenienceLibrary( 85b8e80941Smrg target = 'nir', 86b8e80941Smrg source = nir_sources, 87b8e80941Smrg) 88b8e80941Smrg 89b8e80941Smrgenv.Alias('nir', nir) 90b8e80941SmrgExport('nir') 91