From 21a8c9e30197e1f3ef54150560093140531cc1f2 Mon Sep 17 00:00:00 2001 From: Tad Fisher Date: Wed, 27 Jun 2018 13:09:45 -0700 Subject: [PATCH 1/3] cmrt: init at 1.0.6 --- pkgs/development/libraries/cmrt/default.nix | 24 +++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 26 insertions(+) create mode 100644 pkgs/development/libraries/cmrt/default.nix diff --git a/pkgs/development/libraries/cmrt/default.nix b/pkgs/development/libraries/cmrt/default.nix new file mode 100644 index 00000000000..8044d7165f7 --- /dev/null +++ b/pkgs/development/libraries/cmrt/default.nix @@ -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; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 53695108166..71bd6c59809 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8837,6 +8837,8 @@ with pkgs; cmocka = callPackage ../development/libraries/cmocka { }; + cmrt = callPackage ../development/libraries/cmrt { }; + cogl = callPackage ../development/libraries/cogl { }; coin3d = callPackage ../development/libraries/coin3d { }; From 87130a5b9e5c6b8530dda1a5c73960c4ba2e230a Mon Sep 17 00:00:00 2001 From: Tad Fisher Date: Wed, 27 Jun 2018 13:10:04 -0700 Subject: [PATCH 2/3] vaapi-intel-hybrid: init at 1.0.2 --- .../libraries/vaapi-intel-hybrid/default.nix | 47 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 49 insertions(+) create mode 100644 pkgs/development/libraries/vaapi-intel-hybrid/default.nix diff --git a/pkgs/development/libraries/vaapi-intel-hybrid/default.nix b/pkgs/development/libraries/vaapi-intel-hybrid/default.nix new file mode 100644 index 00000000000..56ded2c5644 --- /dev/null +++ b/pkgs/development/libraries/vaapi-intel-hybrid/default.nix @@ -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; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 71bd6c59809..c5e40654168 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -12010,6 +12010,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 { }; From d2935b93e6a36973c698d5340b0d3e174721e192 Mon Sep 17 00:00:00 2001 From: Tad Fisher Date: Wed, 27 Jun 2018 13:15:52 -0700 Subject: [PATCH 3/3] vaapiIntel: add enableHybridCodec option --- .../libraries/vaapi-intel/default.nix | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/pkgs/development/libraries/vaapi-intel/default.nix b/pkgs/development/libraries/vaapi-intel/default.nix index 4e729db4671..ba763e33490 100644 --- a/pkgs/development/libraries/vaapi-intel/default.nix +++ b/pkgs/development/libraries/vaapi-intel/default.nix @@ -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;