xref: /openbmc/qemu/tests/meson.build (revision 3b472e71d50fe33f2e0dfdd447dde5910ddf0761)
1279588d4SMarc-André Lureaupy3 = import('python').find_installation()
2279588d4SMarc-André Lureau
3*3b472e71SThomas Huthsubdir('bench')
4a52f4a7aSMarc-André Lureau
537e27776SMarc-André Lureautest_qapi_outputs = [
637e27776SMarc-André Lureau  'qapi-builtin-types.c',
737e27776SMarc-André Lureau  'qapi-builtin-types.h',
837e27776SMarc-André Lureau  'qapi-builtin-visit.c',
937e27776SMarc-André Lureau  'qapi-builtin-visit.h',
1037e27776SMarc-André Lureau  'test-qapi-commands-sub-sub-module.c',
1137e27776SMarc-André Lureau  'test-qapi-commands-sub-sub-module.h',
1237e27776SMarc-André Lureau  'test-qapi-commands.c',
1337e27776SMarc-André Lureau  'test-qapi-commands.h',
1437e27776SMarc-André Lureau  'test-qapi-emit-events.c',
1537e27776SMarc-André Lureau  'test-qapi-emit-events.h',
1637e27776SMarc-André Lureau  'test-qapi-events-sub-sub-module.c',
1737e27776SMarc-André Lureau  'test-qapi-events-sub-sub-module.h',
1837e27776SMarc-André Lureau  'test-qapi-events.c',
1937e27776SMarc-André Lureau  'test-qapi-events.h',
2037e27776SMarc-André Lureau  'test-qapi-init-commands.c',
2137e27776SMarc-André Lureau  'test-qapi-init-commands.h',
2237e27776SMarc-André Lureau  'test-qapi-introspect.c',
2337e27776SMarc-André Lureau  'test-qapi-introspect.h',
2437e27776SMarc-André Lureau  'test-qapi-types-sub-sub-module.c',
2537e27776SMarc-André Lureau  'test-qapi-types-sub-sub-module.h',
2637e27776SMarc-André Lureau  'test-qapi-types.c',
2737e27776SMarc-André Lureau  'test-qapi-types.h',
2837e27776SMarc-André Lureau  'test-qapi-visit-sub-sub-module.c',
2937e27776SMarc-André Lureau  'test-qapi-visit-sub-sub-module.h',
3037e27776SMarc-André Lureau  'test-qapi-visit.c',
3137e27776SMarc-André Lureau  'test-qapi-visit.h',
3237e27776SMarc-André Lureau]
3337e27776SMarc-André Lureau
3437e27776SMarc-André Lureautest_qapi_files = custom_target('Test QAPI files',
3537e27776SMarc-André Lureau                                output: test_qapi_outputs,
3637e27776SMarc-André Lureau                                input: files('qapi-schema/qapi-schema-test.json',
3737e27776SMarc-André Lureau                                             'qapi-schema/include/sub-module.json',
3837e27776SMarc-André Lureau                                             'qapi-schema/sub-sub-module.json'),
3937e27776SMarc-André Lureau                                command: [ qapi_gen, '-o', meson.current_build_dir(),
4037e27776SMarc-André Lureau                                           '-b', '-p', 'test-', '@INPUT0@' ],
4137e27776SMarc-André Lureau                                depend_files: qapi_gen_depends)
4237e27776SMarc-André Lureau
4337e27776SMarc-André Lureau# meson doesn't like generated output in other directories
4437e27776SMarc-André Lureau# perhaps change qapi_gen to replace / with _, like Meson itself does?
4537e27776SMarc-André Lureausubdir('include')
4637e27776SMarc-André Lureau
4797d6efd0SPaolo Bonzinitest_qapi_sources = []
4897d6efd0SPaolo Bonzinitest_qapi_headers = []
4997d6efd0SPaolo Bonzinii = 0
5097d6efd0SPaolo Bonziniforeach o: test_qapi_files.to_list() + test_qapi_files_extra.to_list()
5197d6efd0SPaolo Bonzini  if o.full_path().endswith('.h')
5297d6efd0SPaolo Bonzini    test_qapi_headers += o
5397d6efd0SPaolo Bonzini  endif
5497d6efd0SPaolo Bonzini  test_qapi_sources += o
5597d6efd0SPaolo Bonziniendforeach
5697d6efd0SPaolo Bonzini
5797d6efd0SPaolo Bonzinilibtestqapi = static_library('testqapi', sources: [genh, test_qapi_sources])
5897d6efd0SPaolo Bonzinitestqapi = declare_dependency(link_with: libtestqapi, sources: [genh, test_qapi_headers])
5937e27776SMarc-André Lureau
60279588d4SMarc-André Lureautest_deps = {
61279588d4SMarc-André Lureau  'test-qht-par': qht_bench,
62279588d4SMarc-André Lureau}
63279588d4SMarc-André Lureau
6427d551c0SPaolo Bonziniif have_tools and 'CONFIG_VHOST_USER' in config_host and 'CONFIG_LINUX' in config_host
6589d4dc8fSMarc-André Lureau  executable('vhost-user-bridge',
6689d4dc8fSMarc-André Lureau             sources: files('vhost-user-bridge.c'),
670df750e9SMarc-André Lureau             dependencies: [qemuutil, vhost_user])
6889d4dc8fSMarc-André Lureauendif
6989d4dc8fSMarc-André Lureau
70d3ca592bSPaolo Bonziniif have_system and 'CONFIG_POSIX' in config_host
71d3ca592bSPaolo Bonzini  subdir('qemu-iotests')
72d3ca592bSPaolo Bonziniendif
73d3ca592bSPaolo Bonzini
74ce1c1e7aSPaolo Bonzinitest('decodetree', sh,
75ce1c1e7aSPaolo Bonzini     args: [ files('decode/check.sh'), config_host['PYTHON'], files('../scripts/decodetree.py') ],
76ce1c1e7aSPaolo Bonzini     workdir: meson.current_source_dir() / 'decode',
77ce1c1e7aSPaolo Bonzini     suite: 'decodetree')
783941996bSPaolo Bonzini
79f77147cdSPhilippe Mathieu-Daudéif 'CONFIG_TCG' in config_all
803941996bSPaolo Bonzini  subdir('fp')
81f77147cdSPhilippe Mathieu-Daudéendif
827f808687SAlex Bennée
831badb709SPaolo Bonziniif not get_option('tcg').disabled()
84ffac93dfSPaolo Bonzini  if 'CONFIG_PLUGIN' in config_host
85ffac93dfSPaolo Bonzini    subdir('plugin')
86ffac93dfSPaolo Bonzini  endif
873941996bSPaolo Bonziniendif
883afe7ab0SPaolo Bonzini
89da668aa1SThomas Huthsubdir('unit')
903afe7ab0SPaolo Bonzinisubdir('qapi-schema')
91a2ce7dbdSPaolo Bonzinisubdir('qtest')
924fbcdcd7SMarc-André Lureausubdir('migration')
93