2021-11-01 14:58:11 +00:00
|
|
|
{ lib, stdenv, fetchurl, fetchFromGitHub, autoreconfHook, pkg-config, cmrt, libdrm, libva, libX11, libGL, wayland }:
|
2018-06-27 20:10:04 +00:00
|
|
|
|
|
|
|
stdenv.mkDerivation rec {
|
2019-08-15 12:41:18 +00:00
|
|
|
pname = "intel-hybrid-driver";
|
2018-06-27 20:10:04 +00:00
|
|
|
version = "1.0.2";
|
|
|
|
|
2021-11-01 14:58:11 +00:00
|
|
|
src = fetchFromGitHub {
|
2022-06-02 20:09:33 +00:00
|
|
|
owner = "intel";
|
2021-11-01 14:58:11 +00:00
|
|
|
repo = "intel-hybrid-driver";
|
|
|
|
rev = version;
|
|
|
|
sha256 = "sha256-uYX7RoU1XVzcC2ea3z/VBjmT47xmzK67Y4LaiFXyJZ8=";
|
2018-06-27 20:10:04 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
patches = [
|
|
|
|
# driver_init: load libva-x11.so for any ABI version
|
|
|
|
(fetchurl {
|
2020-04-01 01:11:51 +00:00
|
|
|
url = "https://github.com/01org/intel-hybrid-driver/pull/26.diff";
|
2018-06-27 20:10:04 +00:00
|
|
|
sha256 = "1ql4mbi5x1d2a5c8mkjvciaq60zj8nhx912992winbhfkyvpb3gx";
|
|
|
|
})
|
|
|
|
];
|
|
|
|
|
2021-01-19 06:50:56 +00:00
|
|
|
nativeBuildInputs = [ autoreconfHook pkg-config ];
|
2018-06-27 20:10:04 +00:00
|
|
|
|
|
|
|
buildInputs = [ cmrt libdrm libva libX11 libGL wayland ];
|
|
|
|
|
|
|
|
enableParallelBuilding = true;
|
|
|
|
|
2022-06-02 20:09:33 +00:00
|
|
|
# Workaround build failure on -fno-common toolchains like upstream gcc-10.
|
|
|
|
NIX_CFLAGS_COMPILE = "-fcommon";
|
|
|
|
|
2018-06-27 20:10:04 +00:00
|
|
|
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
|
|
|
|
'';
|
|
|
|
|
2021-01-21 17:00:13 +00:00
|
|
|
meta = with lib; {
|
2020-04-01 01:11:51 +00:00
|
|
|
homepage = "https://01.org/linuxmedia";
|
2018-06-27 20:10:04 +00:00
|
|
|
description = "Intel driver for the VAAPI library with partial HW acceleration";
|
|
|
|
license = licenses.mit;
|
|
|
|
maintainers = with maintainers; [ tadfisher ];
|
|
|
|
platforms = platforms.linux;
|
|
|
|
};
|
|
|
|
}
|