1*61046927SAndroid Build Coastguard Worker# Copyright © 2018 Rob Clark 2*61046927SAndroid Build Coastguard Worker# SPDX-License-Identifier: MIT 3*61046927SAndroid Build Coastguard Worker 4*61046927SAndroid Build Coastguard Workerinc_freedreno = include_directories(['.', './registers', './registers/adreno', './common']) 5*61046927SAndroid Build Coastguard Workerinc_freedreno_rnn = include_directories('rnn') 6*61046927SAndroid Build Coastguard Worker 7*61046927SAndroid Build Coastguard Workerrnn_src_path = dir_source_root + '/src/freedreno/registers' 8*61046927SAndroid Build Coastguard Workerrnn_install_path = get_option('datadir') + '/freedreno/registers' 9*61046927SAndroid Build Coastguard Workerrnn_path = rnn_src_path + ':' + get_option('prefix') + '/' + rnn_install_path 10*61046927SAndroid Build Coastguard Worker 11*61046927SAndroid Build Coastguard Workerdep_libarchive = dependency('libarchive', allow_fallback: true, required: false) 12*61046927SAndroid Build Coastguard Workerdep_libxml2 = dependency('libxml-2.0', allow_fallback: true, required: false) 13*61046927SAndroid Build Coastguard Workerprog_gzip = find_program('gzip', required: false) 14*61046927SAndroid Build Coastguard Worker 15*61046927SAndroid Build Coastguard Workerinstall_fd_decode_tools = dep_libxml2.found() and prog_gzip.found() and \ 16*61046927SAndroid Build Coastguard Worker with_tools.contains('freedreno') 17*61046927SAndroid Build Coastguard Worker 18*61046927SAndroid Build Coastguard Workersubdir('registers') 19*61046927SAndroid Build Coastguard Workersubdir('common') 20*61046927SAndroid Build Coastguard Workersubdir('isa') 21*61046927SAndroid Build Coastguard Workersubdir('ir2') 22*61046927SAndroid Build Coastguard Workersubdir('ir3') 23*61046927SAndroid Build Coastguard Workersubdir('fdl') 24*61046927SAndroid Build Coastguard Worker 25*61046927SAndroid Build Coastguard Workerif system_has_kms_drm 26*61046927SAndroid Build Coastguard Worker subdir('drm') 27*61046927SAndroid Build Coastguard Workerendif 28*61046927SAndroid Build Coastguard Worker 29*61046927SAndroid Build Coastguard Workersubdir('perfcntrs') 30*61046927SAndroid Build Coastguard Worker 31*61046927SAndroid Build Coastguard Workerif system_has_kms_drm 32*61046927SAndroid Build Coastguard Worker subdir('computerator') 33*61046927SAndroid Build Coastguard Workerendif 34*61046927SAndroid Build Coastguard Worker 35*61046927SAndroid Build Coastguard Workerif system_has_kms_drm and with_perfetto and (with_datasources.contains('freedreno') or with_datasources.contains('auto')) 36*61046927SAndroid Build Coastguard Worker subdir('ds') 37*61046927SAndroid Build Coastguard Workerendif 38*61046927SAndroid Build Coastguard Worker 39*61046927SAndroid Build Coastguard Worker# Everything that depends on rnn requires (indirectly) libxml2: 40*61046927SAndroid Build Coastguard Workerif dep_libxml2.found() and with_tools.contains('freedreno') 41*61046927SAndroid Build Coastguard Worker subdir('rnn') 42*61046927SAndroid Build Coastguard Worker subdir('decode') 43*61046927SAndroid Build Coastguard Worker subdir('afuc') 44*61046927SAndroid Build Coastguard Workerelif with_tools.contains('freedreno') 45*61046927SAndroid Build Coastguard Worker message('libxml2 not found, skipping tools that depend on it') 46*61046927SAndroid Build Coastguard Workerendif 47*61046927SAndroid Build Coastguard Worker 48*61046927SAndroid Build Coastguard Workerif with_tools.contains('drm-shim') 49*61046927SAndroid Build Coastguard Worker subdir('drm-shim') 50*61046927SAndroid Build Coastguard Workerendif 51*61046927SAndroid Build Coastguard Worker 52*61046927SAndroid Build Coastguard Workerif with_freedreno_vk 53*61046927SAndroid Build Coastguard Worker subdir('vulkan') 54*61046927SAndroid Build Coastguard Workerendif 55