nir: add support for removing redundant stores to copy prop var
[mesa.git] / src / compiler / meson.build
index 58d52e4c6cbd94abb947a9de723c254ec8161af6..0f8f3c12966d628c0a49103529e8f21ad446ef83 100644 (file)
 inc_compiler = include_directories('.')
 inc_nir = include_directories('nir')
 inc_glsl = include_directories('glsl')
+inc_spirv = include_directories('spirv')
 
 files_libcompiler = files(
+  'blob.c',
+  'blob.h',
   'builtin_type_macros.h',
   'glsl_types.cpp',
   'glsl_types.h',
@@ -37,7 +40,7 @@ ir_expression_operation_h = custom_target(
   'ir_expression_operation.h',
   input : 'glsl/ir_expression_operation.py',
   output : 'ir_expression_operation.h',
-  command : [prog_python2, '@INPUT@', 'enum'],
+  command : [prog_python, '@INPUT@', 'enum'],
   capture : true,
 )
 
@@ -47,19 +50,25 @@ libcompiler = static_library(
   include_directories : [inc_mapi, inc_mesa, inc_compiler, inc_common],
   c_args : [c_vis_args, c_msvc_compat_args, no_override_init_args],
   cpp_args : [cpp_vis_args, cpp_msvc_compat_args],
+  dependencies : [dep_valgrind],
   build_by_default : false,
 )
 
+subdir('spirv')
+
 subdir('nir')
 
+# This is here because putting it in spirv/meson.build would create a circular
+# dependency with nir/meson.build.
 spirv2nir = executable(
   'spirv2nir',
-  [files('spirv/spirv2nir.c'), dummy_cpp],
-  dependencies : [dep_m, dep_thread],
+  files('spirv/spirv2nir.c'),
+  dependencies : [dep_m, dep_thread, idep_nir],
   include_directories : [inc_common, inc_nir, include_directories('spirv')],
-  link_with : [libnir, libmesa_util],
+  link_with : libmesa_util,
   c_args : [c_vis_args, c_msvc_compat_args, no_override_init_args],
-  build_by_default : false,
+  build_by_default : with_tools.contains('nir'),
+  install : with_tools.contains('nir'),
 )
 
 subdir('glsl')