cudaPackages: fix regression, propagating too much

Code moved around in CUDA13 PR also changed actual behaviour
This commit is contained in:
Else, Someone
2025-11-01 04:42:47 +02:00
parent a4c85a90eb
commit 7aebac99c0
3 changed files with 12 additions and 7 deletions

View File

@@ -279,8 +279,6 @@ extendMkDerivation {
] ]
++ nativeBuildInputs; ++ nativeBuildInputs;
propagatedBuildInputs = [ setupCudaHook ] ++ propagatedBuildInputs;
buildInputs = [ buildInputs = [
# autoPatchelfHook will search for a libstdc++ and we're giving it # autoPatchelfHook will search for a libstdc++ and we're giving it
# one that is compatible with the rest of nixpkgs, even when # one that is compatible with the rest of nixpkgs, even when

View File

@@ -32,12 +32,15 @@ buildRedist (finalAttrs: {
# NOTE: `cuda_compat` can be disabled by setting the package to `null`. This is useful in cases where # NOTE: `cuda_compat` can be disabled by setting the package to `null`. This is useful in cases where
# the host OS has a recent enough CUDA driver that the compatibility library isn't needed. # the host OS has a recent enough CUDA driver that the compatibility library isn't needed.
propagatedBuildInputs = propagatedBuildInputs =
# Add the dependency on NVCC's include directory. # TODO(@SomeoneSerge): Consider propagating `crt/host_config.h`, but only
# - crt/host_config.h # once we managed to split out `cuda_nvcc`'s headers into a separate output
#
# TODO(@connorbaker): Check that the dependency offset for this is correct. # TODO(@connorbaker): Check that the dependency offset for this is correct.
[ (lib.getOutput "include" cuda_nvcc) ] #
# [ (lib.getInclude cuda_nvcc) ]
# TODO(@connorbaker): From CUDA 13.0, crt/host_config.h is in cuda_crt # TODO(@connorbaker): From CUDA 13.0, crt/host_config.h is in cuda_crt
++ lib.optionals (cudaAtLeast "13.0") [ (lib.getOutput "include" cuda_crt) ] lib.optionals (cudaAtLeast "13.0") [ (lib.getOutput "include" cuda_crt) ]
# Add the dependency on CCCL's include directory. # Add the dependency on CCCL's include directory.
# - nv/target # - nv/target
# TODO(@connorbaker): Check that the dependency offset for this is correct. # TODO(@connorbaker): Check that the dependency offset for this is correct.
@@ -86,5 +89,8 @@ buildRedist (finalAttrs: {
popd >/dev/null popd >/dev/null
''; '';
# "Never again", cf. https://github.com/NixOS/nixpkgs/pull/457424
disallowedRequisites = [ (lib.getBin cuda_nvcc) ];
meta.description = "CUDA Runtime"; meta.description = "CUDA Runtime";
}) })

View File

@@ -2,6 +2,7 @@
_cuda, _cuda,
backendStdenv, backendStdenv,
buildRedist, buildRedist,
setupCudaHook,
cudaAtLeast, cudaAtLeast,
cudaOlder, cudaOlder,
cuda_cccl, cuda_cccl,
@@ -22,7 +23,7 @@ buildRedist (finalAttrs: {
allowFHSReferences = true; allowFHSReferences = true;
# Entries here will be in nativeBuildInputs when cuda_nvcc is in nativeBuildInputs # Entries here will be in nativeBuildInputs when cuda_nvcc is in nativeBuildInputs
propagatedBuildInputs = [ backendStdenv.cc ]; propagatedBuildInputs = [ setupCudaHook ];
# Patch the nvcc.profile. # Patch the nvcc.profile.
# Syntax: # Syntax: