summary refs log tree commit diff
path: root/pkgs/development/libraries/ctranslate2
diff options
context:
space:
mode:
authormisuzu <bakalolka@gmail.com>2023-06-15 16:16:06 +0300
committermisuzu <bakalolka@gmail.com>2023-06-16 08:16:22 +0300
commita0f30da0088b3a32ac4fdbde6ef3c9a1632e64d6 (patch)
tree685a1e19ff3c08b151296d32c387ca1395c1cbad /pkgs/development/libraries/ctranslate2
parent9fbc23d5119421e04064881413e11c755a7d049d (diff)
downloadnixpkgs-a0f30da0088b3a32ac4fdbde6ef3c9a1632e64d6.tar
nixpkgs-a0f30da0088b3a32ac4fdbde6ef3c9a1632e64d6.tar.gz
nixpkgs-a0f30da0088b3a32ac4fdbde6ef3c9a1632e64d6.tar.bz2
nixpkgs-a0f30da0088b3a32ac4fdbde6ef3c9a1632e64d6.tar.lz
nixpkgs-a0f30da0088b3a32ac4fdbde6ef3c9a1632e64d6.tar.xz
nixpkgs-a0f30da0088b3a32ac4fdbde6ef3c9a1632e64d6.tar.zst
nixpkgs-a0f30da0088b3a32ac4fdbde6ef3c9a1632e64d6.zip
ctranslate2: add withOneDNN, withOpenblas, withRuy
Disable withOneDNN by default
Diffstat (limited to 'pkgs/development/libraries/ctranslate2')
-rw-r--r--pkgs/development/libraries/ctranslate2/default.nix26
1 files changed, 17 insertions, 9 deletions
diff --git a/pkgs/development/libraries/ctranslate2/default.nix b/pkgs/development/libraries/ctranslate2/default.nix
index cdfbcc3ebcc..2491fee0b2b 100644
--- a/pkgs/development/libraries/ctranslate2/default.nix
+++ b/pkgs/development/libraries/ctranslate2/default.nix
@@ -4,9 +4,12 @@
 , cmake
 , darwin # Accelerate
 , llvmPackages # openmp
-, oneDNN
-, openblas
 , withMkl ? false, mkl
+# Enabling both withOneDNN and withOpenblas is broken
+# https://github.com/OpenNMT/CTranslate2/issues/1294
+, withOneDNN ? false, oneDNN
+, withOpenblas ? true, openblas
+, withRuy ? true
 }:
 
 let
@@ -30,19 +33,24 @@ stdenv.mkDerivation rec {
 
   cmakeFlags = [
     # https://opennmt.net/CTranslate2/installation.html#build-options
-    "-DWITH_DNNL=OFF" # requires oneDNN>=3.0
-    "-DWITH_OPENBLAS=ON"
+    # https://github.com/OpenNMT/CTranslate2/blob/54810350e662ebdb01ecbf8e4a746f02aeff1dd7/python/tools/prepare_build_environment_linux.sh#L53
+    # https://github.com/OpenNMT/CTranslate2/blob/59d223abcc7e636c1c2956e62482bc3299cc7766/python/tools/prepare_build_environment_macos.sh#L12
+    "-DOPENMP_RUNTIME=COMP"
+    "-DWITH_DNNL=${cmakeBool withOneDNN}"
+    "-DWITH_OPENBLAS=${cmakeBool withOpenblas}"
+    "-DWITH_RUY=${cmakeBool withRuy}"
     "-DWITH_MKL=${cmakeBool withMkl}"
   ]
   ++ lib.optional stdenv.isDarwin "-DWITH_ACCELERATE=ON";
 
-  buildInputs = [
-    llvmPackages.openmp
-    openblas
-    oneDNN
-  ] ++ lib.optional withMkl [
+  buildInputs = lib.optionals withMkl [
     mkl
+  ] ++ lib.optionals withOneDNN [
+    oneDNN
+  ] ++ lib.optionals withOpenblas [
+    openblas
   ] ++ lib.optionals stdenv.isDarwin [
+    llvmPackages.openmp
     darwin.apple_sdk.frameworks.Accelerate
   ] ++ lib.optionals (stdenv.isDarwin && stdenv.isx86_64) [
     darwin.apple_sdk.frameworks.CoreGraphics