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