ctranslate2: enable cuDNN only if it is available

This commit is contained in:
Connor Baker 2023-12-01 16:45:08 +00:00
parent 5a54140dff
commit d23df73a07
2 changed files with 6 additions and 2 deletions

View File

@ -60,7 +60,7 @@ stdenv.mkDerivation rec {
cudaPackages.cuda_cudart
cudaPackages.libcublas
cudaPackages.libcurand
] ++ lib.optionals withCuDNN [
] ++ lib.optionals (withCUDA && withCuDNN) [
cudaPackages.cudnn
] ++ lib.optionals withOneDNN [
oneDNN
@ -87,5 +87,8 @@ stdenv.mkDerivation rec {
changelog = "https://github.com/OpenNMT/CTranslate2/blob/${src.rev}/CHANGELOG.md";
license = licenses.mit;
maintainers = with maintainers; [ hexa misuzu ];
broken =
(lib.versionOlder cudaPackages.cudaVersion "11.4")
|| !(withCuDNN -> withCUDA);
};
}

View File

@ -20931,7 +20931,8 @@ with pkgs;
ctranslate2 = callPackage ../development/libraries/ctranslate2 rec {
stdenv = if withCUDA then gcc11Stdenv else pkgs.stdenv;
withCUDA = pkgs.config.cudaSupport;
withCuDNN = pkgs.config.cudaSupport;
withCuDNN = withCUDA && (cudaPackages ? cudnn);
cudaPackages = pkgs.cudaPackages;
};
ubus = callPackage ../development/libraries/ubus { };