diff options
Diffstat (limited to 'test/meson.build')
-rw-r--r-- | test/meson.build | 32 |
1 files changed, 23 insertions, 9 deletions
diff --git a/test/meson.build b/test/meson.build index ebd4395..e34d72c 100644 --- a/test/meson.build +++ b/test/meson.build @@ -1,7 +1,7 @@ # So we don't have to reorganize the entire directory tree. incdir = include_directories('../') outdir = join_paths(build_root, 'test', 'out') -refdir = join_paths(source_root, 'test', 'ref') +refdir = '' # Convenient testing libraries. An adhoc collection of # mpv objects that test_utils.c needs. Paths and subprocesses @@ -17,6 +17,7 @@ test_utils_files = [ 'misc/dispatch.c', 'misc/json.c', 'misc/node.c', + 'misc/path_utils.c', 'misc/random.c', 'misc/thread_tools.c', 'options/m_config_core.c', @@ -50,7 +51,8 @@ if not features['win32-threads'] endif if features['win32-desktop'] - test_utils_deps += cc.find_library('winmm') + test_utils_deps += cc.find_library('imm32') + test_utils_deps += cc.find_library('ntdll') endif test_utils_objects = libmpv.extract_objects(test_utils_files) test_utils = static_library('test-utils', 'test_utils.c', include_directories: incdir, @@ -73,7 +75,7 @@ endif img_utils_objects = libmpv.extract_objects(img_utils_files) img_utils = static_library('img-utils', 'img_utils.c', include_directories: incdir, - dependencies: [libavcodec], objects: img_utils_objects) + dependencies: [libavcodec, libplacebo], objects: img_utils_objects) # The actual tests. chmap_files = [ @@ -91,7 +93,7 @@ test('chmap', chmap) gl_video_objects = libmpv.extract_objects('video/out/gpu/ra.c', 'video/out/gpu/utils.c') gl_video = executable('gl-video', 'gl_video.c', objects: gl_video_objects, - dependencies: [libavutil], include_directories: incdir, + dependencies: [libavutil, libplacebo], include_directories: incdir, link_with: [img_utils, test_utils]) test('gl-video', gl_video) @@ -104,22 +106,34 @@ test('linked-list', linked_list) timer = executable('timer', files('timer.c'), include_directories: incdir, link_with: test_utils) test('timer', timer) +format = executable('format', files('format.c'), include_directories: incdir, link_with: test_utils) +test('format', format) + paths_objects = libmpv.extract_objects('options/path.c', path_source) paths = executable('paths', 'paths.c', include_directories: incdir, objects: paths_objects, link_with: test_utils) test('paths', paths) if get_option('libmpv') - libmpv_test = executable('libmpv-test', 'libmpv_test.c', - include_directories: incdir, link_with: libmpv) + exe = executable('libmpv-test', 'libmpv_test.c', + include_directories: incdir, link_with: libmpv) file = join_paths(source_root, 'etc', 'mpv-icon-8bit-16x16.png') - test('libmpv', libmpv_test, args: file, timeout: 60) + test('libmpv', exe, args: file, timeout: 60) + + exe = executable('libmpv-encode', 'libmpv_encode.c', + include_directories: incdir, link_with: libmpv) + test('libmpv-encode', exe, timeout: 30) endif -# Minimum required libavutil version that works with these tests. +# Supported libavutil versions that work with these tests. # Will need to be manually updated when ffmpeg adds/removes more formats in the future. -if libavutil.version().version_compare('>= 58.27.100') +if libavutil.version().version_compare('>= 59.0.100') + refdir = join_paths(source_root, 'test', 'ref', 'ffmpeg7') +elif libavutil.version().version_compare('>= 58.27.100') + refdir = join_paths(source_root, 'test', 'ref', 'ffmpeg6') +endif +if refdir != '' # The CI can randomly fail if libavutil isn't explicitly linked again here. img_format = executable('img-format', 'img_format.c', include_directories: incdir, dependencies: [libavutil, libplacebo], link_with: [img_utils, test_utils]) |