summaryrefslogtreecommitdiffstats
path: root/dynamic-layers
diff options
context:
space:
mode:
Diffstat (limited to 'dynamic-layers')
-rw-r--r--dynamic-layers/clang-layer/recipes-core/dnn/onednn_3.5.3.bb (renamed from dynamic-layers/clang-layer/recipes-core/dnn/onednn_1.5.bb)24
-rw-r--r--dynamic-layers/clang-layer/recipes-devtools/clang/files/BasicBlockUtils-Add-metadata-fixing-in-SplitBlockPre.patch111
-rw-r--r--dynamic-layers/clang-layer/recipes-devtools/clang/files/IndVarSimplify-Do-not-use-SCEV-expander-for-IVCount-.patch146
-rw-r--r--dynamic-layers/clang-layer/recipes-devtools/clang/files/fix-shared-libs.patch30
-rw-r--r--dynamic-layers/clang-layer/recipes-devtools/clang/files/llvm10-skip-building-tests.patch51
-rw-r--r--dynamic-layers/clang-layer/recipes-devtools/clang/llvm-project-source.bbappend11
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/0002-Build-not-able-to-locate-cpp_generation_tool.patch41
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/0003-external-ocloc.patch38
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/allow-to-find-cpp-generation-tool.patch32
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime_20.33.17675.bb56
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime_25.13.33276.16.bb61
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch32
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-Build-not-able-to-locate-BiFManager-bin.patch27
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-external-SPIRV-Tools-change-path-to-tools-and-header.patch30
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-fix-tblgen.patch23
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-skip-execution-of-ElfPackager.patch43
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/igc/files/0003-Improve-Reproducibility-for-src-package.patch33
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/igc/files/link-to-LLVMGenXIntrinsics.patch62
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_1.0.4756.bb38
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_2.10.10.bb77
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0001-Building-in-tree-with-LLVM-10.0-with-the-LLVM_LINK_L.patch35
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0001-cl_headers-CMakeLists.txt-use-clang-from-native-sysr.patch49
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0001-don-t-redefine-LLVM_TABLEGEN_EXE.patch32
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0002-Request-native-clang-only-when-cross-compiling-464.patch60
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0002-make-sure-only-static-libraries-linked-for-native-bu.patch42
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang.inc33
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_10.0.0.bb35
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_15.0.0.bb5
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/vc-intrinsics/vc-intrinsics_1.0.bb25
-rw-r--r--dynamic-layers/meta-python/recipes-opencv/dldt/openvino-model-optimizer_2020.4.bb33
-rw-r--r--dynamic-layers/openembedded-layer/recipes-bsp/amt/files/0001-CIM_Framework-CMakeLists.txt-turn-OFF-BUILD_LIBCIM.patch34
-rw-r--r--dynamic-layers/openembedded-layer/recipes-bsp/amt/files/0001-LMS-fix-build-issue-with-gcc-15.patch32
-rw-r--r--dynamic-layers/openembedded-layer/recipes-bsp/amt/files/lms_drop_rpath_2022.0.0.0.diff30
-rw-r--r--dynamic-layers/openembedded-layer/recipes-bsp/amt/lms_2022.0.0.0.bb39
-rw-r--r--dynamic-layers/openembedded-layer/recipes-bsp/amt/lms_2406.0.0.0.bb43
-rw-r--r--dynamic-layers/openembedded-layer/recipes-bsp/thermald/thermald_2.5.8.bb43
-rw-r--r--dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/0001-Add-print-function-to-print-test-run-status-in-ptest.patch53
-rw-r--r--dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/0001-Fix-QA-Issues.patch36
-rw-r--r--dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/0002-cmake-don-t-build-for-32-bit-targets.patch52
-rw-r--r--dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/run-ptest2
-rw-r--r--dynamic-layers/openembedded-layer/recipes-core/ispc/ispc_1.24.0.bb62
-rw-r--r--dynamic-layers/openembedded-layer/recipes-core/levelzero/level-zero_1.21.1.bb (renamed from dynamic-layers/openembedded-layer/recipes-core/levelzero/level-zero_1.0.bb)21
-rw-r--r--dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver/0001-Fix-the-compilation-warning-when-using-gcc-13-25.patch99
-rw-r--r--dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver/0001-linux-npu-driver-fix-multilib-install-issue.patch28
-rw-r--r--dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver/0002-Fix-compilation-failure-with-GCC-14.patch110
-rw-r--r--dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver_1.17.0.bb43
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/dpcpp-compiler/intel-oneapi-dpcpp-cpp-runtime_2024.0.0-49819.bb54
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/dpcpp-compiler/intel-oneapi-dpcpp-cpp_2024.0.0-49819.bb45
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/embree/embree_4.3.3.bb30
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/ipp/intel-oneapi-ipp_2021.10.0-653.bb35
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/mkl/intel-oneapi-mkl_2024.0.0-49656.bb74
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/oidn/oidn_2.1.0.bb27
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/openvkl/openvkl_2.0.1.bb40
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/ospray/ospray/0001-Fix-GCC11-Compile-Error-in-benchmark_register.h.patch28
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/ospray/ospray_3.2.0.bb36
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/rkcommon/rkcommon_1.14.0.bb17
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl/0001-CMakeLists-disable-Werror.patch38
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl/0001-Ignore-STATIC_ASSERTs-and-NULL-define-for-os-and-ut-builds.patch62
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl_03.00.00.0499.bb45
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/files/0001-dont-install-licenses-and-version-file.patch45
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/files/0001-inference-engine-use-system-installed-packages.patch256
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/files/0002-cldNN-disable-Werror.patch30
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/files/0003-inference-engine-installation-fixes.patch215
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/files/0004-fix-compilation-errors.patch23
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/files/0005-cldnn-fix-inclusion-of-headers.patch52
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/open-model-zoo/0001-use-oe-gflags.patch115
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/open-model-zoo_2020.4.bb61
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/openvino-inference-engine_2020.4.bb124
68 files changed, 1666 insertions, 1828 deletions
diff --git a/dynamic-layers/clang-layer/recipes-core/dnn/onednn_1.5.bb b/dynamic-layers/clang-layer/recipes-core/dnn/onednn_3.5.3.bb
index 36c1a9d8..6d4f69a3 100644
--- a/dynamic-layers/clang-layer/recipes-core/dnn/onednn_1.5.bb
+++ b/dynamic-layers/clang-layer/recipes-core/dnn/onednn_3.5.3.bb
@@ -3,20 +3,19 @@ SUMMARY = "Deep Neural Network Library"
3DESCRIPTION = "This software is a user mode library that accelerates\ 3DESCRIPTION = "This software is a user mode library that accelerates\
4deep-learning applications and frameworks on Intel architecture." 4deep-learning applications and frameworks on Intel architecture."
5LICENSE = "Apache-2.0 & BSD-3-Clause & BSL-1.0" 5LICENSE = "Apache-2.0 & BSD-3-Clause & BSL-1.0"
6LIC_FILES_CHKSUM = "file://LICENSE;md5=3c6ff4426dbd618bcfd552ac4a7c1c56 \ 6LIC_FILES_CHKSUM = "file://LICENSE;md5=3b64000f6e7d52516017622a37a94ce9 \
7 file://tests/gtests/gtest/LICENSE;md5=cbbd27594afd089daa160d3a16dd515a \ 7 file://tests/gtests/gtest/LICENSE;md5=cbbd27594afd089daa160d3a16dd515a \
8 file://src/cpu/x64/xbyak/COPYRIGHT;md5=3b9bf048d063d54cdb28964db558bcc7 \ 8 file://src/cpu/x64/xbyak/COPYRIGHT;md5=3b9bf048d063d54cdb28964db558bcc7 \
9 file://src/cpu/x64/jit_utils/jitprofiling/LICENSE.BSD;md5=e671ff178b24a95a382ba670503c66fb \ 9 file://src/common/ittnotify/LICENSE.BSD;md5=e671ff178b24a95a382ba670503c66fb \
10 file://doc/assets/mathjax/MathJax.js;endline=17;md5=25a014ad78c3d72a0e15d15f1d007c20 \
11 file://src/common/primitive_hashing.hpp;beginline=237;endline=240;md5=f56de33cb6ec02de60006b10e027b300 \
12 " 10 "
13SECTION = "lib" 11SECTION = "lib"
14 12
15inherit pkgconfig cmake ptest 13inherit pkgconfig cmake ptest
16 14
17S = "${WORKDIR}/git" 15DNN_BRANCH = "rls-v${@'.'.join(d.getVar('PV').split('.')[0:2])}"
18SRCREV = "e2ac1fac44c5078ca927cb9b90e1b3066a0b2ed0" 16
19SRC_URI = "git://github.com/oneapi-src/oneDNN.git;branch=rls-v1.5 \ 17SRCREV = "66f0cb9eb66affd2da3bf5f8d897376f04aae6af"
18SRC_URI = "git://github.com/oneapi-src/oneDNN.git;branch=${DNN_BRANCH};protocol=https \
20 file://run-ptest \ 19 file://run-ptest \
21 " 20 "
22 21
@@ -25,7 +24,7 @@ UPSTREAM_CHECK_GITTAGREGEX = "^v(?P<pver>(\d+(\.\d+)+))$"
25CVE_PRODUCT = "intel:math_kernel_library" 24CVE_PRODUCT = "intel:math_kernel_library"
26 25
27COMPATIBLE_HOST = '(x86_64).*-linux' 26COMPATIBLE_HOST = '(x86_64).*-linux'
28COMPATIBLE_HOST_libc-musl = 'null' 27COMPATIBLE_HOST:libc-musl = 'null'
29 28
30EXTRA_OECMAKE += " \ 29EXTRA_OECMAKE += " \
31 -DDNNL_LIBRARY_TYPE=SHARED \ 30 -DDNNL_LIBRARY_TYPE=SHARED \
@@ -34,12 +33,13 @@ EXTRA_OECMAKE += " \
34 -DDNNL_CPU_RUNTIME=OMP \ 33 -DDNNL_CPU_RUNTIME=OMP \
35 -DDNNL_ARCH_OPT_FLAGS="" \ 34 -DDNNL_ARCH_OPT_FLAGS="" \
36 -DCMAKE_SKIP_RPATH=ON \ 35 -DCMAKE_SKIP_RPATH=ON \
36 -DONEDNN_BUILD_GRAPH=OFF \
37 " 37 "
38 38
39PACKAGECONFIG ??= "" 39PACKAGECONFIG ??= "gpu"
40PACKAGECONFIG[gpu] = "-DDNNL_GPU_RUNTIME=OCL, , opencl-headers ocl-icd, intel-compute-runtime" 40PACKAGECONFIG[gpu] = "-DDNNL_GPU_RUNTIME=OCL, , opencl-headers virtual/opencl-icd, intel-compute-runtime"
41 41
42do_install_append () { 42do_install:append () {
43 install -d ${D}${bindir}/mkl-dnn/tests/benchdnn/inputs 43 install -d ${D}${bindir}/mkl-dnn/tests/benchdnn/inputs
44 install -m 0755 ${B}/tests/benchdnn/benchdnn ${D}${bindir}/mkl-dnn/tests/benchdnn 44 install -m 0755 ${B}/tests/benchdnn/benchdnn ${D}${bindir}/mkl-dnn/tests/benchdnn
45 cp -r ${B}/tests/benchdnn/inputs/* ${D}${bindir}/mkl-dnn/tests/benchdnn/inputs 45 cp -r ${B}/tests/benchdnn/inputs/* ${D}${bindir}/mkl-dnn/tests/benchdnn/inputs
@@ -53,4 +53,4 @@ do_install_ptest () {
53 53
54PACKAGES =+ "${PN}-test" 54PACKAGES =+ "${PN}-test"
55 55
56FILES_${PN}-test = "${bindir}/mkl-dnn/*" 56FILES:${PN}-test = "${bindir}/mkl-dnn/*"
diff --git a/dynamic-layers/clang-layer/recipes-devtools/clang/files/BasicBlockUtils-Add-metadata-fixing-in-SplitBlockPre.patch b/dynamic-layers/clang-layer/recipes-devtools/clang/files/BasicBlockUtils-Add-metadata-fixing-in-SplitBlockPre.patch
deleted file mode 100644
index cd519971..00000000
--- a/dynamic-layers/clang-layer/recipes-devtools/clang/files/BasicBlockUtils-Add-metadata-fixing-in-SplitBlockPre.patch
+++ /dev/null
@@ -1,111 +0,0 @@
1From eeb816d95f0910bd246e37bb2bb3923acf0edf6b Mon Sep 17 00:00:00 2001
2From: Aleksander Us <aleksander.us@intel.com>
3Date: Mon, 26 Aug 2019 15:47:41 +0300
4Subject: [PATCH] [BasicBlockUtils] Add metadata fixing in
5 SplitBlockPredecessors.
6
7In case when BB is header of some loop and predecessor is latch of
8this loop, metadata was not attached to newly created basic block.
9This led to loss of loop metadata for other passes.
10
11Upstream-Status: Submitted [https://reviews.llvm.org/D66892]
12
13https://github.com/intel/llvm-patches/commit/8af4449e2d201707f7f2f832b473a0439e255f32
14
15Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
16---
17 lib/Transforms/Utils/BasicBlockUtils.cpp | 23 ++++++++----
18 test/Transforms/LoopSimplify/loop_metadata.ll | 36 +++++++++++++++++++
19 2 files changed, 52 insertions(+), 7 deletions(-)
20 create mode 100644 test/Transforms/LoopSimplify/loop_metadata.ll
21
22diff --git a/lib/Transforms/Utils/BasicBlockUtils.cpp b/lib/Transforms/Utils/BasicBlockUtils.cpp
23index 5fa371377c8..3a90ae061fb 100644
24--- a/lib/Transforms/Utils/BasicBlockUtils.cpp
25+++ b/lib/Transforms/Utils/BasicBlockUtils.cpp
26@@ -579,24 +579,33 @@ BasicBlock *llvm::SplitBlockPredecessors(BasicBlock *BB,
27
28 // The new block unconditionally branches to the old block.
29 BranchInst *BI = BranchInst::Create(BB, NewBB);
30+ bool IsBBHeader = LI && LI->isLoopHeader(BB);
31+ Loop *BBLoop = LI ? LI->getLoopFor(BB) : nullptr;
32 // Splitting the predecessors of a loop header creates a preheader block.
33- if (LI && LI->isLoopHeader(BB))
34+ if (IsBBHeader)
35 // Using the loop start line number prevents debuggers stepping into the
36 // loop body for this instruction.
37- BI->setDebugLoc(LI->getLoopFor(BB)->getStartLoc());
38+ BI->setDebugLoc(BBLoop->getStartLoc());
39 else
40 BI->setDebugLoc(BB->getFirstNonPHIOrDbg()->getDebugLoc());
41
42 // Move the edges from Preds to point to NewBB instead of BB.
43- for (unsigned i = 0, e = Preds.size(); i != e; ++i) {
44+ for (BasicBlock *Pred : Preds) {
45+ Instruction *PI = Pred->getTerminator();
46 // This is slightly more strict than necessary; the minimum requirement
47 // is that there be no more than one indirectbr branching to BB. And
48 // all BlockAddress uses would need to be updated.
49- assert(!isa<IndirectBrInst>(Preds[i]->getTerminator()) &&
50+ assert(!isa<IndirectBrInst>(PI) &&
51 "Cannot split an edge from an IndirectBrInst");
52- assert(!isa<CallBrInst>(Preds[i]->getTerminator()) &&
53- "Cannot split an edge from a CallBrInst");
54- Preds[i]->getTerminator()->replaceUsesOfWith(BB, NewBB);
55+ assert(!isa<CallBrInst>(PI) && "Cannot split an edge from a CallBrInst");
56+ if (IsBBHeader && BBLoop->contains(Pred) && BBLoop->isLoopLatch(Pred)) {
57+ // Update loop metadata if it exists.
58+ if (MDNode *LoopMD = PI->getMetadata(LLVMContext::MD_loop)) {
59+ BI->setMetadata(LLVMContext::MD_loop, LoopMD);
60+ PI->setMetadata(LLVMContext::MD_loop, nullptr);
61+ }
62+ }
63+ PI->replaceUsesOfWith(BB, NewBB);
64 }
65
66 // Insert a new PHI node into NewBB for every PHI node in BB and that new PHI
67diff --git a/test/Transforms/LoopSimplify/loop_metadata.ll b/test/Transforms/LoopSimplify/loop_metadata.ll
68new file mode 100644
69index 00000000000..c15c92fe3ae
70--- /dev/null
71+++ b/test/Transforms/LoopSimplify/loop_metadata.ll
72@@ -0,0 +1,36 @@
73+; RUN: opt -S -loop-simplify < %s | FileCheck %s
74+
75+; CHECK: for.cond.loopexit:
76+; CHECK: br label %for.cond, !llvm.loop !0
77+; CHECK: br i1 %cmp1, label %for.body1, label %for.cond.loopexit
78+
79+define void @foo() {
80+entry:
81+ br label %for.cond
82+
83+for.cond: ; preds = %for.cond1, %entry
84+ %j = phi i32 [ 0, %entry ], [ %add, %for.cond1 ]
85+ %cmp = icmp ult i32 %j, 8
86+ br i1 %cmp, label %for.body, label %for.end
87+
88+for.body: ; preds = %for.cond
89+ %dummy1 = add i32 1, 1
90+ %add = add nuw nsw i32 %j, 1
91+ br label %for.cond1
92+
93+for.cond1: ; preds = %for.body1, %for.body
94+ %i.0 = phi i32 [ 1, %for.body ], [ %inc, %for.body1 ]
95+ %cmp1 = icmp ult i32 %i.0, 8
96+ br i1 %cmp1, label %for.body1, label %for.cond, !llvm.loop !0
97+
98+for.body1: ; preds = %for.cond1
99+ %dummy2 = add i32 1, 1
100+ %inc = add nuw nsw i32 %i.0, 1
101+ br label %for.cond1
102+
103+for.end: ; preds = %for.cond
104+ ret void
105+}
106+
107+!0 = distinct !{!0, !1}
108+!1 = !{!"llvm.loop.unroll.full"}
109--
1102.18.0
111
diff --git a/dynamic-layers/clang-layer/recipes-devtools/clang/files/IndVarSimplify-Do-not-use-SCEV-expander-for-IVCount-.patch b/dynamic-layers/clang-layer/recipes-devtools/clang/files/IndVarSimplify-Do-not-use-SCEV-expander-for-IVCount-.patch
deleted file mode 100644
index 48307deb..00000000
--- a/dynamic-layers/clang-layer/recipes-devtools/clang/files/IndVarSimplify-Do-not-use-SCEV-expander-for-IVCount-.patch
+++ /dev/null
@@ -1,146 +0,0 @@
1From 35e218a886f4c066eabd18685240d55270bd5a6d Mon Sep 17 00:00:00 2001
2From: Aleksander Us <aleksander.us@intel.com>
3Date: Mon, 26 Aug 2019 15:45:47 +0300
4Subject: [PATCH] [IndVarSimplify] Do not use SCEV expander for IVCount in
5 LFTR when possible.
6
7SCEV analysis cannot properly cache instruction with poison flags
8(for example, add nsw outside of loop will not be reused by expander).
9This can lead to generating of additional instructions by SCEV expander.
10
11Example IR:
12
13 ...
14 %maxval = add nuw nsw i32 %a1, %a2
15 ...
16for.body:
17 ...
18 %cmp22 = icmp ult i32 %ivadd, %maxval
19 br i1 %cmp22, label %for.body, label %for.end
20 ...
21
22SCEV expander will generate copy of %maxval in preheader but without
23nuw/nsw flags. This can be avoided by explicit check that iv count
24value gives the same SCEV expressions as calculated by LFTR.
25
26Upstream-Status: Submitted [https://reviews.llvm.org/D66890]
27
28https://github.com/intel/llvm-patches/commit/fd6a6c97341a56fd21bc32bc940afea751312e8f
29
30Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
31---
32 lib/Transforms/Scalar/IndVarSimplify.cpp | 12 +++++++++-
33 test/Transforms/IndVarSimplify/add_nsw.ll | 23 ++++++++++++++++++++
34 test/Transforms/IndVarSimplify/lftr-reuse.ll | 9 +++-----
35 test/Transforms/IndVarSimplify/udiv.ll | 1 +
36 4 files changed, 38 insertions(+), 7 deletions(-)
37 create mode 100644 test/Transforms/IndVarSimplify/add_nsw.ll
38
39diff --git a/lib/Transforms/Scalar/IndVarSimplify.cpp b/lib/Transforms/Scalar/IndVarSimplify.cpp
40index f9fc698a4a9..5e04dac8aa6 100644
41--- a/lib/Transforms/Scalar/IndVarSimplify.cpp
42+++ b/lib/Transforms/Scalar/IndVarSimplify.cpp
43@@ -2375,6 +2375,17 @@ static Value *genLoopLimit(PHINode *IndVar, BasicBlock *ExitingBB,
44 if (UsePostInc)
45 IVLimit = SE->getAddExpr(IVLimit, SE->getOne(IVLimit->getType()));
46
47+ // If computed limit is equal to old limit then do not use SCEV expander
48+ // because it can lost NUW/NSW flags and create extra instructions.
49+ BranchInst *BI = cast<BranchInst>(ExitingBB->getTerminator());
50+ if (ICmpInst *Cmp = dyn_cast<ICmpInst>(BI->getOperand(0))) {
51+ Value *Limit = Cmp->getOperand(0);
52+ if (!L->isLoopInvariant(Limit))
53+ Limit = Cmp->getOperand(1);
54+ if (SE->getSCEV(Limit) == IVLimit)
55+ return Limit;
56+ }
57+
58 // Expand the code for the iteration count.
59 assert(SE->isLoopInvariant(IVLimit, L) &&
60 "Computed iteration count is not loop invariant!");
61@@ -2383,7 +2394,6 @@ static Value *genLoopLimit(PHINode *IndVar, BasicBlock *ExitingBB,
62 // SCEV expression (IVInit) for a pointer type IV value (IndVar).
63 Type *LimitTy = ExitCount->getType()->isPointerTy() ?
64 IndVar->getType() : ExitCount->getType();
65- BranchInst *BI = cast<BranchInst>(ExitingBB->getTerminator());
66 return Rewriter.expandCodeFor(IVLimit, LimitTy, BI);
67 }
68 }
69diff --git a/test/Transforms/IndVarSimplify/add_nsw.ll b/test/Transforms/IndVarSimplify/add_nsw.ll
70new file mode 100644
71index 00000000000..abd1cbb6c51
72--- /dev/null
73+++ b/test/Transforms/IndVarSimplify/add_nsw.ll
74@@ -0,0 +1,23 @@
75+; RUN: opt -indvars -S %s | FileCheck %s
76+
77+target datalayout = "e-p:32:32-i64:64-n8:16:32"
78+
79+; CHECK: for.body.preheader:
80+; CHECK-NOT: add
81+; CHECK: for.body:
82+
83+define void @foo(i32 %a1, i32 %a2) {
84+entry:
85+ %maxval = add nuw nsw i32 %a1, %a2
86+ %cmp = icmp slt i32 %maxval, 1
87+ br i1 %cmp, label %for.end, label %for.body
88+
89+for.body: ; preds = %entry, %for.body
90+ %j.02 = phi i32 [ 0, %entry ], [ %add31, %for.body ]
91+ %add31 = add nuw nsw i32 %j.02, 1
92+ %cmp22 = icmp slt i32 %add31, %maxval
93+ br i1 %cmp22, label %for.body, label %for.end
94+
95+for.end: ; preds = %for.body
96+ ret void
97+}
98diff --git a/test/Transforms/IndVarSimplify/lftr-reuse.ll b/test/Transforms/IndVarSimplify/lftr-reuse.ll
99index 14ae9738696..509d662b767 100644
100--- a/test/Transforms/IndVarSimplify/lftr-reuse.ll
101+++ b/test/Transforms/IndVarSimplify/lftr-reuse.ll
102@@ -67,11 +67,9 @@ define void @expandOuterRecurrence(i32 %arg) nounwind {
103 ; CHECK-NEXT: [[CMP1:%.*]] = icmp slt i32 0, [[SUB1]]
104 ; CHECK-NEXT: br i1 [[CMP1]], label [[OUTER_PREHEADER:%.*]], label [[EXIT:%.*]]
105 ; CHECK: outer.preheader:
106-; CHECK-NEXT: [[TMP0:%.*]] = add i32 [[ARG]], -1
107 ; CHECK-NEXT: br label [[OUTER:%.*]]
108 ; CHECK: outer:
109-; CHECK-NEXT: [[INDVARS_IV:%.*]] = phi i32 [ [[TMP0]], [[OUTER_PREHEADER]] ], [ [[INDVARS_IV_NEXT:%.*]], [[OUTER_INC:%.*]] ]
110-; CHECK-NEXT: [[I:%.*]] = phi i32 [ [[I_INC:%.*]], [[OUTER_INC]] ], [ 0, [[OUTER_PREHEADER]] ]
111+; CHECK-NEXT: [[I:%.*]] = phi i32 [ [[I_INC:%.*]], [[OUTER_INC:%.*]] ], [ 0, [[OUTER_PREHEADER]] ]
112 ; CHECK-NEXT: [[SUB2:%.*]] = sub nsw i32 [[ARG]], [[I]]
113 ; CHECK-NEXT: [[SUB3:%.*]] = sub nsw i32 [[SUB2]], 1
114 ; CHECK-NEXT: [[CMP2:%.*]] = icmp slt i32 0, [[SUB3]]
115@@ -81,14 +79,13 @@ define void @expandOuterRecurrence(i32 %arg) nounwind {
116 ; CHECK: inner:
117 ; CHECK-NEXT: [[J:%.*]] = phi i32 [ 0, [[INNER_PH]] ], [ [[J_INC:%.*]], [[INNER]] ]
118 ; CHECK-NEXT: [[J_INC]] = add nuw nsw i32 [[J]], 1
119-; CHECK-NEXT: [[EXITCOND:%.*]] = icmp ne i32 [[J_INC]], [[INDVARS_IV]]
120+; CHECK-NEXT: [[EXITCOND:%.*]] = icmp ne i32 [[J_INC]], [[SUB3]]
121 ; CHECK-NEXT: br i1 [[EXITCOND]], label [[INNER]], label [[OUTER_INC_LOOPEXIT:%.*]]
122 ; CHECK: outer.inc.loopexit:
123 ; CHECK-NEXT: br label [[OUTER_INC]]
124 ; CHECK: outer.inc:
125 ; CHECK-NEXT: [[I_INC]] = add nuw nsw i32 [[I]], 1
126-; CHECK-NEXT: [[INDVARS_IV_NEXT]] = add i32 [[INDVARS_IV]], -1
127-; CHECK-NEXT: [[EXITCOND1:%.*]] = icmp ne i32 [[I_INC]], [[TMP0]]
128+; CHECK-NEXT: [[EXITCOND1:%.*]] = icmp ne i32 [[I_INC]], [[SUB1]]
129 ; CHECK-NEXT: br i1 [[EXITCOND1]], label [[OUTER]], label [[EXIT_LOOPEXIT:%.*]]
130 ; CHECK: exit.loopexit:
131 ; CHECK-NEXT: br label [[EXIT]]
132diff --git a/test/Transforms/IndVarSimplify/udiv.ll b/test/Transforms/IndVarSimplify/udiv.ll
133index b3f2c2a6a66..3530343ef4a 100644
134--- a/test/Transforms/IndVarSimplify/udiv.ll
135+++ b/test/Transforms/IndVarSimplify/udiv.ll
136@@ -133,6 +133,7 @@ declare i32 @printf(i8* nocapture, ...) nounwind
137 ; CHECK-LABEL: @foo(
138 ; CHECK: for.body.preheader:
139 ; CHECK-NOT: udiv
140+; CHECK: for.body:
141
142 define void @foo(double* %p, i64 %n) nounwind {
143 entry:
144--
1452.18.0
146
diff --git a/dynamic-layers/clang-layer/recipes-devtools/clang/files/fix-shared-libs.patch b/dynamic-layers/clang-layer/recipes-devtools/clang/files/fix-shared-libs.patch
deleted file mode 100644
index d69d2a97..00000000
--- a/dynamic-layers/clang-layer/recipes-devtools/clang/files/fix-shared-libs.patch
+++ /dev/null
@@ -1,30 +0,0 @@
1From a6d4ccf082858e63e139ca06c02a071c343d2657 Mon Sep 17 00:00:00 2001
2From: Andrea Bocci <andrea.bocci@cern.ch>
3Date: Sun, 15 Mar 2020 17:35:44 +0100
4Subject: [PATCH] Fix building in-tree with cmake -DLLVM_LINK_LLVM_DYLIB=ON
5
6Building in-tree with LLVM 11.0 master with the LLVM_LINK_LLVM_DYLIB
7cmake flag fails to link with the LLVMSPIRVLib library.
8
9Add an explicit dependency to force the correct build order and linking.
10
11Signed-off-by: Andrea Bocci <andrea.bocci@cern.ch>
12Upstream-Status: Backport
13Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
14---
15 tools/llvm-spirv/CMakeLists.txt | 2 +-
16 1 file changed, 1 insertion(+), 1 deletion(-)
17
18diff --git a/tools/llvm-spirv/CMakeLists.txt b/tools/llvm-spirv/CMakeLists.txt
19index 9aa96d9c..501c0daf 100644
20--- a/tools/llvm-spirv/CMakeLists.txt
21+++ b/tools/llvm-spirv/CMakeLists.txt
22@@ -14,7 +14,7 @@ add_llvm_tool(llvm-spirv
23 NO_INSTALL_RPATH
24 )
25
26-if (LLVM_SPIRV_BUILD_EXTERNAL)
27+if (LLVM_SPIRV_BUILD_EXTERNAL OR LLVM_LINK_LLVM_DYLIB)
28 target_link_libraries(llvm-spirv PRIVATE LLVMSPIRVLib)
29 endif()
30
diff --git a/dynamic-layers/clang-layer/recipes-devtools/clang/files/llvm10-skip-building-tests.patch b/dynamic-layers/clang-layer/recipes-devtools/clang/files/llvm10-skip-building-tests.patch
deleted file mode 100644
index 8e58ec25..00000000
--- a/dynamic-layers/clang-layer/recipes-devtools/clang/files/llvm10-skip-building-tests.patch
+++ /dev/null
@@ -1,51 +0,0 @@
1From 455ce9c25df5313f4a6649cc27075bdfbe25af18 Mon Sep 17 00:00:00 2001
2From: Naveen Saini <naveen.kumar.saini@intel.com>
3Date: Wed, 21 Aug 2019 14:35:31 +0800
4Subject: [PATCH] llvm-spirv: skip building tests
5
6Some of these need clang to be built and since we're building this in-tree,
7that leads to problems when compiling libcxx, compiler-rt which aren't built
8in-tree.
9
10Instead of using SPIRV_SKIP_CLANG_BUILD to skip clang build and adding this to
11all components, disable the building of tests altogether.
12
13Upstream-Status: Inappropriate
14
15Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
16Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
17---
18 CMakeLists.txt | 10 ----------
19 1 file changed, 10 deletions(-)
20
21diff --git a/CMakeLists.txt b/CMakeLists.txt
22index b718c00..9805140 100644
23--- a/CMakeLists.txt
24+++ b/CMakeLists.txt
25@@ -24,13 +24,6 @@ if(LLVM_SPIRV_BUILD_EXTERNAL)
26 set(CMAKE_CXX_STANDARD 14)
27 set(CMAKE_CXX_STANDARD_REQUIRED ON)
28
29- if(LLVM_SPIRV_INCLUDE_TESTS)
30- set(LLVM_TEST_COMPONENTS
31- llvm-as
32- llvm-dis
33- )
34- endif(LLVM_SPIRV_INCLUDE_TESTS)
35-
36 find_package(LLVM 10.0.0 REQUIRED
37 COMPONENTS
38 Analysis
39@@ -61,9 +54,6 @@ set(LLVM_SPIRV_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/include)
40
41 add_subdirectory(lib/SPIRV)
42 add_subdirectory(tools/llvm-spirv)
43-if(LLVM_SPIRV_INCLUDE_TESTS)
44- add_subdirectory(test)
45-endif(LLVM_SPIRV_INCLUDE_TESTS)
46
47 install(
48 FILES
49--
502.7.4
51
diff --git a/dynamic-layers/clang-layer/recipes-devtools/clang/llvm-project-source.bbappend b/dynamic-layers/clang-layer/recipes-devtools/clang/llvm-project-source.bbappend
deleted file mode 100644
index 4c05b659..00000000
--- a/dynamic-layers/clang-layer/recipes-devtools/clang/llvm-project-source.bbappend
+++ /dev/null
@@ -1,11 +0,0 @@
1FILESEXTRAPATHS_prepend_intel-x86-common := "${THISDIR}/files:"
2
3SRC_URI_append_intel-x86-common = " \
4 git://github.com/KhronosGroup/SPIRV-LLVM-Translator.git;protocol=https;branch=llvm_release_100;destsuffix=git/llvm/projects/llvm-spirv;name=spirv \
5 file://llvm10-skip-building-tests.patch;patchdir=llvm/projects/llvm-spirv \
6 file://fix-shared-libs.patch;patchdir=llvm/projects/llvm-spirv \
7 file://BasicBlockUtils-Add-metadata-fixing-in-SplitBlockPre.patch;patchdir=llvm \
8 file://IndVarSimplify-Do-not-use-SCEV-expander-for-IVCount-.patch;patchdir=llvm \
9 "
10
11SRCREV_spirv = "4d43f68a30a510b4e7607351caab3df8e7426a6b"
diff --git a/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/0002-Build-not-able-to-locate-cpp_generation_tool.patch b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/0002-Build-not-able-to-locate-cpp_generation_tool.patch
new file mode 100644
index 00000000..45288ce1
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/0002-Build-not-able-to-locate-cpp_generation_tool.patch
@@ -0,0 +1,41 @@
1From 8c330d0cb5167612296801f0202b0de35e9ca88d Mon Sep 17 00:00:00 2001
2From: Dongwon Kim <dongwon.kim@intel.com>
3Date: Sat, 21 Aug 2021 16:09:39 -0700
4Subject: [PATCH 2/5] Build not able to locate cpp_generation_tool.
5
6Upstream-Status: Inappropriate [oe specific]
7
8Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
9Signed-off-by: Dongwon Kim <dongwon.kim@intel.com>
10---
11 shared/source/built_ins/kernels/CMakeLists.txt | 10 +++++-----
12 1 file changed, 5 insertions(+), 5 deletions(-)
13
14Index: git/shared/source/built_ins/kernels/CMakeLists.txt
15===================================================================
16--- git.orig/shared/source/built_ins/kernels/CMakeLists.txt
17+++ git/shared/source/built_ins/kernels/CMakeLists.txt
18@@ -122,9 +122,9 @@ function(compile_builtin core_type platf
19 endif()
20 add_custom_command(
21 OUTPUT ${OUTPUT_FILE_CPP}
22- COMMAND $<TARGET_FILE:cpp_generate_tool> --file ${BINARY_OUTPUT}.bin --output ${OUTPUT_FILE_CPP} --array ${mode}_${BASENAME} --device ${RELEASE_FILENAME}
23+ COMMAND cpp_generate_tool --file ${BINARY_OUTPUT}.bin --output ${OUTPUT_FILE_CPP} --array ${mode}_${BASENAME} --device ${RELEASE_FILENAME}
24 WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
25- DEPENDS ${OUTPUT_FILES_BINARIES} $<TARGET_FILE:cpp_generate_tool>
26+ DEPENDS ${OUTPUT_FILES_BINARIES} cpp_generate_tool
27 )
28 list(APPEND BUILTINS_COMMANDS "${OUTPUT_FILE_CPP}")
29 else()
30@@ -176,9 +176,9 @@ function(generate_cpp_spirv builtin)
31 endif()
32 add_custom_command(
33 OUTPUT ${OUTPUT_FILE_CPP}
34- COMMAND $<TARGET_FILE:cpp_generate_tool> --file ${GENERATED_SPV_INPUT} --output ${OUTPUT_FILE_CPP} --array ${BASENAME}
35+ COMMAND cpp_generate_tool --file ${GENERATED_SPV_INPUT} --output ${OUTPUT_FILE_CPP} --array ${BASENAME}
36 WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
37- DEPENDS ${GENERATED_SPV_INPUT} $<TARGET_FILE:cpp_generate_tool>
38+ DEPENDS ${GENERATED_SPV_INPUT} cpp_generate_tool
39 )
40 set(OUTPUT_LIST_CPP_FILES ${OUTPUT_LIST_CPP_FILES} ${OUTPUT_FILE_CPP} PARENT_SCOPE)
41 else()
diff --git a/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/0003-external-ocloc.patch b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/0003-external-ocloc.patch
new file mode 100644
index 00000000..2001d839
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/0003-external-ocloc.patch
@@ -0,0 +1,38 @@
1From 0006db5f55a9f08bd3452558a53704cd3bbb790f Mon Sep 17 00:00:00 2001
2From: Dongwon Kim <dongwon.kim@intel.com>
3Date: Wed, 2 Mar 2022 15:52:45 -0800
4Subject: [PATCH 3/5] external ocloc
5
6Upstream-Status: Inappropriate
7
8Signed-off-by: Dongwon Kim <dongwon.kim@intel.com>
9---
10 cmake/ocloc_cmd_prefix.cmake | 14 ++++++++------
11 1 file changed, 8 insertions(+), 6 deletions(-)
12
13Index: git/cmake/ocloc_cmd_prefix.cmake
14===================================================================
15--- git.orig/cmake/ocloc_cmd_prefix.cmake
16+++ git/cmake/ocloc_cmd_prefix.cmake
17@@ -4,13 +4,15 @@
18 # SPDX-License-Identifier: MIT
19 #
20
21-if(WIN32)
22- set(ocloc_cmd_prefix ocloc)
23-else()
24- if(DEFINED NEO__IGC_LIBRARY_PATH)
25- set(ocloc_cmd_prefix ${CMAKE_COMMAND} -E env "LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${NEO__IGC_LIBRARY_PATH}:$<TARGET_FILE_DIR:ocloc_lib>" $<TARGET_FILE:ocloc>)
26+if(NOT DEFINED ocloc_cmd_prefix)
27+ if(WIN32)
28+ set(ocloc_cmd_prefix ocloc)
29 else()
30- set(ocloc_cmd_prefix ${CMAKE_COMMAND} -E env "LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$<TARGET_FILE_DIR:ocloc_lib>" $<TARGET_FILE:ocloc>)
31+ if(DEFINED NEO__IGC_LIBRARY_PATH)
32+ set(ocloc_cmd_prefix LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${NEO__IGC_LIBRARY_PATH}:$<TARGET_FILE_DIR:ocloc_lib> $<TARGET_FILE:ocloc>)
33+ else()
34+ set(ocloc_cmd_prefix LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$<TARGET_FILE_DIR:ocloc_lib> $<TARGET_FILE:ocloc>)
35+ endif()
36 endif()
37 endif()
38
diff --git a/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/allow-to-find-cpp-generation-tool.patch b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/allow-to-find-cpp-generation-tool.patch
deleted file mode 100644
index eae129c7..00000000
--- a/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/allow-to-find-cpp-generation-tool.patch
+++ /dev/null
@@ -1,32 +0,0 @@
1From d6c5bf050f3d50ca02866ec90e474ef540df2ffa Mon Sep 17 00:00:00 2001
2From: Naveen Saini <naveen.kumar.saini@intel.com>
3Date: Wed, 27 May 2020 11:12:09 +0000
4Subject: [PATCH] intel-compute-runtime: allow to find cpp_generation_tool
5
6Build not able to locate cpp_generation_tool.
7
8Upstream-Status: Inappropriate [oe specific]
9Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
10---
11 shared/source/built_ins/kernels/CMakeLists.txt | 4 ++--
12 1 file changed, 2 insertions(+), 2 deletions(-)
13
14diff --git a/shared/source/built_ins/kernels/CMakeLists.txt b/shared/source/built_ins/kernels/CMakeLists.txt
15index 308a6cb3b..9f34359c3 100644
16--- a/shared/source/built_ins/kernels/CMakeLists.txt
17+++ b/shared/source/built_ins/kernels/CMakeLists.txt
18@@ -84,9 +84,9 @@ function(compile_builtin gen_type platform_type builtin bits builtin_options)
19 )
20 add_custom_command(
21 OUTPUT ${OUTPUT_FILE_CPP}
22- COMMAND $<TARGET_FILE:cpp_generate_tool> --file ${OUTPUTPATH_BASE}.gen --output ${OUTPUT_FILE_CPP} --array ${BASENAME} --platform ${family_name_with_type}
23+ COMMAND cpp_generate_tool --file ${OUTPUTPATH_BASE}.gen --output ${OUTPUT_FILE_CPP} --array ${BASENAME} --platform ${family_name_with_type}
24 WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
25- DEPENDS ${OUTPUTPATH_BASE}.gen $<TARGET_FILE:cpp_generate_tool>
26+ DEPENDS ${OUTPUTPATH_BASE}.gen cpp_generate_tool
27 )
28 endfunction()
29
30--
312.24.1
32
diff --git a/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime_20.33.17675.bb b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime_20.33.17675.bb
deleted file mode 100644
index 19d52926..00000000
--- a/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime_20.33.17675.bb
+++ /dev/null
@@ -1,56 +0,0 @@
1SUMMARY = "The Intel(R) Graphics Compute Runtime for OpenCL(TM)"
2DESCRIPTION = "The Intel(R) Graphics Compute Runtime for OpenCL(TM) \
3is an open source project to converge Intel's development efforts \
4on OpenCL(TM) compute stacks supporting the GEN graphics hardware \
5architecture."
6
7LICENSE = "MIT"
8LIC_FILES_CHKSUM = "file://LICENSE;md5=ae27f47fd6755510247c19e547e4c804 \
9 file://third_party/opencl_headers/LICENSE;md5=dcefc90f4c3c689ec0c2489064e7273b"
10
11SRC_URI = "git://github.com/intel/compute-runtime.git;protocol=https \
12 "
13SRC_URI_append_class-target = " file://allow-to-find-cpp-generation-tool.patch"
14
15SRCREV = "cc3186c413cc680e9fab628ac425311fe758eb57"
16
17S = "${WORKDIR}/git"
18
19DEPENDS += " intel-graphics-compiler gmmlib clang"
20DEPENDS_append_class-target = " intel-compute-runtime-native"
21
22RDEPENDS_${PN} += " intel-graphics-compiler gmmlib"
23
24inherit cmake pkgconfig
25
26COMPATIBLE_HOST = '(x86_64).*-linux'
27COMPATIBLE_HOST_libc-musl = "null"
28
29EXTRA_OECMAKE = " \
30 -DIGC_DIR=${STAGING_INCDIR}/igc \
31 -DBUILD_TYPE=Release \
32 -DSKIP_UNIT_TESTS=1 \
33 -DCCACHE_ALLOWED=FALSE \
34 "
35EXTRA_OECMAKE_append_class-target = " \
36 -Dcloc_cmd_prefix=ocloc \
37 "
38
39PACKAGECONFIG ??= ""
40PACKAGECONFIG[levelzero] = "-DBUILD_WITH_L0=ON, -DBUILD_WITH_L0=OFF, level-zero"
41
42do_install_append_class-native() {
43 install -d ${D}${bindir}
44 install ${B}/bin/cpp_generate_tool ${D}${bindir}/
45}
46
47FILES_${PN} += " \
48 ${libdir}/intel-opencl/libigdrcl.so \
49 ${libdir}/libocloc.so \
50 "
51
52FILES_${PN}-dev = "${includedir}"
53
54BBCLASSEXTEND = "native nativesdk"
55
56UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)"
diff --git a/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime_25.13.33276.16.bb b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime_25.13.33276.16.bb
new file mode 100644
index 00000000..b13daaa8
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime_25.13.33276.16.bb
@@ -0,0 +1,61 @@
1SUMMARY = "The Intel(R) Graphics Compute Runtime for OpenCL(TM)"
2DESCRIPTION = "The Intel(R) Graphics Compute Runtime for OpenCL(TM) \
3is an open source project to converge Intel's development efforts \
4on OpenCL(TM) compute stacks supporting the GEN graphics hardware \
5architecture."
6
7LICENSE = "MIT & Apache-2.0"
8LIC_FILES_CHKSUM = "file://LICENSE.md;md5=eca6ec6997e18db166db7109cdbe611c \
9 file://third_party/opencl_headers/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
10
11SRC_URI = "git://github.com/intel/compute-runtime.git;protocol=https;branch=releases/25.13 \
12 file://0002-Build-not-able-to-locate-cpp_generation_tool.patch \
13 file://0003-external-ocloc.patch \
14 "
15
16SRCREV = "a9961bdfaa07250fd52ff930bf8f31fb4e3b7799"
17
18DEPENDS += " intel-graphics-compiler gmmlib libva qemu-native"
19
20RDEPENDS:${PN} += " intel-graphics-compiler gmmlib"
21
22inherit cmake pkgconfig qemu
23
24COMPATIBLE_HOST = '(x86_64).*-linux'
25COMPATIBLE_HOST:libc-musl = "null"
26
27EXTRA_OECMAKE = " \
28 -DIGC_DIR=${STAGING_INCDIR}/igc \
29 -DBUILD_TYPE=Release \
30 -DSKIP_UNIT_TESTS=1 \
31 -DCCACHE_ALLOWED=FALSE \
32 -DNEO_DISABLE_LD_LLD=ON \
33 -DNEO_DISABLE_LD_GOLD=ON \
34 "
35
36EXTRA_OECMAKE:append:class-target = " \
37 -Docloc_cmd_prefix=ocloc \
38 -DCMAKE_CROSSCOMPILING_EMULATOR=${WORKDIR}/qemuwrapper \
39 "
40
41PACKAGECONFIG ??= ""
42PACKAGECONFIG[levelzero] = "-DBUILD_WITH_L0=ON, -DBUILD_WITH_L0=OFF, level-zero"
43
44do_configure:prepend:class-target () {
45 # Write out a qemu wrapper that will be used by cmake.
46 qemu_binary="${@qemu_wrapper_cmdline(d, d.getVar('STAGING_DIR_HOST'), [d.expand('${B}/bin'),d.expand('${STAGING_DIR_HOST}${libdir}'),d.expand('${STAGING_DIR_HOST}${base_libdir}')])}"
47 cat > ${WORKDIR}/qemuwrapper << EOF
48#!/bin/sh
49$qemu_binary "\$@"
50EOF
51 chmod +x ${WORKDIR}/qemuwrapper
52}
53
54FILES:${PN} += " \
55 ${libdir}/intel-opencl/libigdrcl.so \
56 ${libdir}/libocloc.so \
57 "
58
59FILES:${PN}-dev = "${includedir}"
60
61UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)"
diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch
new file mode 100644
index 00000000..456a8c65
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch
@@ -0,0 +1,32 @@
1From 1b98a931c3bf8daccc48cd618335ff35e3d382da Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Tue, 12 Oct 2021 23:46:42 +0800
4Subject: [PATCH] BiF/CMakeLists.txt: remove opt from DEPENDS
5
6Otherwise it starts failing with:
7
8| ninja: error: 'IGC/VectorCompiler/lib/BiF/opt', needed by 'IGC/VectorCompiler/lib/BiF/VCBiFPrintfOCL32.opt.bc', missing and no known rule to make it
9
10We don't need to explicitly make sure opt is built when
11using prebuilt binaries.
12
13Upstream-Status: Inappropriate
14
15Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
16---
17 IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake | 2 +-
18 1 file changed, 1 insertion(+), 1 deletion(-)
19
20Index: git/IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake
21===================================================================
22--- git.orig/IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake
23+++ git/IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake
24@@ -121,7 +121,7 @@ function(vc_build_bif RES_FILE CMCL_SRC_
25 COMMENT "vc_build_bif: Translating CMCL builtins: ${BIF_CLANG_BC_NAME_FINAL} -> ${BIF_OPT_BC_NAME}"
26 COMMAND CMCLTranslatorTool ${OPT_OPAQUE_ARG} -o ${BIF_CMCL_BC_PATH} ${BIF_CLANG_BC_PATH_FINAL}
27 COMMAND ${LLVM_OPT_EXE} ${OPT_OPAQUE_ARG} --O2 -o ${BIF_OPT_BC_PATH} ${BIF_CMCL_BC_PATH}
28- DEPENDS CMCLTranslatorTool ${LLVM_OPT_EXE} ${OPT_BC_DEPENDS})
29+ DEPENDS CMCLTranslatorTool ${BIF_CLANG_BC_PATH_FINAL})
30
31 add_custom_target(${TARGET_NAME}
32 DEPENDS ${BIF_OPT_BC_PATH}
diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-Build-not-able-to-locate-BiFManager-bin.patch b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-Build-not-able-to-locate-BiFManager-bin.patch
new file mode 100644
index 00000000..87b094aa
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-Build-not-able-to-locate-BiFManager-bin.patch
@@ -0,0 +1,27 @@
1From 048512728eea53b3772a3f80ac9743bfc462487e Mon Sep 17 00:00:00 2001
2From: Yogesh Tyagi <yogesh.tyagi@intel.com>
3Date: Thu, 2 Jan 2025 15:59:27 +0530
4Subject: [PATCH] Build not able to locate BiFManager-bin
5
6Upstream-Status: Inappropriate [oe specific]
7
8Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
9---
10 IGC/BiFModule/CMakeLists.txt | 4 ++--
11 1 file changed, 2 insertions(+), 2 deletions(-)
12
13Index: git/IGC/BiFModule/CMakeLists.txt
14===================================================================
15--- git.orig/IGC/BiFModule/CMakeLists.txt
16+++ git/IGC/BiFModule/CMakeLists.txt
17@@ -655,8 +655,8 @@ set(IGC_BUILD__PROJ__BiFModuleCache_OCL
18
19 add_custom_command(
20 OUTPUT "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.h" "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bifbc"
21- COMMAND $<TARGET_FILE:BiFManager-bin> "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bc" "${IGC_BUILD__BIF_DIR}/IGCsize_t_32.bc" "${IGC_BUILD__BIF_DIR}/IGCsize_t_64.bc" "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bifbc" "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.h"
22- DEPENDS "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bc" "${IGC_BUILD__BIF_DIR}/IGCsize_t_32.bc" "${IGC_BUILD__BIF_DIR}/IGCsize_t_64.bc"$<TARGET_FILE:BiFManager-bin>
23+ COMMAND BiFManager-bin "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bc" "${IGC_BUILD__BIF_DIR}/IGCsize_t_32.bc" "${IGC_BUILD__BIF_DIR}/IGCsize_t_64.bc" "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bifbc" "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.h"
24+ DEPENDS "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bc" "${IGC_BUILD__BIF_DIR}/IGCsize_t_32.bc" "${IGC_BUILD__BIF_DIR}/IGCsize_t_64.bc" BiFManager-bin
25 COMMENT "BiF: ${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bc: Spliting output .bc."
26 COMMAND_EXPAND_LISTS
27 )
diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-external-SPIRV-Tools-change-path-to-tools-and-header.patch b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-external-SPIRV-Tools-change-path-to-tools-and-header.patch
new file mode 100644
index 00000000..fc66b71d
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-external-SPIRV-Tools-change-path-to-tools-and-header.patch
@@ -0,0 +1,30 @@
1From 251e2854dd206ebf66e5908d3277e4585fe2a63b Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Mon, 9 Jan 2023 11:43:05 +0800
4Subject: [PATCH] external/SPIRV-Tools: change path to tools and headers
5
6We clone the SPIRV headers and tools in a different directory to ensure
7file path substitutions take place.
8
9Upstream-Status: Inappropriate
10
11Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
12---
13 external/SPIRV-Tools/CMakeLists.txt | 4 ++--
14 1 file changed, 2 insertions(+), 2 deletions(-)
15
16Index: git/external/SPIRV-Tools/CMakeLists.txt
17===================================================================
18--- git.orig/external/SPIRV-Tools/CMakeLists.txt
19+++ git/external/SPIRV-Tools/CMakeLists.txt
20@@ -45,8 +45,8 @@ else() #By default use build from source
21 message(STATUS "[SPIRV-Tools] : Building from source")
22 message(STATUS "[SPIRV-Tools] : Current source dir: ${CMAKE_CURRENT_SOURCE_DIR}")
23
24- set(SPIRV-Headers_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../../SPIRV-Headers") # used in subdirectory
25- set(SPIRV-Tools_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../../SPIRV-Tools")
26+ set(SPIRV-Headers_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../SPIRV-Headers") # used in subdirectory
27+ set(SPIRV-Tools_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../SPIRV-Tools")
28
29 set(SPIRV-Tools_OUTPUT_DIR "${IGC_OPTION__OUTPUT_DIR}/external/SPIRV-Tools/build")
30 set(IGC_BUILD__SPIRV-Headers_DIR "${SPIRV-Headers_SOURCE_DIR}")
diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-fix-tblgen.patch b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-fix-tblgen.patch
new file mode 100644
index 00000000..3d9ae02f
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-fix-tblgen.patch
@@ -0,0 +1,23 @@
1From 1641dc87b2ed6b6b87b2cef824e4d66da65b0b30 Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Thu, 19 May 2022 22:50:09 +0800
4Subject: [PATCH] fix tblgen
5
6Upstream-Status: Inappropriate [OE specific]
7---
8 IGC/cmake/igc_llvm.cmake | 2 +-
9 1 file changed, 1 insertion(+), 1 deletion(-)
10
11diff --git a/IGC/cmake/igc_llvm.cmake b/IGC/cmake/igc_llvm.cmake
12index b708cc904..fe4668890 100644
13--- a/IGC/cmake/igc_llvm.cmake
14+++ b/IGC/cmake/igc_llvm.cmake
15@@ -53,7 +53,7 @@ else()
16 set(LLVM_OPT_EXE "opt" CACHE STRING "")
17
18 set(LLVM_TABLEGEN_EXE "llvm-tblgen")
19- if(CMAKE_CROSSCOMPILING)
20+ if(TRUE)
21 if(DEFINED LLVM_TABLEGEN)
22 set(LLVM_TABLEGEN_EXE ${LLVM_TABLEGEN})
23 else()
diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-skip-execution-of-ElfPackager.patch b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-skip-execution-of-ElfPackager.patch
deleted file mode 100644
index 65342d9c..00000000
--- a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-skip-execution-of-ElfPackager.patch
+++ /dev/null
@@ -1,43 +0,0 @@
1From 5501fab763aa2b11437fbdb19e07a11157a7d3e6 Mon Sep 17 00:00:00 2001
2From: Naveen Saini <naveen.kumar.saini@intel.com>
3Date: Thu, 6 Feb 2020 14:56:56 +0800
4Subject: [PATCH] skip execution of ElfPackager
5
6ElfPackager adds the ability to convert llvm bitcode into elf files for
7easier partitioning. Skip for now until we start building a native
8version for this.
9
10Upstream-Status: Inappropriate [configuration specific]
11
12Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
13Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
14---
15 IGC/ElfPackager/CMakeLists.txt | 12 ++++++------
16 1 file changed, 6 insertions(+), 6 deletions(-)
17
18diff --git a/IGC/ElfPackager/CMakeLists.txt b/IGC/ElfPackager/CMakeLists.txt
19index 563ac9d6..c6c74ce9 100644
20--- a/IGC/ElfPackager/CMakeLists.txt
21+++ b/IGC/ElfPackager/CMakeLists.txt
22@@ -71,12 +71,12 @@ include_directories (
23 ${IGC_SOURCE_DIR}/AdaptorOCL/CLElfLib/
24 )
25
26-if(NOT ANDROID)
27- add_custom_command(TARGET ${IGC_BUILD__PROJ__ElfPackager}
28- POST_BUILD
29- COMMAND $<TARGET_FILE:${IGC_BUILD__PROJ__ElfPackager}> -includeSizet -funcList ${CMAKE_CURRENT_SOURCE_DIR}/function_bin.txt ${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bc ${IGC_BUILD__BIF_DIR}/igdclbif.bin
30- )
31-endif()
32+#if(NOT ANDROID)
33+# add_custom_command(TARGET ${IGC_BUILD__PROJ__ElfPackager}
34+# POST_BUILD
35+# COMMAND $<TARGET_FILE:${IGC_BUILD__PROJ__ElfPackager}> -includeSizet -funcList ${CMAKE_CURRENT_SOURCE_DIR}/function_bin.txt ${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bc ${IGC_BUILD__BIF_DIR}/igdclbif.bin
36+# )
37+#endif()
38
39
40 add_dependencies("${IGC_BUILD__PROJ__ElfPackager}" "${IGC_BUILD__PROJ__BiFModule_OCL}")
41--
422.17.1
43
diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0003-Improve-Reproducibility-for-src-package.patch b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0003-Improve-Reproducibility-for-src-package.patch
new file mode 100644
index 00000000..4269fadf
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0003-Improve-Reproducibility-for-src-package.patch
@@ -0,0 +1,33 @@
1From ca136c04d4ac60e3febc8ea2b9c4d4736365a424 Mon Sep 17 00:00:00 2001
2From: Lee Chee Yang <chee.yang.lee@intel.com>
3Date: Wed, 2 Sep 2020 08:28:35 +0800
4Subject: [PATCH] Improve Reproducibility for src package
5
6Improve reproducibility for intel-graphics-compiler-src package.
7needs to pass build path as environment variable to the build.
8this only works on bison 3.7 onward, hence check for bison version
9before adding the flags.
10Upstream-Status: Inappropriate [applying --file-prefix-map in such way does not work for upstream]
11Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
12---
13 visa/CMakeLists.txt | 7 +++++--
14 1 file changed, 5 insertions(+), 2 deletions(-)
15
16Index: git/visa/CMakeLists.txt
17===================================================================
18--- git.orig/visa/CMakeLists.txt
19+++ git/visa/CMakeLists.txt
20@@ -135,8 +135,11 @@ endif()
21 set(bison_output_file ${CMAKE_CURRENT_BINARY_DIR}/CISA.tab.cpp)
22 set(flex_output_file ${CMAKE_CURRENT_BINARY_DIR}/lex.CISA.cpp)
23
24-BISON_TARGET(CISAParser CISA.y ${bison_output_file} COMPILE_FLAGS "-vt -p CISA")
25-FLEX_TARGET(CISAScanner CISA.l ${flex_output_file} COMPILE_FLAGS "-PCISA ${WIN_FLEX_FLAG}")
26+if(BISON_VERSION VERSION_GREATER_EQUAL "3.7.0")
27+ set(BISON_EXTRA_FLAGS " --file-prefix-map=$ENV{B}=/igc/ ")
28+endif()
29+BISON_TARGET(CISAParser CISA.y ${bison_output_file} COMPILE_FLAGS "-l -vt -p CISA ${BISON_EXTRA_FLAGS} ")
30+FLEX_TARGET(CISAScanner CISA.l ${flex_output_file} COMPILE_FLAGS "-PCISA -L ${WIN_FLEX_FLAG} ")
31 ADD_FLEX_BISON_DEPENDENCY(CISAScanner CISAParser)
32 set(CISAScanner_dependencies)
33
diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/files/link-to-LLVMGenXIntrinsics.patch b/dynamic-layers/clang-layer/recipes-opencl/igc/files/link-to-LLVMGenXIntrinsics.patch
deleted file mode 100644
index 89a28097..00000000
--- a/dynamic-layers/clang-layer/recipes-opencl/igc/files/link-to-LLVMGenXIntrinsics.patch
+++ /dev/null
@@ -1,62 +0,0 @@
1From 483154871f72590b81c036b000be09627376b5a9 Mon Sep 17 00:00:00 2001
2From: Naveen Saini <naveen.kumar.saini@intel.com>
3Date: Thu, 27 Aug 2020 12:17:12 +0800
4Subject: [PATCH] IGC/VectorCompiler/CMakeLists.txt: link to external
5 LLVMGenXIntrinsics
6
7By default LLVMGenXIntrinsics is to be build In-tree, but we want to
8link externally.
9
10Fix llvm-tblgen path.
11
12Upstream-Status: Inappropriate [configuration specific]
13
14Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
15---
16 IGC/VectorCompiler/CMakeLists.txt | 23 ++---------------------
17 1 file changed, 2 insertions(+), 21 deletions(-)
18
19diff --git a/IGC/VectorCompiler/CMakeLists.txt b/IGC/VectorCompiler/CMakeLists.txt
20index 3592e0b4..ae754b8b 100644
21--- a/IGC/VectorCompiler/CMakeLists.txt
22+++ b/IGC/VectorCompiler/CMakeLists.txt
23@@ -50,10 +50,7 @@ if(IGC_BUILD__USING_SYSTEM_LLVM OR (WIN32 AND LLVM_USE_PREBUILT))
24 message(STATUS "[VC] Using system llvm")
25
26 # Need to search for llvm-tblgen
27- find_program(LLVM_TABLEGEN_EXE "llvm-tblgen"
28- ${LLVM_TOOLS_BINARY_DIR}
29- NO_DEFAULT_PATH
30- )
31+ find_program(LLVM_TABLEGEN_EXE "llvm-tblgen")
32 if(LLVM_TABLEGEN_EXE-NOTFOUND)
33 message(FATAL_ERROR "[VC] llvm-tblgen is not found")
34 endif()
35@@ -131,23 +128,7 @@ if(LLVM_ON_WIN32)
36 add_compile_options(/wd4624)
37 endif()
38
39-if(DEFINED VC_INTRINSICS_SRC)
40- set(INTRSRC "${VC_INTRINSICS_SRC}/GenXIntrinsics")
41-endif()
42-
43-if(NOT DEFINED INTRSRC)
44- set(INTRSRC "${CMAKE_CURRENT_SOURCE_DIR}/../../../vc-intrinsics/GenXIntrinsics")
45-endif()
46-
47-message(STATUS "[VC] Using vc-intrinsics source from: ${INTRSRC}")
48-
49-# We are using prebuilt SPIRV and building intrinsics.
50-set(INTRBUILD "${CMAKE_CURRENT_BINARY_DIR}/intrbuild")
51-
52-
53-# Do not copy anything from prebuilts. libSPIRVDLL.so will be dynamically loaded at runtime.
54-add_subdirectory(${INTRSRC} ${INTRBUILD})
55-include_directories(${INTRSRC}/include ${INTRBUILD}/include)
56+find_package(LLVMGenXIntrinsics REQUIRED)
57
58 include(cmake/spirv.cmake)
59 include(${IGC_SOURCE_DIR}/cmake/utils.cmake)
60--
612.17.1
62
diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_1.0.4756.bb b/dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_1.0.4756.bb
deleted file mode 100644
index 406f9f18..00000000
--- a/dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_1.0.4756.bb
+++ /dev/null
@@ -1,38 +0,0 @@
1SUMMARY = "The Intel(R) Graphics Compiler for OpenCL(TM)"
2DESCRIPTION = "The Intel(R) Graphics Compiler for OpenCL(TM) is an \
3llvm based compiler for OpenCL(TM) targeting Intel Gen graphics \
4hardware architecture."
5
6LICENSE = "MIT & BSD-3-Clause"
7LIC_FILES_CHKSUM = "file://IGC/BiFModule/Implementation/ExternalLibraries/libclc/LICENSE.TXT;md5=311cfc1a5b54bab8ed34a0b5fba4373e \
8 file://IGC/Compiler/LegalizationPass.cpp;beginline=1;endline=25;md5=4abf1738ff96b18e34186eb763e28eeb \
9 file://NOTICES.txt;md5=b12e73994de4fbe0f688cf0bc91512a0"
10
11SRC_URI = "git://github.com/intel/intel-graphics-compiler.git;protocol=https; \
12 file://0001-skip-execution-of-ElfPackager.patch \
13 file://link-to-LLVMGenXIntrinsics.patch \
14 "
15
16SRCREV = "3623209b10b357ddb3a3d6eac3551c53ebc897f7"
17
18S = "${WORKDIR}/git"
19
20inherit cmake
21
22COMPATIBLE_HOST = '(x86_64).*-linux'
23COMPATIBLE_HOST_libc-musl = "null"
24
25DEPENDS += " flex-native bison-native clang opencl-clang vc-intrinsics"
26DEPENDS_append_class-target = " clang-cross-x86_64"
27
28RDEPENDS_${PN} += "opencl-clang"
29
30EXTRA_OECMAKE = "-DIGC_PREFERRED_LLVM_VERSION=10.0.0 -DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 -DINSTALL_SPIRVDLL=0"
31
32BBCLASSEXTEND = "native nativesdk"
33
34UPSTREAM_CHECK_GITTAGREGEX = "^igc-(?P<pver>(?!19\..*)\d+(\.\d+)+)$"
35
36FILES_${PN} += " \
37 ${libdir}/igc/NOTICES.txt \
38 "
diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_2.10.10.bb b/dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_2.10.10.bb
new file mode 100644
index 00000000..05611cbf
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_2.10.10.bb
@@ -0,0 +1,77 @@
1SUMMARY = "The Intel(R) Graphics Compiler for OpenCL(TM)"
2DESCRIPTION = "The Intel(R) Graphics Compiler for OpenCL(TM) is an \
3llvm based compiler for OpenCL(TM) targeting Intel Gen graphics \
4hardware architecture."
5
6LICENSE = "MIT & Apache-2.0"
7LIC_FILES_CHKSUM = "file://IGC/BiFModule/Implementation/ExternalLibraries/libclc/LICENSE.TXT;md5=311cfc1a5b54bab8ed34a0b5fba4373e \
8 file://LICENSE.md;md5=488d74376edf2765f6e78d271543dde3 \
9 file://NOTICES.txt;md5=b81a52411c84df3419f20bad4d755880"
10
11SRC_URI = "git://github.com/intel/intel-graphics-compiler.git;protocol=https;name=igc;branch=releases/2.10.x \
12 git://github.com/intel/vc-intrinsics.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/vc-intrinsics;name=vc;nobranch=1 \
13 git://github.com/KhronosGroup/SPIRV-Tools.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/SPIRV-Tools;name=spirv-tools;branch=main \
14 git://github.com/KhronosGroup/SPIRV-Headers.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/SPIRV-Headers;name=spirv-headers;branch=main \
15 file://0003-Improve-Reproducibility-for-src-package.patch \
16 file://0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch \
17 file://0001-external-SPIRV-Tools-change-path-to-tools-and-header.patch \
18 file://0001-Build-not-able-to-locate-BiFManager-bin.patch \
19 "
20
21SRC_URI:append:class-native = " file://0001-fix-tblgen.patch"
22
23SRCREV_igc = "83925314d4fc32b017fcbfcd73e0667ba833fb8f"
24SRCREV_vc = "9d255266e1df8f1dc5d11e1fbb03213acfaa4fc7"
25SRCREV_spirv-tools = "f289d047f49fb60488301ec62bafab85573668cc"
26SRCREV_spirv-headers = "0e710677989b4326ac974fd80c5308191ed80965"
27
28SRCREV_FORMAT = "igc_vc_spirv-tools_spirv-headers"
29
30# Used to replace with relative path in reproducibility patch
31export B
32
33inherit cmake pkgconfig qemu python3native
34
35CXXFLAGS:append = " -Wno-error=nonnull"
36
37COMPATIBLE_HOST = '(x86_64).*-linux'
38COMPATIBLE_HOST:libc-musl = "null"
39
40DEPENDS += " flex-native bison-native clang clang-cross-x86_64 opencl-clang qemu-native python3-mako-native \
41 python3-pyyaml-native \
42 "
43
44RDEPENDS:${PN} += "opencl-clang"
45
46PACKAGECONFIG ??= "vc"
47PACKAGECONFIG[vc] = "-DIGC_BUILD__VC_ENABLED=ON -DIGC_OPTION__LINK_KHRONOS_SPIRV_TRANSLATOR=ON -DIGC_OPTION__SPIRV_TRANSLATOR_MODE=Prebuilds,-DIGC_BUILD__VC_ENABLED=OFF,"
48
49EXTRA_OECMAKE = " \
50 -DIGC_OPTION__LLVM_PREFERRED_VERSION=${LLVMVERSION} \
51 -DVC_INTRINSICS_SRC="${S}/vc-intrinsics" \
52 -DIGC_OPTION__LLVM_MODE=Prebuilds \
53 -DLLVM_TABLEGEN=${STAGING_BINDIR_NATIVE}/llvm-tblgen \
54 -DLLVM_LINK_EXE=${STAGING_BINDIR_NATIVE}/llvm-link \
55 -DCLANG_EXE=${STAGING_BINDIR_NATIVE}/clang \
56 -DCMAKE_CROSSCOMPILING_EMULATOR=${WORKDIR}/qemuwrapper \
57 "
58
59do_configure:prepend:class-target () {
60 # Write out a qemu wrapper that will be used by cmake.
61 qemu_binary="${@qemu_wrapper_cmdline(d, d.getVar('STAGING_DIR_HOST'), [d.expand('${STAGING_DIR_HOST}${libdir}'),d.expand('${STAGING_DIR_HOST}${base_libdir}')])}"
62 cat > ${WORKDIR}/qemuwrapper << EOF
63#!/bin/sh
64$qemu_binary "\$@"
65EOF
66 chmod +x ${WORKDIR}/qemuwrapper
67}
68
69
70UPSTREAM_CHECK_GITTAGREGEX = "^v(?P<pver>\d+(\.\d+)+)$"
71
72FILES:${PN} += " \
73 ${libdir}/igc2/NOTICES.txt \
74 "
75
76# libigc.so contains buildpaths
77INSANE_SKIP:${PN} += "buildpaths"
diff --git a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0001-Building-in-tree-with-LLVM-10.0-with-the-LLVM_LINK_L.patch b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0001-Building-in-tree-with-LLVM-10.0-with-the-LLVM_LINK_L.patch
deleted file mode 100644
index 8ffa853b..00000000
--- a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0001-Building-in-tree-with-LLVM-10.0-with-the-LLVM_LINK_L.patch
+++ /dev/null
@@ -1,35 +0,0 @@
1From 7fc05c52dd91902fa324a7aac9b90715cfca4717 Mon Sep 17 00:00:00 2001
2From: Naveen Saini <naveen.kumar.saini@intel.com>
3Date: Wed, 15 Apr 2020 17:55:32 +0800
4Subject: [PATCH] Building in-tree with LLVM 10.0 with the LLVM_LINK_LLVM_DYLIB
5
6Failed to link with the LLVMSPIRVLib library.
7
8Add an explicit dependency to force the correct build order and linking.
9
10Reference:
11https://github.com/KhronosGroup/SPIRV-LLVM-Translator/commit/a6d4ccf082858e63e139ca06c02a071c343d2657
12
13Upstream-Status: Submitted [https://github.com/intel/opencl-clang/pull/118]
14
15Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
16---
17 CMakeLists.txt | 2 +-
18 1 file changed, 1 insertion(+), 1 deletion(-)
19
20diff --git a/CMakeLists.txt b/CMakeLists.txt
21index 51c140d..b8b514e 100644
22--- a/CMakeLists.txt
23+++ b/CMakeLists.txt
24@@ -208,7 +208,7 @@ link_directories(
25
26 set(OPENCL_CLANG_LINK_LIBS ${CMAKE_DL_LIBS})
27
28-if(NOT LLVMSPIRVLib IN_LIST LLVM_AVAILABLE_LIBS)
29+if(NOT LLVMSPIRVLib IN_LIST LLVM_AVAILABLE_LIBS OR (USE_PREBUILT_LLVM AND LLVM_LINK_LLVM_DYLIB))
30 # SPIRV-LLVM-Translator is not included into LLVM as a component.
31 # So, we need to list it here explicitly as an external library
32 list(APPEND OPENCL_CLANG_LINK_LIBS LLVMSPIRVLib)
33--
342.17.1
35
diff --git a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0001-cl_headers-CMakeLists.txt-use-clang-from-native-sysr.patch b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0001-cl_headers-CMakeLists.txt-use-clang-from-native-sysr.patch
new file mode 100644
index 00000000..031a77c7
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0001-cl_headers-CMakeLists.txt-use-clang-from-native-sysr.patch
@@ -0,0 +1,49 @@
1From 5aea653e611b59c70e529a1bd71885a509831557 Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Tue, 1 Aug 2023 11:15:31 +0800
4Subject: [PATCH] cl_headers/CMakeLists.txt: use clang from native sysroot
5
6Allow clang to be found in target sysroot for target builds and dont try
7to compile cross binaries, we do that ourselves.
8
9Upstream-Status: Inappropriate [oe-specific]
10Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
11---
12 CMakeLists.txt | 8 ++++----
13 cl_headers/CMakeLists.txt | 2 +-
14 2 files changed, 5 insertions(+), 5 deletions(-)
15
16diff --git a/CMakeLists.txt b/CMakeLists.txt
17index 5864009..60ba39e 100644
18--- a/CMakeLists.txt
19+++ b/CMakeLists.txt
20@@ -35,10 +35,10 @@ set(CMAKE_MODULE_PATH
21
22 include(CMakeFunctions)
23
24-if(CMAKE_CROSSCOMPILING AND OPENCL_CLANG_BUILD_EXTERNAL)
25- include(CrossCompile)
26- llvm_create_cross_target(${PROJECT_NAME} NATIVE "" Release)
27-endif()
28+#if(CMAKE_CROSSCOMPILING AND OPENCL_CLANG_BUILD_EXTERNAL)
29+# include(CrossCompile)
30+# llvm_create_cross_target(${PROJECT_NAME} NATIVE "" Release)
31+#endif()
32
33 if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
34 set(USE_PREBUILT_LLVM ON)
35diff --git a/cl_headers/CMakeLists.txt b/cl_headers/CMakeLists.txt
36index 16cabb7..4423536 100644
37--- a/cl_headers/CMakeLists.txt
38+++ b/cl_headers/CMakeLists.txt
39@@ -1,6 +1,6 @@
40 set(CL_HEADERS_LIB cl_headers)
41 if(USE_PREBUILT_LLVM)
42- find_program(CLANG_COMMAND clang PATHS ${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH)
43+ find_program(CLANG_COMMAND clang PATHS ${LLVM_TOOLS_BINARY_DIR})
44 else()
45 set(CLANG_COMMAND $<TARGET_FILE:clang>)
46 endif()
47--
482.37.3
49
diff --git a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0001-don-t-redefine-LLVM_TABLEGEN_EXE.patch b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0001-don-t-redefine-LLVM_TABLEGEN_EXE.patch
deleted file mode 100644
index 8df7e3ab..00000000
--- a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0001-don-t-redefine-LLVM_TABLEGEN_EXE.patch
+++ /dev/null
@@ -1,32 +0,0 @@
1From f3ef79a6301bab0b3a447f07ceb94c39a95009df Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Thu, 2 Apr 2020 08:59:20 +0800
4Subject: [PATCH] don't redefine LLVM_TABLEGEN_EXE
5
6Use the value that has been passed by the user.
7
8Upstream-Status: Submitted
9Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
10---
11 CMakeLists.txt | 5 ++++-
12 1 file changed, 4 insertions(+), 1 deletion(-)
13
14diff --git a/CMakeLists.txt b/CMakeLists.txt
15index 6893e97..941b0ae 100644
16--- a/CMakeLists.txt
17+++ b/CMakeLists.txt
18@@ -137,7 +137,10 @@ endif(NOT USE_PREBUILT_LLVM)
19 set (COMPILE_OPTIONS_TD opencl_clang_options.td)
20 set (COMPILE_OPTIONS_INC opencl_clang_options.inc)
21
22-set(LLVM_TABLEGEN_EXE "llvm-tblgen")
23+if(NOT DEFINED LLVM_TABLEGEN_EXE)
24+ set(LLVM_TABLEGEN_EXE "llvm-tblgen")
25+endif()
26+
27 set(LLVM_TARGET_DEFINITIONS ${COMPILE_OPTIONS_TD})
28 if(USE_PREBUILT_LLVM)
29 set(TABLEGEN_ADDITIONAL -I ${LLVM_INCLUDE_DIRS})
30--
312.25.1
32
diff --git a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0002-Request-native-clang-only-when-cross-compiling-464.patch b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0002-Request-native-clang-only-when-cross-compiling-464.patch
new file mode 100644
index 00000000..2f1814f8
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0002-Request-native-clang-only-when-cross-compiling-464.patch
@@ -0,0 +1,60 @@
1From 43c806ef321b1f677a49d28c89fb7ffecf539c2d Mon Sep 17 00:00:00 2001
2From: Tim Creech <timothy.m.creech@intel.com>
3Date: Wed, 28 Jun 2023 03:45:51 -0400
4Subject: [PATCH 2/2] Request native clang only when cross-compiling (#464)
5
6* Request native clang only when cross-compiling
7
8LLVM_USE_HOST_TOOLS may be set if LLVM is configured with
9LLVM_OPTIMIZED_TABLEGEN, which does not necessarily indicate
10cross-compilation or that clang will only execute on the target.
11
12By checking that CMAKE_CROSSCOMPILING is set, we ensure that we only
13build/use clang again if necessary for host execution.
14
15* fixup: CMAKE_CROSSCOMPILING implies LLVM_USE_HOST_TOOLS
16
17Co-authored-by: Wenju He <wenju.he@intel.com>
18
19* fixup: also use CMAKE_CROSSCOMPILING in top-level CMakeLists.txt
20
21---------
22
23Co-authored-by: Wenju He <wenju.he@intel.com>
24
25Upstream-Status: Backport [https://github.com/intel/opencl-clang/commit/53843eee13cfb2357919ee02714a43bef1af0f86]
26Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
27---
28 CMakeLists.txt | 2 +-
29 cl_headers/CMakeLists.txt | 2 +-
30 2 files changed, 2 insertions(+), 2 deletions(-)
31
32diff --git a/CMakeLists.txt b/CMakeLists.txt
33index e772de9..5864009 100644
34--- a/CMakeLists.txt
35+++ b/CMakeLists.txt
36@@ -35,7 +35,7 @@ set(CMAKE_MODULE_PATH
37
38 include(CMakeFunctions)
39
40-if(LLVM_USE_HOST_TOOLS AND OPENCL_CLANG_BUILD_EXTERNAL)
41+if(CMAKE_CROSSCOMPILING AND OPENCL_CLANG_BUILD_EXTERNAL)
42 include(CrossCompile)
43 llvm_create_cross_target(${PROJECT_NAME} NATIVE "" Release)
44 endif()
45diff --git a/cl_headers/CMakeLists.txt b/cl_headers/CMakeLists.txt
46index 18296c2..16cabb7 100644
47--- a/cl_headers/CMakeLists.txt
48+++ b/cl_headers/CMakeLists.txt
49@@ -4,7 +4,7 @@ if(USE_PREBUILT_LLVM)
50 else()
51 set(CLANG_COMMAND $<TARGET_FILE:clang>)
52 endif()
53-if(LLVM_USE_HOST_TOOLS AND NOT OPENCL_CLANG_BUILD_EXTERNAL)
54+if(CMAKE_CROSSCOMPILING AND NOT OPENCL_CLANG_BUILD_EXTERNAL)
55 build_native_tool(clang CLANG_COMMAND)
56 endif()
57
58--
592.37.3
60
diff --git a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0002-make-sure-only-static-libraries-linked-for-native-bu.patch b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0002-make-sure-only-static-libraries-linked-for-native-bu.patch
deleted file mode 100644
index 473f4d24..00000000
--- a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0002-make-sure-only-static-libraries-linked-for-native-bu.patch
+++ /dev/null
@@ -1,42 +0,0 @@
1From b29e00e6fe428a031cf577dfb703cf13eff837f6 Mon Sep 17 00:00:00 2001
2From: Naveen Saini <naveen.kumar.saini@intel.com>
3Date: Wed, 15 Apr 2020 18:05:14 +0800
4Subject: [PATCH 2/2] make sure only static libraries linked for native build
5
6LINK_COMPONENTS=all isn't working for static libs for out of tree builds. Use
7LLVM_AVAILABLE_LIBS instead. Reported:
8
9https://github.com/intel/opencl-clang/issues/114
10
11Upstream-Status: Pending
12
13Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
14Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
15---
16 CMakeLists.txt | 3 ++-
17 1 file changed, 2 insertions(+), 1 deletion(-)
18
19diff --git a/CMakeLists.txt b/CMakeLists.txt
20index 8707487..ad2dbda 100644
21--- a/CMakeLists.txt
22+++ b/CMakeLists.txt
23@@ -218,7 +218,7 @@ add_subdirectory(cl_headers)
24
25 set(LLVM_REQUIRES_EH ON)
26
27-if(USE_PREBUILT_LLVM OR CLANG_LINK_CLANG_DYLIB)
28+if(false)
29 list(APPEND OPENCL_CLANG_LINK_LIBS clang-cpp)
30 else()
31 list(APPEND OPENCL_CLANG_LINK_LIBS
32@@ -266,6 +266,7 @@ add_llvm_library(${TARGET_NAME} SHARED
33 all
34 LINK_LIBS
35 ${OPENCL_CLANG_LINK_LIBS}
36+ ${LLVM_AVAILABLE_LIBS}
37 )
38
39 # Configure resource file on Windows
40--
412.17.1
42
diff --git a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang.inc b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang.inc
new file mode 100644
index 00000000..726b035d
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang.inc
@@ -0,0 +1,33 @@
1SUMMARY = "Common clang is a thin wrapper library around clang"
2DESCRIPTION = "Common clang has OpenCL-oriented API and is capable \
3 to compile OpenCL C kernels to SPIR-V modules."
4
5LICENSE = "NCSA"
6LIC_FILES_CHKSUM = "file://LICENSE;md5=e8a15bf1416762a09ece07e44c79118c"
7
8SRC_URI = "git://github.com/intel/opencl-clang.git;branch=${BRANCH};protocol=https \
9 file://0002-Request-native-clang-only-when-cross-compiling-464.patch \
10 file://0001-cl_headers-CMakeLists.txt-use-clang-from-native-sysr.patch \
11 "
12
13inherit cmake
14DEPENDS += "clang"
15DEPENDS:append:class-target = " opencl-clang-native"
16
17COMPATIBLE_HOST = '(x86_64).*-linux'
18COMPATIBLE_HOST:libc-musl = "null"
19
20DEPENDS += " spirv-llvm-translator"
21
22EXTRA_OECMAKE += "\
23 -DLLVM_TABLEGEN_EXE=${STAGING_BINDIR_NATIVE}/llvm-tblgen \
24 -DCMAKE_SKIP_RPATH=TRUE \
25 -DPREFERRED_LLVM_VERSION=${LLVMVERSION} \
26 "
27
28do_install:append:class-native() {
29 install -d ${D}${bindir}
30 install -m 0755 ${B}/bin/linux_resource_linker ${D}${bindir}/
31}
32
33BBCLASSEXTEND = "native nativesdk"
diff --git a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_10.0.0.bb b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_10.0.0.bb
deleted file mode 100644
index c5ba96c1..00000000
--- a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_10.0.0.bb
+++ /dev/null
@@ -1,35 +0,0 @@
1SUMMARY = "Common clang is a thin wrapper library around clang"
2DESCRIPTION = "Common clang has OpenCL-oriented API and is capable \
3 to compile OpenCL C kernels to SPIR-V modules."
4
5LICENSE = "NCSA"
6LIC_FILES_CHKSUM = "file://LICENSE;md5=e8a15bf1416762a09ece07e44c79118c"
7
8SRC_URI = "git://github.com/intel/opencl-clang.git;branch=ocl-open-100;protocol=https \
9 file://0001-don-t-redefine-LLVM_TABLEGEN_EXE.patch \
10 file://0001-Building-in-tree-with-LLVM-10.0-with-the-LLVM_LINK_L.patch \
11 "
12SRC_URI_append_class-native = " file://0002-make-sure-only-static-libraries-linked-for-native-bu.patch"
13
14SRCREV = "92f3f7f1a06f25fb13708f87c26b0fbf50924c96"
15
16S = "${WORKDIR}/git"
17
18inherit cmake
19DEPENDS += "clang"
20DEPENDS_append_class-target = " opencl-clang-native"
21
22COMPATIBLE_HOST = '(x86_64).*-linux'
23COMPATIBLE_HOST_libc-musl = "null"
24
25EXTRA_OECMAKE += "\
26 -DLLVM_TABLEGEN_EXE=${STAGING_BINDIR_NATIVE}/llvm-tblgen \
27 -DCMAKE_SKIP_RPATH=TRUE \
28 "
29
30do_install_append_class-native() {
31 install -d ${D}${bindir}
32 install -m 0755 ${B}/linux_linker/linux_resource_linker ${D}${bindir}/
33}
34
35BBCLASSEXTEND = "native nativesdk"
diff --git a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_15.0.0.bb b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_15.0.0.bb
new file mode 100644
index 00000000..e946c31c
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_15.0.0.bb
@@ -0,0 +1,5 @@
1require opencl-clang.inc
2
3SRCREV = "60fd799cc58755c16d951f9ebfde6d0f9b8554dd"
4
5BRANCH = "ocl-open-150"
diff --git a/dynamic-layers/clang-layer/recipes-opencl/vc-intrinsics/vc-intrinsics_1.0.bb b/dynamic-layers/clang-layer/recipes-opencl/vc-intrinsics/vc-intrinsics_1.0.bb
deleted file mode 100644
index a51b980c..00000000
--- a/dynamic-layers/clang-layer/recipes-opencl/vc-intrinsics/vc-intrinsics_1.0.bb
+++ /dev/null
@@ -1,25 +0,0 @@
1SUMMARY = "VC Intrinsics"
2DESCRIPTION = "VC Intrinsics project contains a set of new intrinsics on \
3top of core LLVM IR instructions that represent SIMD semantics of a program \
4targeting GPU"
5
6LICENSE = "MIT"
7LIC_FILES_CHKSUM = "file://License.md;md5=c18ea6bb4786a26bf4eee88a7424a408"
8
9SRC_URI = "git://github.com/intel/vc-intrinsics.git;protocol=https; \
10 "
11
12SRCREV = "f39ff1e6589f8bda1bcd81a9260f8143996b8a19"
13
14S = "${WORKDIR}/git"
15
16inherit cmake
17
18COMPATIBLE_HOST = '(x86_64).*-linux'
19COMPATIBLE_HOST_libc-musl = "null"
20
21DEPENDS += " clang"
22
23EXTRA_OECMAKE = "-DLLVM_DIR=${STAGING_LIBDIR}"
24
25BBCLASSEXTEND = "native nativesdk"
diff --git a/dynamic-layers/meta-python/recipes-opencv/dldt/openvino-model-optimizer_2020.4.bb b/dynamic-layers/meta-python/recipes-opencv/dldt/openvino-model-optimizer_2020.4.bb
deleted file mode 100644
index 996633b3..00000000
--- a/dynamic-layers/meta-python/recipes-opencv/dldt/openvino-model-optimizer_2020.4.bb
+++ /dev/null
@@ -1,33 +0,0 @@
1SUMMARY = "OpenVINO Model Optimzer"
2DESCRIPTION = "Model Optimizer is a cross-platform command-line tool that \
3facilitates the transition between the training and deployment \
4environment, performs static model analysis, and adjusts deep \
5learning models for optimal execution on end-point target devices."
6HOMEPAGE = "https://01.org/openvinotoolkit"
7
8SRC_URI = "git://github.com/openvinotoolkit/openvino.git;protocol=https;branch=releases/2020/4;lfs=0 \
9 "
10SRCREV = "023e7c2c3f8a8ac83564db09799d2049115d9cf6"
11
12LICENSE = "Apache-2.0"
13LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
14
15CVE_PRODUCT = "intel:openvino"
16
17S = "${WORKDIR}/git"
18
19do_install() {
20 mkdir -p ${D}${datadir}/openvino/model-optimizer
21 cp -r model-optimizer ${D}${datadir}/openvino/
22}
23
24RDEPENDS_${PN} += " \
25 python3-numpy \
26 python3-protobuf \
27 python3-defusedxml \
28 python3-networkx \
29 python3-test-generator \
30 bash \
31 "
32
33FILES_${PN} += "${datadir}/openvino"
diff --git a/dynamic-layers/openembedded-layer/recipes-bsp/amt/files/0001-CIM_Framework-CMakeLists.txt-turn-OFF-BUILD_LIBCIM.patch b/dynamic-layers/openembedded-layer/recipes-bsp/amt/files/0001-CIM_Framework-CMakeLists.txt-turn-OFF-BUILD_LIBCIM.patch
deleted file mode 100644
index d3b10319..00000000
--- a/dynamic-layers/openembedded-layer/recipes-bsp/amt/files/0001-CIM_Framework-CMakeLists.txt-turn-OFF-BUILD_LIBCIM.patch
+++ /dev/null
@@ -1,34 +0,0 @@
1From 7f24e190bde4ee120e284cbdb59eed36ef8818f8 Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Thu, 10 Sep 2020 15:44:09 +0800
4Subject: [PATCH] CIM_Framework/CMakeLists.txt: turn OFF BUILD_LIBCIM
5
6BUILD_LIBCIM forces a check for libcmpisfcc in the top level makefile
7for openwsman while the cim plugin itself isn't built if DISABLE_PLUGINS
8is turned ON. This leads to an error when that library isn't present
9even though we're not building that part of the code at all.
10
11Turn OFF BUILD_LIBCIM in addition to DISABLE_PLUGINS.
12
13Upstream-Status: Submitted [https://github.com/intel/lms/pull/4]
14
15Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
16---
17 CIM_Framework/CMakeLists.txt | 1 +
18 1 file changed, 1 insertion(+)
19
20diff --git a/CIM_Framework/CMakeLists.txt b/CIM_Framework/CMakeLists.txt
21index 9d287f9..60219b3 100644
22--- a/CIM_Framework/CMakeLists.txt
23+++ b/CIM_Framework/CMakeLists.txt
24@@ -53,6 +53,7 @@ externalproject_add (openwsman
25 -DUSE_PAM=OFF
26 -DENABLE_EVENTING_SUPPORT=OFF
27 -DBUILD_SHARED_LIBS=OFF
28+ -DBUILD_LIBCIM=OFF
29 ${WSMAN_STATIC_RUNTIME}
30 ${WSMAN_ARCH}
31 ${USE_TOOLCHAIN}
32--
332.26.2
34
diff --git a/dynamic-layers/openembedded-layer/recipes-bsp/amt/files/0001-LMS-fix-build-issue-with-gcc-15.patch b/dynamic-layers/openembedded-layer/recipes-bsp/amt/files/0001-LMS-fix-build-issue-with-gcc-15.patch
new file mode 100644
index 00000000..751c7973
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-bsp/amt/files/0001-LMS-fix-build-issue-with-gcc-15.patch
@@ -0,0 +1,32 @@
1From 439af27f7641185933d7810b6c4eb17086438df3 Mon Sep 17 00:00:00 2001
2From: Yogesh Tyagi <yogesh.tyagi@intel.com>
3Date: Mon, 19 May 2025 17:50:40 +0530
4Subject: [PATCH] LMS : fix build issue with gcc 15
5
6include cstdint header to resolve the below error with gcc 15
7
8| In file included from /lms/2406.0.0.0/git/MEIClient/src/MEICommand.cpp:11:
9| /lms/2406.0.0.0/git/MEIClient/Include/MEICommand.h:40:54: error: 'uint8_t' was not declared in this scope
10
11Upstream-Status: Submitted [https://github.com/intel/lms/pull/23]
12
13Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
14---
15 MEIClient/Include/MEICommand.h | 1 +
16 1 file changed, 1 insertion(+)
17
18diff --git a/MEIClient/Include/MEICommand.h b/MEIClient/Include/MEICommand.h
19index 6192d26..5332e44 100644
20--- a/MEIClient/Include/MEICommand.h
21+++ b/MEIClient/Include/MEICommand.h
22@@ -12,6 +12,7 @@
23 #define __MEI_COMMAND_H__
24 #include "heci.h"
25 #include "MEIClientException.h"
26+#include <cstdint>
27 #include <memory>
28 #include <vector>
29
30--
312.43.0
32
diff --git a/dynamic-layers/openembedded-layer/recipes-bsp/amt/files/lms_drop_rpath_2022.0.0.0.diff b/dynamic-layers/openembedded-layer/recipes-bsp/amt/files/lms_drop_rpath_2022.0.0.0.diff
deleted file mode 100644
index e000a160..00000000
--- a/dynamic-layers/openembedded-layer/recipes-bsp/amt/files/lms_drop_rpath_2022.0.0.0.diff
+++ /dev/null
@@ -1,30 +0,0 @@
1From ec7d732a6a23e90be34840b0f1a57e5199d393cf Mon Sep 17 00:00:00 2001
2From: Alexander Usyskin <alexander.usyskin@intel.com>
3Date: Mon, 17 Jun 2019 13:27:33 +0300
4Subject: [PATCH] lms: drop rpath definitions
5
6Yocto fail to compile with this definitions.
7
8Upstream-Status: Inappropriate [configuration]
9Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com>
10---
11 CMakeLists.txt | 3 ---
12 1 file changed, 3 deletions(-)
13
14diff --git a/CMakeLists.txt b/CMakeLists.txt
15index e22ff05..14d5dd1 100644
16--- a/CMakeLists.txt
17+++ b/CMakeLists.txt
18@@ -112,9 +112,6 @@ install (DIRECTORY Docs/Licenses
19 FILES_MATCHING PATTERN "LICENSE.*"
20 )
21
22-list (APPEND CMAKE_INSTALL_RPATH "${PROJECT_BINARY_DIR}/UNS/GMS_COMMON")
23-list (APPEND CMAKE_INSTALL_RPATH "${PROJECT_BINARY_DIR}/WsmanClient")
24-
25 if (BUILD_TESTS)
26 include (gtest.cmake)
27 endif (BUILD_TESTS)
28--
292.7.4
30
diff --git a/dynamic-layers/openembedded-layer/recipes-bsp/amt/lms_2022.0.0.0.bb b/dynamic-layers/openembedded-layer/recipes-bsp/amt/lms_2022.0.0.0.bb
deleted file mode 100644
index 4b1e35f0..00000000
--- a/dynamic-layers/openembedded-layer/recipes-bsp/amt/lms_2022.0.0.0.bb
+++ /dev/null
@@ -1,39 +0,0 @@
1SUMMARY = "Intel(R) Local Managability Service"
2DESCRIPTION = "Intel Local Manageability Service allows applications \
3to access the Intel Active Management Technology (AMT) firmware via \
4the Intel Management Engine Interface (MEI)."
5
6LICENSE = "Apache-2.0"
7LIC_FILES_CHKSUM = "file://COPYING;md5=2ee41112a44fe7014dce33e26468ba93"
8
9COMPATIBLE_HOST = '(i.86|x86_64).*-linux'
10
11COMPATIBLE_HOST_libc-musl = "null"
12
13inherit cmake systemd features_check
14
15DEPENDS = "metee ace xerces-c libnl libxml2 glib-2.0 glib-2.0-native connman"
16
17EXTRA_OECMAKE += "-DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3"
18
19REQUIRED_DISTRO_FEATURES= "systemd"
20
21FILES_${PN} += "${datadir}/dbus-1/system-services/*.service"
22
23S = "${WORKDIR}/git"
24
25SYSTEMD_SERVICE_${PN} = "lms.service"
26
27SRC_URI = "git://github.com/intel/lms.git \
28 file://0001-CIM_Framework-CMakeLists.txt-turn-OFF-BUILD_LIBCIM.patch \
29 "
30SRCREV = "597783800b000091e05855f1e7431555216e77da"
31
32SRC_URI_append = " file://lms_drop_rpath_${PV}.diff"
33
34do_install_append() {
35 install -d ${D}${systemd_system_unitdir}
36 install -m 0644 ${B}/UNS/lms.service ${D}${systemd_system_unitdir}
37}
38
39RDEPENDS_${PN} += "ace"
diff --git a/dynamic-layers/openembedded-layer/recipes-bsp/amt/lms_2406.0.0.0.bb b/dynamic-layers/openembedded-layer/recipes-bsp/amt/lms_2406.0.0.0.bb
new file mode 100644
index 00000000..0a5a57ed
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-bsp/amt/lms_2406.0.0.0.bb
@@ -0,0 +1,43 @@
1SUMMARY = "Intel(R) Local Managability Service"
2DESCRIPTION = "Intel Local Manageability Service allows applications \
3to access the Intel Active Management Technology (AMT) firmware via \
4the Intel Management Engine Interface (MEI)."
5
6LICENSE = "Apache-2.0"
7LIC_FILES_CHKSUM = "file://COPYING;md5=2ee41112a44fe7014dce33e26468ba93"
8
9COMPATIBLE_HOST = '(i.86|x86_64).*-linux'
10
11COMPATIBLE_HOST:libc-musl = "null"
12
13inherit cmake systemd features_check python3native
14
15DEPENDS = "metee ace xerces-c libnl libxml2 glib-2.0 glib-2.0-native pkgconfig-native python3-packaging-native"
16
17# Enable either connman or networkmanager or none but not both.
18PACKAGECONFIG ??= "connman"
19PACKAGECONFIG[connman] = "-DNETWORK_CN=ON, -DNETWORK_CN=OFF, connman"
20PACKAGECONFIG[networkmanager] = "-DNETWORK_NM=ON, -DNETWORK_NM=OFF, networkmanager"
21
22REQUIRED_DISTRO_FEATURES = "systemd"
23
24FILES:${PN} += "${datadir}/dbus-1/system-services/*.service"
25
26SYSTEMD_SERVICE:${PN} = "lms.service"
27
28SRC_URI = "git://github.com/intel/lms.git;branch=master;protocol=https \
29 file://0001-LMS-fix-build-issue-with-gcc-15.patch \
30 "
31SRCREV = "388f115b2aeb3ea11499971c65f828daefd32c47"
32
33do_install:append() {
34 install -d ${D}${sysconfdir}/lms
35 install -d ${D}${systemd_system_unitdir}
36 install -m 0644 ${B}/UNS/lms.service ${D}${systemd_system_unitdir}
37 install -d ${D}${sysconfdir}/udev/rules.d
38 install -m 0644 ${S}/UNS/linux_scripts/70-mei-wdt.rules ${D}${sysconfdir}/udev/rules.d/70-mei-wdt.rules
39}
40
41RDEPENDS:${PN} += "ace"
42
43CVE_STATUS[CVE-2018-1000535] = "cpe-incorrect: This CVE is for a different LMS - Lan Management System."
diff --git a/dynamic-layers/openembedded-layer/recipes-bsp/thermald/thermald_2.5.8.bb b/dynamic-layers/openembedded-layer/recipes-bsp/thermald/thermald_2.5.8.bb
new file mode 100644
index 00000000..575a00e8
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-bsp/thermald/thermald_2.5.8.bb
@@ -0,0 +1,43 @@
1SUMMARY = "Linux thermal daemon"
2
3DESCRIPTION = "Thermal Daemon is a Linux daemon used to prevent the \
4overheating of platforms. This daemon monitors temperature and applies \
5compensation using available cooling methods."
6
7HOMEPAGE = "https://github.com/01org/thermal_daemon"
8
9DEPENDS = "dbus dbus-glib dbus-glib-native libxml2 glib-2.0 glib-2.0-native upower libevdev"
10DEPENDS += "autoconf-archive-native"
11
12LICENSE = "GPL-2.0-only"
13LIC_FILES_CHKSUM = "file://COPYING;md5=ea8831610e926e2e469075b52bf08848"
14
15SRC_URI = "git://github.com/intel/thermal_daemon/;branch=master;protocol=https \
16 "
17
18SRCREV = "df3b9ab0ffe780c4fbad7750987eff76f659cfd5"
19
20inherit pkgconfig autotools systemd gtk-doc
21
22# gtkdocsize runs before autotools do_configure and it copies gtk-doc.m4 and fails
23# to copy becuase there is no m4 dir yet.
24do_configure:prepend () {
25 mkdir -p ${S}/m4
26}
27
28EXTRA_OECONF = " \
29 --with-systemdsystemunitdir=${systemd_system_unitdir} \
30 "
31
32FILES:${PN} += "${datadir}/dbus-1"
33
34SYSTEMD_SERVICE:${PN} = "thermald.service"
35
36COMPATIBLE_HOST = '(i.86|x86_64).*-linux'
37
38CONFFILES:${PN} = " \
39 ${sysconfdir}/thermald/thermal-conf.xml \
40 ${sysconfdir}/thermald/thermal-cpu-cdev-order.xml \
41 "
42
43UPSTREAM_CHECK_URI = "https://github.com/01org/thermal_daemon/releases"
diff --git a/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/0001-Add-print-function-to-print-test-run-status-in-ptest.patch b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/0001-Add-print-function-to-print-test-run-status-in-ptest.patch
new file mode 100644
index 00000000..4d583657
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/0001-Add-print-function-to-print-test-run-status-in-ptest.patch
@@ -0,0 +1,53 @@
1From deccc0c69c2c8759c52885be8bdda54d3cee481c Mon Sep 17 00:00:00 2001
2From: Yogesh Tyagi <yogesh.tyagi@intel.com>
3Date: Sun, 11 Dec 2022 22:34:15 +0800
4Subject: [PATCH] Add print function to print test run status in ptest format
5
6Upstream-Status: Inappropriate [OE ptest specific]
7
8Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
9---
10 run_tests.py | 16 ++++++++++++++++
11 1 file changed, 16 insertions(+)
12
13diff --git a/run_tests.py b/run_tests.py
14index 1cd796dd..e3ffd1ab 100755
15--- a/run_tests.py
16+++ b/run_tests.py
17@@ -327,6 +327,9 @@ def run_test(testname, host, target):
18 else:
19 ispc_exe_rel = add_prefix(host.ispc_cmd, host, target)
20
21+ # to reslove the error '.rodata' can not be used when making a PIE object
22+ ispc_exe_rel = ispc_exe_rel + " --pic"
23+
24 # is this a test to make sure an error is issued?
25 want_error = (filename.find("tests_errors") != -1)
26 if want_error == True:
27@@ -795,6 +798,17 @@ def check_compiler_exists(compiler_exe):
28 return
29 error("missing the required compiler: %s \n" % compiler_exe, 1)
30
31+def print_test_run_status(results):
32+ for fstatus in results:
33+ if (fstatus[1] == Status.Success):
34+ print( "%s: %s" % ("PASS", fstatus[0]))
35+ elif (fstatus[1] == Status.Compfail):
36+ print( "%s: %s" % ("FAIL", fstatus[0]))
37+ elif (fstatus[1] == Status.Runfail):
38+ print( "%s: %s" % ("FAIL", fstatus[0]))
39+ elif (fstatus[1] == Status.Skip):
40+ print( "%s: %s" % ("SKIP", fstatus[0]))
41+
42 def print_result(status, results, s, run_tests_log, csv):
43 title = StatusStr[status]
44 file_list = [fname for fname, fstatus in results if status == fstatus]
45@@ -938,6 +952,8 @@ def run_tests(options1, args, print_version):
46 pass_rate = -1
47 print_debug("PASSRATE (%d/%d) = %d%% \n\n" % (len(run_succeed_files), total_tests_executed, pass_rate), s, run_tests_log)
48
49+ print_test_run_status(results)
50+
51 for status in Status:
52 print_result(status, results, s, run_tests_log, options.csv)
53 fails = [status != Status.Compfail and status != Status.Runfail for _, status in results]
diff --git a/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/0001-Fix-QA-Issues.patch b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/0001-Fix-QA-Issues.patch
new file mode 100644
index 00000000..b0a76ff9
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/0001-Fix-QA-Issues.patch
@@ -0,0 +1,36 @@
1From 7beff95c11071170eb27b6fa7d0cc77588caee8e Mon Sep 17 00:00:00 2001
2From: Yogesh Tyagi <yogesh.tyagi@intel.com>
3Date: Tue, 26 Jul 2022 15:25:10 +0800
4Subject: [PATCH] Fix QA Issues
5
6Stop ispc from inserting host file path in generated headers which leads to reproducibility problems.
7
8Upstream-Status: Inappropriate [OE build specific]
9
10Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
11---
12 src/module.cpp | 4 ++--
13 1 file changed, 2 insertions(+), 2 deletions(-)
14
15diff --git a/src/module.cpp b/src/module.cpp
16index e2084d2e..e2626865 100644
17--- a/src/module.cpp
18+++ b/src/module.cpp
19@@ -2555,7 +2555,7 @@ bool Module::writeHeader(const char *fn) {
20 perror("fopen");
21 return false;
22 }
23- fprintf(f, "//\n// %s\n// (Header automatically generated by the ispc compiler.)\n", fn);
24+ fprintf(f, "//\n// \n// (Header automatically generated by the ispc compiler.)\n");
25 fprintf(f, "// DO NOT EDIT THIS FILE.\n//\n\n");
26
27 // Create a nice guard string from the filename, turning any
28@@ -2677,7 +2677,7 @@ bool Module::writeDispatchHeader(DispatchHeaderInfo *DHI) {
29 FILE *f = DHI->file;
30
31 if (DHI->EmitFrontMatter) {
32- fprintf(f, "//\n// %s\n// (Header automatically generated by the ispc compiler.)\n", DHI->fn);
33+ fprintf(f, "//\n// \n// (Header automatically generated by the ispc compiler.)\n");
34 fprintf(f, "// DO NOT EDIT THIS FILE.\n//\n\n");
35 }
36 // Create a nice guard string from the filename, turning any
diff --git a/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/0002-cmake-don-t-build-for-32-bit-targets.patch b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/0002-cmake-don-t-build-for-32-bit-targets.patch
new file mode 100644
index 00000000..f452dc50
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/0002-cmake-don-t-build-for-32-bit-targets.patch
@@ -0,0 +1,52 @@
1From 16a2c22339287122d2c25d8bb33a5a51b4e6ee51 Mon Sep 17 00:00:00 2001
2From: Naveen Saini <naveen.kumar.saini@intel.com>
3Date: Thu, 24 Feb 2022 20:01:11 +0530
4Subject: [PATCH] cmake: don't build for 32-bit targets
5
6Error log:
7| tmp/work/corei7-64-poky-linux/ispc/1.16.0-r0/recipe-sysroot/usr/include/bits/long-double.h:23:10: fatal error: 'bits/long-double-32.h' file not found
8| #include <bits/long-double-32.h>
9| ^~~~~~~~~~~~~~~~~~~~~~~
10| 1 error generated.
11
12Remove SYSTEM include search path and set -isysroot dir path
13for root dir for cross compilation.
14
15Upstream-Status: Inappropriate
16
17Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
18---
19 cmake/GenerateBuiltins.cmake | 6 +++---
20 1 file changed, 3 insertions(+), 3 deletions(-)
21
22diff --git a/cmake/GenerateBuiltins.cmake b/cmake/GenerateBuiltins.cmake
23index f84494ed..d90cb1ec 100644
24--- a/cmake/GenerateBuiltins.cmake
25+++ b/cmake/GenerateBuiltins.cmake
26@@ -253,7 +253,7 @@ function(builtin_to_cpp bit os_name arch supported_archs supported_oses resultFi
27 # In this case headers will be installed in /usr/arm-linux-gnueabihf/include and will not be picked up
28 # by clang by default. So the following line adds such path explicitly. If this path doesn't exist and
29 # the headers can be found in other locations, this should not be a problem.
30- set(includePath -isystem/usr/${debian_triple}/include)
31+ set(includePath -isysroot${SYSROOT_DIR})
32 endif()
33 endif()
34
35@@ -339,7 +339,7 @@ function (generate_target_builtins resultList)
36 set(regular_targets ${ARGN})
37 list(FILTER regular_targets EXCLUDE REGEX wasm)
38 foreach (ispc_target ${regular_targets})
39- foreach (bit 32 64)
40+ foreach (bit 64)
41 foreach (os_name ${TARGET_OS_LIST_FOR_LL})
42 target_ll_to_cpp(target-${ispc_target} ${bit} ${os_name} output${os_name}${bit})
43 list(APPEND tmpList ${output${os_name}${bit}})
44@@ -405,7 +405,7 @@ function (generate_common_builtins resultList)
45 endif()
46
47 message (STATUS "ISPC will be built with support of ${supported_oses} for ${supported_archs}")
48- foreach (bit 32 64)
49+ foreach (bit 64)
50 foreach (os_name "windows" "linux" "freebsd" "macos" "android" "ios" "ps4" "web")
51 foreach (arch "x86" "arm" "wasm")
52 builtin_to_cpp(${bit} ${os_name} ${arch} "${supported_archs}" "${supported_oses}" res${bit}${os_name}${arch})
diff --git a/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/run-ptest b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/run-ptest
new file mode 100644
index 00000000..77d13bb4
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/run-ptest
@@ -0,0 +1,2 @@
1#!/bin/sh
2python3 run_tests.py
diff --git a/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc_1.24.0.bb b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc_1.24.0.bb
new file mode 100644
index 00000000..f40e445c
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc_1.24.0.bb
@@ -0,0 +1,62 @@
1SUMMARY = "Intel(R) Implicit SPMD Program Compiler"
2DESCRIPTION = "ispc is a compiler for a variant of the C programming language, \
3with extensions for single program, multiple data programming."
4HOMEPAGE = "https://github.com/ispc/ispc"
5
6LICENSE = "BSD-3-Clause & Apache-2.0-with-LLVM-exception"
7LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=da5ecffdd210b3cf776b32b41c182e87 \
8 file://third-party-programs.txt;md5=2061218c7be521556719c8b504bf9ddd"
9
10inherit cmake python3native ptest
11
12SRC_URI = "git://github.com/ispc/ispc.git;protocol=https;branch=main \
13 file://0002-cmake-don-t-build-for-32-bit-targets.patch \
14 file://0001-Fix-QA-Issues.patch \
15 file://0001-Add-print-function-to-print-test-run-status-in-ptest.patch \
16 file://run-ptest \
17 "
18
19SRCREV = "d394222aef59e4759b06e39ec160e4aba6ee5f40"
20
21COMPATIBLE_HOST = '(x86_64).*-linux'
22
23DEPENDS += " clang-native bison-native flex-native"
24DEPENDS:append:class-target = " clang"
25RDEPENDS:${PN}-ptest += " python3-multiprocessing"
26
27PACKAGECONFIG ??= "tbb"
28PACKAGECONFIG[tbb] = "-DISPCRT_BUILD_TASK_MODEL=TBB, -DISPCRT_BUILD_TASK_MODEL=OpenMP, tbb"
29
30YFLAGS = '-d -t -v -y --file-prefix-map=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}'
31
32do_configure:prepend() {
33 sed -i -e 's#\${BISON_EXECUTABLE}.*#\${BISON_EXECUTABLE} ${YFLAGS} #g' ${S}/CMakeLists.txt
34 sed -i -e 's#\${FLEX_EXECUTABLE}.*#\${FLEX_EXECUTABLE} \-L #g' ${S}/CMakeLists.txt
35}
36
37do_install_ptest() {
38 cp -rf ${S}/run_tests.py ${D}${PTEST_PATH}
39 cp -rf ${S}/common.py ${D}${PTEST_PATH}
40 cp -rf ${S}/tests ${D}${PTEST_PATH}
41 cp -rf ${S}/test_static.isph ${D}${PTEST_PATH}
42 cp -rf ${S}/fail_db.txt ${D}${PTEST_PATH}
43 cp -rf ${S}/test_static.cpp ${D}${PTEST_PATH}
44}
45
46EXTRA_OECMAKE += " \
47 -DISPC_INCLUDE_TESTS=OFF \
48 -DISPC_INCLUDE_EXAMPLES=OFF \
49 -DARM_ENABLED=OFF \
50 -DISPC_CROSS=ON \
51 -DISPC_ANDROID_TARGET=OFF \
52 -DISPC_FREEBSD_TARGET=OFF \
53 -DISPC_WINDOWS_TARGET=OFF \
54 -DISPC_IOS_TARGET=OFF \
55 -DISPC_PS_TARGET=OFF \
56 -DSYSROOT_DIR=${STAGING_DIR} \
57 -DCLANG_EXECUTABLE=${STAGING_BINDIR_NATIVE}/clang \
58 -DCLANGPP_EXECUTABLE=${STAGING_BINDIR_NATIVE}/clang++ \
59 -DLLVM_AS_EXECUTABLE=${STAGING_BINDIR_NATIVE}/llvm-as \
60 "
61
62BBCLASSEXTEND = "native nativesdk"
diff --git a/dynamic-layers/openembedded-layer/recipes-core/levelzero/level-zero_1.0.bb b/dynamic-layers/openembedded-layer/recipes-core/levelzero/level-zero_1.21.1.bb
index 5671895d..21b3956f 100644
--- a/dynamic-layers/openembedded-layer/recipes-core/levelzero/level-zero_1.0.bb
+++ b/dynamic-layers/openembedded-layer/recipes-core/levelzero/level-zero_1.21.1.bb
@@ -1,11 +1,10 @@
1SUMMARY = "oneAPI Level Zero Specification Headers and Loader" 1SUMMARY = "oneAPI Level Zero Specification Headers and Loader"
2HOMEPAGE = "https://github.com/oneapi-src/level-zero" 2HOMEPAGE = "https://github.com/oneapi-src/level-zero"
3LICENSE = "MIT" 3LICENSE = "MIT"
4LIC_FILES_CHKSUM = "file://LICENSE;md5=8956dfdba7f8169c4005d1e9753ffddc" 4LIC_FILES_CHKSUM = "file://LICENSE;md5=97957beb2f7808ffa247e5d93e6442cc"
5 5
6SRC_URI = "git://github.com/oneapi-src/level-zero.git;protocol=https" 6SRC_URI = "git://github.com/oneapi-src/level-zero.git;protocol=https;branch=master"
7SRCREV = "fcc7b7aceacf3cbfabaf3c0952ae0cc02d083592" 7SRCREV = "9536683855b17a21508e5b54ba358225d6a976da"
8S = "${WORKDIR}/git"
9 8
10inherit cmake 9inherit cmake
11DEPENDS += "opencl-headers" 10DEPENDS += "opencl-headers"
@@ -14,7 +13,7 @@ UPSTREAM_CHECK_GITTAGREGEX = "^v(?P<pver>(\d+(\.\d+)+))$"
14 13
15PACKAGES =+ "${PN}-headers ${PN}-samples ${PN}-loader" 14PACKAGES =+ "${PN}-headers ${PN}-samples ${PN}-loader"
16 15
17do_install_append () { 16do_install:append () {
18 install -d ${D}${bindir} ${D}${libdir} 17 install -d ${D}${bindir} ${D}${libdir}
19 install -m 755 ${B}/bin/zello* ${D}${bindir} 18 install -m 755 ${B}/bin/zello* ${D}${bindir}
20 19
@@ -22,10 +21,12 @@ do_install_append () {
22} 21}
23 22
24 23
25FILES_${PN}-headers = "${includedir}" 24FILES:${PN}-headers = "${includedir}"
26FILES_${PN}-samples = "${bindir} ${libdir}/libze_null* ${libdir}/libze_validation*" 25FILES:${PN}-samples = "${bindir} ${libdir}/libze_null* ${libdir}/libze_validation*"
27FILES_${PN}-loader = "${libdir}" 26FILES:${PN}-loader = "${libdir}"
28 27
29# PN-loader (non -dev/-dbg/nativesdk- package) contains symlink .so 28# PN-loader (non -dev/-dbg/nativesdk- package) contains symlink .so
30INSANE_SKIP_${PN}-loader = "dev-so" 29INSANE_SKIP:${PN}-loader = "dev-so"
31INSANE_SKIP_${PN}-samples = "dev-so" 30INSANE_SKIP:${PN}-samples = "dev-so"
31ALLOW_EMPTY:${PN} = "1"
32BBCLASSEXTEND = "native nativesdk"
diff --git a/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver/0001-Fix-the-compilation-warning-when-using-gcc-13-25.patch b/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver/0001-Fix-the-compilation-warning-when-using-gcc-13-25.patch
new file mode 100644
index 00000000..2748d7ab
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver/0001-Fix-the-compilation-warning-when-using-gcc-13-25.patch
@@ -0,0 +1,99 @@
1From b57297c14d94dac9bdef7570b7b33d70b10171f3 Mon Sep 17 00:00:00 2001
2From: Jozef Wludzik <jozef.wludzik@intel.com>
3Date: Tue, 26 Mar 2024 14:43:29 +0100
4Subject: [PATCH 1/2] Fix the compilation warning when using gcc-13 (#25)
5
6Added missing headers. Fixed compilation error about casting from
7unsigned to signed int.
8
9Upstream-Status: Backport [https://github.com/intel/linux-npu-driver/commit/4bcbf2abe94eb4d9c083bd616b58e309a82d008a]
10
11Signed-off-by: Jozef Wludzik <jozef.wludzik@intel.com>
12Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
13---
14 umd/level_zero_driver/ext/source/graph/vcl_symbols.hpp | 7 ++++---
15 umd/vpu_driver/include/umd_common.hpp | 1 +
16 validation/umd-test/umd_prime_buffers.h | 9 +++++++--
17 validation/umd-test/utilities/data_handle.h | 1 +
18 4 files changed, 13 insertions(+), 5 deletions(-)
19
20diff --git a/umd/level_zero_driver/ext/source/graph/vcl_symbols.hpp b/umd/level_zero_driver/ext/source/graph/vcl_symbols.hpp
21index f206ebe..682e5b4 100644
22--- a/umd/level_zero_driver/ext/source/graph/vcl_symbols.hpp
23+++ b/umd/level_zero_driver/ext/source/graph/vcl_symbols.hpp
24@@ -5,12 +5,13 @@
25 *
26 */
27
28-#include <dlfcn.h>
29-#include <memory>
30-
31 #include "vpux_driver_compiler.h"
32 #include "vpu_driver/source/utilities/log.hpp"
33
34+#include <array>
35+#include <dlfcn.h>
36+#include <memory>
37+
38 class Vcl {
39 public:
40 static Vcl &sym() {
41diff --git a/umd/vpu_driver/include/umd_common.hpp b/umd/vpu_driver/include/umd_common.hpp
42index 0c874a3..5ad9be2 100644
43--- a/umd/vpu_driver/include/umd_common.hpp
44+++ b/umd/vpu_driver/include/umd_common.hpp
45@@ -7,6 +7,7 @@
46
47 #pragma once
48
49+#include <cstdint>
50 #include <limits>
51 #include <linux/kernel.h>
52 #include <stdexcept>
53diff --git a/validation/umd-test/umd_prime_buffers.h b/validation/umd-test/umd_prime_buffers.h
54index 6f7c7de..ab4814c 100644
55--- a/validation/umd-test/umd_prime_buffers.h
56+++ b/validation/umd-test/umd_prime_buffers.h
57@@ -6,12 +6,17 @@
58 */
59
60 #pragma once
61+
62+#include "umd_test.h"
63+
64 #include <fcntl.h>
65-#include <linux/kernel.h>
66 #include <linux/dma-buf.h>
67 #include <linux/dma-heap.h>
68+#include <linux/kernel.h>
69+#include <stdint.h>
70 #include <sys/ioctl.h>
71 #include <sys/mman.h>
72+#include <unistd.h>
73
74 #define ALLIGN_TO_PAGE(x) __ALIGN_KERNEL((x), (UmdTest::PAGE_SIZE))
75
76@@ -60,7 +65,7 @@ class PrimeBufferHelper {
77 return false;
78
79 bufferFd = heapAlloc.fd;
80- buffers.insert({heapAlloc.fd, {size, nullptr}});
81+ buffers.insert({static_cast<int>(heapAlloc.fd), {size, nullptr}});
82 return true;
83 }
84
85diff --git a/validation/umd-test/utilities/data_handle.h b/validation/umd-test/utilities/data_handle.h
86index d6e0ec0..5d937b2 100644
87--- a/validation/umd-test/utilities/data_handle.h
88+++ b/validation/umd-test/utilities/data_handle.h
89@@ -6,6 +6,7 @@
90 */
91
92 #include <linux/kernel.h>
93+#include <stdint.h>
94 #include <string>
95 #include <vector>
96
97--
982.43.0
99
diff --git a/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver/0001-linux-npu-driver-fix-multilib-install-issue.patch b/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver/0001-linux-npu-driver-fix-multilib-install-issue.patch
new file mode 100644
index 00000000..71a60b20
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver/0001-linux-npu-driver-fix-multilib-install-issue.patch
@@ -0,0 +1,28 @@
1From 561e3b5edc0ec3d8835aaf8ef8e5c9e8f9b53061 Mon Sep 17 00:00:00 2001
2From: Yogesh Tyagi <yogesh.tyagi@intel.com>
3Date: Wed, 28 May 2025 13:35:18 +0800
4Subject: [PATCH] linux-npu-driver : fix multilib install issue
5
6Upstream-Status: Inappropriate [oe specific]
7
8Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
9---
10 firmware/CMakeLists.txt | 2 +-
11 1 file changed, 1 insertion(+), 1 deletion(-)
12
13diff --git a/firmware/CMakeLists.txt b/firmware/CMakeLists.txt
14index 0c093ca..ba346a0 100644
15--- a/firmware/CMakeLists.txt
16+++ b/firmware/CMakeLists.txt
17@@ -12,7 +12,7 @@ target_include_directories(${PROJECT_NAME} INTERFACE include)
18 file(GLOB FIRMWARE_BINARIES ${CMAKE_CURRENT_SOURCE_DIR}/bin/*.bin)
19 if (FIRMWARE_BINARIES)
20 install(FILES ${FIRMWARE_BINARIES}
21- DESTINATION /lib/firmware/updates/intel/vpu/
22+ DESTINATION ${CMAKE_INSTALL_FIRMWARE_DIR}/firmware/updates/intel/vpu/
23 PERMISSIONS OWNER_READ
24 COMPONENT fw-npu)
25 endif()
26--
272.37.3
28
diff --git a/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver/0002-Fix-compilation-failure-with-GCC-14.patch b/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver/0002-Fix-compilation-failure-with-GCC-14.patch
new file mode 100644
index 00000000..9fb97354
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver/0002-Fix-compilation-failure-with-GCC-14.patch
@@ -0,0 +1,110 @@
1From a9f51fd88effb7d324609e692ca7da576d6dad2e Mon Sep 17 00:00:00 2001
2From: Naveen Saini <naveen.kumar.saini@intel.com>
3Date: Tue, 28 May 2024 10:23:42 +0800
4Subject: [PATCH 2/2] Fix compilation failure with GCC-14
5
6umd/level_zero_driver/core/source/event/event.cpp:65:31: error: 'remove_if' is not a member of 'std'; did you mean 'remove_cv'?
7| 65 | associatedJobs.erase(std::remove_if(associatedJobs.begin(),
8| | ^~~~~~~~~
9| | remove_cv
10
11| umd/vpu_driver/source/command/vpu_command.cpp: In member function 'void VPU::VPUCommand::appendAssociateBufferObject(VPU::VPUBufferObject*)':
12| umd/vpu_driver/source/command/vpu_command.cpp:126:20: error: 'find' is not a member of 'std'; did you mean 'bind'?
13| 126 | auto it = std::find(bufferObjects.begin(), bufferObjects.end(), bo);
14| | ^~~~
15| | bind
16
17| umd/vpu_driver/source/command/vpu_command_buffer.cpp: In member function 'bool VPU::VPUCommandBuffer::addCommand(VPU::VPUCommand*, uint64_t&, uint64_t&)':
18| umd/vpu_driver/source/command/vpu_command_buffer.cpp:185:24: error: 'find' is not a member of 'std'; did you mean 'bind'?
19| 185 | auto it = std::find(bufferHandles.begin(), bufferHandles.end(), bo->getHandle());
20| | ^~~~
21| | bind
22
23| umd/level_zero_driver/ext/source/graph/elf_parser.cpp:301:32: error: 'max_element' is not a member of 'std'; did you mean 'tuple_element'?
24| 301 | std::max_element(stride_begin + TENSOR_5D_STRIDE_C, stride_end));
25| | ^~~~~~~~~~~
26| | tuple_element
27| umd/level_zero_driver/ext/source/graph/elf_parser.cpp:315:37: error: 'max_element' is not a member of 'std'; did you mean 'tuple_element'?
28| 315 | auto max_stride_val = *std::max_element(stride_begin + TENSOR_4D_STRIDE_C, stride_end);
29| | ^~~~~~~~~~~
30
31| umd/level_zero_driver/tools/source/metrics/metric.cpp: In member function 'void L0::MetricContext::deactivateMetricGroups(int)':
32| umd/level_zero_driver/tools/source/metrics/metric.cpp:275:38: error: 'remove_if' is not a member of 'std'; did you mean 'remove_cv'?
33| 275 | activatedMetricGroups.erase(std::remove_if(activatedMetricGroups.begin(),
34| | ^~~~~~~~~
35| | remove_cv
36
37Upstream-Status: Submitted [https://github.com/intel/linux-npu-driver/pull/30]
38
39Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
40---
41 umd/level_zero_driver/core/source/event/event.cpp | 1 +
42 umd/level_zero_driver/ext/source/graph/elf_parser.cpp | 1 +
43 umd/level_zero_driver/tools/source/metrics/metric.cpp | 1 +
44 umd/vpu_driver/source/command/vpu_command.cpp | 1 +
45 umd/vpu_driver/source/command/vpu_command_buffer.cpp | 1 +
46 5 files changed, 5 insertions(+)
47
48diff --git a/umd/level_zero_driver/core/source/event/event.cpp b/umd/level_zero_driver/core/source/event/event.cpp
49index a92248f..196d176 100644
50--- a/umd/level_zero_driver/core/source/event/event.cpp
51+++ b/umd/level_zero_driver/core/source/event/event.cpp
52@@ -14,6 +14,7 @@
53
54 #include <level_zero/ze_api.h>
55 #include <thread>
56+#include <algorithm>
57
58 namespace L0 {
59
60diff --git a/umd/level_zero_driver/ext/source/graph/elf_parser.cpp b/umd/level_zero_driver/ext/source/graph/elf_parser.cpp
61index a1c8e14..dfbd61d 100644
62--- a/umd/level_zero_driver/ext/source/graph/elf_parser.cpp
63+++ b/umd/level_zero_driver/ext/source/graph/elf_parser.cpp
64@@ -21,6 +21,7 @@
65 #include <vpux_headers/metadata.hpp>
66 #include <vpux_elf/types/vpu_extensions.hpp>
67 #include <vpux_elf/utils/error.hpp>
68+#include <algorithm>
69
70 namespace L0 {
71
72diff --git a/umd/level_zero_driver/tools/source/metrics/metric.cpp b/umd/level_zero_driver/tools/source/metrics/metric.cpp
73index b67750f..9497311 100644
74--- a/umd/level_zero_driver/tools/source/metrics/metric.cpp
75+++ b/umd/level_zero_driver/tools/source/metrics/metric.cpp
76@@ -7,6 +7,7 @@
77
78 #include "level_zero_driver/tools/source/metrics/metric.hpp"
79 #include "vpu_driver/source/utilities/log.hpp"
80+#include <algorithm>
81
82 namespace L0 {
83
84diff --git a/umd/vpu_driver/source/command/vpu_command.cpp b/umd/vpu_driver/source/command/vpu_command.cpp
85index f4ca23f..75331d9 100644
86--- a/umd/vpu_driver/source/command/vpu_command.cpp
87+++ b/umd/vpu_driver/source/command/vpu_command.cpp
88@@ -14,6 +14,7 @@
89 #include <cstdint>
90 #include <vector>
91 #include <map>
92+#include <algorithm>
93
94 namespace VPU {
95
96diff --git a/umd/vpu_driver/source/command/vpu_command_buffer.cpp b/umd/vpu_driver/source/command/vpu_command_buffer.cpp
97index c4ad052..bbb80ec 100644
98--- a/umd/vpu_driver/source/command/vpu_command_buffer.cpp
99+++ b/umd/vpu_driver/source/command/vpu_command_buffer.cpp
100@@ -11,6 +11,7 @@
101 #include "vpu_driver/source/command/vpu_command_buffer.hpp"
102 #include "vpu_driver/source/command/vpu_copy_command.hpp"
103 #include "vpu_driver/source/utilities/log.hpp"
104+#include <algorithm>
105
106 namespace VPU {
107
108--
1092.43.0
110
diff --git a/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver_1.17.0.bb b/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver_1.17.0.bb
new file mode 100644
index 00000000..852bc0c1
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver_1.17.0.bb
@@ -0,0 +1,43 @@
1SUMMARY = "User Mode Driver for Intel® NPU device"
2HOMEPAGE = "https://github.com/intel/linux-npu-driver"
3LICENSE = "MIT & Apache-2.0"
4LIC_FILES_CHKSUM = "file://LICENSE.md;md5=7b256470048be42466f7d10e1d6482e6 \
5 file://third-party-programs.txt;md5=0ae40d7f1ef3bbd509197e427fdd7e70 \
6 file://third_party/vpux_elf/LICENSE;md5=a7a2dfa2b52a22cf2257893ee87ba11c"
7
8SRC_URI = "git://github.com/intel/linux-npu-driver.git;protocol=https;name=linux-npu-driver;branch=main;lfs=1 \
9 git://github.com/openvinotoolkit/npu_plugin_elf.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/third_party/vpux_elf;name=vpux-elf;nobranch=1 \
10 git://github.com/jbeder/yaml-cpp.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/third_party/yaml-cpp;name=yaml-cpp;nobranch=1 \
11 git://github.com/intel/level-zero-npu-extensions.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/third_party/level-zero-npu-extensions;name=lzvext;nobranch=1 \
12 git://github.com/google/googletest.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/third_party/googletest;name=googletest;nobranch=1 \
13 file://0001-linux-npu-driver-fix-multilib-install-issue.patch \
14 "
15
16SRCREV_linux-npu-driver = "0fe92dd0720448fb571f0ac4e5e64ef9f2ec3bd7"
17SRCREV_vpux-elf = "50f2b13dbb6dd435c3e2ef6f8abb7393633bfcdd"
18SRCREV_yaml-cpp = "f7320141120f720aecc4c32be25586e7da9eb978"
19SRCREV_lzvext = "c7d8f849d6a8195c1db38cbaca8d431cbabf3a6e"
20SRCREV_googletest = "b514bdc898e2951020cbdca1304b75f5950d1f59"
21SRCREV_FORMAT = "linux-npu-driver_vpux-elf_yaml-cpp_lzvext_googletest"
22
23inherit cmake
24
25
26# Fix warning _FORTIFY_SOURCE requires compiling with optimization (-O)
27EXTRA_OECMAKE += " -DCMAKE_BUILD_TYPE=Release "
28EXTRA_OECMAKE += " -DCMAKE_CXX_FLAGS_RELEASE=-O2 "
29
30EXTRA_OECMAKE += " -DCMAKE_CXX_FLAGS='-I${RECIPE_SYSROOT}/usr/include/level_zero'"
31EXTRA_OECMAKE += " -DCMAKE_INSTALL_FIRMWARE_DIR=${nonarch_base_libdir}"
32
33DEPENDS = "level-zero dpkg-native pkgconfig-native"
34
35PACKAGES =+ "${PN}-firmware ${PN}-tests"
36
37FILES:${PN}-firmware = "${nonarch_base_libdir}/firmware/updates/intel/vpu/*"
38FILES:${PN}-tests = "${bindir}"
39
40INSANE_SKIP:${PN} += "buildpaths"
41INSANE_SKIP:${PN}-dbg += "buildpaths"
42INSANE_SKIP:${PN}-tests += "buildpaths"
43INSANE_SKIP:${PN}-firmware += "buildpaths"
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/dpcpp-compiler/intel-oneapi-dpcpp-cpp-runtime_2024.0.0-49819.bb b/dynamic-layers/openembedded-layer/recipes-oneapi/dpcpp-compiler/intel-oneapi-dpcpp-cpp-runtime_2024.0.0-49819.bb
new file mode 100644
index 00000000..106b3ad5
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/dpcpp-compiler/intel-oneapi-dpcpp-cpp-runtime_2024.0.0-49819.bb
@@ -0,0 +1,54 @@
1SUMMARY = "Intel® oneAPI DPC++/C++ Compiler runtime files"
2DESCRIPTION = "The Intel® oneAPI DPC++/C++ Compiler provides optimizations \
3that help your applications run faster on Intel® 64 architectures with support \
4for the latest C, C++, and SYCL language standards. This compiler produces \
5optimized code that can run significantly faster by taking advantage of the \
6ever-increasing core count and vector register width in Intel® Xeon® processors \
7and compatible processors."
8
9HOMEPAGE = "https://www.intel.com/content/www/us/en/developer/tools/oneapi/dpc-compiler.html"
10
11LICENSE = "EULA"
12
13COMPILERMAINVER = "2024.0"
14
15LIC_FILES_CHKSUM = " \
16 file://opt/intel/oneapi/licensing/${COMPILERMAINVER}/licensing/${COMPILERMAINVER}/license.htm;md5=5ff64c6ff3ef98089ed69360e7a84c39 \
17 "
18COMPILERDOTVER = "2024.0.0-49406"
19DEVUTILITVERSION = "2024.0-2024.0.0-49320"
20SRC_URI = " \
21 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-compiler-dpcpp-cpp-runtime-${COMPILERMAINVER}-${PV}_amd64.deb;subdir=${BPN};name=dpcpp-runtime \
22 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-compiler-dpcpp-cpp-common-${COMPILERMAINVER}-${PV}_all.deb;subdir=${BPN};name=dpcpp-common \
23 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-compiler-shared-runtime-${COMPILERMAINVER}-${PV}_amd64.deb;subdir=${BPN};name=compiler-shared-runtime \
24 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-common-vars-${COMPILERDOTVER}_all.deb;subdir=${BPN};name=common-vars \
25 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-openmp-${COMPILERMAINVER}-${PV}_amd64.deb;subdir=${BPN};name=openmp \
26 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-openmp-common-${COMPILERMAINVER}-${PV}_all.deb;subdir=${BPN};name=openmp-common \
27 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-common-licensing-${COMPILERMAINVER}-${COMPILERDOTVER}_all.deb;subdir=${BPN};name=license \
28 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-dev-utilities-${DEVUTILITVERSION}_amd64.deb;subdir=${BPN};name=dev-utils \
29 "
30
31SRC_URI[dpcpp-runtime.sha256sum] = "e24f0ba69daf3f66ceaf23d5e632f183cdb90bac69f65407fdb4407fc9034f33"
32SRC_URI[dpcpp-common.sha256sum] = "f5a3db6a725598224edf1099260955aee3e36beadcaed2af5b8b453e873a82fa"
33SRC_URI[compiler-shared-runtime.sha256sum] = "bce010cbe076259ddd3feb8e69792869e22fccd5b4e2c9af9e815826f2c1a394"
34SRC_URI[common-vars.sha256sum] = "368553c99db1b52060b8225355336778be0b00e5991d0f769c42f891c6328750"
35SRC_URI[openmp.sha256sum] = "154ff1e81adfdc872ba1d47bd860de70d62188417c7128422435dfd0ceca62fe"
36SRC_URI[openmp-common.sha256sum] = "8217001d78311cbef97dd139e684c6767932b532309c3843ba57d7894d15c07d"
37SRC_URI[license.sha256sum] = "9f9c8a12fc0bc82ab5b71e118e66745eff23f42224eba304068225b366cd74b6"
38SRC_URI[dev-utils.sha256sum] = "c675d960a5abca361cead9217d6e74adee499ee0a095c4e44092bd710b304d50"
39
40S = "${UNPACKDIR}/${BPN}"
41
42inherit bin_package
43
44RDEPENDS:${PN} += "virtual-opencl-icd zlib tbb level-zero-loader bash tcsh"
45SKIP_FILEDEPS:${PN} = '1'
46
47INHIBIT_PACKAGE_STRIP = "1"
48INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
49
50# doesn't have GNU_HASH (didn't pass LDFLAGS?)
51INSANE_SKIP:${PN} += "textrel dev-so dev-elf ldflags already-stripped staticdev rpaths arch useless-rpaths file-rdeps"
52
53FILES_SOLIBSDEV = ""
54BBCLASSEXTEND = "native nativesdk"
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/dpcpp-compiler/intel-oneapi-dpcpp-cpp_2024.0.0-49819.bb b/dynamic-layers/openembedded-layer/recipes-oneapi/dpcpp-compiler/intel-oneapi-dpcpp-cpp_2024.0.0-49819.bb
new file mode 100644
index 00000000..d2bd72a3
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/dpcpp-compiler/intel-oneapi-dpcpp-cpp_2024.0.0-49819.bb
@@ -0,0 +1,45 @@
1SUMMARY = "Intel® oneAPI DPC++/C++ Compiler"
2DESCRIPTION = "The Intel® oneAPI DPC++/C++ Compiler provides optimizations \
3that help your applications run faster on Intel® 64 architectures with support \
4for the latest C, C++, and SYCL language standards. This compiler produces \
5optimized code that can run significantly faster by taking advantage of the \
6ever-increasing core count and vector register width in Intel® Xeon® processors \
7and compatible processors."
8
9HOMEPAGE = "https://www.intel.com/content/www/us/en/developer/tools/oneapi/dpc-compiler.html"
10
11LICENSE = "EULA"
12
13COMPILERMAINVER = "2024.0"
14
15LIC_FILES_CHKSUM = " \
16 file://opt/intel/oneapi/compiler/${COMPILERMAINVER}/share/doc/compiler/credist.txt;md5=b41f55af9f479b9570fc35b955d5ba1a \
17 "
18
19SRC_URI = " \
20 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-dpcpp-cpp-${COMPILERMAINVER}-${PV}_amd64.deb;subdir=${BPN};name=icx-compiler \
21 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-compiler-shared-${COMPILERMAINVER}-${PV}_amd64.deb;subdir=${BPN};name=compiler-linker \
22 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-compiler-shared-common-${COMPILERMAINVER}-${PV}_all.deb;subdir=${BPN};name=shared-common \
23 "
24
25SRC_URI[icx-compiler.sha256sum] = "0dcbac766d5a1519d4cf393f5a85e71d19024fef65f77638f3f849796b62cd82"
26SRC_URI[compiler-linker.sha256sum] = "e00faea6d797934d62143e4aa70b727ce30f80fdf30769d22122b3051140c236"
27SRC_URI[shared-common.sha256sum] = "cf490a4a790f349da79e618359598d3b32312ca3b2639e5d4c84e1cfa2745558"
28
29S = "${UNPACKDIR}/${BPN}"
30
31inherit bin_package
32
33RDEPENDS:${PN} += "intel-oneapi-dpcpp-cpp-runtime"
34SKIP_FILEDEPS:${PN} = '1'
35
36INHIBIT_PACKAGE_STRIP = "1"
37INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
38
39# doesn't have GNU_HASH (didn't pass LDFLAGS?)
40INSANE_SKIP:${PN} += "textrel dev-so dev-elf ldflags already-stripped file-rdeps staticdev rpaths arch useless-rpaths"
41
42FILES_SOLIBSDEV = ""
43
44EXCLUDE_FROM_SHLIBS = "1"
45BBCLASSEXTEND = "native nativesdk"
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/embree/embree_4.3.3.bb b/dynamic-layers/openembedded-layer/recipes-oneapi/embree/embree_4.3.3.bb
new file mode 100644
index 00000000..77549479
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/embree/embree_4.3.3.bb
@@ -0,0 +1,30 @@
1SUMMARY = "Collection of high-performance ray tracing kernels"
2DESCRIPTION = "A collection of high-performance ray tracing kernels \
3intended to graphics application engineers that want to improve the \
4performance of their application."
5HOMEPAGE = "https://github.com/embree/embree"
6
7LICENSE = "Apache-2.0 & BSD-3-Clause"
8LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
9 file://third-party-programs.txt;md5=f989f5b74cfff0d45d3ccf0e1366cbdc \
10 file://common/math/transcendental.h;beginline=6;endline=8;md5=73380bb2ab6613b30b8464f114bd0ca8"
11
12inherit pkgconfig cmake
13
14SRC_URI = "git://github.com/embree/embree.git;protocol=https;branch=master"
15SRCREV = "5730b150471602d6dc02d9b7d8a4a6ce9ceffe16"
16
17COMPATIBLE_HOST = '(x86_64).*-linux'
18COMPATIBLE_HOST:libc-musl = "null"
19
20DEPENDS = "tbb jpeg libpng glfw ispc-native"
21
22EXTRA_OECMAKE += " \
23 -DEMBREE_IGNORE_CMAKE_CXX_FLAGS=OFF \
24 -DEMBREE_MAX_ISA=DEFAULT \
25 -DEMBREE_TUTORIALS=OFF \
26 -DEMBREE_ISPC_SUPPORT=ON \
27 -DEMBREE_ZIP_MODE=OFF \
28 "
29
30UPSTREAM_CHECK_GITTAGREGEX = "^v(?P<pver>(\d+(\.\d+)+))$"
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/ipp/intel-oneapi-ipp_2021.10.0-653.bb b/dynamic-layers/openembedded-layer/recipes-oneapi/ipp/intel-oneapi-ipp_2021.10.0-653.bb
new file mode 100644
index 00000000..d10f50f9
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/ipp/intel-oneapi-ipp_2021.10.0-653.bb
@@ -0,0 +1,35 @@
1DESCRIPTION = "Intel® Integrated Performance Primitives are production-ready \
2 building blocks for cross-platform performance. Develop high-performance vision, \
3 signal, security, and storage applications with this multithreaded software library."
4HOMEPAGE = "https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/ipp.html"
5
6LICENSE = "ISSL"
7
8MAXVER = "2021.10"
9
10LIC_FILES_CHKSUM = " \
11 file://opt/intel/oneapi/ipp/${MAXVER}/share/doc/ipp/licensing/license.txt;md5=d7cdc92ed6c4de1263da879599ddc3e2 \
12 file://opt/intel/oneapi/ipp/${MAXVER}/share/doc/ipp/licensing/third-party-programs.txt;md5=22bd13987911dcf790907041b43081f3 \
13 "
14SRC_URI = " \
15 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-ipp-${MAXVER}-${PV}_amd64.deb;subdir=${BPN};name=ipp \
16 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-ipp-common-devel-${MAXVER}-${PV}_all.deb;subdir=${BPN};name=headers \
17 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-ipp-common-${MAXVER}-${PV}_all.deb;subdir=${BPN};name=env \
18 "
19
20SRC_URI[ipp.sha256sum] = "b51e45c6e691aa46c7136b0ab61f5abe346388433e017a30cf53fd23e92bea07"
21SRC_URI[headers.sha256sum] = "342f37ab2f82bc9f4498435f848ee660591c2488b44d988bf6ee96b2a71fd005"
22SRC_URI[env.sha256sum] = "731e8c28a3b8b757730cd874d0941de2eb744856128f24ade59d36c12b415bf6"
23
24S = "${UNPACKDIR}/${BPN}"
25
26COMPATIBLE_HOST:libc-musl = "null"
27
28inherit bin_package
29
30INHIBIT_PACKAGE_STRIP = "1"
31INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
32INHIBIT_DEFAULT_DEPS = ""
33
34RDEPENDS:${PN} += "tbb setup-intel-oneapi-env"
35INSANE_SKIP:${PN} += "ldflags dev-so"
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/mkl/intel-oneapi-mkl_2024.0.0-49656.bb b/dynamic-layers/openembedded-layer/recipes-oneapi/mkl/intel-oneapi-mkl_2024.0.0-49656.bb
new file mode 100644
index 00000000..e77ac588
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/mkl/intel-oneapi-mkl_2024.0.0-49656.bb
@@ -0,0 +1,74 @@
1SUMMARY = "Intel® oneAPI Math Kernel Library (oneMKL)"
2DESCRIPTION = "The Intel® oneAPI Math Kernel Library (oneMKL) is a computing \
3 math library of highly optimized and extensively parallelized routines \
4 for applications that require maximum performance. oneMKL contains \
5 the high-performance optimizations from the full Intel® Math Kernel Library \
6 for CPU architectures (with C/Fortran programming language interfaces)\
7 and adds to them a set of DPC++ programming language interfaces for \
8 achieving performance on various CPU architectures \
9 and Intel Graphics Technology for certain key functionalities."
10HOMEPAGE = "https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/onemkl.html"
11
12LICENSE = "ISSL"
13
14MKLMAINVER = "2024.0"
15
16LIC_FILES_CHKSUM = " \
17 file://opt/intel/oneapi/mkl/${MKLMAINVER}/share/doc/mkl/licensing/license.txt;md5=8510d21bf355a76e378c3216c3929ccd \
18 file://opt/intel/oneapi/mkl/${MKLMAINVER}/share/doc/mkl/licensing/third-party-programs-benchmarks.txt;md5=cb98e1a1f14c05ea85a979ea8982e7a4 \
19 file://opt/intel/oneapi/mkl/${MKLMAINVER}/share/doc/mkl/licensing/third-party-programs-ipp.txt;md5=a4b2bf15e38f5c1267cdafed18bc0b09 \
20 file://opt/intel/oneapi/mkl/${MKLMAINVER}/share/doc/mkl/licensing/third-party-programs-openmp.txt;md5=6b3c1aa2a11393060074c0346ce21e49 \
21 file://opt/intel/oneapi/mkl/${MKLMAINVER}/share/doc/mkl/licensing/third-party-programs-safestring.txt;md5=c3aeee91c6d35a0f0753aed6c2633b82 \
22 file://opt/intel/oneapi/mkl/${MKLMAINVER}/share/doc/mkl/licensing/third-party-programs.txt;md5=27de873e4084d62530fe828406b33ca9 \
23 "
24
25SRC_URI = " \
26 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-mkl-${MKLMAINVER}-${PV}_amd64.deb;subdir=${BPN};name=runtime \
27 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-mkl-common-devel-${MKLMAINVER}-${PV}_all.deb;subdir=${BPN};name=common-devel \
28 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-mkl-devel-${MKLMAINVER}-${PV}_amd64.deb;subdir=${BPN};name=devel \
29 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-mkl-common-${MKLMAINVER}-${PV}_all.deb;subdir=${BPN};name=common-vars \
30 "
31
32SRC_URI[runtime.sha256sum] = "10a86e24051d6ef4a80fd839c570e629190638a3c0ac9bcca99ab855f534b959"
33SRC_URI[common-devel.sha256sum] = "adbf0ea946f63946d29b7f9c750c38a42ea7a65d8c81655b268aa2c7bb908192"
34SRC_URI[devel.sha256sum] = "fab2a6f15e18bfd9b4d425f2703e4e98928c57f52c4feebc9ed886f097062e84"
35SRC_URI[common-vars.sha256sum] = "ec2b67813739fa4a2895f63479a41acba2174afe2d0cb8a0c1c9119d1317d8ef"
36
37S = "${UNPACKDIR}/${BPN}"
38
39inherit bin_package
40
41do_install:append () {
42 install -d ${D}${bindir}
43 (cd ${D}${bindir} ; ln -s ../../opt/intel/oneapi/mkl/${MKLMAINVER}/bin/* .)
44 install -d ${D}${libdir}
45 (cd ${D}${libdir} ; ln -s ../../opt/intel/oneapi/mkl/${MKLMAINVER}/lib/intel64/*.so* .)
46 (cd ${D}${libdir} ; ln -s ../../opt/intel/oneapi/mkl/${MKLMAINVER}/lib/intel64/*.a* .)
47 install -d ${D}${libdir}/pkgconfig
48 (cd ${D}${libdir}/pkgconfig ; ln -s ../../../opt/intel/oneapi/mkl/${MKLMAINVER}/lib/pkgconfig/* .)
49 install -d ${D}${libdir}/cmake
50 (cd ${D}${libdir}/cmake ; ln -s ../../../opt/intel/oneapi/mkl/${MKLMAINVER}/lib/cmake/* .)
51
52 install -d ${D}${includedir}
53 find ${D}/opt/intel/oneapi/mkl/${MKLMAINVER}/include/ -mindepth 1 -maxdepth 1 -type d -printf '%f\n' | while read srcdir; do
54 install -d ${D}${includedir}/$srcdir
55 (cd ${D}${includedir} ; ln -s ../../opt/intel/oneapi/mkl/${MKLMAINVER}/include/$srcdir/* ./$srcdir/)
56 done
57
58 find ${D}/opt/intel/oneapi/mkl/${MKLMAINVER}/include/ -mindepth 1 -maxdepth 1 -type f -printf '%f\n' | while read srcfile; do
59 (cd ${D}${includedir} ; ln -s ../../opt/intel/oneapi/mkl/${MKLMAINVER}/include/$srcfile .)
60 done
61}
62
63AUTO_LIBNAME_PKGS = ""
64INHIBIT_PACKAGE_STRIP = "1"
65INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
66
67RDEPENDS:${PN} += "bash tbb intel-oneapi-dpcpp-cpp-runtime setup-intel-oneapi-env virtual-opencl-icd"
68INSANE_SKIP:${PN} = "ldflags textrel dev-so staticdev arch already-stripped"
69
70FILES:${PN}-staticdev += "/opt/intel/oneapi/mkl/${MKLMAINVER}/lib/*.a*"
71
72SKIP_FILEDEPS:${PN} = '1'
73
74SYSROOT_DIRS += "/opt"
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/oidn/oidn_2.1.0.bb b/dynamic-layers/openembedded-layer/recipes-oneapi/oidn/oidn_2.1.0.bb
new file mode 100644
index 00000000..8005f544
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/oidn/oidn_2.1.0.bb
@@ -0,0 +1,27 @@
1SUMMARY = "Intel® Open Image Denoise"
2DESCRIPTION = "Intel Open Image Denoise is an open source library of \
3high-performance, high-quality denoising filters for images \
4rendered with ray tracing. Intel Open Image Denoise is part \
5of the Intel® oneAPI Rendering Toolkit"
6HOMEPAGE = "https://www.openimagedenoise.org/"
7
8LICENSE = "Apache-2.0 & BSD-3-Clause"
9LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
10 file://external/mkl-dnn/LICENSE;md5=b48e3de3bfd47c27882a0d85b20823f5 \
11 file://external/mkl-dnn/src/cpu/x64/xbyak/COPYRIGHT;md5=3b9bf048d063d54cdb28964db558bcc7 \
12 file://external/mkl-dnn/src/common/ittnotify/LICENSE.BSD;md5=e671ff178b24a95a382ba670503c66fb \
13 file://weights/LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57"
14
15SRC_URI = "https://github.com/OpenImageDenoise/${BPN}/releases/download/v${PV}/${BP}.src.tar.gz\
16 "
17SRC_URI[sha256sum] = "ce144ba582ff36563d9442ee07fa2a4d249bc85aa93e5b25fc527ff4ee755ed6"
18
19inherit cmake
20
21DEPENDS += "tbb ispc-native"
22
23do_install:append() {
24 chrpath -d ${D}${bindir}/* ${D}${libdir}/*${SOLIBS}
25}
26
27UPSTREAM_CHECK_URI = "https://github.com/OpenImageDenoise/oidn/releases"
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/openvkl/openvkl_2.0.1.bb b/dynamic-layers/openembedded-layer/recipes-oneapi/openvkl/openvkl_2.0.1.bb
new file mode 100644
index 00000000..1b0b32ed
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/openvkl/openvkl_2.0.1.bb
@@ -0,0 +1,40 @@
1SUMMARY = "Intel(R) Open Volume Kernel Library"
2DESCRIPTION = "Intel(R) Open Volume Kernel Library (Intel(R) Open VKL) is a \
3collection of high-performance volume computation kernels. The target users \
4of Open VKL are graphics application engineers who want to improve the \
5performance of their volume rendering applications by leveraging Open VKL’s \
6performance-optimized kernels, which include volume traversal and sampling \
7functionality for a variety of volumetric data formats. The kernels are optimized \
8for the latest Intel(R) processors with support for SSE, AVX, AVX2, and AVX-512 \
9instructions."
10HOMEPAGE = "https://www.openvkl.org/"
11
12LICENSE = "Apache-2.0 & BSD-3-Clause & MIT & Zlib"
13LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
14 file://third-party-programs.txt;md5=69ec7caf49616c471161b921f53d5ec0 \
15 file://testing/external/half.hpp;beginline=1;endline=17;md5=4b60058493630c3bd0ef145470f04a7b"
16
17inherit pkgconfig cmake
18
19SRC_URI = "git://github.com/openvkl/openvkl.git;protocol=https;branch=master \
20 "
21SRCREV = "8c6ba526813b871a624cb9d73d4cbb689ac7f4ce"
22
23COMPATIBLE_HOST = '(x86_64).*-linux'
24COMPATIBLE_HOST:libc-musl = "null"
25
26DEPENDS = "ispc ispc-native rkcommon embree"
27
28EXTRA_OECMAKE += " \
29 -DISPC_EXECUTABLE=${STAGING_BINDIR_NATIVE}/ispc \
30 "
31EXTRA_OECMAKE:intel-corei7-64 += " \
32 -DOPENVKL_ISA_AVX=OFF \
33 -DOPENVKL_ISA_AVX2=OFF \
34 -DOPENVKL_ISA_AVX512SKX=OFF \
35 "
36
37PACKAGES =+ "${PN}-examples"
38FILES:${PN}-examples = "\
39 ${bindir} \
40 "
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/ospray/ospray/0001-Fix-GCC11-Compile-Error-in-benchmark_register.h.patch b/dynamic-layers/openembedded-layer/recipes-oneapi/ospray/ospray/0001-Fix-GCC11-Compile-Error-in-benchmark_register.h.patch
new file mode 100644
index 00000000..c2136321
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/ospray/ospray/0001-Fix-GCC11-Compile-Error-in-benchmark_register.h.patch
@@ -0,0 +1,28 @@
1From 09e6b6615d9a16e9555eff9d569356e32bd26aa4 Mon Sep 17 00:00:00 2001
2From: benradel <86351445+benradel@users.noreply.github.com>
3Date: Wed, 23 Jun 2021 11:56:03 +0200
4Subject: [PATCH] Fix GCC11 Compile Error in benchmark_register.h
5
6Fix GCC11 compilation error due to missing header "limits" in benchmark_register.h
7
8Upstream-Status: Submitted [https://github.com/ospray/ospray/pull/484/files]
9Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
10---
11 apps/common/external/benchmark/src/benchmark_register.h | 1 +
12 1 file changed, 1 insertion(+)
13
14diff --git a/apps/common/external/benchmark/src/benchmark_register.h b/apps/common/external/benchmark/src/benchmark_register.h
15index 61377d742..8f1bb7795 100644
16--- a/apps/common/external/benchmark/src/benchmark_register.h
17+++ b/apps/common/external/benchmark/src/benchmark_register.h
18@@ -2,6 +2,7 @@
19 #define BENCHMARK_REGISTER_H
20
21 #include <vector>
22+#include <limits>
23
24 #include "check.h"
25
26--
272.32.0
28
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/ospray/ospray_3.2.0.bb b/dynamic-layers/openembedded-layer/recipes-oneapi/ospray/ospray_3.2.0.bb
new file mode 100644
index 00000000..d4e85cbc
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/ospray/ospray_3.2.0.bb
@@ -0,0 +1,36 @@
1SUMMARY = "Intel OSPray, Ray Tracing based Rendering Engine"
2DESCRIPTION = "Intel OSPRay is an open source, scalable, and portable ray \
3tracing engine for high-performance, high-fidelity visualization on \
4Intel Architecture CPUs."
5HOMEPAGE = "https://www.ospray.org/"
6
7LICENSE = "Apache-2.0 & BSD-3-Clause & MIT & Zlib"
8LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=1dece7821bf3fd70fe1309eaa37d52a2 \
9 file://third-party-programs.txt;md5=e37b77e3bd997abccc359c710fb1f1db \
10 "
11
12inherit pkgconfig cmake
13
14SRC_URI = "git://github.com/ospray/ospray.git;protocol=https;branch=master \
15 git://github.com/nothings/stb;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/apps/common/external/stb_image/stb;name=stb;nobranch=1 \
16 "
17SRCREV = "85af2929937d516997451cbd52d352cf93125ed2"
18
19COMPATIBLE_HOST = '(x86_64).*-linux'
20COMPATIBLE_HOST:libc-musl = "null"
21
22DEPENDS = "rkcommon ispc ispc-native openvkl embree"
23
24EXTRA_OECMAKE += " \
25 -DISPC_EXECUTABLE=${STAGING_BINDIR_NATIVE}/ispc \
26 -DOSPRAY_ENABLE_APPS_BENCHMARK=OFF \
27 -DOSPRAY_ENABLE_APPS_TESTING=OFF \
28 -DOSPRAY_ENABLE_APPS_EXAMPLES=OFF \
29 "
30
31PACKAGES =+ "${PN}-apps"
32FILES:${PN}-apps = "\
33 ${bindir} \
34 "
35
36UPSTREAM_CHECK_GITTAGREGEX = "^v(?P<pver>(\d+(\.\d+)+))$"
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/rkcommon/rkcommon_1.14.0.bb b/dynamic-layers/openembedded-layer/recipes-oneapi/rkcommon/rkcommon_1.14.0.bb
new file mode 100644
index 00000000..5289e9eb
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/rkcommon/rkcommon_1.14.0.bb
@@ -0,0 +1,17 @@
1SUMMARY = "rkcommon - C++/CMake infrastructure"
2DESCRIPTION = "A common set of C++ infrastructure and CMake utilities \
3used by various components of Intel® oneAPI Rendering Toolkit."
4HOMEPAGE = "https://github.com/ospray/rkcommon"
5
6LICENSE = "Apache-2.0"
7LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57"
8
9inherit pkgconfig cmake
10
11SRC_URI = "git://github.com/ospray/rkcommon.git;protocol=https;branch=master \
12 "
13SRCREV = "4a00047ae5a3ac705b6b33b4a7574588d91e7953"
14
15DEPENDS = "tbb"
16
17EXTRA_OECMAKE += " -DBUILD_TESTING=OFF"
diff --git a/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl/0001-CMakeLists-disable-Werror.patch b/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl/0001-CMakeLists-disable-Werror.patch
new file mode 100644
index 00000000..4474aa3c
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl/0001-CMakeLists-disable-Werror.patch
@@ -0,0 +1,38 @@
1From ef56be8e6bf2ea273cbeb960f3131164e7b517b6 Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Wed, 18 May 2022 12:24:03 +0800
4Subject: [PATCH] CMakeLists: disable Werror
5
6gcc12 highlights minor warnings that cause the build to fail. Ignore
7those until they aren't fixed upstream.
8
9Upstream-Status: Inappropriate
10
11Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
12---
13 CMakeLists.txt | 4 ++--
14 1 file changed, 2 insertions(+), 2 deletions(-)
15
16diff --git a/CMakeLists.txt b/CMakeLists.txt
17index 418483f7..c019fea0 100644
18--- a/CMakeLists.txt
19+++ b/CMakeLists.txt
20@@ -146,7 +146,7 @@ else()
21 set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O2 -fno-strict-aliasing -D_FORTIFY_SOURCE=2")
22 if(LNX_BUILD)
23 #A few warnings yet to resolve under esx
24- set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -Werror")
25+ #set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -Werror")
26 set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -Werror")
27 endif()
28 set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -O0 -ggdb")
29@@ -791,4 +791,4 @@ if(ESX_BUILD)
30 include(CMake/esx.cmake)
31 endif()
32
33-add_subdirectory(src/os/nvm_api_sample)
34\ No newline at end of file
35+add_subdirectory(src/os/nvm_api_sample)
36--
372.35.3
38
diff --git a/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl/0001-Ignore-STATIC_ASSERTs-and-NULL-define-for-os-and-ut-builds.patch b/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl/0001-Ignore-STATIC_ASSERTs-and-NULL-define-for-os-and-ut-builds.patch
new file mode 100644
index 00000000..8a734ed2
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl/0001-Ignore-STATIC_ASSERTs-and-NULL-define-for-os-and-ut-builds.patch
@@ -0,0 +1,62 @@
1Subject: [PATCH] [PATCH]: ignore static asserts and null define for os and ut
2 builds
3Upstream-Status: Backport
4Signed-off-by: Teoh Suh Haw <suh.haw.teoh@intel.com>
5---
6 MdePkg/Include/Base.h | 12 ++++++++++++
7 1 file changed, 12 insertions(+)
8
9Index: edk2/MdePkg/Include/Base.h
10===================================================================
11--- edk2.orig/MdePkg/Include/Base.h
12+++ edk2/MdePkg/Include/Base.h
13@@ -316,8 +316,12 @@ struct _LIST_ENTRY {
14 #define NULL __null
15 #endif
16 #else
17+#ifndef OS_BUILD
18+#ifndef UNIT_TEST_UEFI_BUILD
19 #define NULL ((VOID *) 0)
20 #endif
21+#endif
22+#endif
23
24 //
25 // Null character
26@@ -813,6 +817,8 @@ typedef UINTN *BASE_LIST;
27 // Section 2.3.1 of the UEFI 2.3 Specification.
28 //
29
30+#ifndef OS_BUILD
31+#ifndef UNIT_TEST_UEFI_BUILD
32 STATIC_ASSERT (sizeof (BOOLEAN) == 1, "sizeof (BOOLEAN) does not meet UEFI Specification Data Type requirements");
33 STATIC_ASSERT (sizeof (INT8) == 1, "sizeof (INT8) does not meet UEFI Specification Data Type requirements");
34 STATIC_ASSERT (sizeof (UINT8) == 1, "sizeof (UINT8) does not meet UEFI Specification Data Type requirements");
35@@ -841,7 +847,8 @@ STATIC_ASSERT (ALIGNOF (CHAR16) == size
36 STATIC_ASSERT (ALIGNOF (INTN) == sizeof (INTN), "Alignment of INTN does not meet UEFI Specification Data Type requirements");
37 STATIC_ASSERT (ALIGNOF (UINTN) == sizeof (UINTN), "Alignment of UINTN does not meet UEFI Specification Data Type requirements");
38 STATIC_ASSERT (ALIGNOF (VOID *) == sizeof (VOID *), "Alignment of VOID * does not meet UEFI Specification Data Type requirements");
39-
40+#endif
41+#endif
42 //
43 // The following three enum types are used to verify that the compiler
44 // configuration for enum types is compliant with Section 2.3.1 of the
45@@ -861,6 +868,8 @@ typedef enum {
46 __VerifyInt32EnumValue = 0x7fffffff
47 } __VERIFY_INT32_ENUM_SIZE;
48
49+#ifndef OS_BUILD
50+#ifndef UNIT_TEST_UEFI_BUILD
51 STATIC_ASSERT (sizeof (__VERIFY_UINT8_ENUM_SIZE) == 4, "Size of enum does not meet UEFI Specification Data Type requirements");
52 STATIC_ASSERT (sizeof (__VERIFY_UINT16_ENUM_SIZE) == 4, "Size of enum does not meet UEFI Specification Data Type requirements");
53 STATIC_ASSERT (sizeof (__VERIFY_INT32_ENUM_SIZE) == 4, "Size of enum does not meet UEFI Specification Data Type requirements");
54@@ -868,6 +877,8 @@ STATIC_ASSERT (sizeof (__VERIFY_INT32_EN
55 STATIC_ASSERT (ALIGNOF (__VERIFY_UINT8_ENUM_SIZE) == sizeof (__VERIFY_UINT8_ENUM_SIZE), "Alignment of enum does not meet UEFI Specification Data Type requirements");
56 STATIC_ASSERT (ALIGNOF (__VERIFY_UINT16_ENUM_SIZE) == sizeof (__VERIFY_UINT16_ENUM_SIZE), "Alignment of enum does not meet UEFI Specification Data Type requirements");
57 STATIC_ASSERT (ALIGNOF (__VERIFY_INT32_ENUM_SIZE) == sizeof (__VERIFY_INT32_ENUM_SIZE), "Alignment of enum does not meet UEFI Specification Data Type requirements");
58+#endif
59+#endif
60
61 /**
62 Macro that returns a pointer to the data structure that contains a specified field of
diff --git a/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl_03.00.00.0499.bb b/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl_03.00.00.0499.bb
new file mode 100644
index 00000000..7b95ffe4
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl_03.00.00.0499.bb
@@ -0,0 +1,45 @@
1SUMMARY = "Utility for managing Intel Optane DC persistent memory modules"
2DESCRIPTION = "Utility for configuring and managing Intel Optane Persistent \
3Memory modules (PMem). It supports functionality to: \
4Discover DCPMMs on the platform. \
5Provision the platform memory configuration. \
6View and update the firmware on DCPMMs. \
7Configure data-at-rest security on DCPMMs. \
8Track health and performance of DCPMMs. \
9Debug and troubleshoot DCPMMs."
10
11HOMEPAGE = "https://github.com/intel/ipmctl"
12BUGTRACKER = "https://github.com/intel/ipmctl/issues"
13
14LICENSE = "BSD-3-Clause | BSD-2-Clause"
15LIC_FILES_CHKSUM = "file://LICENSE;md5=72b9da60da6219d612ce30b746a0fe71 \
16 file://edk2/License.txt;md5=6123e5bf044a66db96c4ce88a36b2d08"
17
18SRC_URI = "git://github.com/intel/ipmctl.git;protocol=https;branch=master_3_0;name=ipmctl; \
19 git://github.com/tianocore/edk2.git;protocol=https;name=edk2;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/edk2;branch=master \
20 file://0001-Ignore-STATIC_ASSERTs-and-NULL-define-for-os-and-ut-builds.patch;patchdir=edk2 \
21 file://0001-CMakeLists-disable-Werror.patch \
22"
23
24SRCREV_ipmctl = "a71f2fb1c90dd07f9862b71c789881132193e8f9"
25#tag edk2-stable202408
26SRCREV_edk2 = "b158dad150bf02879668f72ce306445250838201"
27SRCREV_FORMAT = "ipmctl_edk2"
28
29inherit cmake dos2unix
30
31DEPENDS = "ndctl pkgconfig-native"
32
33EXTRA_OECMAKE = "-DRELEASE=ON"
34
35do_configure:prepend() {
36 for dir in BaseTools MdeModulePkg MdePkg ShellPkg ; do
37 ln -sf edk2/${dir} ${S}
38 done
39}
40
41do_install:append() {
42 # Remove /var/log/ipmctl as anything created in /var/log will not be
43 # available when tmpfs is mounted at /var/volatile/log.
44 rm -rf ${D}${localstatedir}/log
45}
diff --git a/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0001-dont-install-licenses-and-version-file.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0001-dont-install-licenses-and-version-file.patch
deleted file mode 100644
index 185a475b..00000000
--- a/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0001-dont-install-licenses-and-version-file.patch
+++ /dev/null
@@ -1,45 +0,0 @@
1From a7ee6a27135fef24a398690d9280aca79315fa25 Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Tue, 9 Jun 2020 11:35:59 +0800
4Subject: [PATCH] don't install licenses and version
5
6Upstream-Status: Inappropriate
7
8Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
9---
10 CMakeLists.txt | 13 ++-----------
11 1 file changed, 2 insertions(+), 11 deletions(-)
12
13diff --git a/CMakeLists.txt b/CMakeLists.txt
14index c347cb465d..9f57a5ed9c 100644
15--- a/CMakeLists.txt
16+++ b/CMakeLists.txt
17@@ -641,7 +641,7 @@ if (NGRAPH_EXPORT_TARGETS_ENABLE)
18 install(EXPORT ngraphTargets
19 FILE ngraphTargets.cmake
20 NAMESPACE ngraph::
21- DESTINATION ${NGRAPH_COMPONENT_PREFIX}cmake
22+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/ngraph
23 COMPONENT ngraph)
24
25 configure_package_config_file(${CMAKE_CURRENT_SOURCE_DIR}/cmake/share/ngraphConfig.cmake.in
26@@ -654,15 +654,6 @@ if (NGRAPH_EXPORT_TARGETS_ENABLE)
27
28 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/ngraphConfig.cmake
29 ${CMAKE_CURRENT_BINARY_DIR}/ngraphConfigVersion.cmake
30- DESTINATION ${NGRAPH_COMPONENT_PREFIX}cmake
31+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/ngraph
32 COMPONENT ngraph)
33 endif()
34-
35-install(DIRECTORY
36- ${CMAKE_CURRENT_SOURCE_DIR}/licenses
37- DESTINATION "${NGRAPH_COMPONENT_PREFIX}."
38- COMPONENT ngraph
39-)
40-
41-install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/LICENSE DESTINATION "${NGRAPH_COMPONENT_PREFIX}." COMPONENT ngraph)
42-install(FILES ${CMAKE_CURRENT_BINARY_DIR}/VERSION DESTINATION "${NGRAPH_COMPONENT_PREFIX}." COMPONENT ngraph)
43--
442.25.4
45
diff --git a/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0001-inference-engine-use-system-installed-packages.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0001-inference-engine-use-system-installed-packages.patch
deleted file mode 100644
index 3fff5607..00000000
--- a/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0001-inference-engine-use-system-installed-packages.patch
+++ /dev/null
@@ -1,256 +0,0 @@
1From cc44429f0e55efa0fa142cc043e83123e3b376e4 Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Wed, 10 Jun 2020 09:43:55 +0800
4Subject: [PATCH] inference-engine: use system installed packages
5
6Use installed versions of pugixml, ade, protobuf and tbb.
7
8Upstream-Status: Pending
9
10Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
11---
12 cmake/dependencies.cmake | 17 --------------
13 inference-engine/CMakeLists.txt | 2 +-
14 inference-engine/cmake/ie_parallel.cmake | 10 ++-------
15 .../src/inference_engine/CMakeLists.txt | 22 +------------------
16 .../src/legacy_api/CMakeLists.txt | 3 +--
17 .../src/vpu/graph_transformer/CMakeLists.txt | 1 -
18 .../common_test_utils/CMakeLists.txt | 7 ++----
19 .../unit_test_utils/CMakeLists.txt | 3 +--
20 .../tests_deprecated/helpers/CMakeLists.txt | 1 -
21 inference-engine/thirdparty/CMakeLists.txt | 14 +-----------
22 10 files changed, 9 insertions(+), 71 deletions(-)
23
24diff --git a/cmake/dependencies.cmake b/cmake/dependencies.cmake
25index 2a5a74db6..9cc9a6c94 100644
26--- a/cmake/dependencies.cmake
27+++ b/cmake/dependencies.cmake
28@@ -13,25 +13,8 @@ if(CMAKE_CROSSCOMPILING)
29
30 set(protoc_version "3.7.1")
31 if(CMAKE_HOST_SYSTEM_NAME MATCHES Linux)
32- RESOLVE_DEPENDENCY(SYSTEM_PROTOC_ROOT
33- ARCHIVE_LIN "protoc-${protoc_version}-linux-x86_64.tar.gz"
34- TARGET_PATH "${TEMP}/protoc-${protoc_version}-linux-x86_64")
35- debug_message(STATUS "host protoc-${protoc_version} root path = " ${SYSTEM_PROTOC_ROOT})
36 else()
37 message(FATAL_ERROR "Unsupported host system (${CMAKE_HOST_SYSTEM_NAME}) and arch (${CMAKE_HOST_SYSTEM_PROCESSOR}) for cross-compilation")
38 endif()
39
40- reset_deps_cache(SYSTEM_PROTOC)
41-
42- message("${SYSTEM_PROTOC_ROOT}/bin")
43- find_program(
44- SYSTEM_PROTOC
45- NAMES protoc
46- PATHS "${SYSTEM_PROTOC_ROOT}/bin"
47- NO_DEFAULT_PATH)
48- if(NOT SYSTEM_PROTOC)
49- message(FATAL_ERROR "[ONNX IMPORTER] Missing host protoc binary")
50- endif()
51-
52- update_deps_cache(SYSTEM_PROTOC "${SYSTEM_PROTOC}" "Path to host protoc for ONNX Importer")
53 endif()
54diff --git a/inference-engine/CMakeLists.txt b/inference-engine/CMakeLists.txt
55index 39ff413bc..ba8ed354c 100644
56--- a/inference-engine/CMakeLists.txt
57+++ b/inference-engine/CMakeLists.txt
58@@ -54,7 +54,7 @@ function(ie_developer_export)
59 APPEND FILE "${CMAKE_BINARY_DIR}/targets_developer.cmake")
60
61 # Custom target to build only Inference Engine Developer Package targets
62- add_custom_target(ie_dev_targets ALL DEPENDS ${IEDeveloperPackageTargets} gflags)
63+ add_custom_target(ie_dev_targets ALL DEPENDS ${IEDeveloperPackageTargets})
64 endfunction()
65
66 add_subdirectory(thirdparty)
67diff --git a/inference-engine/cmake/ie_parallel.cmake b/inference-engine/cmake/ie_parallel.cmake
68index 0f3c41e0a..b3b2dfdab 100644
69--- a/inference-engine/cmake/ie_parallel.cmake
70+++ b/inference-engine/cmake/ie_parallel.cmake
71@@ -48,14 +48,8 @@ function(set_ie_threading_interface_for TARGET_NAME)
72 set(IE_THREAD_DEFINE "IE_THREAD_SEQ")
73
74 if (THREADING STREQUAL "TBB" OR THREADING STREQUAL "TBB_AUTO")
75- find_package(TBB COMPONENTS tbb tbbmalloc)
76- if (TBB_FOUND)
77- set(IE_THREAD_DEFINE "IE_THREAD_TBB")
78- ie_target_link_libraries(${TARGET_NAME} ${LINK_TYPE} ${TBB_IMPORTED_TARGETS})
79- else ()
80- ext_message(WARNING "TBB was not found by the configured TBB_DIR path. \
81- SEQ method will be used for ${TARGET_NAME}")
82- endif ()
83+ set(IE_THREAD_DEFINE "IE_THREAD_TBB")
84+ target_link_libraries(${TARGET_NAME} INTERFACE tbb tbbmalloc)
85 elseif (THREADING STREQUAL "OMP")
86 if (WIN32)
87 set(omp_lib_name libiomp5md)
88diff --git a/inference-engine/src/inference_engine/CMakeLists.txt b/inference-engine/src/inference_engine/CMakeLists.txt
89index 4ae0d5607..4106cf8b4 100644
90--- a/inference-engine/src/inference_engine/CMakeLists.txt
91+++ b/inference-engine/src/inference_engine/CMakeLists.txt
92@@ -124,8 +124,7 @@ if(NGRAPH_ONNX_IMPORT_ENABLE)
93 target_compile_definitions(${TARGET_NAME}_obj PRIVATE ONNX_IMPORT_ENABLE)
94 endif()
95
96-target_include_directories(${TARGET_NAME}_obj SYSTEM PRIVATE $<TARGET_PROPERTY:ngraph::ngraph,INTERFACE_INCLUDE_DIRECTORIES>
97- $<TARGET_PROPERTY:pugixml,INTERFACE_INCLUDE_DIRECTORIES>)
98+target_include_directories(${TARGET_NAME}_obj SYSTEM PRIVATE $<TARGET_PROPERTY:ngraph::ngraph,INTERFACE_INCLUDE_DIRECTORIES>)
99
100 target_include_directories(${TARGET_NAME}_obj PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}"
101 $<TARGET_PROPERTY:${TARGET_NAME}_reader_api,INTERFACE_INCLUDE_DIRECTORIES>
102@@ -233,25 +232,6 @@ list(APPEND core_components ngraph)
103 if(THREADING STREQUAL "TBB" OR THREADING STREQUAL "TBB_AUTO")
104 ie_cpack_add_component(tbb REQUIRED)
105 list(APPEND core_components tbb)
106-
107- install(DIRECTORY "${TBB}/include"
108- DESTINATION ${IE_CPACK_IE_DIR}/external/tbb
109- COMPONENT tbb)
110- install(DIRECTORY "${TBB}/lib"
111- DESTINATION ${IE_CPACK_IE_DIR}/external/tbb
112- COMPONENT tbb)
113- if(EXISTS "${TBB}/bin")
114- install(DIRECTORY "${TBB}/bin"
115- DESTINATION ${IE_CPACK_IE_DIR}/external/tbb
116- COMPONENT tbb)
117- endif()
118- install(FILES "${TBB}/LICENSE"
119- DESTINATION ${IE_CPACK_IE_DIR}/external/tbb
120- COMPONENT tbb)
121- install(FILES "${TBB}/cmake/TBBConfig.cmake"
122- "${TBB}/cmake/TBBConfigVersion.cmake"
123- DESTINATION ${IE_CPACK_IE_DIR}/external/tbb/cmake
124- COMPONENT tbb)
125 endif()
126
127 ie_cpack_add_component(core REQUIRED DEPENDS ${core_components})
128diff --git a/inference-engine/src/legacy_api/CMakeLists.txt b/inference-engine/src/legacy_api/CMakeLists.txt
129index 85524310b..dc25cae2f 100644
130--- a/inference-engine/src/legacy_api/CMakeLists.txt
131+++ b/inference-engine/src/legacy_api/CMakeLists.txt
132@@ -33,8 +33,7 @@ target_include_directories(${TARGET_NAME}_obj PRIVATE ${PUBLIC_HEADERS_DIR} ${CM
133 ${IE_MAIN_SOURCE_DIR}/src/inference_engine # For CNNNetworkNGraphImpl
134 $<TARGET_PROPERTY:inference_engine_transformations,INTERFACE_INCLUDE_DIRECTORIES>
135 $<TARGET_PROPERTY:inference_engine_plugin_api,INTERFACE_INCLUDE_DIRECTORIES>
136- $<TARGET_PROPERTY:ngraph::ngraph,INTERFACE_INCLUDE_DIRECTORIES>
137- $<TARGET_PROPERTY:pugixml,INTERFACE_INCLUDE_DIRECTORIES>)
138+ $<TARGET_PROPERTY:ngraph::ngraph,INTERFACE_INCLUDE_DIRECTORIES>)
139
140 # Create shared library
141
142diff --git a/inference-engine/src/vpu/graph_transformer/CMakeLists.txt b/inference-engine/src/vpu/graph_transformer/CMakeLists.txt
143index 982d3c7fa..db881246c 100644
144--- a/inference-engine/src/vpu/graph_transformer/CMakeLists.txt
145+++ b/inference-engine/src/vpu/graph_transformer/CMakeLists.txt
146@@ -35,7 +35,6 @@ function(add_graph_transformer_target TARGET_NAME STATIC_IE)
147
148 target_include_directories(${TARGET_NAME}
149 SYSTEM PUBLIC
150- $<TARGET_PROPERTY:pugixml,INTERFACE_INCLUDE_DIRECTORIES>
151 $<TARGET_PROPERTY:inference_engine_plugin_api,INTERFACE_INCLUDE_DIRECTORIES>
152 "${IE_MAIN_SOURCE_DIR}/thirdparty/movidius/mvnc/include")
153
154diff --git a/inference-engine/tests/ie_test_utils/common_test_utils/CMakeLists.txt b/inference-engine/tests/ie_test_utils/common_test_utils/CMakeLists.txt
155index efead7271..732abee2d 100644
156--- a/inference-engine/tests/ie_test_utils/common_test_utils/CMakeLists.txt
157+++ b/inference-engine/tests/ie_test_utils/common_test_utils/CMakeLists.txt
158@@ -23,7 +23,7 @@ function(add_gtest_libraries)
159 PROPERTIES FOLDER thirdparty)
160 endfunction()
161
162-add_gtest_libraries()
163+#add_gtest_libraries()
164
165 if (MSVC)
166 set(PUGI pugixml_mt)
167@@ -32,10 +32,7 @@ else ()
168 endif ()
169
170 list(APPEND EXPORT_DEPENDENCIES
171- ${PUGI}
172 ${NGRAPH_LIBRARIES}
173- gtest
174- gtest_main
175 )
176
177 set(TARGET_NAME commonTestUtils)
178@@ -74,7 +71,6 @@ function(add_common_utils ADD_TARGET_NAME)
179 PUBLIC
180 ${IE_TESTS_ROOT}/ie_test_utils
181 $<TARGET_PROPERTY:inference_engine,INTERFACE_INCLUDE_DIRECTORIES>
182- $<TARGET_PROPERTY:pugixml,INTERFACE_INCLUDE_DIRECTORIES>
183 PRIVATE
184 $<TARGET_PROPERTY:inference_engine_plugin_api,INTERFACE_INCLUDE_DIRECTORIES>
185 )
186@@ -84,6 +80,7 @@ function(add_common_utils ADD_TARGET_NAME)
187 target_link_libraries(${ADD_TARGET_NAME}
188 PUBLIC
189 ${EXPORT_DEPENDENCIES}
190+ pugixml
191 )
192 endfunction()
193
194diff --git a/inference-engine/tests/ie_test_utils/unit_test_utils/CMakeLists.txt b/inference-engine/tests/ie_test_utils/unit_test_utils/CMakeLists.txt
195index df611c700..06bd911ae 100644
196--- a/inference-engine/tests/ie_test_utils/unit_test_utils/CMakeLists.txt
197+++ b/inference-engine/tests/ie_test_utils/unit_test_utils/CMakeLists.txt
198@@ -10,8 +10,7 @@ list(APPEND EXPORT_DEPENDENCIES
199 commonTestUtils_s
200 inference_engine_s
201 inference_engine_lp_transformations
202- inference_engine_ir_reader
203- gmock)
204+ inference_engine_ir_reader)
205
206 addIeTarget(
207 NAME ${TARGET_NAME}
208diff --git a/inference-engine/tests_deprecated/helpers/CMakeLists.txt b/inference-engine/tests_deprecated/helpers/CMakeLists.txt
209index bf915e52d..9e7173db6 100644
210--- a/inference-engine/tests_deprecated/helpers/CMakeLists.txt
211+++ b/inference-engine/tests_deprecated/helpers/CMakeLists.txt
212@@ -23,7 +23,6 @@ function(add_helpers target_name)
213 "${IE_MAIN_SOURCE_DIR}/src/inference_engine"
214 $<TARGET_PROPERTY:inference_engine_ir_reader,INTERFACE_INCLUDE_DIRECTORIES>
215 $<TARGET_PROPERTY:inference_engine_lp_transformations,INTERFACE_INCLUDE_DIRECTORIES>
216- $<TARGET_PROPERTY:pugixml,INTERFACE_INCLUDE_DIRECTORIES>
217 "${IE_MAIN_SOURCE_DIR}/src/vpu/"
218 PRIVATE "${CMAKE_CURRENT_BINARY_DIR}")
219
220diff --git a/inference-engine/thirdparty/CMakeLists.txt b/inference-engine/thirdparty/CMakeLists.txt
221index f94453e06..b3c25daf4 100644
222--- a/inference-engine/thirdparty/CMakeLists.txt
223+++ b/inference-engine/thirdparty/CMakeLists.txt
224@@ -38,28 +38,16 @@ function(build_with_lto)
225 function(ie_build_pugixml)
226 set(BUILD_TESTS_current ${BUILD_TESTS})
227 set(BUILD_TESTS OFF CACHE BOOL "Build tests" FORCE)
228- add_subdirectory(pugixml)
229 set(BUILD_TESTS ${BUILD_TESTS_current} CACHE BOOL "Build tests" FORCE)
230 endfunction()
231
232 ie_build_pugixml()
233 add_subdirectory(stb_lib)
234- add_subdirectory(ade)
235 add_subdirectory(fluid/modules/gapi)
236
237- target_include_directories(pugixml INTERFACE "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/pugixml/src>")
238-
239- set_target_properties(pugixml ade fluid stb_image
240+ set_target_properties(fluid stb_image
241 PROPERTIES FOLDER thirdparty)
242
243- # developer package
244-
245- ie_developer_export_targets(ade fluid pugixml)
246- if(TARGET pugixml_mt)
247- ie_developer_export_targets(pugixml_mt)
248- set_target_properties(pugixml_mt PROPERTIES FOLDER thirdparty)
249- endif()
250-
251 if(ENABLE_MKL_DNN)
252 set(SDL_cmake_included ON)
253 include(mkldnn.cmake)
254--
2552.26.2
256
diff --git a/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0002-cldNN-disable-Werror.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0002-cldNN-disable-Werror.patch
deleted file mode 100644
index a4e58b8e..00000000
--- a/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0002-cldNN-disable-Werror.patch
+++ /dev/null
@@ -1,30 +0,0 @@
1From 65014a2703a6a3892fdebc86fe1c5a3a589dbf56 Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Wed, 10 Jun 2020 09:45:48 +0800
4Subject: [PATCH 2/5] cldNN: disable Werror
5
6Don't treat warnings as errors. This just leads to failures every time
7we upgrade the compiler.
8
9Upstream-Status: Inappropriate
10
11Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
12---
13 inference-engine/thirdparty/clDNN/CMakeLists.txt | 1 -
14 1 file changed, 1 deletion(-)
15
16diff --git a/inference-engine/thirdparty/clDNN/CMakeLists.txt b/inference-engine/thirdparty/clDNN/CMakeLists.txt
17index 4b444eca..8610b9b8 100644
18--- a/inference-engine/thirdparty/clDNN/CMakeLists.txt
19+++ b/inference-engine/thirdparty/clDNN/CMakeLists.txt
20@@ -770,7 +770,6 @@ foreach(__CLDNN_CompilerFlagName IN ITEMS "CMAKE_CXX_FLAGS" "CMAKE_C_FLAGS")
21 MultiProcessorCompilation
22 DeadCodeEliminate
23 ExtensionsEnabled
24- TreatWarnAsErrorEnabled
25 WarnLevel4
26 NoFastMath
27 StackProtector
28--
292.25.4
30
diff --git a/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0003-inference-engine-installation-fixes.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0003-inference-engine-installation-fixes.patch
deleted file mode 100644
index ac34fa4f..00000000
--- a/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0003-inference-engine-installation-fixes.patch
+++ /dev/null
@@ -1,215 +0,0 @@
1From d9adfdc9c802fdb880fb658085854384f90a88c2 Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Thu, 11 Jun 2020 14:24:04 +0800
4Subject: [PATCH] cmake installation fixes
5
6Make sure that libraries/samples/binaries are installed correctly.
7
8Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
9---
10 CMakeLists.txt | 14 --------------
11 cmake/developer_package.cmake | 10 ++++++----
12 .../ie_bridges/c/samples/common/CMakeLists.txt | 2 ++
13 inference-engine/samples/CMakeLists.txt | 9 +++------
14 .../samples/common/format_reader/CMakeLists.txt | 2 ++
15 .../src/inference_engine/CMakeLists.txt | 4 ++--
16 .../src/vpu/myriad_plugin/CMakeLists.txt | 2 +-
17 inference-engine/tests/unit/cpu/CMakeLists.txt | 4 +++-
18 .../tests/unit/inference_engine/CMakeLists.txt | 2 ++
19 inference-engine/tests/unit/vpu/CMakeLists.txt | 4 +++-
20 10 files changed, 24 insertions(+), 29 deletions(-)
21
22diff --git a/CMakeLists.txt b/CMakeLists.txt
23index 1f981ed25..2c014ca27 100644
24--- a/CMakeLists.txt
25+++ b/CMakeLists.txt
26@@ -121,12 +121,8 @@ add_subdirectory(docs)
27
28 # install setupvars
29
30-ie_cpack_add_component(setupvars REQUIRED)
31
32 if(UNIX)
33- install(PROGRAMS scripts/setupvars/setupvars.sh
34- DESTINATION bin
35- COMPONENT setupvars)
36 elseif(WIN32)
37 install(PROGRAMS scripts/setupvars/setupvars.bat
38 DESTINATION bin
39@@ -136,22 +132,12 @@ endif()
40 # install install_dependencies
41
42 if(UNIX)
43- ie_cpack_add_component(install_dependencies REQUIRED)
44- install(DIRECTORY scripts/install_dependencies/
45- DESTINATION install_dependencies
46- COMPONENT install_dependencies)
47 endif()
48
49 # install files for demo
50
51-ie_cpack_add_component(demo_scripts REQUIRED DEPENDS core)
52
53 if(UNIX)
54- install(DIRECTORY scripts/demo/
55- DESTINATION deployment_tools/demo
56- COMPONENT demo_scripts
57- USE_SOURCE_PERMISSIONS
58- PATTERN *.bat EXCLUDE)
59 elseif(WIN32)
60 install(DIRECTORY scripts/demo/
61 DESTINATION deployment_tools/demo
62diff --git a/cmake/developer_package.cmake b/cmake/developer_package.cmake
63index 5e022244b..6e2cbf44e 100644
64--- a/cmake/developer_package.cmake
65+++ b/cmake/developer_package.cmake
66@@ -10,7 +10,9 @@ list(APPEND CMAKE_MODULE_PATH
67 include(CPackComponent)
68 unset(IE_CPACK_COMPONENTS_ALL CACHE)
69
70-set(IE_CPACK_IE_DIR deployment_tools/inference_engine)
71+if (NOT DEFINED IE_CPACK_IE_DIR)
72+ set(IE_CPACK_IE_DIR deployment_tools/inference_engine)
73+endif()
74
75 # Search packages for the host system instead of packages for the target system
76 # in case of cross compilation these macros should be defined by the toolchain file
77@@ -43,8 +45,8 @@ function(ie_cpack_set_library_dir)
78 set(IE_CPACK_RUNTIME_PATH ${IE_CPACK_IE_DIR}/bin/${ARCH}/${CMAKE_BUILD_TYPE} PARENT_SCOPE)
79 set(IE_CPACK_ARCHIVE_PATH ${IE_CPACK_IE_DIR}/lib/${ARCH}/${CMAKE_BUILD_TYPE} PARENT_SCOPE)
80 else()
81- set(IE_CPACK_LIBRARY_PATH ${IE_CPACK_IE_DIR}/lib/${ARCH} PARENT_SCOPE)
82- set(IE_CPACK_RUNTIME_PATH ${IE_CPACK_IE_DIR}/lib/${ARCH} PARENT_SCOPE)
83+ set(IE_CPACK_LIBRARY_PATH ${CMAKE_INSTALL_LIBDIR} PARENT_SCOPE)
84+ set(IE_CPACK_RUNTIME_PATH ${CMAKE_INSTALL_BINDIR} PARENT_SCOPE)
85 set(IE_CPACK_ARCHIVE_PATH ${IE_CPACK_IE_DIR}/lib/${ARCH} PARENT_SCOPE)
86 endif()
87 endfunction()
88@@ -147,7 +149,7 @@ endif()
89
90 # allow to override default OUTPUT_ROOT root
91 if(NOT DEFINED OUTPUT_ROOT)
92- set(OUTPUT_ROOT ${OpenVINO_MAIN_SOURCE_DIR})
93+ set(OUTPUT_ROOT ${CMAKE_CURRENT_BINARY_DIR})
94 endif()
95
96 # Enable postfixes for Debug/Release builds
97diff --git a/inference-engine/ie_bridges/c/samples/common/CMakeLists.txt b/inference-engine/ie_bridges/c/samples/common/CMakeLists.txt
98index b8d5ddf62..d086478f6 100644
99--- a/inference-engine/ie_bridges/c/samples/common/CMakeLists.txt
100+++ b/inference-engine/ie_bridges/c/samples/common/CMakeLists.txt
101@@ -29,3 +29,5 @@ set_target_properties(${TARGET_NAME} PROPERTIES FOLDER c_samples)
102 if(COMMAND add_cpplint_target)
103 add_cpplint_target(${TARGET_NAME}_cpplint FOR_TARGETS ${TARGET_NAME})
104 endif()
105+
106+install(TARGETS ${TARGET_NAME} DESTINATION ${CMAKE_INSTALL_LIBDIR})
107diff --git a/inference-engine/samples/CMakeLists.txt b/inference-engine/samples/CMakeLists.txt
108index 594e581b1..4e95a7808 100644
109--- a/inference-engine/samples/CMakeLists.txt
110+++ b/inference-engine/samples/CMakeLists.txt
111@@ -34,7 +34,7 @@ endif()
112
113 if(IE_MAIN_SOURCE_DIR)
114 # in case if samples are built from IE repo
115- set(IE_MAIN_SAMPLES_DIR ${OpenVINO_MAIN_SOURCE_DIR})
116+ set(IE_MAIN_SAMPLES_DIR ${CMAKE_BINARY_DIR})
117 # hint for find_package(InferenceEngine in the samples folder)
118 set(InferenceEngine_DIR "${CMAKE_BINARY_DIR}")
119 # hint for find_package(ngraph in the samples folder)
120@@ -118,11 +118,6 @@ set (HAVE_INTTYPES_H 1)
121 set (INTTYPES_FORMAT C99)
122 set (BUILD_TESTING OFF)
123
124-if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/gflags")
125- add_subdirectory(thirdparty/gflags)
126- set_target_properties(gflags_nothreads_static PROPERTIES FOLDER thirdparty)
127-endif()
128-
129 if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
130 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall")
131 endif()
132@@ -239,6 +234,8 @@ macro(ie_add_sample)
133 add_cpplint_target(${IE_SAMPLE_NAME}_cpplint FOR_TARGETS ${IE_SAMPLE_NAME}
134 CUSTOM_FILTERS ${custom_filters})
135 endif()
136+
137+ install(TARGETS ${IE_SAMPLE_NAME} DESTINATION bin)
138 endmacro()
139
140 # collect all samples subdirectories
141diff --git a/inference-engine/samples/common/format_reader/CMakeLists.txt b/inference-engine/samples/common/format_reader/CMakeLists.txt
142index 48dbed9f2..76532fd04 100644
143--- a/inference-engine/samples/common/format_reader/CMakeLists.txt
144+++ b/inference-engine/samples/common/format_reader/CMakeLists.txt
145@@ -41,3 +41,5 @@ target_include_directories(${TARGET_NAME} PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}"
146
147 set_target_properties(${TARGET_NAME} PROPERTIES COMPILE_PDB_NAME ${TARGET_NAME}
148 FOLDER cpp_samples)
149+
150+install(TARGETS ${TARGET_NAME} DESTINATION ${CMAKE_INSTALL_LIBDIR})
151diff --git a/inference-engine/src/inference_engine/CMakeLists.txt b/inference-engine/src/inference_engine/CMakeLists.txt
152index 4ae0d5607..b9ee12498 100644
153--- a/inference-engine/src/inference_engine/CMakeLists.txt
154+++ b/inference-engine/src/inference_engine/CMakeLists.txt
155@@ -265,8 +265,8 @@ install(TARGETS ${TARGET_NAME}
156 install(FILES "${OpenVINO_BINARY_DIR}/share/ie_parallel.cmake"
157 "${OpenVINO_BINARY_DIR}/share/InferenceEngineConfig.cmake"
158 "${OpenVINO_BINARY_DIR}/share/InferenceEngineConfig-version.cmake"
159- DESTINATION ${IE_CPACK_IE_DIR}/share
160+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/InferenceEngine
161 COMPONENT core)
162 install(FILES $<TARGET_FILE_DIR:${TARGET_NAME}>/plugins.xml
163- DESTINATION ${IE_CPACK_RUNTIME_PATH}
164+ DESTINATION ${CMAKE_INSTALL_LIBDIR}
165 COMPONENT core)
166diff --git a/inference-engine/src/vpu/myriad_plugin/CMakeLists.txt b/inference-engine/src/vpu/myriad_plugin/CMakeLists.txt
167index bf30d127c..6ed8c4081 100644
168--- a/inference-engine/src/vpu/myriad_plugin/CMakeLists.txt
169+++ b/inference-engine/src/vpu/myriad_plugin/CMakeLists.txt
170@@ -48,5 +48,5 @@ target_link_libraries(${TARGET_NAME}
171 # install
172
173 install(FILES ${IE_MAIN_SOURCE_DIR}/thirdparty/movidius/mvnc/src/97-myriad-usbboot.rules
174- DESTINATION ${IE_CPACK_IE_DIR}/external
175+ DESTINATION ${CMAKE_INSTALL_SYSCONFDIR}/udev/rules.d
176 COMPONENT myriad)
177diff --git a/inference-engine/tests/unit/cpu/CMakeLists.txt b/inference-engine/tests/unit/cpu/CMakeLists.txt
178index 9ec5ad025..45c62571a 100644
179--- a/inference-engine/tests/unit/cpu/CMakeLists.txt
180+++ b/inference-engine/tests/unit/cpu/CMakeLists.txt
181@@ -22,4 +22,6 @@ addIeTargetTest(
182 ADD_CPPLINT
183 LABELS
184 CPU
185-)
186\ No newline at end of file
187+)
188+
189+install(TARGETS ${TARGET_NAME} DESTINATION ${CMAKE_INSTALL_BINDIR})
190diff --git a/inference-engine/tests/unit/inference_engine/CMakeLists.txt b/inference-engine/tests/unit/inference_engine/CMakeLists.txt
191index 3eb21a434..09ba9225a 100644
192--- a/inference-engine/tests/unit/inference_engine/CMakeLists.txt
193+++ b/inference-engine/tests/unit/inference_engine/CMakeLists.txt
194@@ -15,3 +15,5 @@ addIeTargetTest(
195 LABELS
196 IE
197 )
198+
199+install(TARGETS ${TARGET_NAME} DESTINATION ${CMAKE_INSTALL_BINDIR})
200diff --git a/inference-engine/tests/unit/vpu/CMakeLists.txt b/inference-engine/tests/unit/vpu/CMakeLists.txt
201index 072103292..117cc9ee1 100644
202--- a/inference-engine/tests/unit/vpu/CMakeLists.txt
203+++ b/inference-engine/tests/unit/vpu/CMakeLists.txt
204@@ -26,4 +26,6 @@ addIeTargetTest(
205 LABELS
206 VPU
207 MYRIAD
208-)
209\ No newline at end of file
210+)
211+
212+install(TARGETS ${TARGET_NAME} DESTINATION ${CMAKE_INSTALL_BINDIR})
213--
2142.26.2
215
diff --git a/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0004-fix-compilation-errors.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0004-fix-compilation-errors.patch
deleted file mode 100644
index 1a54a124..00000000
--- a/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0004-fix-compilation-errors.patch
+++ /dev/null
@@ -1,23 +0,0 @@
1From ed444bf9f4dda442bd2da51140f45631163e0e55 Mon Sep 17 00:00:00 2001
2From: Vladimir Zinoviev <vladimir.zinoviev@intel.com>
3Date: Sun, 14 Jun 2020 18:54:36 +0300
4Subject: [PATCH] [CLDNN] Fix std::runtime_error missing (#871)
5
6Upstream-Status: Backport [https://github.com/openvinotoolkit/openvino/commit/ed444bf9f4dda442bd2da51140f45631163e0e55]
7Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
8---
9 .../thirdparty/clDNN/kernel_selector/common/tensor_type.h | 1 +
10 1 file changed, 1 insertion(+)
11
12diff --git a/inference-engine/thirdparty/clDNN/kernel_selector/common/tensor_type.h b/inference-engine/thirdparty/clDNN/kernel_selector/common/tensor_type.h
13index 3dbdfd0b22..2226f1a874 100644
14--- a/inference-engine/thirdparty/clDNN/kernel_selector/common/tensor_type.h
15+++ b/inference-engine/thirdparty/clDNN/kernel_selector/common/tensor_type.h
16@@ -25,6 +25,7 @@
17 #include <array>
18 #include <string>
19 #include <utility>
20+#include <stdexcept>
21
22 namespace kernel_selector {
23 #define KERNEL_SELECTOR_TENSOR_DIM_MAX 9
diff --git a/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0005-cldnn-fix-inclusion-of-headers.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0005-cldnn-fix-inclusion-of-headers.patch
deleted file mode 100644
index d47d273c..00000000
--- a/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0005-cldnn-fix-inclusion-of-headers.patch
+++ /dev/null
@@ -1,52 +0,0 @@
1From f201d67c965318ebe49f0d38ea36e530c35a4701 Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Wed, 10 Jun 2020 09:50:19 +0800
4Subject: [PATCH] cldnn: fix inclusion of headers
5
6Upstream-Status: Inappropriate
7
8Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
9---
10 inference-engine/include/gpu/gpu_ocl_wrapper.hpp | 2 +-
11 inference-engine/src/cldnn_engine/CMakeLists.txt | 1 +
12 .../thirdparty/clDNN/common/khronos_ocl_clhpp/cl2_ext.hpp | 2 +-
13 3 files changed, 3 insertions(+), 2 deletions(-)
14
15diff --git a/inference-engine/include/gpu/gpu_ocl_wrapper.hpp b/inference-engine/include/gpu/gpu_ocl_wrapper.hpp
16index fce7d8f17..827e5764a 100644
17--- a/inference-engine/include/gpu/gpu_ocl_wrapper.hpp
18+++ b/inference-engine/include/gpu/gpu_ocl_wrapper.hpp
19@@ -21,4 +21,4 @@
20 # pragma GCC system_header
21 #endif
22
23-#include <CL/cl2.hpp>
24+#include <cl2.hpp>
25diff --git a/inference-engine/src/cldnn_engine/CMakeLists.txt b/inference-engine/src/cldnn_engine/CMakeLists.txt
26index eeb9b5c80..32a283ba4 100644
27--- a/inference-engine/src/cldnn_engine/CMakeLists.txt
28+++ b/inference-engine/src/cldnn_engine/CMakeLists.txt
29@@ -33,6 +33,7 @@ target_include_directories(${TARGET_NAME} PRIVATE
30 ${CMAKE_CURRENT_SOURCE_DIR}
31 $<TARGET_PROPERTY:inference_engine_transformations,INTERFACE_INCLUDE_DIRECTORIES>
32 ${CLDNN__IOCL_ICD_INCDIRS}
33+ ${CLDNN_TOP_FOLDER}/common/khronos_ocl_clhpp
34 ${CLDNN_TOP_FOLDER})
35
36 # install
37diff --git a/inference-engine/thirdparty/clDNN/common/khronos_ocl_clhpp/cl2_ext.hpp b/inference-engine/thirdparty/clDNN/common/khronos_ocl_clhpp/cl2_ext.hpp
38index c67c81726..5ca48c597 100644
39--- a/inference-engine/thirdparty/clDNN/common/khronos_ocl_clhpp/cl2_ext.hpp
40+++ b/inference-engine/thirdparty/clDNN/common/khronos_ocl_clhpp/cl2_ext.hpp
41@@ -29,7 +29,7 @@ typedef cl_d3d11_device_set_khr cl_device_set_intel;
42 typedef cl_va_api_device_source_intel cl_device_source_intel;
43 typedef cl_va_api_device_set_intel cl_device_set_intel;
44 #endif
45-#include <CL/cl_intel_planar_yuv.h>
46+#include <CL/cl_ext_intel.h>
47 #include "cl_intel_usm_defs.h"
48
49 #include <memory>
50--
512.25.4
52
diff --git a/dynamic-layers/openembedded-layer/recipes-support/opencv/open-model-zoo/0001-use-oe-gflags.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/open-model-zoo/0001-use-oe-gflags.patch
deleted file mode 100644
index a938b942..00000000
--- a/dynamic-layers/openembedded-layer/recipes-support/opencv/open-model-zoo/0001-use-oe-gflags.patch
+++ /dev/null
@@ -1,115 +0,0 @@
1From d63d1a1291a2715b7d70ed88c4d764b22e6f2f4d Mon Sep 17 00:00:00 2001
2From: Liwei Song <liwei.song@windriver.com>
3Date: Fri, 22 May 2020 15:47:44 +0800
4Subject: [PATCH] use meta-oe gflags
5
6gflags is available in meta-oe, use this one instead of the thirdparty
7one in open-model-zoo
8
9Upstream-Status: Inappropriate [meta-intel specific]
10
11Signed-off-by: Liwei Song <liwei.song@windriver.com>
12---
13 CMakeLists.txt | 8 ++++----
14 multi_channel/common/CMakeLists.txt | 2 +-
15 multi_channel/face_detection_demo/CMakeLists.txt | 2 +-
16 multi_channel/human_pose_estimation_demo/CMakeLists.txt | 2 +-
17 multi_channel/object_detection_demo_yolov3/CMakeLists.txt | 2 +-
18 5 files changed, 8 insertions(+), 8 deletions(-)
19
20diff --git a/CMakeLists.txt b/CMakeLists.txt
21index 40b549f..dfdbf93 100644
22--- a/CMakeLists.txt
23+++ b/CMakeLists.txt
24@@ -89,12 +89,10 @@ if (${CMAKE_CXX_COMPILER_ID} STREQUAL GNU)
25 endif()
26 ####################################
27
28-set (GFLAGS_IS_SUBPROJECT TRUE)
29+set (GFLAGS_IS_SUBPROJECT FALSE)
30 set (HAVE_SYS_STAT_H 1)
31 set (HAVE_INTTYPES_H 1)
32
33-add_subdirectory(thirdparty/gflags)
34-
35 if (${CMAKE_CXX_COMPILER_ID} STREQUAL GNU)
36 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall")
37 endif()
38@@ -177,7 +175,7 @@ macro(ie_add_sample)
39 target_include_directories(${IE_SAMPLE_NAME} PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/../common")
40
41 target_link_libraries(${IE_SAMPLE_NAME} PRIVATE ${OpenCV_LIBRARIES} ${InferenceEngine_LIBRARIES}
42- ${IE_SAMPLE_DEPENDENCIES} gflags)
43+ ${IE_SAMPLE_DEPENDENCIES} ${GFLAGS_LIBRARIES})
44
45 if(UNIX)
46 target_link_libraries(${IE_SAMPLE_NAME} PRIVATE pthread)
47@@ -198,11 +196,13 @@ endmacro()
48 # use this flag if you need to throw custom message in case if the IE package is not found.
49 if (IE_NOT_FOUND_MESSAGE)
50 find_package(InferenceEngine 2.0 QUIET)
51+ find_package(gflags 2.2 QUIET)
52 if (NOT(InferenceEngine_FOUND))
53 message(FATAL_ERROR ${IE_NOT_FOUND_MESSAGE})
54 endif()
55 else()
56 find_package(InferenceEngine 2.0 REQUIRED)
57+ find_package(gflags 2.2 REQUIRED)
58 endif()
59
60 find_package(ngraph REQUIRED)
61diff --git a/multi_channel/common/CMakeLists.txt b/multi_channel/common/CMakeLists.txt
62index d5e5d93..c33afbb 100644
63--- a/multi_channel/common/CMakeLists.txt
64+++ b/multi_channel/common/CMakeLists.txt
65@@ -110,7 +110,7 @@ endif()
66
67 target_include_directories(${TARGET_NAME} PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}")
68
69-target_link_libraries(${TARGET_NAME} ${InferenceEngine_LIBRARIES} gflags ${OpenCV_LIBRARIES})
70+target_link_libraries(${TARGET_NAME} ${InferenceEngine_LIBRARIES} ${GFLAGS_LIBRARIES} ${OpenCV_LIBRARIES})
71
72 if(UNIX)
73 target_link_libraries( ${TARGET_NAME} pthread)
74diff --git a/multi_channel/face_detection_demo/CMakeLists.txt b/multi_channel/face_detection_demo/CMakeLists.txt
75index 5b497fc..78c518e 100644
76--- a/multi_channel/face_detection_demo/CMakeLists.txt
77+++ b/multi_channel/face_detection_demo/CMakeLists.txt
78@@ -60,7 +60,7 @@ if(MULTICHANNEL_DEMO_USE_TBB)
79 endif()
80 endif()
81
82-target_link_libraries(${TARGET_NAME} ${InferenceEngine_LIBRARIES} gflags ${OpenCV_LIBRARIES} common)
83+target_link_libraries(${TARGET_NAME} ${InferenceEngine_LIBRARIES} ${GFLAGS_LIBRARIES} ${OpenCV_LIBRARIES} common)
84
85 if(UNIX)
86 target_link_libraries( ${TARGET_NAME} pthread)
87diff --git a/multi_channel/human_pose_estimation_demo/CMakeLists.txt b/multi_channel/human_pose_estimation_demo/CMakeLists.txt
88index 7fe4823..7e76796 100644
89--- a/multi_channel/human_pose_estimation_demo/CMakeLists.txt
90+++ b/multi_channel/human_pose_estimation_demo/CMakeLists.txt
91@@ -60,7 +60,7 @@ if(MULTICHANNEL_DEMO_USE_TBB)
92 endif()
93 endif()
94
95-target_link_libraries(${TARGET_NAME} ${InferenceEngine_LIBRARIES} gflags ${OpenCV_LIBRARIES} common)
96+target_link_libraries(${TARGET_NAME} ${InferenceEngine_LIBRARIES} ${GFLAGS_LIBRARIES} ${OpenCV_LIBRARIES} common)
97
98 if(UNIX)
99 target_link_libraries( ${TARGET_NAME} pthread)
100diff --git a/multi_channel/object_detection_demo_yolov3/CMakeLists.txt b/multi_channel/object_detection_demo_yolov3/CMakeLists.txt
101index e959349..cf1de4a 100644
102--- a/multi_channel/object_detection_demo_yolov3/CMakeLists.txt
103+++ b/multi_channel/object_detection_demo_yolov3/CMakeLists.txt
104@@ -60,7 +60,7 @@ if(MULTICHANNEL_DEMO_USE_TBB)
105 endif()
106 endif()
107
108-target_link_libraries(${TARGET_NAME} ${InferenceEngine_LIBRARIES} gflags ${OpenCV_LIBRARIES} ngraph::ngraph common)
109+target_link_libraries(${TARGET_NAME} ${InferenceEngine_LIBRARIES} ${GFLAGS_LIBRARIES} ${OpenCV_LIBRARIES} ngraph::ngraph common)
110
111 if(UNIX)
112 target_link_libraries( ${TARGET_NAME} pthread)
113--
1142.25.4
115
diff --git a/dynamic-layers/openembedded-layer/recipes-support/opencv/open-model-zoo_2020.4.bb b/dynamic-layers/openembedded-layer/recipes-support/opencv/open-model-zoo_2020.4.bb
deleted file mode 100644
index 31bdb412..00000000
--- a/dynamic-layers/openembedded-layer/recipes-support/opencv/open-model-zoo_2020.4.bb
+++ /dev/null
@@ -1,61 +0,0 @@
1SUMMARY = "OpenVINO(TM) Toolkit - Open Model Zoo repository"
2HOMEPAGE = "https://github.com/opencv/open_model_zoo"
3DESCRIPTION = "This repository includes optimized deep learning \
4models and a set of demos to expedite development of high-performance \
5deep learning inference applications."
6
7SRC_URI = "git://github.com/opencv/open_model_zoo.git;protocol=git;branch=master \
8 file://0001-use-oe-gflags.patch \
9 "
10
11SRCREV = "366130da8fc27dd4d896639cb526a079acc07831"
12
13LICENSE = "Apache-2.0"
14LIC_FILES_CHKSUM = "file://../LICENSE;md5=86d3f3a95c324c9479bd8986968f4327 \
15"
16
17inherit cmake
18
19S = "${WORKDIR}/git/demos"
20
21DEPENDS += "openvino-inference-engine opencv gflags"
22
23RDEPENDS_${PN} += " \
24 python3-decorator \
25 python3-defusedxml \
26 python3-networkx \
27 python3-protobuf \
28 python3-test-generator \
29 python3-requests \
30 python3-pyyaml \
31"
32
33COMPATIBLE_HOST = '(x86_64).*-linux'
34
35EXTRA_OECMAKE += " \
36 -DIE_MAIN_SOURCE_DIR=${B} \
37 -DENABLE_SAMPLES=ON \
38 -DIE_INCLUDE_DIR=${STAGING_EXECPREFIXDIR} \
39 -DIE_RELEASE_LIBRARY=${STAGING_LIBDIR}/libinference_engine.so \
40 -DIE_C_API_RELEASE_LIBRARY=${STAGING_LIBDIR}/libinference_engine_c_api.so \
41 -DIE_LEGACY_RELEASE_LIBRARY=${STAGING_LIBDIR}/libinference_engine_legacy.so \
42 -DIE_NN_BUILDER_RELEASE_LIBRARY=${STAGING_LIBDIR}/libinference_engine_nn_builder.so \
43 -DIE_ROOT_DIR=${WORKDIR}/InferenceEngine \
44"
45
46do_configure_prepend(){
47 mkdir -p ${WORKDIR}/InferenceEngine/share
48 cp ${STAGING_LIBDIR}/cmake/InferenceEngine/* ${WORKDIR}/InferenceEngine/share/
49}
50
51do_install(){
52 install -d ${D}${libdir}
53 install -d ${D}${bindir}
54 install -d ${D}${datadir}/openvino/open-model-zoo/tools
55 cp -rf ${WORKDIR}/build/intel64/Release/lib/*.a ${D}${libdir}
56 cp -rf ${WORKDIR}/build/intel64/Release/*_demo* ${D}${bindir}
57 cp -rf ${WORKDIR}/git/models ${D}${datadir}/openvino/open-model-zoo
58 cp -rf ${WORKDIR}/git/tools/downloader ${D}${datadir}/openvino/open-model-zoo/tools
59}
60
61FILES_${PN} += "${datadir}/openvino"
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
deleted file mode 100644
index c2863e65..00000000
--- a/dynamic-layers/openembedded-layer/recipes-support/opencv/openvino-inference-engine_2020.4.bb
+++ /dev/null
@@ -1,124 +0,0 @@
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"