qemu

FORK: QEMU emulator
git clone https://git.neptards.moe/neptards/qemu.git
Log | Files | Refs | Submodules | LICENSE

meson.build (3182B)


      1 subdir('bench')
      2 subdir('qemu-iotests')
      3 
      4 test_qapi_outputs = [
      5   'qapi-builtin-types.c',
      6   'qapi-builtin-types.h',
      7   'qapi-builtin-visit.c',
      8   'qapi-builtin-visit.h',
      9   'test-qapi-commands-sub-sub-module.c',
     10   'test-qapi-commands-sub-sub-module.h',
     11   'test-qapi-commands.c',
     12   'test-qapi-commands.h',
     13   'test-qapi-emit-events.c',
     14   'test-qapi-emit-events.h',
     15   'test-qapi-events-sub-sub-module.c',
     16   'test-qapi-events-sub-sub-module.h',
     17   'test-qapi-events.c',
     18   'test-qapi-events.h',
     19   'test-qapi-init-commands.c',
     20   'test-qapi-init-commands.h',
     21   'test-qapi-introspect.c',
     22   'test-qapi-introspect.h',
     23   'test-qapi-types-sub-sub-module.c',
     24   'test-qapi-types-sub-sub-module.h',
     25   'test-qapi-types.c',
     26   'test-qapi-types.h',
     27   'test-qapi-visit-sub-sub-module.c',
     28   'test-qapi-visit-sub-sub-module.h',
     29   'test-qapi-visit.c',
     30   'test-qapi-visit.h',
     31 ]
     32 
     33 # Problem: to generate trace events, we'd have to add the .trace-events
     34 # file to qapi_trace_events like we do in qapi/meson.build.  Since
     35 # qapi_trace_events is used by trace/meson.build, we'd have to move
     36 # subdir('tests') above subdir('trace') in the top-level meson.build.
     37 # Can't, because it would break the dependency of qga on qemuutil (which
     38 # depends on trace_ss).  Not worth solving now; simply suppress trace
     39 # event generation instead.
     40 test_qapi_files = custom_target('Test QAPI files',
     41                                 output: test_qapi_outputs,
     42                                 input: files('qapi-schema/qapi-schema-test.json',
     43                                              'qapi-schema/include/sub-module.json',
     44                                              'qapi-schema/sub-sub-module.json'),
     45                                 command: [ qapi_gen, '-o', meson.current_build_dir(),
     46                                            '-b', '-p', 'test-', '@INPUT0@',
     47                                            '--suppress-tracing' ],
     48                                 depend_files: qapi_gen_depends)
     49 
     50 # meson doesn't like generated output in other directories
     51 # perhaps change qapi_gen to replace / with _, like Meson itself does?
     52 subdir('include')
     53 
     54 test_qapi_sources = []
     55 test_qapi_headers = []
     56 i = 0
     57 foreach o: test_qapi_files.to_list() + test_qapi_files_extra.to_list()
     58   if o.full_path().endswith('.h')
     59     test_qapi_headers += o
     60   endif
     61   test_qapi_sources += o
     62 endforeach
     63 
     64 libtestqapi = static_library('testqapi', sources: [genh, test_qapi_sources])
     65 testqapi = declare_dependency(link_with: libtestqapi, sources: [genh, test_qapi_headers])
     66 
     67 test_deps = {
     68   'test-qht-par': qht_bench,
     69 }
     70 
     71 if have_tools and have_vhost_user and 'CONFIG_LINUX' in config_host
     72   executable('vhost-user-bridge',
     73              sources: files('vhost-user-bridge.c'),
     74              dependencies: [qemuutil, vhost_user])
     75 endif
     76 
     77 test('decodetree', sh,
     78      args: [ files('decode/check.sh'), config_host['PYTHON'], files('../scripts/decodetree.py') ],
     79      workdir: meson.current_source_dir() / 'decode',
     80      suite: 'decodetree')
     81 
     82 if 'CONFIG_TCG' in config_all
     83   subdir('fp')
     84 endif
     85 
     86 if get_option('tcg').allowed()
     87   if 'CONFIG_PLUGIN' in config_host
     88     subdir('plugin')
     89   endif
     90 endif
     91 
     92 subdir('unit')
     93 subdir('qapi-schema')
     94 subdir('qtest')
     95 subdir('migration')