meson.build 1.32 KB
Newer Older
1 2 3
libavformat_dep = dependency('libavformat', version: '>= 57.40', required: get_option('ffmpeg'))
libavcodec_dep = dependency('libavcodec', version: '>= 57.48', required: get_option('ffmpeg'))
libavutil_dep = dependency('libavutil', version: '>= 55.27', required: get_option('ffmpeg'))
4
conf.set('HAVE_LIBAVUTIL', libavutil_dep.found())
5 6 7

enable_ffmpeg = libavformat_dep.found() and libavcodec_dep.found() and libavutil_dep.found()
conf.set('ENABLE_FFMPEG', enable_ffmpeg)
8 9 10 11 12 13 14 15

if enable_ffmpeg
  libavfilter_dep = dependency('libavfilter', required: false)
else
  libavfilter_dep = dependency('', required: false)
endif
conf.set('HAVE_LIBAVFILTER', libavfilter_dep.found())

16 17 18 19 20
if not enable_ffmpeg
  ffmpeg_dep = dependency('', required: false)
  subdir_done()
endif

21 22
ffmpeg_sources = []
if libavfilter_dep.found()
23 24 25 26
  ffmpeg_sources += [
    'Filter.cxx',
    'DetectFilterFormat.cxx',
  ]
27 28
endif

29 30 31
ffmpeg = static_library(
  'ffmpeg',
  'Init.cxx',
32
  'Interleave.cxx',
33 34 35 36
  'LogError.cxx',
  'LogCallback.cxx',
  'Error.cxx',
  'Domain.cxx',
37
  ffmpeg_sources,
38 39 40 41
  include_directories: inc,
  dependencies: [
    libavformat_dep,
    libavcodec_dep,
42
    libavfilter_dep,
43
    libavutil_dep,
44
    log_dep,
45 46 47 48 49
  ],
)

ffmpeg_dep = declare_dependency(
  link_with: ffmpeg,
50 51 52
  dependencies: [
    libavformat_dep,
    libavcodec_dep,
53
    libavfilter_dep,
54 55
    libavutil_dep,
  ],
56
)