Path: blob/21.2-virgl/src/panfrost/bifrost/meson.build
4564 views
# Copyright © 2018 Rob Clark1# Copyright © 2019 Collabora23# Permission is hereby granted, free of charge, to any person obtaining a copy4# of this software and associated documentation files (the "Software"), to deal5# in the Software without restriction, including without limitation the rights6# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell7# copies of the Software, and to permit persons to whom the Software is8# furnished to do so, subject to the following conditions:910# The above copyright notice and this permission notice shall be included in11# all copies or substantial portions of the Software.1213# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR14# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,15# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE16# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER17# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,18# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE19# SOFTWARE.2021libpanfrost_bifrost_files = files(22'bi_helper_invocations.c',23'bi_layout.c',24'bi_liveness.c',25'bi_lower_divergent_indirects.c',26'bi_lower_swizzle.c',27'bi_print.c',28'bi_opt_constant_fold.c',29'bi_opt_copy_prop.c',30'bi_opt_dce.c',31'bi_opt_cse.c',32'bi_opt_push_ubo.c',33'bi_opt_mod_props.c',34'bi_pack.c',35'bi_ra.c',36'bi_schedule.c',37'bi_scoreboard.c',38'bi_test_pack.c',39'bir.c',40'bifrost_compile.c',41)4243bifrost_gen_disasm_c = custom_target(44'bifrost_gen_disasm.c',45input : ['gen_disasm.py', 'ISA.xml'],46output : 'bifrost_gen_disasm.c',47command : [prog_python, '@INPUT@'],48capture : true,49depend_files : files('bifrost_isa.py'),50)5152bi_opcodes_c = custom_target(53'bi_opcodes.c',54input : ['bi_opcodes.c.py', 'ISA.xml'],55output : 'bi_opcodes.c',56command : [prog_python, '@INPUT@'],57capture : true,58depend_files : files('bifrost_isa.py'),59)6061bi_printer_c = custom_target(62'bi_printer.c',63input : ['bi_printer.c.py', 'ISA.xml'],64output : 'bi_printer.c',65command : [prog_python, '@INPUT@'],66capture : true,67depend_files : files('bifrost_isa.py'),68)6970bi_packer_c = custom_target(71'bi_packer.c',72input : ['bi_packer.c.py', 'ISA.xml'],73output : 'bi_packer.c',74command : [prog_python, '@INPUT@'],75capture : true,76depend_files : files('bifrost_isa.py'),77)7879bi_opcodes_h = custom_target(80'bi_opcodes.h',81input : ['bi_opcodes.h.py', 'ISA.xml'],82output : 'bi_opcodes.h',83command : [prog_python, '@INPUT@'],84capture : true,85depend_files : files('bifrost_isa.py'),86)8788idep_bi_opcodes_h = declare_dependency(89sources : [bi_opcodes_h],90include_directories : include_directories('.'),91)9293bi_builder_h = custom_target(94'bi_builder.h',95input : ['bi_builder.h.py', 'ISA.xml'],96output : 'bi_builder.h',97command : [prog_python, '@INPUT@'],98capture : true,99depend_files : files('bifrost_isa.py'),100)101102idep_bi_builder_h = declare_dependency(103sources : [bi_builder_h],104include_directories : include_directories('.'),105)106107bifrost_nir_algebraic_c = custom_target(108'bifrost_nir_algebraic.c',109input : 'bifrost_nir_algebraic.py',110output : 'bifrost_nir_algebraic.c',111command : [112prog_python, '@INPUT@',113'-p', join_paths(meson.source_root(), 'src/compiler/nir/'),114],115capture : true,116depend_files : nir_algebraic_py,117)118119libpanfrost_bifrost_disasm = static_library(120'panfrost_bifrost_disasm',121['disassemble.c', 'bi_print_common.c', bifrost_gen_disasm_c],122include_directories : [inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_gallium_aux, inc_panfrost_hw],123dependencies: [idep_nir],124link_with: [libpanfrost_util],125c_args : [no_override_init_args],126gnu_symbol_visibility : 'hidden',127build_by_default : false,128)129130libpanfrost_bifrost = static_library(131'panfrost_bifrost',132[libpanfrost_bifrost_files, bi_opcodes_c, bi_printer_c, bi_packer_c, bifrost_nir_algebraic_c],133include_directories : [inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_gallium_aux, inc_panfrost_hw],134dependencies: [idep_nir, idep_bi_opcodes_h, idep_bi_builder_h],135link_with: [libpanfrost_util, libpanfrost_bifrost_disasm],136c_args : [no_override_init_args],137gnu_symbol_visibility : 'hidden',138build_by_default : false,139)140141142