Merge pull request #42673 from tadfisher/vaapi-intel-hybrid

cmrt, vaapi-intel-hybrid, vaapiIntel: init at 1.0.6, init at 1.0.2, add enableHybridCodec option
This commit is contained in:
xeji 2018-08-26 01:07:41 +02:00 committed by GitHub
commit 9fcffb5bd4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 86 additions and 5 deletions

View File

@ -0,0 +1,24 @@
{ stdenv, fetchurl, autoreconfHook, pkgconfig, libdrm, libva }:
stdenv.mkDerivation rec {
name = "cmrt-${version}";
version = "1.0.6";
src = fetchurl {
url = "https://github.com/intel/cmrt/archive/${version}.tar.gz";
sha256 = "1q7651nvvcqhph5rgfhklm71zqd0c405mrh3wx0cfzvil82yj8na";
};
nativeBuildInputs = [ autoreconfHook pkgconfig ];
buildInputs = [ libdrm libva ];
meta = with stdenv.lib; {
homepage = https://01.org/linuxmedia;
description = "Intel C for Media Runtime";
longDescription = "Media GPU kernel manager for Intel G45 & HD Graphics family";
license = licenses.mit;
maintainers = with maintainers; [ tadfisher ];
platforms = platforms.linux;
};
}

View File

@ -0,0 +1,47 @@
{ stdenv, fetchurl, autoreconfHook, pkgconfig, cmrt, libdrm, libva, libX11, libGL, wayland }:
stdenv.mkDerivation rec {
name = "intel-hybrid-driver-${version}";
version = "1.0.2";
src = fetchurl {
url = "https://github.com/01org/intel-hybrid-driver/archive/${version}.tar.gz";
sha256 = "0ywdhbvzwzzrq4qhylnw1wc8l3j67h26l0cs1rncwhw05s3ndk8n";
};
patches = [
# driver_init: load libva-x11.so for any ABI version
(fetchurl {
url = https://github.com/01org/intel-hybrid-driver/pull/26.diff;
sha256 = "1ql4mbi5x1d2a5c8mkjvciaq60zj8nhx912992winbhfkyvpb3gx";
})
];
nativeBuildInputs = [ autoreconfHook pkgconfig ];
buildInputs = [ cmrt libdrm libva libX11 libGL wayland ];
enableParallelBuilding = true;
configureFlags = [
"--enable-drm"
"--enable-x11"
"--enable-wayland"
];
postPatch = ''
patchShebangs ./src/shaders/gpp.py
'';
preConfigure = ''
sed -i -e "s,LIBVA_DRIVERS_PATH=.*,LIBVA_DRIVERS_PATH=$out/lib/dri," configure
'';
meta = with stdenv.lib; {
homepage = https://01.org/linuxmedia;
description = "Intel driver for the VAAPI library with partial HW acceleration";
license = licenses.mit;
maintainers = with maintainers; [ tadfisher ];
platforms = platforms.linux;
};
}

View File

@ -1,5 +1,6 @@
{ stdenv, fetchFromGitHub, autoreconfHook, gnum4, pkgconfig, python2
, intel-gpu-tools, libdrm, libva, libX11, libGL, wayland, libXext
, enableHybridCodec ? false, vaapi-intel-hybrid
}:
stdenv.mkDerivation rec {
@ -7,8 +8,8 @@ stdenv.mkDerivation rec {
inherit (libva) version;
src = fetchFromGitHub {
owner = "01org";
repo = "libva-intel-driver";
owner = "intel";
repo = "intel-vaapi-driver";
rev = version;
sha256 = "15ag4al9h6b8f8sw1zpighyhsmr5qfqp1882q7r3gsh5g4cnj763";
};
@ -21,20 +22,25 @@ stdenv.mkDerivation rec {
sed -i -e "s,LIBVA_DRIVERS_PATH=.*,LIBVA_DRIVERS_PATH=$out/lib/dri," configure
'';
postInstall = stdenv.lib.optionalString enableHybridCodec ''
ln -s ${vaapi-intel-hybrid}/lib/dri/* $out/lib/dri/
'';
configureFlags = [
"--enable-drm"
"--enable-x11"
"--enable-wayland"
];
] ++ stdenv.lib.optional enableHybridCodec "--enable-hybrid-codec";
nativeBuildInputs = [ autoreconfHook gnum4 pkgconfig python2 ];
buildInputs = [ intel-gpu-tools libdrm libva libX11 libXext libGL wayland ];
buildInputs = [ intel-gpu-tools libdrm libva libX11 libXext libGL wayland ]
++ stdenv.lib.optional enableHybridCodec vaapi-intel-hybrid;
enableParallelBuilding = true;
meta = with stdenv.lib; {
homepage = https://cgit.freedesktop.org/vaapi/intel-driver/;
homepage = https://01.org/linuxmedia;
license = licenses.mit;
description = "Intel driver for the VAAPI library";
platforms = platforms.unix;

View File

@ -9034,6 +9034,8 @@ with pkgs;
cmocka = callPackage ../development/libraries/cmocka { };
cmrt = callPackage ../development/libraries/cmrt { };
cogl = callPackage ../development/libraries/cogl { };
coin3d = callPackage ../development/libraries/coin3d { };
@ -12276,6 +12278,8 @@ with pkgs;
vaapiIntel = callPackage ../development/libraries/vaapi-intel { };
vaapi-intel-hybrid = callPackage ../development/libraries/vaapi-intel-hybrid { };
vaapiVdpau = callPackage ../development/libraries/vaapi-vdpau { };
vale = callPackage ../tools/text/vale { };