Skip to content

Commit

Permalink
Merge pull request #224986 from SomeoneSerge/cudatoolkit-autopatchelf…
Browse files Browse the repository at this point in the history
…-followup

cudaPackages_12.cudatoolkit: hotfix after switching to autoPatchelfHook
  • Loading branch information
samuela authored Apr 6, 2023
2 parents 98140dd + b100b0a commit 1a14c8d
Showing 1 changed file with 27 additions and 5 deletions.
32 changes: 27 additions & 5 deletions pkgs/development/compilers/cudatoolkit/common.nix
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,11 @@ args@
, freeglut
, libGLU
, libsForQt5
, libtiff
, qt6Packages
, rdma-core
, ucx
, rsync
}:

backendStdenv.mkDerivation rec {
Expand Down Expand Up @@ -67,13 +72,20 @@ backendStdenv.mkDerivation rec {
nativeBuildInputs = [
perl
makeWrapper
rsync
addOpenGLRunpath
autoPatchelfHook
autoAddOpenGLRunpathHook
] ++ lib.optionals (lib.versionOlder version "11") [
libsForQt5.wrapQtAppsHook
] ++ lib.optionals (lib.versionAtLeast version "11.8") [
qt6Packages.wrapQtAppsHook
];
buildInputs = [
buildInputs = lib.optionals (lib.versionOlder version "11") [
libsForQt5.qt5.qtwebengine
freeglut
libGLU
] ++ [
# To get $GDK_PIXBUF_MODULE_FILE via setup-hook
gdk-pixbuf

Expand Down Expand Up @@ -109,10 +121,13 @@ backendStdenv.mkDerivation rec {
unixODBC
alsa-lib
wayland
] ++ lib.optionals (lib.versionOlder version "11") [
libsForQt5.qt5.qtwebengine
freeglut
libGLU
] ++ lib.optionals (lib.versionAtLeast version "11.8") [
(lib.getLib libtiff)
qt6Packages.qtwayland
rdma-core
ucx
xorg.libxshmfence
xorg.libxkbfile
];

# Prepended to runpaths by autoPatchelf.
Expand Down Expand Up @@ -205,6 +220,13 @@ backendStdenv.mkDerivation rec {
mv pkg/builds/nsight_systems/target-linux-x64 $out/target-linux-x64
mv pkg/builds/nsight_systems/host-linux-x64 $out/host-linux-x64
''}
${lib.optionalString (lib.versionAtLeast version "11.8")
# error: auto-patchelf could not satisfy dependency libtiff.so.5 wanted by /nix/store/.......-cudatoolkit-12.0.1/host-linux-x64/Plugins/imageformats/libqtiff.so
# we only ship libtiff.so.6, so let's use qt plugins built by Nix.
# TODO: don't copy, come up with a symlink-based "merge"
''
rsync ${lib.getLib qt6Packages.qtimageformats}/lib/qt-6/plugins/ $out/host-linux-x64/Plugins/ -aP
''}
rm -f $out/tools/CUDA_Occupancy_Calculator.xls # FIXME: why?
Expand Down

0 comments on commit 1a14c8d

Please sign in to comment.