blob: 3f3882748ae20865897238bae9628fc90496c64f [file] [log] [blame]
Marc-André Lureau279588d2020-08-03 09:05:54 +02001py3 = import('python').find_installation()
2
Thomas Huth3b472e72021-03-12 10:22:38 +01003subdir('bench')
Marc-André Lureaua52f4a72020-08-28 15:07:28 +04004
Marc-André Lureau37e27772020-08-28 15:07:19 +04005test_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
Paolo Bonzini97d6efd2020-10-14 07:20:17 -040047test_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])
Marc-André Lureau37e27772020-08-28 15:07:19 +040059
Marc-André Lureau279588d2020-08-03 09:05:54 +020060test_deps = {
61 'test-qht-par': qht_bench,
62}
63
Paolo Bonzini27d551c2020-09-11 13:12:11 +020064if have_tools and 'CONFIG_VHOST_USER' in config_host and 'CONFIG_LINUX' in config_host
Marc-André Lureau89d4dc82020-08-28 15:07:27 +040065 executable('vhost-user-bridge',
66 sources: files('vhost-user-bridge.c'),
Marc-André Lureau0df750e2020-11-25 14:06:37 +040067 dependencies: [qemuutil, vhost_user])
Marc-André Lureau89d4dc82020-08-28 15:07:27 +040068endif
69
Paolo Bonzinice1c1e72020-01-28 16:41:44 +010070test('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')
Paolo Bonzini39419962020-08-06 14:08:31 +020074
Philippe Mathieu-Daudéf77147c2021-01-22 21:44:31 +010075if 'CONFIG_TCG' in config_all
76 subdir('fp')
77endif
Alex Bennée7f808682020-09-09 12:27:34 +010078
Paolo Bonzini1badb702020-09-18 04:57:25 -040079if not get_option('tcg').disabled()
Paolo Bonziniffac93d2020-02-04 16:09:05 +010080 if 'CONFIG_PLUGIN' in config_host
81 subdir('plugin')
82 endif
Paolo Bonzini39419962020-08-06 14:08:31 +020083endif
Paolo Bonzini3afe7ab2020-01-28 18:05:14 +010084
Thomas Huthda668aa2021-03-10 07:33:14 +010085subdir('unit')
Paolo Bonzini3afe7ab2020-01-28 18:05:14 +010086subdir('qapi-schema')
Paolo Bonzinia2ce7db2020-08-04 20:00:40 +020087subdir('qtest')
Marc-André Lureau4fbcdcd2020-08-28 15:07:34 +040088subdir('migration')