Skip to content

Commit

Permalink
meson: Expose options to enable/disable plugins
Browse files Browse the repository at this point in the history
  • Loading branch information
Thibault Saunier committed Sep 6, 2017
1 parent 039fc65 commit 8bc0304
Show file tree
Hide file tree
Showing 57 changed files with 955 additions and 891 deletions.
25 changes: 13 additions & 12 deletions ext/assrender/meson.build
@@ -1,13 +1,14 @@
ass_dep = dependency('libass', version : '>= 0.10.2', required : false)
ass_comp = component('assrender')
ass_dep = dependency('libass', version : '>= 0.10.2', required : false,
components: ass_comp)

if ass_dep.found()
gstassrender = library('gstassrender',
'gstassrender.c',
c_args : gst_plugins_bad_args,
link_args : noseh_link_args,
include_directories : [configinc],
dependencies : [gstvideo_dep, ass_dep],
install : true,
install_dir : plugins_install_dir,
)
endif
gstassrender = library('gstassrender',
'gstassrender.c',
c_args : gst_plugins_bad_args,
link_args : noseh_link_args,
include_directories : [configinc],
dependencies : [gstvideo_dep, ass_comp.dependencies()],
install : true,
install_dir : plugins_install_dir,
components: ass_comp
)
27 changes: 16 additions & 11 deletions ext/bz2/meson.build
Expand Up @@ -4,15 +4,20 @@ bz2_sources = [
'gstbz2enc.c',
]

bz2_dep = cc.find_library('bz2', required : false)
bz2_comp = component('bz2')

if bz2_dep.found() and cc.has_header_symbol('bzlib.h', 'BZ2_bzlibVersion')
gstbz2 = library('gstbz2',
bz2_sources,
c_args : gst_plugins_bad_args,
include_directories : [configinc],
dependencies : [gstvideo_dep, bz2_dep],
install : true,
install_dir : plugins_install_dir,
)
endif
bz2_dep = cc.find_dependency('bz2',
libs: ['bz2'],
headers_symbols: [['bzlib.h', 'BZ2_bzlibVersion']],
required : false,
components: bz2_comp)

gstbz2 = library('gstbz2',
bz2_sources,
c_args : gst_plugins_bad_args,
include_directories : [configinc],
dependencies : [gstvideo_dep, bz2_comp.dependencies()],
install : true,
install_dir : plugins_install_dir,
components: bz2_comp
)
23 changes: 12 additions & 11 deletions ext/chromaprint/meson.build
@@ -1,12 +1,13 @@
chromaprint_dep = dependency('libchromaprint', required : false)
chromaprint_comp = component('chromaprint')
chromaprint_dep = dependency('libchromaprint', required : false,
components: chromaprint_comp)

if chromaprint_dep.found()
gstchromaprint = library('gstchromaprint',
'gstchromaprint.c',
c_args : gst_plugins_bad_args,
include_directories : [configinc],
dependencies : [gstaudio_dep, chromaprint_dep],
install : true,
install_dir : plugins_install_dir,
)
endif
gstchromaprint = library('gstchromaprint',
'gstchromaprint.c',
c_args : gst_plugins_bad_args,
include_directories : [configinc],
dependencies : [gstaudio_dep, chromaprint_comp.dependencies()],
install : true,
install_dir : plugins_install_dir,
components: chromaprint_comp,
)
23 changes: 12 additions & 11 deletions ext/curl/meson.build
Expand Up @@ -12,15 +12,16 @@ curl_sources = [
'gstcurlqueue.c',
]

curl_dep = dependency('libcurl', version : '>= 7.35.0', required : false)
curl_comp = component('curl')
curl_dep = dependency('libcurl', version : '>= 7.35.0', required : false,
components: curl_comp)

if curl_dep.found()
gstcurl = library('gstcurl',
curl_sources,
c_args : gst_plugins_bad_args,
include_directories : [configinc],
dependencies : [gstbase_dep, curl_dep] + winsock2,
install : true,
install_dir : plugins_install_dir,
)
endif
gstcurl = library('gstcurl',
curl_sources,
c_args : gst_plugins_bad_args,
include_directories : [configinc],
dependencies : [gstbase_dep, curl_comp.dependencies()] + winsock2,
install : true,
install_dir : plugins_install_dir,
components: curl_comp
)
28 changes: 15 additions & 13 deletions ext/dash/meson.build
Expand Up @@ -4,16 +4,18 @@ dash_sources = [
'gstplugin.c',
]

xml2_dep = dependency('libxml-2.0', version : '>= 2.8', required : false)
if xml2_dep.found()
gstsouphttpsrc = library('gstdashdemux',
dash_sources,
c_args : gst_plugins_bad_args + ['-DGST_USE_UNSTABLE_API'],
link_args : noseh_link_args,
include_directories : [configinc, libsinc],
dependencies : [gstadaptivedemux_dep, gsturidownloader_dep, gsttag_dep,
gstnet_dep, gstbase_dep, gstisoff_dep, gio_dep, xml2_dep],
install : true,
install_dir : plugins_install_dir,
)
endif
dash_comp = component('dash')
dash_dep = dependency('libxml-2.0', version : '>= 2.8', required : false,
components: dash_comp)

gstsouphttpsrc = library('gstdashdemux',
dash_sources,
c_args : gst_plugins_bad_args + ['-DGST_USE_UNSTABLE_API'],
link_args : noseh_link_args,
include_directories : [configinc, libsinc],
dependencies : [gstadaptivedemux_dep, gsturidownloader_dep, gsttag_dep,
gstnet_dep, gstbase_dep, gio_dep, gstisoff_dep, dash_comp.dependencies()],
install : true,
install_dir : plugins_install_dir,
components: dash_comp
)
23 changes: 12 additions & 11 deletions ext/directfb/meson.build
@@ -1,12 +1,13 @@
directfb_dep = dependency('directfb', version : '>= 0.9.24', required : false)
directfb_comp = component('directfb')
directfb_dep = dependency('directfb', version : '>= 0.9.24', required : false,
components: directfb_comp)

if directfb_dep.found()
gstdirectfb = library('gstdirectfb',
'dfbvideosink.c',
c_args : gst_plugins_bad_args,
include_directories : [configinc],
dependencies : [gstvideo_dep, directfb_dep],
install : true,
install_dir : plugins_install_dir,
)
endif
gstdirectfb = library('gstdirectfb',
'dfbvideosink.c',
c_args : gst_plugins_bad_args,
include_directories : [configinc],
dependencies : [gstvideo_dep, directfb_comp.dependencies()],
install : true,
install_dir : plugins_install_dir,
components: directfb_comp
)
23 changes: 12 additions & 11 deletions ext/dtls/meson.build
Expand Up @@ -11,15 +11,16 @@ dtls_sources = [
'plugin.c',
]

libcrypto_dep = dependency('libcrypto', required : false)
dtls_comp = component('dtls', dependencies: openssl_dep)
dtls_dep = dependency('libcrypto', required : false,
components: dtls_comp)

if openssl_dep.found() and libcrypto_dep.found()
gstdtls = library('gstdtls',
dtls_sources,
c_args : gst_plugins_bad_args,
include_directories : [configinc],
dependencies : [gst_dep, libcrypto_dep, openssl_dep],
install : true,
install_dir : plugins_install_dir,
)
endif
gstdtls = library('gstdtls',
dtls_sources,
c_args : gst_plugins_bad_args,
include_directories : [configinc],
dependencies : [gst_dep, dtls_comp.dependencies()],
install : true,
install_dir : plugins_install_dir,
components: dtls_comp
)
35 changes: 21 additions & 14 deletions ext/dts/meson.build
@@ -1,17 +1,24 @@
dca_dep = dependency('libdca', required : false)
dtsdec_comp = component('dtsdec')

if not dca_dep.found() and cc.has_header_symbol('dca.h', 'dca_init')
dca_dep = cc.find_library('dca', required : false)
endif

if dca_dep.found()
gstdtsdec = library('gstdtsdec',
'gstdtsdec.c',
c_args : gst_plugins_bad_args,
link_args : noseh_link_args,
include_directories : [configinc, libsinc],
dependencies : [gstaudio_dep, orc_dep, dca_dep],
install : true,
install_dir : plugins_install_dir,
if not dependency('libdca', required : false).found()
dca_dep = cc.find_dependency('dca',
libs: ['dca'],
headers_symbols: [['dca.h', 'dca_init']],
required : false,
components: dtsdec_comp
)
else
dca_dep = dependency('libdca', required : false,
components: dtsdec_comp)
endif

gstdtsdec = library('gstdtsdec',
'gstdtsdec.c',
c_args : gst_plugins_bad_args,
link_args : noseh_link_args,
include_directories : [configinc, libsinc],
dependencies : [gstaudio_dep, orc_dep, dca_dep],
install : true,
install_dir : plugins_install_dir,
components: dtsdec_comp
)
27 changes: 16 additions & 11 deletions ext/faac/meson.build
@@ -1,12 +1,17 @@
faac_dep = cc.find_library('faac', required : false)
faac_comp = component('faac')
faac_dep = cc.find_dependency('faac',
libs: ['faac'],
headers_symbols: [['faac.h', 'faacEncOpen']],
components: faac_comp,
required: false
)

if faac_dep.found() and cc.has_header_symbol('faac.h', 'faacEncOpen')
gstfaac = library('gstfaac',
'gstfaac.c',
c_args : gst_plugins_bad_args,
include_directories : [configinc],
dependencies : [gstaudio_dep, gstpbutils_dep, gsttag_dep, faac_dep],
install : true,
install_dir : plugins_install_dir,
)
endif
gstfaac = library('gstfaac',
'gstfaac.c',
c_args : gst_plugins_bad_args,
include_directories : [configinc],
dependencies : [gstaudio_dep, gstpbutils_dep, gsttag_dep, faac_comp.dependencies()],
install : true,
install_dir : plugins_install_dir,
components: faac_comp
)
37 changes: 17 additions & 20 deletions ext/faad/meson.build
@@ -1,21 +1,18 @@
faad_args = [ ]
faad_comp = component('faad')
faad_dep = cc.find_dependency('faad',
headers_symbols: [['neaacdec.h', 'NeAACDecOpen'], ['neaacdec.h', 'LATM']],
libs: 'faad',
required: false,
components: faad_comp
)

have_faad = cc.has_header_symbol('neaacdec.h', 'NeAACDecOpen')
have_faad_2_7 = have_faad and cc.has_header_symbol('neaacdec.h', 'LATM')
if have_faad and not have_faad_2_7
message('Found faad2, but too old (< v2.7.0)')
endif

faad_dep = cc.find_library('faad', required : false)

if faad_dep.found() and have_faad_2_7
gstfaad = library('gstfaad',
'gstfaad.c',
c_args : gst_plugins_bad_args + [ '-DFAAD2_MINOR_VERSION=7', '-DFAAD_IS_NEAAC' ],
link_args : noseh_link_args,
include_directories : [configinc],
dependencies : [gstaudio_dep, gstpbutils_dep, gsttag_dep, faad_dep],
install : true,
install_dir : plugins_install_dir,
)
endif
gstfaad = library('gstfaad',
'gstfaad.c',
c_args : gst_plugins_bad_args + [ '-DFAAD2_MINOR_VERSION=7', '-DFAAD_IS_NEAAC' ],
link_args : noseh_link_args,
include_directories : [configinc],
dependencies : [gstaudio_dep, gstpbutils_dep, gsttag_dep, faad_dep],
install : true,
install_dir : plugins_install_dir,
components: faad_comp
)
23 changes: 12 additions & 11 deletions ext/fdkaac/meson.build
@@ -1,12 +1,13 @@
fdkaac_dep = dependency('fdk-aac', required : false)
fdkaac_comp = component('fdkaac')
fdkaac_dep = dependency('fdk-aac', required : false,
components: fdkaac_comp)

if fdkaac_dep.found()
gstfdkaac = library('gstfdkaac',
['plugin.c', 'gstfdkaacenc.c', 'gstfdkaacdec.c'],
c_args : gst_plugins_bad_args,
include_directories : [configinc],
dependencies : [gstaudio_dep, gstpbutils_dep, fdkaac_dep],
install : true,
install_dir : plugins_install_dir,
)
endif
gstfdkaac = library('gstfdkaac',
['plugin.c', 'gstfdkaacenc.c', 'gstfdkaacdec.c'],
c_args : gst_plugins_bad_args,
include_directories : [configinc],
dependencies : [gstaudio_dep, gstpbutils_dep, fdkaac_comp.dependencies()],
install : true,
install_dir : plugins_install_dir,
components: fdkaac_comp
)
40 changes: 16 additions & 24 deletions ext/flite/meson.build
Expand Up @@ -3,28 +3,20 @@ flite_sources = [
'gstflitetestsrc.c',
]

flite_libs = [
'flite',
'flite_cmu_us_kal',
'flite_usenglish',
'flite_cmulex'
]

flite_deps = [ ]
foreach flite_lib : flite_libs
flite_lib_dep = cc.find_library(flite_lib, required : false)
if flite_lib_dep.found()
flite_deps += [flite_lib_dep]
endif
endforeach
flite_comp = component('flite')
flite_dep = cc.find_dependency('flite',
libs: [ 'flite', 'flite_cmu_us_kal', 'flite_usenglish', 'flite_cmulex'],
headers_symbols: [['flite/flite.h', 'flite_init']],
required : false,
components: flite_comp
)

if flite_deps.length() == flite_libs.length() and cc.has_header_symbol('flite/flite.h', 'flite_init')
gstflite = library('gstflite',
flite_sources,
c_args : gst_plugins_bad_args,
include_directories : [configinc],
dependencies : [gstaudio_dep] + flite_deps,
install : true,
install_dir : plugins_install_dir,
)
endif
gstflite = library('gstflite',
flite_sources,
c_args : gst_plugins_bad_args,
include_directories : [configinc],
dependencies : [gstaudio_dep] + flite_comp.dependencies(),
install : true,
install_dir : plugins_install_dir,
components: flite_comp
)
23 changes: 12 additions & 11 deletions ext/fluidsynth/meson.build
@@ -1,12 +1,13 @@
fluidsynth_dep = dependency('fluidsynth', version : '>= 1.0', required : false)
fluidsynth_comp = component('fluidsynth')
fluidsynth_dep = dependency('fluidsynth', version : '>= 1.0', required : false,
components: fluidsynth_comp)

if fluidsynth_dep.found()
gstfluidsynth = library('gstfluidsynthmidi',
'gstfluiddec.c',
c_args : gst_plugins_bad_args,
include_directories : [configinc],
dependencies : [gstaudio_dep, gst_dep, fluidsynth_dep],
install : true,
install_dir : plugins_install_dir,
)
endif
gstfluidsynth = library('gstfluidsynthmidi',
'gstfluiddec.c',
c_args : gst_plugins_bad_args,
include_directories : [configinc],
dependencies : [gstaudio_dep, gst_dep, fluidsynth_comp.dependencies()],
install : true,
install_dir : plugins_install_dir,
components: fluidsynth_comp
)

0 comments on commit 8bc0304

Please sign in to comment.