summaryrefslogtreecommitdiffstats
path: root/dynamic-layers/openembedded-layer/recipes-support/opencv/openvino-inference-engine_2020.4.bb
diff options
context:
space:
mode:
Diffstat (limited to 'dynamic-layers/openembedded-layer/recipes-support/opencv/openvino-inference-engine_2020.4.bb')
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/openvino-inference-engine_2020.4.bb124
1 files changed, 124 insertions, 0 deletions
diff --git a/dynamic-layers/openembedded-layer/recipes-support/opencv/openvino-inference-engine_2020.4.bb b/dynamic-layers/openembedded-layer/recipes-support/opencv/openvino-inference-engine_2020.4.bb
new file mode 100644
index 00000000..c2863e65
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-support/opencv/openvino-inference-engine_2020.4.bb
@@ -0,0 +1,124 @@
1SUMMARY = "OpenVINO(TM) Toolkit - Deep Learning Deployment Toolkit"
2HOMEPAGE = "https://github.com/opencv/dldt"
3DESCRIPTION = "This toolkit allows developers to deploy pre-trained \
4deep learning models through a high-level C++ Inference Engine API \
5integrated with application logic."
6
7SRC_URI = "git://github.com/openvinotoolkit/openvino.git;protocol=git;branch=releases/2020/4;lfs=0 \
8 https://download.01.org/opencv/master/openvinotoolkit/thirdparty/unified/VPU/usb-ma2450/firmware_usb-ma2450_1223.zip;name=ma2450 \
9 https://download.01.org/opencv/master/openvinotoolkit/thirdparty/unified/VPU/pcie-ma248x/firmware_pcie-ma248x_1223.zip;name=ma248x \
10 https://download.01.org/opencv/master/openvinotoolkit/thirdparty/unified/VPU/usb-ma2x8x/firmware_usb-ma2x8x_1223.zip;name=ma2x8x \
11 git://github.com/openvinotoolkit/oneDNN.git;protocol=https;destsuffix=git/inference-engine/thirdparty/mkl-dnn;name=mkl;nobranch=1 \
12 file://0001-inference-engine-use-system-installed-packages.patch \
13 file://0002-cldNN-disable-Werror.patch \
14 file://0003-inference-engine-installation-fixes.patch \
15 file://0004-fix-compilation-errors.patch \
16 file://0005-cldnn-fix-inclusion-of-headers.patch \
17 file://0001-dont-install-licenses-and-version-file.patch;patchdir=ngraph \
18 "
19
20SRCREV = "023e7c2c3f8a8ac83564db09799d2049115d9cf6"
21SRCREV_mkl = "2706f56ebab54415be48add2751072065f4b52ab"
22
23SRC_URI[ma2450.sha256sum] = "4dc246bd12d7a21c1b10ac3e090b30043777c4ea862e1e4119536ba03c5878ef"
24SRC_URI[ma248x.sha256sum] = "64dd77ecd2f7172421414a388a87be4e6271894a982a58b3829f9de1a1869abd"
25SRC_URI[ma2x8x.sha256sum] = "d1d209221c1389a9a04e14ffeeaff1c3308f6ab105c7bd22f0e300df01cce4d8"
26
27LICENSE = "Apache-2.0 & ISSL & MIT"
28LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327 \
29 file://inference-engine/thirdparty/mkl-dnn/LICENSE;md5=afa44a3d001cc203032135324f9636b7 \
30 file://inference-engine/thirdparty/mkl-dnn/src/cpu/xbyak/COPYRIGHT;md5=03532861dad9003cc2c17f14fc7a4efa \
31 file://inference-engine/thirdparty/clDNN/common/khronos_ocl_clhpp/LICENSE.txt;md5=88b295a48d2b3244ba65d3c055472c8a \
32"
33LICENSE_${PN}-vpu-firmware = "ISSL"
34
35inherit cmake python3native
36
37S = "${WORKDIR}/git"
38
39EXTRA_OECMAKE += " \
40 -DENABLE_OPENCV=0 \
41 -DENABLE_PLUGIN_RPATH=0 \
42 -DENABLE_GNA=0 \
43 -DPYTHON_EXECUTABLE=${PYTHON} \
44 -DCMAKE_BUILD_TYPE=RelWithDebInfo \
45 -DTHREADING=TBB -DTBB_DIR=${STAGING_LIBDIR} \
46 -DENABLE_SAMPLES=1 \
47 -DIE_CPACK_IE_DIR=${prefix} \
48 -DNGRAPH_UNIT_TEST_ENABLE=FALSE \
49 -DNGRAPH_TEST_UTIL_ENABLE=FALSE \
50 -DNGRAPH_ONNX_IMPORT_ENABLE=OFF \
51 -DNGRAPH_JSON_ENABLE=FALSE \
52 -DTREAT_WARNING_AS_ERROR=FALSE \
53 -DENABLE_SPEECH_DEMO=FALSE \
54 -DENABLE_DATA=FALSE \
55 "
56
57DEPENDS += "libusb1 \
58 ade \
59 opencv \
60 pugixml \
61 protobuf-native \
62 tbb \
63 onednn \
64 "
65
66COMPATIBLE_HOST = '(x86_64).*-linux'
67COMPATIBLE_HOST_libc-musl = "null"
68
69PACKAGECONFIG ?= "vpu"
70PACKAGECONFIG[opencl] = "-DENABLE_CLDNN=1 -DCLDNN__IOCL_ICD_INCDIRS=${STAGING_INCDIR} -DCLDNN__IOCL_ICD_STLDIRS=${STAGING_LIBDIR} -DCLDNN__IOCL_ICD_SHLDIRS=${STAGING_LIBDIR}, -DENABLE_CLDNN=0, ocl-icd opencl-headers libva, intel-compute-runtime"
71PACKAGECONFIG[python3] = "-DENABLE_PYTHON=ON -DPYTHON_LIBRARY=${PYTHON_LIBRARY} -DPYTHON_INCLUDE_DIR=${PYTHON_INCLUDE_DIR}, -DENABLE_PYTHON=OFF, python3-cython-native, python3 python3-numpy python3-opencv python3-progress python3-cython"
72PACKAGECONFIG[vpu] = "-DENABLE_VPU=ON -DVPU_FIRMWARE_USB-MA2450_FILE=../mvnc/usb-ma2450.mvcmd -DVPU_FIRMWARE_USB-MA2X8X_FILE=../mvnc/usb-ma2x8x.mvcmd -DVPU_FIRMWARE_PCIE-MA248X_FILE=../mvnc/pcie-ma248x.mvcmd,-DENABLE_VPU=OFF,,${PN}-vpu-firmware"
73PACKAGECONFIG[verbose] = "-DVERBOSE_BUILD=1,-DVERBOSE_BUILD=0"
74
75do_install_append() {
76 if ${@bb.utils.contains('PACKAGECONFIG', 'vpu', 'true', 'false', d)}; then
77 install -m0644 ${WORKDIR}/mvnc/usb-ma2450.mvcmd ${D}${libdir}/
78 install -m0644 ${WORKDIR}/mvnc/usb-ma2x8x.mvcmd ${D}${libdir}/
79 install -m0644 ${WORKDIR}/mvnc/pcie-ma248x.mvcmd ${D}${libdir}/
80 fi
81
82 if ${@bb.utils.contains('PACKAGECONFIG', 'python3', 'true', 'false', d)}; then
83 install -d ${D}${datadir}/inference_engine
84 mv ${D}/usr/samples/python ${D}${datadir}/inference_engine/
85
86 install -d ${D}${PYTHON_SITEPACKAGES_DIR}
87 mv ${D}${prefix}/python/${PYTHON_DIR}/openvino ${D}${PYTHON_SITEPACKAGES_DIR}/
88 mv ${D}${prefix}/deployment_tools/tools/benchmark_tool ${D}${PYTHON_SITEPACKAGES_DIR}/openvino/
89
90 rm -rf ${D}${prefix}/python
91 rm -rf ${D}${prefix}/deployment_tools
92 fi
93
94 # Remove the samples source directory. We install the built samples.
95 rm -rf ${D}/usr/samples
96}
97
98# Otherwise e.g. ros-openvino-toolkit-dynamic-vino-sample when using dldt-inference-engine uses dldt-inference-engine WORKDIR
99# instead of RSS
100SSTATE_SCAN_FILES_append = " *.cmake"
101
102FILES_${PN}-dev = "${includedir} \
103 ${libdir}/cmake \
104 "
105
106FILES_${PN} += "${libdir}/lib*${SOLIBSDEV} \
107 ${datadir}/openvino \
108 ${libdir}/custom_kernels \
109 ${libdir}/plugins.xml \
110 ${libdir}/cache.json \
111 "
112
113# Move inference engine samples into a separate package
114PACKAGES =+ "${PN}-samples ${PN}-vpu-firmware"
115
116FILES_${PN}-samples = "${datadir}/inference_engine \
117 ${bindir} \
118 "
119FILES_${PN}-vpu-firmware += "${libdir}/*.mvcmd"
120
121# Package for inference engine python API
122PACKAGES =+ "${PN}-${PYTHON_PN}"
123
124FILES_${PN}-${PYTHON_PN} = "${PYTHON_SITEPACKAGES_DIR}/openvino"