33 lines
843 B
Meson
33 lines
843 B
Meson
# SPDX-License-Identifier: CC0-1.0
|
|
|
|
if not pycamera_enabled
|
|
subdir_done()
|
|
endif
|
|
|
|
# If ASan is enabled, the link order runtime check will fail as Python is not
|
|
# linked to ASan. LD_PRELOAD the ASan runtime if available, or skip the test
|
|
# otherwise.
|
|
|
|
if asan_runtime_missing
|
|
warning('Unable to get path to ASan runtime, Python test disabled')
|
|
subdir_done()
|
|
endif
|
|
|
|
pymod = import('python')
|
|
py3 = pymod.find_installation('python3')
|
|
|
|
pypathdir = meson.project_build_root() / 'src' / 'py'
|
|
py_env = ['PYTHONPATH=' + pypathdir]
|
|
|
|
if asan_enabled
|
|
# Disable leak detection as the Python interpreter is full of leaks.
|
|
py_env += ['LD_PRELOAD=' + asan_runtime, 'ASAN_OPTIONS=detect_leaks=0']
|
|
endif
|
|
|
|
test('pyunittests',
|
|
py3,
|
|
args : files('unittests.py'),
|
|
env : py_env,
|
|
suite : 'pybindings',
|
|
is_parallel : false)
|