summary refs log tree commit diff
path: root/pkgs/development/libraries/opencv/4.x.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/libraries/opencv/4.x.nix')
-rw-r--r--pkgs/development/libraries/opencv/4.x.nix6
1 files changed, 4 insertions, 2 deletions
diff --git a/pkgs/development/libraries/opencv/4.x.nix b/pkgs/development/libraries/opencv/4.x.nix
index 9fffd3d9477..519d4ecd215 100644
--- a/pkgs/development/libraries/opencv/4.x.nix
+++ b/pkgs/development/libraries/opencv/4.x.nix
@@ -15,7 +15,7 @@
 , enableContrib   ? true
 
 , enableCuda      ? (config.cudaSupport or false) &&
-                    stdenv.hostPlatform.isx86_64, cudatoolkit
+                    stdenv.hostPlatform.isx86_64, cudatoolkit, nvidia-optical-flow-sdk
 
 , enableUnfree    ? false
 , enableIpp       ? false
@@ -166,6 +166,7 @@ stdenv.mkDerivation {
   # Also, work around https://github.com/NixOS/nixpkgs/issues/26304 with
   # what appears to be some stray headers in dnn/misc/tensorflow
   # in contrib when generating the Python bindings:
+  patches = lib.optional enableCuda ./cuda_opt_flow.patch;
   postPatch = ''
     sed -i '/Add these standard paths to the search paths for FIND_LIBRARY/,/^\s*$/{d}' CMakeLists.txt
     sed -i -e 's|if len(decls) == 0:|if len(decls) == 0 or "opencv2/" not in hdr:|' ./modules/python/src2/gen2.py
@@ -213,7 +214,7 @@ stdenv.mkDerivation {
     # tesseract & leptonica.
     ++ lib.optionals enableTesseract [ tesseract leptonica ]
     ++ lib.optional enableTbb tbb
-    ++ lib.optional enableCuda cudatoolkit
+    ++ lib.optionals enableCuda [ cudatoolkit nvidia-optical-flow-sdk ]
     ++ lib.optionals stdenv.isDarwin [ bzip2 AVFoundation Cocoa VideoDecodeAcceleration ]
     ++ lib.optionals enableDocs [ doxygen graphviz-nox ];
 
@@ -249,6 +250,7 @@ stdenv.mkDerivation {
     "-DCUDA_FAST_MATH=ON"
     "-DCUDA_HOST_COMPILER=${cudatoolkit.cc}/bin/cc"
     "-DCUDA_NVCC_FLAGS=--expt-relaxed-constexpr"
+    "-DNVIDIA_OPTICAL_FLOW_1_0_HEADERS_PATH=${nvidia-optical-flow-sdk}"
   ] ++ lib.optionals stdenv.isDarwin [
     "-DWITH_OPENCL=OFF"
     "-DWITH_LAPACK=OFF"