wireplumber/tests/meson.build

67 lines
2 KiB
Meson

valgrind = find_program('valgrind', required: false)
if valgrind.found()
glib_supp = get_option('glib-supp')
if glib_supp == ''
glib_supp = glib_dep.get_variable(pkgconfig: 'prefix')
glib_supp = glib_supp / 'share' / 'glib-2.0' / 'valgrind' / 'glib.supp'
endif
if fs.is_file(glib_supp)
message('Using glib.supp:', glib_supp)
else
message('glib.supp not found, valgrind tests will not work correctly')
endif
valgrind_env = environment({
'G_SLICE': 'always-malloc',
})
add_test_setup('valgrind',
exe_wrapper: [ valgrind,
'--suppressions=' + glib_supp,
'--leak-check=full',
'--gen-suppressions=all',
'--error-exitcode=3',
'--keep-debuginfo=yes',
],
env: valgrind_env,
timeout_multiplier: 2)
endif
# The common test environment
common_test_env = environment({
'HOME': '/invalid',
'XDG_RUNTIME_DIR': '/invalid',
'PIPEWIRE_RUNTIME_DIR': '/tmp',
'XDG_CONFIG_HOME': meson.current_build_dir() / '.config',
'XDG_STATE_HOME': meson.current_build_dir() / '.local' / 'state',
'FILE_MONITOR_DIR': meson.current_build_dir() / '.local' / 'file_monitor',
'WIREPLUMBER_DATA_DIR': meson.current_source_dir() / '..' / 'src',
'WIREPLUMBER_MODULE_DIR': meson.current_build_dir() / '..' / 'modules',
'WIREPLUMBER_DEBUG': 'T,pw.*:I,spa.*:I,mod.*:I',
})
spa_plugindir = spa_dep.get_variable(
pkgconfig: 'plugindir', internal: 'plugindir', default_value: '')
pipewire_moduledir = pipewire_dep.get_variable(
pkgconfig: 'moduledir', internal: 'moduledir', default_value: '')
pipewire_confdatadir = pipewire_dep.get_variable(
pkgconfig: 'confdatadir', internal: 'confdatadir', default_value: '')
if spa_plugindir != ''
common_test_env.set('SPA_PLUGIN_DIR', spa_plugindir)
endif
if pipewire_moduledir != ''
common_test_env.set('PIPEWIRE_MODULE_DIR', pipewire_moduledir)
endif
if pipewire_confdatadir != ''
common_test_env.set('PIPEWIRE_CONFIG_DIR', pipewire_confdatadir)
endif
subdir('wp')
if build_modules
subdir('wplua')
subdir('scripts')
subdir('modules')
endif
subdir('examples')