aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2020-09-16 15:31:11 -0400
committerPaolo Bonzini <pbonzini@redhat.com>2020-09-30 19:11:36 +0200
commit05512f55aaca92505b75d8fa6818b088a5eeb07f (patch)
treec9dd116c04736fe7ba676e14a3c560eaa9fb1293
parent48a81fd5b42e854e6c4b70cec60e023db9675e33 (diff)
meson: report accelerator support
Note that the "real" support is reported. A configuration like --disable-system --enable-kvm will report "no" for "KVM support" because no KVM-supported target is being compiled. Reported-by: Andrew Jones <drjones@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-rw-r--r--meson.build35
1 files changed, 24 insertions, 11 deletions
diff --git a/meson.build b/meson.build
index 32f614b3dd..f4a3815696 100644
--- a/meson.build
+++ b/meson.build
@@ -583,6 +583,7 @@ endforeach
genh += configure_file(output: 'config-host.h', configuration: config_host_data)
minikconf = find_program('scripts/minikconf.py')
+config_all = {}
config_all_devices = {}
config_all_disas = {}
config_devices_mak_list = []
@@ -639,6 +640,14 @@ kconfig_external_symbols = [
]
ignored = ['TARGET_XML_FILES', 'TARGET_ABI_DIR', 'TARGET_DIRS']
+accel_symbols = [
+ 'CONFIG_KVM',
+ 'CONFIG_HAX',
+ 'CONFIG_HVF',
+ 'CONFIG_TCG',
+ 'CONFIG_WHPX'
+]
+
foreach target : target_dirs
config_target = keyval.load(meson.current_build_dir() / target / 'config-target.mak')
@@ -667,6 +676,11 @@ foreach target : target_dirs
config_target_data.set(k, v)
endif
endforeach
+ foreach sym: accel_symbols
+ if config_target.has_key(sym)
+ config_all += { sym: 'y' }
+ endif
+ endforeach
config_target_h += {target: configure_file(output: target + '-config-target.h',
configuration: config_target_data)}
@@ -711,7 +725,7 @@ endforeach
# targets that are not built for this compilation. The CONFIG_ALL
# pseudo symbol replaces it.
-config_all = config_all_devices
+config_all += config_all_devices
config_all += config_host
config_all += config_all_disas
config_all += {
@@ -1467,16 +1481,15 @@ summary_info += {'Linux AIO support': config_host.has_key('CONFIG_LINUX_AIO')}
summary_info += {'Linux io_uring support': config_host.has_key('CONFIG_LINUX_IO_URING')}
summary_info += {'ATTR/XATTR support': config_host.has_key('CONFIG_ATTR')}
summary_info += {'Install blobs': config_host.has_key('INSTALL_BLOBS')}
-# TODO: add back KVM/HAX/HVF/WHPX/TCG
-#summary_info += {'KVM support': have_kvm'}
-#summary_info += {'HAX support': have_hax'}
-#summary_info += {'HVF support': have_hvf'}
-#summary_info += {'WHPX support': have_whpx'}
-#summary_info += {'TCG support': have_tcg'}
-#if get_option('tcg')
-# summary_info += {'TCG debug enabled': config_host.has_key('CONFIG_DEBUG_TCG')}
-# summary_info += {'TCG interpreter': config_host.has_key('CONFIG_TCG_INTERPRETER')}
-#endif
+summary_info += {'KVM support': config_all.has_key('CONFIG_KVM')}
+summary_info += {'HAX support': config_all.has_key('CONFIG_HAX')}
+summary_info += {'HVF support': config_all.has_key('CONFIG_HVF')}
+summary_info += {'WHPX support': config_all.has_key('CONFIG_WHPX')}
+summary_info += {'TCG support': config_all.has_key('CONFIG_TCG')}
+if config_all.has_key('CONFIG_TCG')
+ summary_info += {'TCG debug enabled': config_host.has_key('CONFIG_DEBUG_TCG')}
+ summary_info += {'TCG interpreter': config_host.has_key('CONFIG_TCG_INTERPRETER')}
+endif
summary_info += {'malloc trim support': has_malloc_trim}
summary_info += {'RDMA support': config_host.has_key('CONFIG_RDMA')}
summary_info += {'PVRDMA support': config_host.has_key('CONFIG_PVRDMA')}