blob: 2cfe33362bcdce70df53ea04476645e6cc5d4c52 [file] [log] [blame]
project('libva-utils', 'c', 'cpp',
version : '2.18.1',
default_options : [
'warning_level=2',
'c_std=gnu99',
'default_library=static',
],
license : 'MIT',
meson_version : '>= 0.42.0')
c = meson.get_compiler('c')
threads = dependency('threads')
libva_dep = dependency('libva', version: '>= 1.1.0')
libva_utils_flags = [ '-Wno-unused-parameter',
'-Wno-sign-compare' ]
backends = ''
# DRM
use_drm = false
drm_deps=[]
if get_option('drm') != 'false'
require_drm = get_option('drm') == 'true'
drm_deps = [
dependency('libva-drm', required: require_drm),
dependency('libdrm', required: require_drm),
]
use_drm = true
foreach d : drm_deps
if not d.found()
use_drm = false
endif
endforeach
if use_drm
backends += ' drm'
libva_utils_flags += [ '-DHAVE_VA_DRM=1' ]
endif
endif
# X11
use_x11 = false
if get_option('x11') != 'false'
require_x11 = get_option('x11') == 'true'
x11_deps = [
dependency('x11', required: require_x11),
dependency('libva-x11', required: require_x11),
]
use_x11 = true
foreach d : x11_deps
if not d.found()
use_x11 = false
endif
endforeach
if use_x11
backends += ' x11'
libva_utils_flags += [ '-DHAVE_VA_X11=1' ]
endif
endif
# WAYLAND
use_wayland = false
if get_option('wayland') != 'false'
require_wayland = get_option('wayland') == 'true'
wayland_deps = [
dependency('wayland-client', version: '>= 1.0.0', required: require_wayland),
dependency('libva-wayland', required: require_wayland),
]
use_wayland = true
foreach d : wayland_deps
if not d.found()
use_wayland = false
endif
endforeach
if use_wayland
backends += ' wayland'
libva_utils_flags += [ '-DHAVE_VA_WAYLAND=1' ]
endif
endif
# WIN32
use_win32 = false
if get_option('win32') != 'false'
require_win32 = get_option('win32') == 'true'
use_win32 = dependency('libva-win32', required: require_win32).found()
if use_win32
libva_utils_flags = [ '-DHAVE_VA_WIN32=1', '-DNOMINMAX']
dep_dxheaders = dependency('directx-headers', required : false)
if not dep_dxheaders.found()
dep_dxheaders = dependency('DirectX-Headers',
version : '>= v1.0.2',
fallback : ['DirectX-Headers', 'dep_dxheaders'],
required : use_win32
)
endif
endif
endif
add_project_arguments(libva_utils_flags,
language: ['c', 'cpp'])
if use_win32
subdir('getopt')
win32_deps = [ dependency('libva-win32', required: require_win32), idep_getopt, dep_dxheaders]
endif
subdir('common') # Uses win32_deps
subdir('vainfo')
if not use_win32
subdir('decode')
subdir('encode')
subdir('putsurface')
subdir('videoprocess')
subdir('vendor/intel')
subdir('vendor/intel/sfcsample')
endif
if get_option('tests')
subdir('test')
endif
if meson.version().version_compare('>= 0.53')
summary({
'Libva VA-API version' : libva_dep.version(),
'Installation prefix' : get_option('prefix'),
'Extra window systems' : backends,
'Enable Unit-tests': get_option('tests')
}, bool_yn: true)
endif