meson: Link xvmc with libxv

Prior to xvmc 1.0.12 libxvmc incorrectly required libxv, but that was
fixed. This results in compilation failures for the gallium xvmc tracker
and tools. This patch fixes that by explicitly linking to libxv.

Fixes: 22a817af8a
       ("meson: build gallium xvmc state tracker")
Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/1844
Reviewed-by: Adam Jackson <ajax@redhat.com>
This commit is contained in:
Dylan Baker 2019-09-26 15:42:59 -07:00
parent 8c5c21d7e3
commit e456a053c3
2 changed files with 10 additions and 4 deletions

View File

@ -516,10 +516,12 @@ elif not (with_gallium_r600 or with_gallium_nouveau)
endif
endif
dep_xvmc = null_dep
dep_xv = null_dep
with_gallium_xvmc = false
if _xvmc != 'false'
dep_xvmc = dependency('xvmc', version : '>= 1.0.6', required : _xvmc == 'true')
with_gallium_xvmc = dep_xvmc.found()
dep_xv = dependency('xv', required : _xvmc == 'true')
with_gallium_xvmc = dep_xvmc.found() and dep_xv.found()
endif
xvmc_drivers_path = get_option('xvmc-libs-path')

View File

@ -23,7 +23,9 @@ libxvmc_st = static_library(
files('attributes.c', 'block.c', 'context.c', 'surface.c', 'subpicture.c'),
c_args : [c_vis_args],
include_directories : [inc_common],
dependencies : [dep_xvmc, dep_x11_xcb, dep_xcb, dep_xcb_dri2, dep_xcb_dri3],
dependencies : [
dep_xvmc, dep_x11_xcb, dep_xcb, dep_xcb_dri2, dep_xcb_dri3, dep_xv,
],
)
# These tests will not work without a working xvmc configuration.
@ -41,7 +43,8 @@ if with_tools.contains('xvmc')
_name,
files('tests/test_@0@.c'.format(x), 'tests/testlib.c'),
dependencies : [
dep_real_xvmc, dep_x11_xcb, dep_xcb, dep_xcb_dri2, dep_xcb_dri3, dep_xvmcw,
dep_real_xvmc, dep_x11_xcb, dep_xcb, dep_xcb_dri2, dep_xcb_dri3,
dep_xvmcw, dep_xv,
],
install: true,
)
@ -51,7 +54,8 @@ if with_tools.contains('xvmc')
'xvmc_bench',
files('tests/xvmc_bench.c', 'tests/testlib.c'),
dependencies : [
dep_real_xvmc, dep_x11_xcb, dep_xcb, dep_xcb_dri2, dep_xcb_dri3, dep_xvmcw,
dep_real_xvmc, dep_x11_xcb, dep_xcb, dep_xcb_dri2, dep_xcb_dri3,
dep_xvmcw, dep_xv,
],
install: true,
)