1*61046927SAndroid Build Coastguard Worker# Copyright © 2020 Google, Inc 2*61046927SAndroid Build Coastguard Worker# SPDX-License-Identifier: MIT 3*61046927SAndroid Build Coastguard Worker 4*61046927SAndroid Build Coastguard Workerisa_depend_files = [ 5*61046927SAndroid Build Coastguard Worker 'ir3-common.xml', 6*61046927SAndroid Build Coastguard Worker 'ir3-cat0.xml', 7*61046927SAndroid Build Coastguard Worker 'ir3-cat1.xml', 8*61046927SAndroid Build Coastguard Worker 'ir3-cat2.xml', 9*61046927SAndroid Build Coastguard Worker 'ir3-cat3.xml', 10*61046927SAndroid Build Coastguard Worker 'ir3-cat4.xml', 11*61046927SAndroid Build Coastguard Worker 'ir3-cat5.xml', 12*61046927SAndroid Build Coastguard Worker 'ir3-cat6.xml', 13*61046927SAndroid Build Coastguard Worker 'ir3-cat7.xml', 14*61046927SAndroid Build Coastguard Worker isaspec_py_deps 15*61046927SAndroid Build Coastguard Worker] 16*61046927SAndroid Build Coastguard Worker 17*61046927SAndroid Build Coastguard Workerir3_isa = custom_target( 18*61046927SAndroid Build Coastguard Worker 'ir3-isa', 19*61046927SAndroid Build Coastguard Worker input: ['ir3.xml'], 20*61046927SAndroid Build Coastguard Worker output: ['ir3-isa.c', 'ir3-isa.h'], 21*61046927SAndroid Build Coastguard Worker command: [ 22*61046927SAndroid Build Coastguard Worker prog_isaspec_decode, '--xml', '@INPUT@', 23*61046927SAndroid Build Coastguard Worker '--out-c', '@OUTPUT0@', '--out-h', '@OUTPUT1@', 24*61046927SAndroid Build Coastguard Worker ], 25*61046927SAndroid Build Coastguard Worker depend_files: isa_depend_files, 26*61046927SAndroid Build Coastguard Worker) 27*61046927SAndroid Build Coastguard Worker 28*61046927SAndroid Build Coastguard Workerdecode_files = [ 29*61046927SAndroid Build Coastguard Worker ir3_isa, 30*61046927SAndroid Build Coastguard Worker 'isa.h', 31*61046927SAndroid Build Coastguard Worker] 32*61046927SAndroid Build Coastguard Worker 33*61046927SAndroid Build Coastguard Worker_libir3decode = static_library( 34*61046927SAndroid Build Coastguard Worker 'ir3decode', 35*61046927SAndroid Build Coastguard Worker decode_files, 36*61046927SAndroid Build Coastguard Worker dependencies: [idep_mesautil, idep_isaspec_decode], 37*61046927SAndroid Build Coastguard Worker link_with: [libisaspec], 38*61046927SAndroid Build Coastguard Worker include_directories: [ 39*61046927SAndroid Build Coastguard Worker inc_include, 40*61046927SAndroid Build Coastguard Worker inc_src, 41*61046927SAndroid Build Coastguard Worker ], 42*61046927SAndroid Build Coastguard Worker gnu_symbol_visibility: 'hidden', 43*61046927SAndroid Build Coastguard Worker) 44*61046927SAndroid Build Coastguard Worker 45*61046927SAndroid Build Coastguard Workeridep_libir3decode = declare_dependency( 46*61046927SAndroid Build Coastguard Worker include_directories : [ 47*61046927SAndroid Build Coastguard Worker include_directories('.'), 48*61046927SAndroid Build Coastguard Worker inc_include, 49*61046927SAndroid Build Coastguard Worker inc_src 50*61046927SAndroid Build Coastguard Worker ], 51*61046927SAndroid Build Coastguard Worker link_with : _libir3decode, 52*61046927SAndroid Build Coastguard Worker dependencies: [idep_isaspec_decode], 53*61046927SAndroid Build Coastguard Worker sources : [ir3_isa], 54*61046927SAndroid Build Coastguard Worker) 55*61046927SAndroid Build Coastguard Worker 56*61046927SAndroid Build Coastguard Workerir3disasm = executable( 57*61046927SAndroid Build Coastguard Worker 'ir3-disasm', 58*61046927SAndroid Build Coastguard Worker ['ir3-disasm.c'], 59*61046927SAndroid Build Coastguard Worker dependencies: [idep_libir3decode, idep_libfreedreno_common], 60*61046927SAndroid Build Coastguard Worker build_by_default: with_tools.contains('freedreno'), 61*61046927SAndroid Build Coastguard Worker include_directories: [ 62*61046927SAndroid Build Coastguard Worker inc_src, 63*61046927SAndroid Build Coastguard Worker ], 64*61046927SAndroid Build Coastguard Worker install: false, 65*61046927SAndroid Build Coastguard Worker) 66*61046927SAndroid Build Coastguard Worker 67*61046927SAndroid Build Coastguard Workerencode_h = custom_target( 68*61046927SAndroid Build Coastguard Worker 'encode.h', 69*61046927SAndroid Build Coastguard Worker input: ['ir3.xml'], 70*61046927SAndroid Build Coastguard Worker output: 'encode.h', 71*61046927SAndroid Build Coastguard Worker command: [ 72*61046927SAndroid Build Coastguard Worker prog_isaspec_encode, '--xml', '@INPUT@', '--out-h', '@OUTPUT@' 73*61046927SAndroid Build Coastguard Worker ], 74*61046927SAndroid Build Coastguard Worker depend_files: isa_depend_files, 75*61046927SAndroid Build Coastguard Worker) 76*61046927SAndroid Build Coastguard Worker 77*61046927SAndroid Build Coastguard Workerencode_files = [ 78*61046927SAndroid Build Coastguard Worker encode_h, 79*61046927SAndroid Build Coastguard Worker 'encode.c', 80*61046927SAndroid Build Coastguard Worker 'isa.h', 81*61046927SAndroid Build Coastguard Worker] 82*61046927SAndroid Build Coastguard Worker 83*61046927SAndroid Build Coastguard Workerlibir3encode = static_library( 84*61046927SAndroid Build Coastguard Worker 'ir3encode', 85*61046927SAndroid Build Coastguard Worker encode_files, 86*61046927SAndroid Build Coastguard Worker dependencies: [idep_mesautil, idep_nir], 87*61046927SAndroid Build Coastguard Worker include_directories: [ 88*61046927SAndroid Build Coastguard Worker inc_src, 89*61046927SAndroid Build Coastguard Worker inc_include, 90*61046927SAndroid Build Coastguard Worker inc_freedreno, 91*61046927SAndroid Build Coastguard Worker ], 92*61046927SAndroid Build Coastguard Worker gnu_symbol_visibility: 'hidden', 93*61046927SAndroid Build Coastguard Worker) 94