diff --git a/pkgs/development/cuda-modules/README.md b/pkgs/development/cuda-modules/README.md index 4d4e14eb5af8..1a88761c4d51 100644 --- a/pkgs/development/cuda-modules/README.md +++ b/pkgs/development/cuda-modules/README.md @@ -29,8 +29,6 @@ package set by [cuda-packages.nix](../../top-level/cuda-packages.nix). short, the Multiplex builder adds multiple versions of a single package to single instance of the CUDA Packages package set. It is used primarily for packages like `cudnn` and `cutensor`. -- `lib`: A library of functions and data used by and for the CUDA package set. - This library is exposed at the top-level as `pkgs.cudaLib`. - `modules`: Nixpkgs modules to check the shape and content of CUDA redistributable and feature manifests. These modules additionally use shims provided by some CUDA packages to allow them to re-use the diff --git a/pkgs/development/cuda-modules/_cuda/default.nix b/pkgs/development/cuda-modules/_cuda/default.nix index 4d0c3c4b5d6a..0f6f80506616 100644 --- a/pkgs/development/cuda-modules/_cuda/default.nix +++ b/pkgs/development/cuda-modules/_cuda/default.nix @@ -1,8 +1,8 @@ # The _cuda attribute set is a fixed-point which contains the static functionality required to construct CUDA package -# sets. For example, `_cuda.cudaData` includes information about NVIDIA's redistributables (such as the names NVIDIA -# uses for different systems), `_cuda.cudaLib` contains utility functions like `formatCapabilities` (which generate -# common arguments passed to NVCC and `cmakeFlags`), and `_cuda.cudaFixups` contains `callPackage`-able functions -# which are provided to the corresponding package's `overrideAttrs` attribute to provide package-specific fixups +# sets. For example, `_cuda.bootstrapData` includes information about NVIDIA's redistributables (such as the names +# NVIDIA uses for different systems), `_cuda.lib` contains utility functions like `formatCapabilities` (which generate +# common arguments passed to NVCC and `cmakeFlags`), and `_cuda.fixups` contains `callPackage`-able functions which +# are provided to the corresponding package's `overrideAttrs` attribute to provide package-specific fixups # out of scope of the generic redistributable builder. # # Since this attribute set is used to construct the CUDA package sets, it must exist outside the fixed point of the diff --git a/pkgs/development/cuda-modules/tests/flags.nix b/pkgs/development/cuda-modules/tests/flags.nix index 314f69d1b90a..926a9be5220f 100644 --- a/pkgs/development/cuda-modules/tests/flags.nix +++ b/pkgs/development/cuda-modules/tests/flags.nix @@ -1,14 +1,13 @@ { - cudaData, - cudaLib, + _cuda, cudaNamePrefix, lib, runCommand, }: let inherit (builtins) deepSeq toJSON tryEval; - inherit (cudaData) cudaCapabilityToInfo; - inherit (cudaLib) formatCapabilities; + inherit (_cuda.bootstrapData) cudaCapabilityToInfo; + inherit (_cuda.lib) formatCapabilities; inherit (lib.asserts) assertMsg; in # When changing names or formats: pause, validate, and update the assert @@ -62,6 +61,7 @@ assert "7.5" "8.6" ]; + cudaForwardCompat = true; }; actualWrapped = (tryEval (deepSeq actual actual)).value; in diff --git a/pkgs/top-level/release-cuda.nix b/pkgs/top-level/release-cuda.nix index 6e6e4811604a..e9d64e74cd70 100644 --- a/pkgs/top-level/release-cuda.nix +++ b/pkgs/top-level/release-cuda.nix @@ -14,7 +14,7 @@ let lib = import ../../lib; - inherit (import ../development/cuda-modules/_cuda) cudaLib; + cudaLib = (import ../development/cuda-modules/_cuda).lib; in {