summaryrefslogtreecommitdiffstats
path: root/dynamic-layers/openembedded-layer/recipes-support/opencv/dldt-inference-engine_2019r3.1.bb
diff options
context:
space:
mode:
Diffstat (limited to 'dynamic-layers/openembedded-layer/recipes-support/opencv/dldt-inference-engine_2019r3.1.bb')
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/dldt-inference-engine_2019r3.1.bb117
1 files changed, 117 insertions, 0 deletions
diff --git a/dynamic-layers/openembedded-layer/recipes-support/opencv/dldt-inference-engine_2019r3.1.bb b/dynamic-layers/openembedded-layer/recipes-support/opencv/dldt-inference-engine_2019r3.1.bb
new file mode 100644
index 00000000..c788c53b
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-support/opencv/dldt-inference-engine_2019r3.1.bb
@@ -0,0 +1,117 @@
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/opencv/dldt.git;protocol=git;branch=2019 \
8 https://download.01.org/opencv/2019/openvinotoolkit/R3/inference_engine/firmware_ma2450_759W.zip;name=ma2450 \
9 https://download.01.org/opencv/2019/openvinotoolkit/R3/inference_engine/firmware_ma2x8x_mdk_R9.8.zip;name=ma2x8x \
10 https://download.01.org/opencv/2019/openvinotoolkit/R3/inference_engine/firmware_mv0262_mdk_R9.8.zip;name=mv0262 \
11 file://0001-R2-Build-fixes.patch;patchdir=.. \
12 file://0002-R2-Install-DLDT-headers-libs-sample-Apps.patch;patchdir=.. \
13 file://0003-use-GNUInstallDirs-on-nix.patch;patchdir=.. \
14 file://0004-disable-werror.patch;patchdir=.. \
15 file://0005-point-to-correct-location-of-ngraph-headers.patch;patchdir=.. \
16 file://0006-Install-clDNN-plugin-to-CMAKE_INSTALL_LIBDIR.patch;patchdir=.. \
17 file://0007-Install-mock_engine-to-CMAKE_INSTALL_LIBDIR.patch;patchdir=.. \
18 file://0008-Simplify-searching-for-firmware-files.patch;patchdir=.. \
19 file://run-ptest \
20 "
21SRCREV = "fe3f978b98c86eaeed3cbdc280e1ffd0bc50d278"
22
23SRC_URI[ma2450.md5sum] = "852f80c3248c451a6c8bfd96d871318f"
24SRC_URI[ma2450.sha256sum] = "ba1b23b45cd8e548ead77af49b0e378100cf4f8dcda41a491868d3d4e7bf8cba"
25
26SRC_URI[ma2x8x.md5sum] = "2d9ca6894cdd25e9b10f7908c415dbc9"
27SRC_URI[ma2x8x.sha256sum] = "961ce4c7b14823a528185f5e75b3b6898a7e8f866b4b5b8af5f4f05f72226909"
28
29SRC_URI[mv0262.md5sum] = "c495f0ee0313e9d8d993e846a7868c4f"
30SRC_URI[mv0262.sha256sum] = "0c0c8d7782f49dd4928837b52b4b6f25c1b088bfee23e464729057a28323ab77"
31
32LICENSE = "Apache-2.0 & ISSL"
33LIC_FILES_CHKSUM = "file://../LICENSE;md5=86d3f3a95c324c9479bd8986968f4327 \
34 file://../../ISSL.txt;md5=ab31aad35d740d800ae1e332d6290f50 \
35"
36LICENSE_${PN}-vpu-firmware = "ISSL"
37
38inherit cmake ptest python3native
39
40S = "${WORKDIR}/git/inference-engine"
41
42EXTRA_OECMAKE += " \
43 -DENABLE_OPENCV=0 \
44 -DENABLE_SAMPLES_CORE=1 \
45 -DENABLE_PLUGIN_RPATH=0 \
46 -DENABLE_GNA=0 \
47 -DPYTHON_EXECUTABLE=${PYTHON} \
48 -DTHREADING=TBB \
49 -DCMAKE_BUILD_TYPE=DebugWithRelInfo \
50 -DNGRAPH_INCLUDES=${STAGING_INCDIR}/ngraph \
51 -DENABLE_TESTS="${@bb.utils.contains('PTEST_ENABLED', '1', '1', '0', d)}" \
52 -DBUILD_GMOCK=1 \
53 -DBUILD_GTEST=0 \
54 -DINSTALL_GMOCK=0 \
55 -DINSTALL_GTEST=0 \
56 "
57
58DEPENDS += "libusb1 \
59 ade \
60 opencv \
61 pugixml \
62 ngraph \
63 tbb \
64 ${@bb.utils.contains('PTEST_ENABLED', '1', 'gflags', '0', d)} \
65 "
66
67COMPATIBLE_HOST = '(x86_64).*-linux'
68COMPATIBLE_HOST_libc-musl = "null"
69
70PACKAGECONFIG ?= "vpu"
71PACKAGECONFIG[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, opencl-icd-loader, opencl-icd-loader intel-compute-runtime"
72PACKAGECONFIG[python3] = "-DENABLE_PYTHON=ON -DPYTHON_LIBRARY=${PYTHON_LIBRARY} -DPYTHON_INCLUDE_DIR=${PYTHON_INCLUDE_DIR}, -DENABLE_PYTHON=OFF, python3-cython-native, python3"
73PACKAGECONFIG[vpu] = "-DENABLE_VPU=ON -DVPU_FIRMWARE_MA2450_FILE=../mvnc/MvNCAPI-ma2450.mvcmd -DVPU_FIRMWARE_MA2X8X_FILE=../mvnc/MvNCAPI-ma2x8x.mvcmd -DVPU_FIRMWARE_MV0262_FILE=../mvnc/MvNCAPI-mv0262.mvcmd,-DENABLE_VPU=OFF,,${PN}-vpu-firmware"
74PACKAGECONFIG[verbose] = "-DVERBOSE_BUILD=1,-DVERBOSE_BUILD=0"
75
76do_install_append() {
77 if ${@bb.utils.contains('PACKAGECONFIG', 'vpu', 'true', 'false', d)}; then
78 install -m0644 ${WORKDIR}/mvnc/MvNCAPI-ma2450.mvcmd ${D}${libdir}
79 install -m0644 ${WORKDIR}/mvnc/MvNCAPI-ma2x8x.mvcmd ${D}${libdir}
80 install -m0644 ${WORKDIR}/mvnc/MvNCAPI-mv0262.mvcmd ${D}${libdir}
81
82 install -D -m0644 ${S}/thirdparty/movidius/mvnc/src/97-myriad-usbboot.rules ${D}${sysconfdir}/udev/rules.d/97-myriad-usbboot.rules
83 fi
84}
85
86do_install_ptest_base_prepend() {
87 # While not a Makefile based project that strictly falls into the category of
88 # what ptest helps with, adding the unit tests here as ptest would help.
89 # Create a dummy Makefile so installation doesn't fail.
90 touch ${WORKDIR}/Makefile
91 mv ${D}${bindir}/InferenceEngineUnitTests ${D}${PTEST_PATH}/
92 mv ${D}${libdir}/libmock_engine.so ${D}${PTEST_PATH}/
93}
94
95# Otherwise e.g. ros-openvino-toolkit-dynamic-vino-sample when using dldt-inference-engine uses dldt-inference-engine WORKDIR
96# instead of RSS
97SSTATE_SCAN_FILES_append = " *.cmake"
98
99FILES_${PN}-dev = "${includedir} \
100 ${libdir}/cmake \
101 ${libdir}/libinference_engine.so \
102 "
103
104FILES_${PN} += "${libdir}/lib*${SOLIBSDEV} \
105 ${datadir}/openvino \
106 "
107
108# Move inference engine samples into a separate package
109PACKAGES =+ "${PN}-samples ${PN}-vpu-firmware"
110
111FILES_${PN}-samples = "${bindir}"
112FILES_${PN}-vpu-firmware += "${libdir}/*.mvcmd"
113
114# Package for inference engine python API
115PACKAGES =+ "${PN}-${PYTHON_PN}"
116
117FILES_${PN}-${PYTHON_PN} = "${PYTHON_SITEPACKAGES_DIR}/openvino"