From e320f9245df0eace86c8f0e1c14dcb6b68e5f879 Mon Sep 17 00:00:00 2001 From: Ryan Gibb Date: Mon, 26 Feb 2024 11:59:28 +0000 Subject: libvpl: patch to search `/run/opengl-drivers/lib/` for runtime implementations --- pkgs/by-name/li/libvpl/opengl-driver-lib.patch | 19 +++++++++++++++++++ pkgs/by-name/li/libvpl/package.nix | 9 +++++++++ 2 files changed, 28 insertions(+) create mode 100644 pkgs/by-name/li/libvpl/opengl-driver-lib.patch (limited to 'pkgs/by-name/li') diff --git a/pkgs/by-name/li/libvpl/opengl-driver-lib.patch b/pkgs/by-name/li/libvpl/opengl-driver-lib.patch new file mode 100644 index 000000000000..5913190a5384 --- /dev/null +++ b/pkgs/by-name/li/libvpl/opengl-driver-lib.patch @@ -0,0 +1,19 @@ +--- a/libvpl/src/mfx_dispatcher_vpl_loader.cpp ++++ b/libvpl/src/mfx_dispatcher_vpl_loader.cpp +@@ -548,6 +548,16 @@ mfxStatus LoaderCtxVPL::BuildListOfCandidateLibs() { + it++; + } + ++ // fourth priority ++ searchDirList.clear(); ++ searchDirList.push_back("@driverLink@/lib"); ++ it = searchDirList.begin(); ++ while (it != searchDirList.end()) { ++ STRING_TYPE nextDir = (*it); ++ sts = SearchDirForLibs(nextDir, m_libInfoList, LIB_PRIORITY_05); ++ it++; ++ } ++ + // lowest priority: legacy MSDK installation + searchDirList.clear(); + GetSearchPathsLegacy(searchDirList); diff --git a/pkgs/by-name/li/libvpl/package.nix b/pkgs/by-name/li/libvpl/package.nix index 8a647916ca63..f28287053beb 100644 --- a/pkgs/by-name/li/libvpl/package.nix +++ b/pkgs/by-name/li/libvpl/package.nix @@ -3,6 +3,8 @@ , fetchFromGitHub , cmake , pkg-config +, substituteAll +, addDriverRunpath }: stdenv.mkDerivation (finalAttrs: { @@ -32,6 +34,13 @@ stdenv.mkDerivation (finalAttrs: { "-DBUILD_TOOLS=OFF" ]; + patches = [ + (substituteAll { + src = ./opengl-driver-lib.patch; + inherit (addDriverRunpath) driverLink; + }) + ]; + meta = with lib; { description = "Intel Video Processing Library"; homepage = "https://intel.github.io/libvpl/"; -- cgit 1.4.1