Date: Friday, January 25, 2019 @ 10:21:40 Author: heftig Revision: 344749
archrelease: copy trunk to extra-x86_64 Added: libva/repos/extra-x86_64/257.patch (from rev 344748, libva/trunk/257.patch) libva/repos/extra-x86_64/PKGBUILD (from rev 344748, libva/trunk/PKGBUILD) Deleted: libva/repos/extra-x86_64/PKGBUILD libva/repos/extra-x86_64/not-finding-wl-drm-interface-with-libglvnd.patch --------------------------------------------------+ 257.patch | 67 ++++++++++++++++++ PKGBUILD | 75 ++++++++++++--------- not-finding-wl-drm-interface-with-libglvnd.patch | 48 ------------- 3 files changed, 112 insertions(+), 78 deletions(-) Copied: libva/repos/extra-x86_64/257.patch (from rev 344748, libva/trunk/257.patch) =================================================================== --- 257.patch (rev 0) +++ 257.patch 2019-01-25 10:21:40 UTC (rev 344749) @@ -0,0 +1,67 @@ +From 3dbd558f204490565e98feae25eaa39cd9206937 Mon Sep 17 00:00:00 2001 +From: Haihao Xiang <haihao.xi...@intel.com> +Date: Fri, 7 Dec 2018 13:25:41 +0800 +Subject: [PATCH] Add pointer to struct wl_interface for driver to use + +See https://github.com/intel/intel-vaapi-driver/issues/419 for the +information + +Note: don't export the interface symbol in case others may reuse it. + +Signed-off-by: Haihao Xiang <haihao.xi...@intel.com> +--- + va/wayland/va_backend_wayland.h | 10 +++++++++- + va/wayland/va_wayland_drm.c | 4 ++++ + 2 files changed, 13 insertions(+), 1 deletion(-) + +diff --git a/va/wayland/va_backend_wayland.h b/va/wayland/va_backend_wayland.h +index 9e5740a7..906d4bfb 100644 +--- a/va/wayland/va_backend_wayland.h ++++ b/va/wayland/va_backend_wayland.h +@@ -64,8 +64,16 @@ struct VADriverVTableWayland { + /** \brief Indicate whether buffer sharing with prime fd is supported. */ + unsigned int has_prime_sharing; + ++ /** ++ * Pointer to an implementation of struct wl_interface ++ * ++ * It is set by libva-wayland when a context is created, then the backend ++ * driver may reuse it. ++ */ ++ const void *wl_interface; ++ + /** \brief Reserved bytes for future use, must be zero */ +- unsigned long reserved[8]; ++ unsigned long reserved[7]; + }; + + #endif /* VA_BACKEND_WAYLAND_H */ +diff --git a/va/wayland/va_wayland_drm.c b/va/wayland/va_wayland_drm.c +index 8e226951..4cd3f6c7 100644 +--- a/va/wayland/va_wayland_drm.c ++++ b/va/wayland/va_wayland_drm.c +@@ -136,6 +136,7 @@ va_wayland_drm_destroy(VADisplayContextP pDisplayContext) + struct VADriverVTableWayland *vtable = ctx->vtable_wayland; + + vtable->has_prime_sharing = 0; ++ vtable->wl_interface = NULL; + + wl_drm_ctx->is_authenticated = 0; + +@@ -222,6 +223,8 @@ va_wayland_drm_create(VADisplayContextP pDisplayContext) + struct VADriverVTableWayland *vtable = ctx->vtable_wayland; + struct wl_display *wrapped_display = NULL; + ++ vtable->wl_interface = NULL; ++ + wl_drm_ctx = malloc(sizeof(*wl_drm_ctx)); + if (!wl_drm_ctx) { + va_wayland_error("could not allocate wl_drm_ctx"); +@@ -300,6 +303,7 @@ va_wayland_drm_create(VADisplayContextP pDisplayContext) + goto end; + } + ++ vtable->wl_interface = &wl_drm_interface; + result = true; + + end: Deleted: PKGBUILD =================================================================== --- PKGBUILD 2019-01-25 10:21:23 UTC (rev 344748) +++ PKGBUILD 2019-01-25 10:21:40 UTC (rev 344749) @@ -1,30 +0,0 @@ -# Maintainer: Maxime Gauduin <aluc...@archlonux.org> -# Contributor: Bartłomiej Piotrowski <bpiotrow...@archlinux.org> -# Contributor: Ionut Biru <ib...@archlinux.org> - -pkgname=libva -pkgver=2.3.0 -pkgrel=1 -pkgdesc='Video Acceleration (VA) API for Linux' -arch=('x86_64') -url='https://01.org/linuxmedia/vaapi' -license=('MIT') -depends=('libdrm' 'libgl' 'libx11' 'libxext' 'libxfixes' 'wayland') -makedepends=('git' 'libglvnd' 'mesa' 'meson') -optdepends=('libva-vdpau-driver: backend for Nvidia and AMD cards' - 'libva-intel-driver: backend for Intel cards') -provides=('libva-drm.so' 'libva-glx.so' 'libva-wayland.so' 'libva-x11.so' 'libva.so') -source=("git+https://github.com/intel/libva.git#tag=${pkgver}") -sha256sums=('SKIP') - -build() { - arch-meson libva build - ninja -C build -} - -package() { - DESTDIR="${pkgdir}" ninja -C build install - install -Dm 644 libva/COPYING -t "${pkgdir}"/usr/share/licenses/libva -} - -# vim: ts=2 sw=2 et: Copied: libva/repos/extra-x86_64/PKGBUILD (from rev 344748, libva/trunk/PKGBUILD) =================================================================== --- PKGBUILD (rev 0) +++ PKGBUILD 2019-01-25 10:21:40 UTC (rev 344749) @@ -0,0 +1,45 @@ +# Maintainer: Maxime Gauduin <aluc...@archlonux.org> +# Contributor: Bartłomiej Piotrowski <bpiotrow...@archlinux.org> +# Contributor: Ionut Biru <ib...@archlinux.org> + +pkgname=libva +pkgver=2.3.0 +pkgrel=2 +pkgdesc='Video Acceleration (VA) API for Linux' +arch=('x86_64') +url='https://01.org/linuxmedia/vaapi' +license=('MIT') +depends=('libdrm' 'libgl' 'libx11' 'libxext' 'libxfixes' 'wayland') +makedepends=('git' 'libglvnd' 'mesa' 'meson') +optdepends=('libva-vdpau-driver: backend for Nvidia and AMD cards' + 'libva-intel-driver: backend for Intel cards') +provides=('libva-drm.so' 'libva-glx.so' 'libva-wayland.so' 'libva-x11.so' 'libva.so') +backup=('etc/libva.conf') +source=("git+https://github.com/intel/libva.git#tag=${pkgver}" + 257.patch) +sha256sums=('SKIP' + '768a5e7a78fadda4f040097a83fb0dc1411b11fd14346e7041be0a704eca823e') + +prepare() { + cd libva + + # https://github.com/intel/intel-vaapi-driver/issues/419 + patch -Np1 -i ../257.patch +} + +build() { + CFLAGS+=" -DENABLE_VA_MESSAGING" # Option missing + arch-meson libva build + ninja -C build +} + +package() { + DESTDIR="${pkgdir}" meson install -C build + install -Dm 644 libva/COPYING -t "${pkgdir}"/usr/share/licenses/libva + + install -Dm 644 /dev/stdin "${pkgdir}"/etc/libva.conf <<END +LIBVA_MESSAGING_LEVEL=1 +END +} + +# vim: ts=2 sw=2 et: Deleted: not-finding-wl-drm-interface-with-libglvnd.patch =================================================================== --- not-finding-wl-drm-interface-with-libglvnd.patch 2019-01-25 10:21:23 UTC (rev 344748) +++ not-finding-wl-drm-interface-with-libglvnd.patch 2019-01-25 10:21:40 UTC (rev 344749) @@ -1,48 +0,0 @@ -From b832b37c6a6f7ff69a4ea4656007827a1b7e67e8 Mon Sep 17 00:00:00 2001 -From: Hans de Goede <hdego...@redhat.com> -Date: Wed, 15 Feb 2017 15:18:44 +0100 -Subject: [PATCH] Wayland-drm: Fix not finding wl_drm_interface on systems with - libglvnd - -We do not want just any libEGL.so.1 we want mesa's libEGL.so.1 as that -is the only way which defines the wl_drm_interface symbol we need, -one systems with libglvnd libEGL.so.1 is a dispatcher library provided -by libglvnd and the actual mesa libEGL we want is named libEGL_mesa.so.0 -so try that first. - -Signed-off-by: Hans de Goede <hdego...@redhat.com> ---- - va/wayland/va_wayland_drm.c | 12 +++++++++--- - 1 file changed, 9 insertions(+), 3 deletions(-) - -diff --git a/va/wayland/va_wayland_drm.c b/va/wayland/va_wayland_drm.c -index 958ea85..2ff19f5 100644 ---- a/va/wayland/va_wayland_drm.c -+++ b/va/wayland/va_wayland_drm.c -@@ -38,7 +38,10 @@ - #include "wayland-drm-client-protocol.h" - - /* XXX: Wayland/DRM support currently lives in Mesa libEGL.so.* library */ --#define LIBWAYLAND_DRM_NAME "libEGL.so.1" -+/* First try the soname of a glvnd enabled mesa build */ -+#define LIBWAYLAND_DRM_NAME "libEGL_mesa.so.0" -+/* Then fallback to plain libEGL.so.1 (which might not be mesa) */ -+#define LIBWAYLAND_DRM_NAME_FALLBACK "libEGL.so.1" - - typedef struct va_wayland_drm_context { - struct va_wayland_context base; -@@ -207,8 +210,11 @@ va_wayland_drm_create(VADisplayContextP pDisplayContext) - vtable->has_prime_sharing = 0; - - wl_drm_ctx->handle = dlopen(LIBWAYLAND_DRM_NAME, RTLD_LAZY|RTLD_LOCAL); -- if (!wl_drm_ctx->handle) -- return false; -+ if (!wl_drm_ctx->handle) { -+ wl_drm_ctx->handle = dlopen(LIBWAYLAND_DRM_NAME_FALLBACK, RTLD_LAZY|RTLD_LOCAL); -+ if (!wl_drm_ctx->handle) -+ return false; -+ } - - wl_drm_ctx->drm_interface = - dlsym(wl_drm_ctx->handle, "wl_drm_interface"); -