summaryrefslogtreecommitdiff
path: root/test/v4l2_compat/meson.build
diff options
context:
space:
mode:
Diffstat (limited to 'test/v4l2_compat/meson.build')
-rw-r--r--test/v4l2_compat/meson.build21
1 files changed, 14 insertions, 7 deletions
diff --git a/test/v4l2_compat/meson.build b/test/v4l2_compat/meson.build
index 10c46752..2691eacf 100644
--- a/test/v4l2_compat/meson.build
+++ b/test/v4l2_compat/meson.build
@@ -4,19 +4,26 @@ if not is_variable('v4l2_compat')
subdir_done()
endif
-# If ASan is enabled, the link order runtime check will fail as v4l2-ctl and
-# v4l2-compliance are not linked to ASan. Skip the test in that case.
-#
-# TODO: Find a way to LD_PRELOAD the ASan dynamic library instead, in a
-# cross-platform way with support for both gcc and clang.
+# If ASan is enabled but the ASan runtime shared library is missing,
+# v4l2_compat_test.py won't be able to LD_PRELOAD it, resulting in a link order
+# runtime check failure as v4l2-ctl and v4l2-compliance are not linked to ASan.
+# Skip the test in that case.
-if get_option('b_sanitize').contains('address')
+if asan_runtime_missing
+ warning('Unable to get path to ASan runtime, v4l2_compat test disabled')
subdir_done()
endif
v4l2_compat_test = files('v4l2_compat_test.py')
+v4l2_compat_args = []
+
+if asan_enabled
+ v4l2_compat_args += ['-s', asan_runtime]
+endif
+
+v4l2_compat_args += [v4l2_compat]
test('v4l2_compat_test', v4l2_compat_test,
- args : v4l2_compat,
+ args : v4l2_compat_args,
suite : 'v4l2_compat',
timeout : 60)