uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead
https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948 this can do it nicely. Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
commit
56de2bcd43
30691 changed files with 3076956 additions and 0 deletions
136
pkgs/development/libraries/openvino/default.nix
Normal file
136
pkgs/development/libraries/openvino/default.nix
Normal file
|
|
@ -0,0 +1,136 @@
|
|||
{ lib
|
||||
, addOpenGLRunpath
|
||||
, autoPatchelfHook
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, cmake
|
||||
, git
|
||||
, protobuf
|
||||
, tbb
|
||||
, opencv
|
||||
, unzip
|
||||
, shellcheck
|
||||
, srcOnly
|
||||
, python
|
||||
, enablePython ? false
|
||||
}:
|
||||
|
||||
let
|
||||
|
||||
onnx_src = srcOnly {
|
||||
name = "onnx-patched";
|
||||
src = fetchFromGitHub {
|
||||
owner = "onnx";
|
||||
repo = "onnx";
|
||||
rev = "v1.8.1";
|
||||
sha256 = "+1zNnZ4lAyVYRptfk0PV7koIX9FqcfD1Ah33qj/G2rA=";
|
||||
};
|
||||
patches = [
|
||||
# Fix build with protobuf 3.18+
|
||||
# Remove with onnx 1.9 release
|
||||
(fetchpatch {
|
||||
url = "https://github.com/onnx/onnx/commit/d3bc82770474761571f950347560d62a35d519d7.patch";
|
||||
sha256 = "0vdsrklkzhdjaj8wdsl4icn93q3961g8dx35zvff0nhpr08wjb7y";
|
||||
})
|
||||
];
|
||||
};
|
||||
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "openvino";
|
||||
version = "2021.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "openvinotoolkit";
|
||||
repo = "openvino";
|
||||
rev = version;
|
||||
sha256 = "pv4WTfY1U5GbA9Yj07UOLQifvVH3oDfWptxxYW5IwVQ=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
dontUseCmakeBuildDir = true;
|
||||
|
||||
cmakeFlags = [
|
||||
"-DNGRAPH_USE_SYSTEM_PROTOBUF:BOOL=ON"
|
||||
"-DFETCHCONTENT_FULLY_DISCONNECTED:BOOL=ON"
|
||||
"-DFETCHCONTENT_SOURCE_DIR_EXT_ONNX:STRING=${onnx_src}"
|
||||
"-DENABLE_VPU:BOOL=OFF"
|
||||
"-DTBB_DIR:STRING=${tbb}"
|
||||
"-DENABLE_OPENCV:BOOL=ON"
|
||||
"-DOPENCV:STRING=${opencv}"
|
||||
"-DENABLE_GNA:BOOL=OFF"
|
||||
"-DENABLE_SPEECH_DEMO:BOOL=OFF"
|
||||
"-DBUILD_TESTING:BOOL=OFF"
|
||||
"-DENABLE_CLDNN_TESTS:BOOL=OFF"
|
||||
"-DNGRAPH_INTERPRETER_ENABLE:BOOL=ON"
|
||||
"-DNGRAPH_TEST_UTIL_ENABLE:BOOL=OFF"
|
||||
"-DNGRAPH_UNIT_TEST_ENABLE:BOOL=OFF"
|
||||
"-DENABLE_SAMPLES:BOOL=OFF"
|
||||
"-DENABLE_CPPLINT:BOOL=OFF"
|
||||
] ++ lib.optional enablePython [
|
||||
"-DENABLE_PYTHON:BOOL=ON"
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
# To make install openvino inside /lib instead of /python
|
||||
substituteInPlace inference-engine/ie_bridges/python/CMakeLists.txt \
|
||||
--replace 'DESTINATION python/''${PYTHON_VERSION}/openvino' 'DESTINATION lib/''${PYTHON_VERSION}/site-packages/openvino' \
|
||||
--replace 'DESTINATION python/''${PYTHON_VERSION}' 'DESTINATION lib/''${PYTHON_VERSION}/site-packages/openvino'
|
||||
substituteInPlace inference-engine/ie_bridges/python/src/openvino/inference_engine/CMakeLists.txt \
|
||||
--replace 'python/''${PYTHON_VERSION}/openvino/inference_engine' 'lib/''${PYTHON_VERSION}/site-packages/openvino/inference_engine'
|
||||
|
||||
# Used to download OpenCV based on Linux Distro and make it use system OpenCV
|
||||
substituteInPlace inference-engine/cmake/dependencies.cmake \
|
||||
--replace 'include(linux_name)' ' ' \
|
||||
--replace 'if (ENABLE_OPENCV)' 'if (ENABLE_OPENCV AND NOT DEFINED OPENCV)'
|
||||
|
||||
cmakeDir=$PWD
|
||||
mkdir ../build
|
||||
cd ../build
|
||||
'';
|
||||
|
||||
autoPatchelfIgnoreMissingDeps = [ "libngraph_backend.so" ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
autoPatchelfHook
|
||||
addOpenGLRunpath
|
||||
unzip
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
git
|
||||
protobuf
|
||||
opencv
|
||||
python
|
||||
tbb
|
||||
shellcheck
|
||||
] ++ lib.optional enablePython (with python.pkgs; [
|
||||
cython
|
||||
pybind11
|
||||
]);
|
||||
|
||||
postFixup = ''
|
||||
# Link to OpenCL
|
||||
find $out -type f \( -name '*.so' -or -name '*.so.*' \) | while read lib; do
|
||||
addOpenGLRunpath "$lib"
|
||||
done
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "OpenVINO™ Toolkit repository";
|
||||
longDescription = ''
|
||||
This toolkit allows developers to deploy pre-trained deep learning models through a high-level C++ Inference Engine API integrated with application logic.
|
||||
|
||||
This open source version includes several components: namely Model Optimizer, nGraph and Inference Engine, as well as CPU, GPU, MYRIAD,
|
||||
multi device and heterogeneous plugins to accelerate deep learning inferencing on Intel® CPUs and Intel® Processor Graphics.
|
||||
It supports pre-trained models from the Open Model Zoo, along with 100+ open source and public models in popular formats such as Caffe*, TensorFlow*, MXNet* and ONNX*.
|
||||
'';
|
||||
homepage = "https://docs.openvinotoolkit.org/";
|
||||
license = with licenses; [ asl20 ];
|
||||
platforms = platforms.all;
|
||||
broken = stdenv.isDarwin; # Cannot find macos sdk
|
||||
maintainers = with maintainers; [ tfmoraes ];
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue