summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorNirbheek Chauhan <nirbheek@centricular.com>2018-10-28 14:54:52 +0000
committerNirbheek Chauhan <nirbheek@centricular.com>2018-10-28 14:54:52 +0000
commit55134df54c99b09556d3d0f60b9b4f029123af0e (patch)
tree733210dfc39d82298cc50ebee2bed616b96ad08d /sys
parenta4cfb1fa1475cedd296062c6077d21152d36dc04 (diff)
downloadgstreamer-plugins-bad-55134df54c99b09556d3d0f60b9b4f029123af0e.tar.gz
meson: Add a feature option for the MSDK plugin
Diffstat (limited to 'sys')
-rw-r--r--sys/msdk/meson.build22
1 files changed, 15 insertions, 7 deletions
diff --git a/sys/msdk/meson.build b/sys/msdk/meson.build
index 554d01d64..fa4fa3cc3 100644
--- a/sys/msdk/meson.build
+++ b/sys/msdk/meson.build
@@ -30,25 +30,33 @@ else
msdk_sources += ['msdk_libva.c', 'gstmsdkallocator_libva.c']
endif
-# FIXME: automagic
+msdk_option = get_option('msdk')
+if msdk_option.disabled()
+ subdir_done()
+endif
+
msdk_root = run_command(python3, '-c', 'import os; print(os.environ.get("INTELMEDIASDKROOT", os.environ.get("MFX_HOME", "")))').stdout().strip()
+if msdk_root == '' and msdk_option.enabled()
+ error('msdk plugin enabled but Intel Media SDK not found: neither INTELMEDIASDKROOT nor MFX_HOME were set')
+endif
+
have_msdk = false
msdk_dep = []
if msdk_root != ''
msdk_libdir = [msdk_root + '/lib/lin_x64', msdk_root + '/lib/x64']
msdk_incdir = include_directories(msdk_root + '/include')
- msdk_lib = cxx.find_library('mfx', dirs: msdk_libdir, required: false)
+ msdk_lib = cxx.find_library('mfx', dirs: msdk_libdir, required: msdk_option)
if host_machine.system() == 'windows'
- legacy_stdio_dep = cc.find_library('legacy_stdio_definitions', required: false)
- d3d11_dep = cc.find_library('d3d11', required: false)
+ legacy_stdio_dep = cc.find_library('legacy_stdio_definitions', required: msdk_option)
+ d3d11_dep = cc.find_library('d3d11', required: msdk_option)
msdk_dep = declare_dependency(include_directories: msdk_incdir, dependencies: [msdk_lib, d3d11_dep, legacy_stdio_dep])
msdk_dep_found = msdk_lib.found() and d3d11_dep.found() and legacy_stdio_dep.found() and cc.get_id() == 'msvc'
else
- libva_dep = dependency('libva-drm', required: false)
- libdl_dep = cc.find_library('dl', required: false)
- libgudev_dep = dependency('gudev-1.0', required : false)
+ libva_dep = dependency('libva-drm', required: msdk_option)
+ libdl_dep = cc.find_library('dl', required: msdk_option)
+ libgudev_dep = dependency('gudev-1.0', required: msdk_option)
msdk_dep = declare_dependency(include_directories: msdk_incdir, dependencies: [msdk_lib, libva_dep, libdl_dep, libgudev_dep])
msdk_dep_found = msdk_lib.found() and libva_dep.found() and libdl_dep.found() and libgudev_dep.found()
endif