Unverified Commit e802d706 authored by Gaétan Lepage's avatar Gaétan Lepage Committed by GitHub
Browse files

cudaPackages[_12]: 12.8 -> 12.9 (#498861)

parents 1a8cb988 08ae964b
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -100,6 +100,9 @@ let
      (lib.getOutput "static" cudaPackages.cuda_cudart)
      (lib.getBin (cudaPackages.cuda_nvcc.__spliced.buildHost or cudaPackages.cuda_nvcc))
    ];

    # cuda_ccl and cuda_cudart both have a LICENSE file in their output
    ignoreCollisions = true;
  };

  cudaPath = lib.removeSuffix "-${cudaMajorVersion}" cudaToolkit;
+14 −0
Original line number Diff line number Diff line
{
  buildRedist,
  cudaAtLeast,
  cudaOlder,
  lib,
  fetchpatch,
}:
buildRedist {
  redistName = "cuda";
@@ -23,6 +25,18 @@ buildRedist {
    rmdir -v "$PWD/include/cccl"
  '';

  patches = lib.optionals (cudaAtLeast "12.9" && cudaOlder "13.0") [
    # Fix missing _CCCL_PP_SPLICE_WITH_IMPL20 in preprocessor.h
    # https://github.com/NVIDIA/cccl/issues/4967
    # https://github.com/NVIDIA/cccl/pull/4972
    (fetchpatch {
      name = "fix-missing-_CCCL_PP_SPLICE_WITH_IMPL20";
      url = "https://github.com/NVIDIA/cccl/commit/2c2276d8b19d737cb16811ce2eb761030f472e60.patch";
      stripLen = 1;
      hash = "sha256-hYfMFsd7Y8CwuNGaPYG6uEB+lg1TmWSIIU5ToVMULKY=";
    })
  ];

  # NVIDIA, in their wisdom, expect CCCL to be a directory inside include.
  # https://github.com/NVIDIA/cutlass/blob/087c84df83d254b5fb295a7a408f1a1d554085cf/CMakeLists.txt#L773
  postInstall = lib.optionalString (cudaAtLeast "13.0") ''
+1 −1
Original line number Diff line number Diff line
@@ -2151,7 +2151,7 @@ with pkgs;
    cudaPackages_13_2
    ;

  cudaPackages_12 = cudaPackages_12_8;
  cudaPackages_12 = cudaPackages_12_9;

  cudaPackages_13 = cudaPackages_13_0;