summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorRyan Burns <rtburns@protonmail.com>2021-04-22 17:40:58 -0700
committerRyan Burns <rtburns@protonmail.com>2021-04-22 17:41:33 -0700
commitf52daac15c152295b34bf150c5dd2b381caabca9 (patch)
tree71518d2cbc80557e513bb7114b151917cabfc770 /pkgs
parent96f048e3d07c92f86ba85c17438ca7ba963f090f (diff)
downloadnixpkgs-f52daac15c152295b34bf150c5dd2b381caabca9.tar
nixpkgs-f52daac15c152295b34bf150c5dd2b381caabca9.tar.gz
nixpkgs-f52daac15c152295b34bf150c5dd2b381caabca9.tar.bz2
nixpkgs-f52daac15c152295b34bf150c5dd2b381caabca9.tar.lz
nixpkgs-f52daac15c152295b34bf150c5dd2b381caabca9.tar.xz
nixpkgs-f52daac15c152295b34bf150c5dd2b381caabca9.tar.zst
nixpkgs-f52daac15c152295b34bf150c5dd2b381caabca9.zip
pycuda: fix opengl runpath
This is required for CUDA functionality, since libcuda.so.1 is loaded
from /run/opengl-driver/lib
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/development/python-modules/pycuda/default.nix12
1 files changed, 12 insertions, 0 deletions
diff --git a/pkgs/development/python-modules/pycuda/default.nix b/pkgs/development/python-modules/pycuda/default.nix
index 1db5df28e32..5bf9114d693 100644
--- a/pkgs/development/python-modules/pycuda/default.nix
+++ b/pkgs/development/python-modules/pycuda/default.nix
@@ -1,4 +1,5 @@
 { buildPythonPackage
+, addOpenGLRunpath
 , fetchPypi
 , fetchFromGitHub
 , Mako
@@ -40,6 +41,13 @@ buildPythonPackage rec {
     ln -s ${compyte} $out/${python.sitePackages}/pycuda/compyte
   '';
 
+  postFixup = ''
+    find $out/lib -type f \( -name '*.so' -or -name '*.so.*' \) | while read lib; do
+      echo "setting opengl runpath for $lib..."
+      addOpenGLRunpath "$lib"
+    done
+  '';
+
   # Requires access to libcuda.so.1 which is provided by the driver
   doCheck = false;
 
@@ -47,6 +55,10 @@ buildPythonPackage rec {
     py.test
   '';
 
+  nativeBuildInputs = [
+    addOpenGLRunpath
+  ];
+
   propagatedBuildInputs = [
     numpy
     pytools