meson: Fix libav checks to use feature options correctly

This commit is contained in:
Nirbheek Chauhan 2018-09-03 21:22:25 +05:30
parent 13131122b7
commit 3e714d0bae

View file

@ -31,7 +31,8 @@ if not meson.is_subproject() and cc.get_id() == 'msvc'
endif endif
libav_opt = get_option('libav') libav_opt = get_option('libav')
libav_deps = [dependency('libavfilter', version: '>= 7.16.100', fallback: ['FFmpeg', 'libavfilter_dep'], required: false)] libav_deps = [dependency('libavfilter', version: '>= 7.16.100',
fallback: ['FFmpeg', 'libavfilter_dep'], required: libav_opt)]
if libav_deps[0].found() and libav_deps[0].type_name() != 'internal' if libav_deps[0].found() and libav_deps[0].type_name() != 'internal'
cc = meson.get_compiler('c') cc = meson.get_compiler('c')
check_ffmpeg_src = '''#include <libavcodec/avcodec.h> check_ffmpeg_src = '''#include <libavcodec/avcodec.h>
@ -40,15 +41,11 @@ if libav_deps[0].found() and libav_deps[0].type_name() != 'internal'
#else #else
#error libav provider should be FFmpeg #error libav provider should be FFmpeg
#endif''' #endif'''
if cc.compiles(check_ffmpeg_src, dependencies : libav_deps, name : 'whether libav is provided by FFmpeg') == false if not cc.compiles(check_ffmpeg_src, dependencies : libav_deps, name : 'whether libav is provided by FFmpeg')
if libav_opt.enabled()
error('gst-libav is enabled but can\'t be built')
else
message('WARNING: gst-libav not built as ffmpeg n3.1.2 not found on the system') message('WARNING: gst-libav not built as ffmpeg n3.1.2 not found on the system')
libav_deps += [disabler()] libav_deps += [disabler()]
endif endif
endif endif
endif
if add_languages('cs', required : get_option('sharp')) if add_languages('cs', required : get_option('sharp'))
sharp_deps = [] sharp_deps = []