Build gst-libav if libav is on the system
[platform/upstream/gstreamer.git] / meson.build
1 project('gstreamer uninstalled', 'c', version : '1.9.1.1')
2
3 gst_version = meson.project_version()
4 gst_branch = 'master'
5
6 glib_req = '>= 2.40.0'
7
8 subprojects = [
9     'gstreamer',
10     'gst-plugins-base',
11     'gst-plugins-good',
12     'gst-plugins-ugly',
13     'gst-plugins-bad',
14     'gst-devtools',
15     'gst-editing-services'
16 ]
17
18 # FIXME Remove that check once we have ffmpeg as a gst-libav subproject
19 libavfilter_dep = dependency('libavfilter', version: '>= 6.47.100', required: false)
20 gst_libav = []
21 if libavfilter_dep.found()
22     cc = meson.get_compiler('c')
23     check_ffmpeg_src = '''#include <libavcodec/avcodec.h>
24     #if LIBAVCODEC_VERSION_MICRO >= 100
25     /* FFmpeg uses 100+ as its micro version */
26     #else
27     #error libav provider should be FFmpeg
28     #endif'''
29     if cc.compiles(check_ffmpeg_src, name : 'whether libav is provided by FFmpeg')
30         gst_libav = ['gst-libav']
31     endif
32 endif
33
34 if gst_libav.length() == 0
35     message('WARNING: gst-libav not built as ffmpeg >= n3.1.2 not found on the system')
36 else
37     subprojects += gst_libav
38 endif
39
40
41 foreach subproj: subprojects
42     subproject(subproj, version: gst_version)
43 endforeach
44
45 setenv = find_program('gst-uninstalled.py')
46 run_target('uninstalled', setenv, '--builddir=@0@'.format(meson.current_build_dir()),
47            '--gst-version=@0@'.format(gst_branch))