1py3 = import('python').find_installation() 2 3subdir('bench') 4 5test_qapi_outputs = [ 6 'qapi-builtin-types.c', 7 'qapi-builtin-types.h', 8 'qapi-builtin-visit.c', 9 'qapi-builtin-visit.h', 10 'test-qapi-commands-sub-sub-module.c', 11 'test-qapi-commands-sub-sub-module.h', 12 'test-qapi-commands.c', 13 'test-qapi-commands.h', 14 'test-qapi-emit-events.c', 15 'test-qapi-emit-events.h', 16 'test-qapi-events-sub-sub-module.c', 17 'test-qapi-events-sub-sub-module.h', 18 'test-qapi-events.c', 19 'test-qapi-events.h', 20 'test-qapi-init-commands.c', 21 'test-qapi-init-commands.h', 22 'test-qapi-introspect.c', 23 'test-qapi-introspect.h', 24 'test-qapi-types-sub-sub-module.c', 25 'test-qapi-types-sub-sub-module.h', 26 'test-qapi-types.c', 27 'test-qapi-types.h', 28 'test-qapi-visit-sub-sub-module.c', 29 'test-qapi-visit-sub-sub-module.h', 30 'test-qapi-visit.c', 31 'test-qapi-visit.h', 32] 33 34test_qapi_files = custom_target('Test QAPI files', 35 output: test_qapi_outputs, 36 input: files('qapi-schema/qapi-schema-test.json', 37 'qapi-schema/include/sub-module.json', 38 'qapi-schema/sub-sub-module.json'), 39 command: [ qapi_gen, '-o', meson.current_build_dir(), 40 '-b', '-p', 'test-', '@INPUT0@' ], 41 depend_files: qapi_gen_depends) 42 43# meson doesn't like generated output in other directories 44# perhaps change qapi_gen to replace / with _, like Meson itself does? 45subdir('include') 46 47test_qapi_sources = [] 48test_qapi_headers = [] 49i = 0 50foreach o: test_qapi_files.to_list() + test_qapi_files_extra.to_list() 51 if o.full_path().endswith('.h') 52 test_qapi_headers += o 53 endif 54 test_qapi_sources += o 55endforeach 56 57libtestqapi = static_library('testqapi', sources: [genh, test_qapi_sources]) 58testqapi = declare_dependency(link_with: libtestqapi, sources: [genh, test_qapi_headers]) 59 60test_deps = { 61 'test-qht-par': qht_bench, 62} 63 64if have_tools and 'CONFIG_VHOST_USER' in config_host and 'CONFIG_LINUX' in config_host 65 executable('vhost-user-bridge', 66 sources: files('vhost-user-bridge.c'), 67 dependencies: [qemuutil, vhost_user]) 68endif 69 70test('decodetree', sh, 71 args: [ files('decode/check.sh'), config_host['PYTHON'], files('../scripts/decodetree.py') ], 72 workdir: meson.current_source_dir() / 'decode', 73 suite: 'decodetree') 74 75if 'CONFIG_TCG' in config_all 76 subdir('fp') 77endif 78 79if not get_option('tcg').disabled() 80 if 'CONFIG_PLUGIN' in config_host 81 subdir('plugin') 82 endif 83endif 84 85subdir('unit') 86subdir('qapi-schema') 87subdir('qtest') 88subdir('migration') 89