--- /dev/null
+From 1fbb69a58c3dc9d604f5c7851bd3c144af687539 Mon Sep 17 00:00:00 2001
+From: Dylan Baker <dylan@pnwbakers.com>
+Date: Thu, 26 Sep 2019 15:42:59 -0700
+Subject: [PATCH] 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: 22a817af8a89eb3c762fc3e07b443a3ce37d7416
+ ("meson: build gallium xvmc state tracker")
+Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/1844
+Reviewed-by: Adam Jackson <ajax@redhat.com>
+
+[Romain: backported to 19.2]
+(cherry picked from commit e456a053c3d6ec4f3d4581edcad05c72dfdaa407)
+Signed-off-by: Romain Naour <romain.naour@gmail.com>
+---
+ meson.build | 4 +++-
+ src/gallium/state_trackers/xvmc/meson.build | 10 +++++++---
+ 2 files changed, 10 insertions(+), 4 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index 4afd8ca663b..d536ef5a76d 100644
+--- a/meson.build
++++ b/meson.build
+@@ -502,10 +502,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')
+diff --git a/src/gallium/state_trackers/xvmc/meson.build b/src/gallium/state_trackers/xvmc/meson.build
+index d120d533eef..4b7aad51125 100644
+--- a/src/gallium/state_trackers/xvmc/meson.build
++++ b/src/gallium/state_trackers/xvmc/meson.build
+@@ -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.
+@@ -36,7 +38,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,
+ )
+@@ -46,7 +49,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,
+ )
+--
+2.23.0
+