glsl: Remove integer matrix support from ir_dereference_array::constant_expression_value
[mesa.git] / src / compiler / glsl / meson.build
index d1a75eb8c3647c00e4cac256151667160b5bff14..6ab34f3014b50733b35aeadad23397de0063ff69 100644 (file)
@@ -24,8 +24,10 @@ glsl_parser = custom_target(
   'glsl_parser',
   input : 'glsl_parser.yy',
   output : ['glsl_parser.cpp', 'glsl_parser.h'],
-  command : [prog_bison, '-o', '@OUTPUT0@', '-p', '_mesa_glsl_',
-             '--defines=@OUTPUT1@', '@INPUT@'],
+  command : [
+    prog_bison, '-o', '@OUTPUT0@', '-p', '_mesa_glsl_', '--defines=@OUTPUT1@',
+    '@INPUT@',
+  ],
 )
 
 glsl_lexer_cpp = custom_target(
@@ -39,7 +41,7 @@ ir_expression_operation_constant_h = custom_target(
   'ir_expression_operation_constant.h',
   input : 'ir_expression_operation.py',
   output : 'ir_expression_operation_constant.h',
-  command : [prog_python2, '@INPUT@', 'constant'],
+  command : [prog_python, '@INPUT@', 'constant'],
   capture : true,
 )
 
@@ -47,10 +49,17 @@ ir_expression_operation_strings_h = custom_target(
   'ir_expression_operation_strings.h',
   input : 'ir_expression_operation.py',
   output : 'ir_expression_operation_strings.h',
-  command : [prog_python2, '@INPUT@', 'strings'],
+  command : [prog_python, '@INPUT@', 'strings'],
   capture : true,
 )
 
+float64_glsl_h = custom_target(
+  'float64_glsl.h',
+  input : ['xxd.py', 'float64.glsl'],
+  output : 'float64_glsl.h',
+  command : [prog_python, '@INPUT@', '@OUTPUT@', '-n', 'float64_source'],
+)
+
 files_libglsl = files(
   'ast.h',
   'ast_array_index.cpp',
@@ -64,6 +73,19 @@ files_libglsl = files(
   'builtin_types.cpp',
   'builtin_variables.cpp',
   'generate_ir.cpp',
+  'gl_nir_lower_atomics.c',
+  'gl_nir_lower_images.c',
+  'gl_nir_lower_buffers.c',
+  'gl_nir_lower_samplers.c',
+  'gl_nir_lower_samplers_as_deref.c',
+  'gl_nir_link_atomics.c',
+  'gl_nir_link_uniform_blocks.c',
+  'gl_nir_link_uniform_initializers.c',
+  'gl_nir_link_uniforms.c',
+  'gl_nir_link_xfb.c',
+  'gl_nir_linker.c',
+  'gl_nir_linker.h',
+  'gl_nir.h',
   'glsl_parser_extras.cpp',
   'glsl_parser_extras.h',
   'glsl_symbol_table.cpp',
@@ -106,6 +128,8 @@ files_libglsl = files(
   'ir_visitor.h',
   'linker.cpp',
   'linker.h',
+  'linker_util.h',
+  'linker_util.cpp',
   'link_atomics.cpp',
   'link_functions.cpp',
   'link_interface_blocks.cpp',
@@ -123,7 +147,9 @@ files_libglsl = files(
   'lower_blend_equation_advanced.cpp',
   'lower_buffer_access.cpp',
   'lower_buffer_access.h',
+  'lower_builtins.cpp',
   'lower_const_arrays_to_uniforms.cpp',
+  'lower_cs_derived.cpp',
   'lower_discard.cpp',
   'lower_discard_flow.cpp',
   'lower_distance.cpp',
@@ -132,11 +158,11 @@ files_libglsl = files(
   'lower_int64.cpp',
   'lower_jumps.cpp',
   'lower_mat_op_to_vec.cpp',
-  'lower_noise.cpp',
   'lower_offset_array.cpp',
   'lower_packed_varyings.cpp',
   'lower_named_interface_blocks.cpp',
   'lower_packing_builtins.cpp',
+  'lower_precision.cpp',
   'lower_subroutine.cpp',
   'lower_tess_level.cpp',
   'lower_texture_projection.cpp',
@@ -150,13 +176,13 @@ files_libglsl = files(
   'lower_output_reads.cpp',
   'lower_shared_reference.cpp',
   'lower_ubo_reference.cpp',
+  'lower_xfb_varying.cpp',
   'opt_algebraic.cpp',
   'opt_array_splitting.cpp',
   'opt_conditional_discard.cpp',
   'opt_constant_folding.cpp',
   'opt_constant_propagation.cpp',
   'opt_constant_variable.cpp',
-  'opt_copy_propagation.cpp',
   'opt_copy_propagation_elements.cpp',
   'opt_dead_builtin_variables.cpp',
   'opt_dead_builtin_varyings.cpp',
@@ -168,11 +194,10 @@ files_libglsl = files(
   'opt_function_inlining.cpp',
   'opt_if_simplification.cpp',
   'opt_minmax.cpp',
-  'opt_noop_swizzle.cpp',
   'opt_rebalance_tree.cpp',
   'opt_redundant_jumps.cpp',
   'opt_structure_splitting.cpp',
-  'opt_swizzle_swizzle.cpp',
+  'opt_swizzle.cpp',
   'opt_tree_grafting.cpp',
   'opt_vectorize.cpp',
   'program.h',
@@ -181,6 +206,8 @@ files_libglsl = files(
   's_expression.h',
   'string_to_uint_map.cpp',
   'string_to_uint_map.h',
+  'serialize.cpp',
+  'serialize.h',
   'shader_cache.cpp',
   'shader_cache.h',
 )
@@ -198,11 +225,13 @@ files_libglsl_standalone = files(
 libglsl = static_library(
   'glsl',
   [files_libglsl, glsl_parser, glsl_lexer_cpp, ir_expression_operation_h,
-   ir_expression_operation_strings_h, ir_expression_operation_constant_h],
+   ir_expression_operation_strings_h, ir_expression_operation_constant_h,
+   float64_glsl_h],
   c_args : [c_vis_args, c_msvc_compat_args, no_override_init_args],
   cpp_args : [cpp_vis_args, cpp_msvc_compat_args],
-  link_with : [libnir, libglcpp],
-  include_directories : [inc_common, inc_compiler, inc_nir],
+  link_with : libglcpp,
+  include_directories : [inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_gallium_aux, inc_compiler],
+  dependencies : idep_nir,
   build_by_default : false,
 )
 
@@ -211,9 +240,9 @@ libglsl_standalone = static_library(
   [files_libglsl_standalone, ir_expression_operation_h],
   c_args : [c_vis_args, c_msvc_compat_args, no_override_init_args],
   cpp_args : [cpp_vis_args, cpp_msvc_compat_args],
-  include_directories : [inc_common],
-  link_with : [libglsl, libglsl_util, libmesa_util],
-  dependencies : [dep_thread],
+  include_directories : [inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_gallium_aux],
+  link_with : [libglsl, libglsl_util, libglcpp_standalone],
+  dependencies : [idep_mesautil, idep_getopt],
   build_by_default : false,
 )
 
@@ -222,10 +251,11 @@ glsl_compiler = executable(
   'main.cpp',
   c_args : [c_vis_args, c_msvc_compat_args, no_override_init_args],
   cpp_args : [cpp_vis_args, cpp_msvc_compat_args],
-  dependencies : [dep_clock],
-  include_directories : [inc_common],
+  dependencies : [dep_clock, dep_thread, idep_getopt],
+  include_directories : [inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_gallium_aux],
   link_with : [libglsl_standalone],
-  build_by_default : false,
+  build_by_default : with_tools.contains('glsl'),
+  install : with_tools.contains('glsl'),
 )
 
 glsl_test = executable(
@@ -234,12 +264,13 @@ glsl_test = executable(
    ir_expression_operation_h],
   c_args : [c_vis_args, c_msvc_compat_args, no_override_init_args],
   cpp_args : [cpp_vis_args, cpp_msvc_compat_args],
-  include_directories : [inc_common],
-  dependencies : [dep_clock, dep_thread],
+  include_directories : [inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_gallium_aux],
+  dependencies : [dep_clock, dep_thread, idep_getopt],
   link_with : [libglsl, libglsl_standalone, libglsl_util],
-  build_by_default : false,
+  build_by_default : with_tools.contains('glsl'),
+  install : with_tools.contains('glsl'),
 )
 
-if with_tests
+if with_any_opengl and with_tests
   subdir('tests')
 endif