summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorDetMittens2019-02-02 13:01:46 +0000
committerDetMittens2019-02-02 13:01:46 +0000
commitaee7abc98524203bf1c086deceff9d3c0fea7596 (patch)
tree63e58ad26b11807660b4bf62929f0a4563b68017
parentd56d2ca5ddcef1ad27f945a7e78476ca47f06d23 (diff)
downloadaur-aee7abc98524203bf1c086deceff9d3c0fea7596.tar.gz
Include patch to fix upstream bug #427
-rw-r--r--.SRCINFO4
-rw-r--r--427.patch65
-rw-r--r--PKGBUILD18
3 files changed, 80 insertions, 7 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 54943850ec1f..31b4a979f16e 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = libva-intel-driver-hybrid
pkgdesc = VA-API implementation for Intel G45 and HD Graphics family
pkgver = 2.3.0
- pkgrel = 1
+ pkgrel = 2
url = https://01.org/linuxmedia/vaapi
arch = x86_64
license = MIT
@@ -14,7 +14,9 @@ pkgbase = libva-intel-driver-hybrid
conflicts = libva-intel-driver
replaces = libva-driver-intel
source = git+https://github.com/intel/intel-vaapi-driver.git#tag=2.3.0
+ source = 427.patch
sha256sums = SKIP
+ sha256sums = e51eaf65b1bb09bf62a1b78668da0c268722387cb8eb3c05ec2d7462c651d1c0
pkgname = libva-intel-driver-hybrid
diff --git a/427.patch b/427.patch
new file mode 100644
index 000000000000..906fa8cd4c41
--- /dev/null
+++ b/427.patch
@@ -0,0 +1,65 @@
+From 0abb7a1c938437000bfca1a9b3706884467c681e Mon Sep 17 00:00:00 2001
+From: Haihao Xiang <haihao.xiang@intel.com>
+Date: Fri, 7 Dec 2018 13:31:43 +0800
+Subject: [PATCH] Check the interface from libva first
+
+This fixes https://github.com/intel/intel-vaapi-driver/issues/419
+
+Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
+---
+ src/i965_output_wayland.c | 27 ++++++++++++++++-----------
+ 1 file changed, 16 insertions(+), 11 deletions(-)
+
+diff --git a/src/i965_output_wayland.c b/src/i965_output_wayland.c
+index 122db953..a637552e 100644
+--- a/src/i965_output_wayland.c
++++ b/src/i965_output_wayland.c
+@@ -397,6 +397,7 @@ i965_output_wayland_init(VADriverContextP ctx)
+ struct i965_driver_data * const i965 = i965_driver_data(ctx);
+ struct dso_handle *dso_handle;
+ struct wl_vtable *wl_vtable;
++ struct VADriverVTableWayland * const vtable = ctx->vtable_wayland;
+
+ static const struct dso_symbol libegl_symbols[] = {
+ {
+@@ -465,25 +466,29 @@ i965_output_wayland_init(VADriverContextP ctx)
+ if (!i965->wl_output)
+ goto error;
+
+- i965->wl_output->libegl_handle = dso_open(LIBEGL_NAME);
+- if (!i965->wl_output->libegl_handle) {
+- i965->wl_output->libegl_handle = dso_open(LIBEGL_NAME_FALLBACK);
+- if (!i965->wl_output->libegl_handle)
++ wl_vtable = &i965->wl_output->vtable;
++
++ if (vtable->wl_interface)
++ wl_vtable->drm_interface = vtable->wl_interface;
++ else {
++ i965->wl_output->libegl_handle = dso_open(LIBEGL_NAME);
++ if (!i965->wl_output->libegl_handle) {
++ i965->wl_output->libegl_handle = dso_open(LIBEGL_NAME_FALLBACK);
++ if (!i965->wl_output->libegl_handle)
++ goto error;
++ }
++
++ dso_handle = i965->wl_output->libegl_handle;
++ if (!dso_get_symbols(dso_handle, wl_vtable, sizeof(*wl_vtable),
++ libegl_symbols))
+ goto error;
+ }
+
+- dso_handle = i965->wl_output->libegl_handle;
+- wl_vtable = &i965->wl_output->vtable;
+- if (!dso_get_symbols(dso_handle, wl_vtable, sizeof(*wl_vtable),
+- libegl_symbols))
+- goto error;
+-
+ i965->wl_output->libwl_client_handle = dso_open(LIBWAYLAND_CLIENT_NAME);
+ if (!i965->wl_output->libwl_client_handle)
+ goto error;
+
+ dso_handle = i965->wl_output->libwl_client_handle;
+- wl_vtable = &i965->wl_output->vtable;
+ if (!dso_get_symbols(dso_handle, wl_vtable, sizeof(*wl_vtable),
+ libwl_client_symbols))
+ goto error;
diff --git a/PKGBUILD b/PKGBUILD
index b7e5b1196614..6b7a961de563 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -6,7 +6,7 @@
pkgname=libva-intel-driver-hybrid
pkgver=2.3.0
-pkgrel=1
+pkgrel=2
pkgdesc='VA-API implementation for Intel G45 and HD Graphics family'
arch=('x86_64')
url='https://01.org/linuxmedia/vaapi'
@@ -17,15 +17,21 @@ replaces=('libva-driver-intel')
optdepends=('intel-hybrid-codec-driver: Provides codecs with partial HW acceleration')
conflicts=('libva-intel-driver')
provides=('libva-intel-driver')
-source=("git+https://github.com/intel/intel-vaapi-driver.git#tag=${pkgver}")
-sha256sums=('SKIP')
+source=("git+https://github.com/intel/intel-vaapi-driver.git#tag=${pkgver}"
+ 427.patch)
+sha256sums=('SKIP'
+ 'e51eaf65b1bb09bf62a1b78668da0c268722387cb8eb3c05ec2d7462c651d1c0')
prepare() {
+ cd intel-vaapi-driver
+ # https://github.com/intel/intel-vaapi-driver/issues/419
+ patch -Np1 -i ../427.patch
+
# Only relevant if intel-gpu-tools is installed,
# since then the shaders will be recompiled
- sed -i '1s/python$/&2/' intel-vaapi-driver/src/shaders/gpp.py
+ sed -i '1s/python$/&2/' src/shaders/gpp.py
# Fix undefined variable in src/meson.build
- sed -i 's/2.2.0/2.2.0.0/' intel-vaapi-driver/meson.build
+ sed -i 's/2.2.0/2.2.0.0/' meson.build
}
build() {
@@ -34,7 +40,7 @@ build() {
}
package() {
- DESTDIR="${pkgdir}" ninja -C build install
+ DESTDIR="${pkgdir}" meson install -C build
install -Dm 644 intel-vaapi-driver/COPYING -t "${pkgdir}"/usr/share/licenses/libva-intel-driver-hybrid
}