From dbae24f5bb5c133958439b9943f59f77a4c368f1 Mon Sep 17 00:00:00 2001 From: Anuj Mittal Date: Wed, 7 Oct 2020 15:16:36 +0800 Subject: libva-intel: add recipe We need a later version of libva than what is available in oe-core for the media components. Create our own copy of the recipe and include it only when someone has included one of meta-intel MACHINEs. Signed-off-by: Anuj Mittal --- conf/layer.conf | 6 ++++ conf/machine/include/meta-intel.inc | 5 +++ recipes-graphics/libva/libva-intel_2.9.0.bb | 54 +++++++++++++++++++++++++++++ 3 files changed, 65 insertions(+) create mode 100644 recipes-graphics/libva/libva-intel_2.9.0.bb diff --git a/conf/layer.conf b/conf/layer.conf index fcfdf2a7..6e9d86e8 100644 --- a/conf/layer.conf +++ b/conf/layer.conf @@ -34,3 +34,9 @@ require ${LAYERDIR}/conf/include/maintainers.inc PREFERRED_PROVIDER_zlib ?= "zlib" PREFERRED_PROVIDER_zlib-native ?= "zlib-native" PREFERRED_PROVIDER_nativesdk-zlib ?= "nativesdk-zlib" + +# Use the libva from OE-Core when layer is included but no MACHINE +# from meta-intel is being used. +PREFERRED_PROVIDER_libva ?= "libva" +PREFERRED_PROVIDER_libva-native ?= "libva-native" +PREFERRED_PROVIDER_nativesdk-libva ?= "nativesdk-libva" diff --git a/conf/machine/include/meta-intel.inc b/conf/machine/include/meta-intel.inc index 932c0cc1..86c94878 100644 --- a/conf/machine/include/meta-intel.inc +++ b/conf/machine/include/meta-intel.inc @@ -17,6 +17,11 @@ PREFERRED_VERSION_linux-intel-rt ?= "5.4%" PREFERRED_VERSION_linux-intel_poky-altcfg ?= "5.4%" PREFERRED_VERSION_linux-intel-rt_poky-altcfg ?= "5.4%" +# Need to point to latest version of libva needed for media components +PREFERRED_PROVIDER_libva = "libva-intel" +PREFERRED_PROVIDER_libva-native = "libva-intel-native" +PREFERRED_PROVIDER_nativesdk-libva = "nativesdk-libva-intel" + XSERVER_X86_ASPEED_AST = "xf86-video-ast \ " diff --git a/recipes-graphics/libva/libva-intel_2.9.0.bb b/recipes-graphics/libva/libva-intel_2.9.0.bb new file mode 100644 index 00000000..620a1f01 --- /dev/null +++ b/recipes-graphics/libva/libva-intel_2.9.0.bb @@ -0,0 +1,54 @@ +SUMMARY = "Video Acceleration (VA) API for Linux" +DESCRIPTION = "Video Acceleration API (VA API) is a library (libVA) \ +and API specification which enables and provides access to graphics \ +hardware (GPU) acceleration for video processing on Linux and UNIX \ +based operating systems. Accelerated processing includes video \ +decoding, video encoding, subpicture blending and rendering. The \ +specification was originally designed by Intel for its GMA (Graphics \ +Media Accelerator) series of GPU hardware, the API is however not \ +limited to GPUs or Intel specific hardware, as other hardware and \ +manufacturers can also freely use this API for hardware accelerated \ +video decoding." + +HOMEPAGE = "https://01.org/linuxmedia/vaapi" +BUGTRACKER = "https://github.com/intel/libva/issues" + +SECTION = "x11" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=2e48940f94acb0af582e5ef03537800f" + +SRC_URI = "https://github.com/intel/libva/releases/download/${PV}/libva-${PV}.tar.bz2" +SRC_URI[sha256sum] = "e344c1392dde92696c9ffd9cb3c7277d0a3b912236eb4e0fdedf7f375434584b" + +S = "${WORKDIR}/libva-${PV}" + +UPSTREAM_CHECK_URI = "https://github.com/intel/libva/releases" + +DEPENDS = "libdrm" + +inherit meson pkgconfig + +PACKAGECONFIG ??= " \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'glx', '', d)} \ + ${@bb.utils.filter('DISTRO_FEATURES', 'x11 wayland', d)} \ +" + +PACKAGECONFIG[x11] = "-Dwith_x11=yes,-Dwith_x11=no,virtual/libx11 libxext libxfixes" +PACKAGECONFIG[glx] = "-Dwith_glx=yes,-Dwith_glx=no,virtual/mesa" + +PACKAGECONFIG[wayland] = "-Dwith_wayland=yes,-Dwith_wayland=no,wayland-native wayland" + +PACKAGES =+ "${PN}-x11 ${PN}-glx ${PN}-wayland" + +RDEPENDS_${PN}-x11 =+ "${PN}" +RDEPENDS_${PN}-glx =+ "${PN}-x11" + +FILES_${PN}-x11 =+ "${libdir}/libva-x11*${SOLIBS}" +FILES_${PN}-glx =+ "${libdir}/libva-glx*${SOLIBS}" +FILES_${PN}-wayland =+ "${libdir}/libva-wayland*${SOLIBS}" + +PROVIDES += "libva" +RPROVIDES_${PN} += "libva" +RPROVIDES_${PN}-x11 += "libva-x11" +RPROVIDES_${PN}-glx += "libva-glx" +RPROVIDES_${PN}-wayland += "libva-wayland" -- cgit v1.2.3-54-g00ecf