From 868c289955164d36701af3e0cef582ad59422676 Mon Sep 17 00:00:00 2001 From: Someone Serge Date: Thu, 6 Apr 2023 13:57:22 +0300 Subject: [PATCH 1/3] cudaPackages.cudatoolkit: move pre-cuda11 deps up, to reorder chronologically --- pkgs/development/compilers/cudatoolkit/common.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/development/compilers/cudatoolkit/common.nix b/pkgs/development/compilers/cudatoolkit/common.nix index 8082756b1edbe..d12fcf85f5fe7 100644 --- a/pkgs/development/compilers/cudatoolkit/common.nix +++ b/pkgs/development/compilers/cudatoolkit/common.nix @@ -73,7 +73,11 @@ backendStdenv.mkDerivation rec { ] ++ lib.optionals (lib.versionOlder version "11") [ libsForQt5.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 @@ -109,10 +113,6 @@ backendStdenv.mkDerivation rec { unixODBC alsa-lib wayland - ] ++ lib.optionals (lib.versionOlder version "11") [ - libsForQt5.qt5.qtwebengine - freeglut - libGLU ]; # Prepended to runpaths by autoPatchelf. From 221fe82378432da3bfd63c0f73090b2bdeb4200f Mon Sep 17 00:00:00 2001 From: Someone Serge Date: Thu, 6 Apr 2023 14:43:04 +0300 Subject: [PATCH 2/3] cudaPackages_12.cudatoolkit: fix after migrating to autoPatchelfHook --- .../compilers/cudatoolkit/common.nix | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/pkgs/development/compilers/cudatoolkit/common.nix b/pkgs/development/compilers/cudatoolkit/common.nix index d12fcf85f5fe7..94dd8259c7c7e 100644 --- a/pkgs/development/compilers/cudatoolkit/common.nix +++ b/pkgs/development/compilers/cudatoolkit/common.nix @@ -37,6 +37,11 @@ args@ , freeglut , libGLU , libsForQt5 +, libtiff +, qt6Packages +, rdma-core +, ucx +, rsync }: backendStdenv.mkDerivation rec { @@ -67,11 +72,14 @@ backendStdenv.mkDerivation rec { nativeBuildInputs = [ perl makeWrapper + rsync addOpenGLRunpath autoPatchelfHook autoAddOpenGLRunpathHook ] ++ lib.optionals (lib.versionOlder version "11") [ libsForQt5.wrapQtAppsHook + ] ++ lib.optionals (lib.versions.major version == "12") [ + qt6Packages.wrapQtAppsHook ]; buildInputs = lib.optionals (lib.versionOlder version "11") [ libsForQt5.qt5.qtwebengine @@ -113,6 +121,13 @@ backendStdenv.mkDerivation rec { unixODBC alsa-lib wayland + ] ++ lib.optionals (lib.versions.major version == "12") [ + (lib.getLib libtiff) + qt6Packages.qtwayland + rdma-core + ucx + xorg.libxshmfence + xorg.libxkbfile ]; # Prepended to runpaths by autoPatchelf. @@ -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.versions.major version == "12") + # error: auto-patchelf could not satisfy dependency libtiff.so.5 wanted by /nix/store/ivw2ss2ppafxww0f935dvqij5xkgvczz-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? From b100b0a1cc11146a8354ddb8064861afc2c7a659 Mon Sep 17 00:00:00 2001 From: Someone Serge Date: Thu, 6 Apr 2023 16:38:40 +0300 Subject: [PATCH 3/3] cudaPackages_11_8: un-break after migrating to autoPatchelfHook --- pkgs/development/compilers/cudatoolkit/common.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/compilers/cudatoolkit/common.nix b/pkgs/development/compilers/cudatoolkit/common.nix index 94dd8259c7c7e..02eda05de80d6 100644 --- a/pkgs/development/compilers/cudatoolkit/common.nix +++ b/pkgs/development/compilers/cudatoolkit/common.nix @@ -78,7 +78,7 @@ backendStdenv.mkDerivation rec { autoAddOpenGLRunpathHook ] ++ lib.optionals (lib.versionOlder version "11") [ libsForQt5.wrapQtAppsHook - ] ++ lib.optionals (lib.versions.major version == "12") [ + ] ++ lib.optionals (lib.versionAtLeast version "11.8") [ qt6Packages.wrapQtAppsHook ]; buildInputs = lib.optionals (lib.versionOlder version "11") [ @@ -121,7 +121,7 @@ backendStdenv.mkDerivation rec { unixODBC alsa-lib wayland - ] ++ lib.optionals (lib.versions.major version == "12") [ + ] ++ lib.optionals (lib.versionAtLeast version "11.8") [ (lib.getLib libtiff) qt6Packages.qtwayland rdma-core @@ -220,8 +220,8 @@ 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.versions.major version == "12") - # error: auto-patchelf could not satisfy dependency libtiff.so.5 wanted by /nix/store/ivw2ss2ppafxww0f935dvqij5xkgvczz-cudatoolkit-12.0.1/host-linux-x64/Plugins/imageformats/libqtiff.so + ${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" ''