diff options
Diffstat (limited to 'dynamic-layers/clang-layer')
24 files changed, 316 insertions, 483 deletions
diff --git a/dynamic-layers/clang-layer/recipes-core/dnn/onednn_2.6.2.bb b/dynamic-layers/clang-layer/recipes-core/dnn/onednn_3.5.3.bb index 82d31d71..7a627e83 100644 --- a/dynamic-layers/clang-layer/recipes-core/dnn/onednn_2.6.2.bb +++ b/dynamic-layers/clang-layer/recipes-core/dnn/onednn_3.5.3.bb | |||
@@ -3,7 +3,7 @@ SUMMARY = "Deep Neural Network Library" | |||
3 | DESCRIPTION = "This software is a user mode library that accelerates\ | 3 | DESCRIPTION = "This software is a user mode library that accelerates\ |
4 | deep-learning applications and frameworks on Intel architecture." | 4 | deep-learning applications and frameworks on Intel architecture." |
5 | LICENSE = "Apache-2.0 & BSD-3-Clause & BSL-1.0" | 5 | LICENSE = "Apache-2.0 & BSD-3-Clause & BSL-1.0" |
6 | LIC_FILES_CHKSUM = "file://LICENSE;md5=b48e3de3bfd47c27882a0d85b20823f5 \ | 6 | LIC_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/common/ittnotify/LICENSE.BSD;md5=e671ff178b24a95a382ba670503c66fb \ | 9 | file://src/common/ittnotify/LICENSE.BSD;md5=e671ff178b24a95a382ba670503c66fb \ |
@@ -12,9 +12,11 @@ SECTION = "lib" | |||
12 | 12 | ||
13 | inherit pkgconfig cmake ptest | 13 | inherit pkgconfig cmake ptest |
14 | 14 | ||
15 | DNN_BRANCH = "rls-v${@'.'.join(d.getVar('PV').split('.')[0:2])}" | ||
16 | |||
15 | S = "${WORKDIR}/git" | 17 | S = "${WORKDIR}/git" |
16 | SRCREV = "b94c58c212cb54826b9c10602b045179c2ded91e" | 18 | SRCREV = "66f0cb9eb66affd2da3bf5f8d897376f04aae6af" |
17 | SRC_URI = "git://github.com/oneapi-src/oneDNN.git;branch=rls-v2.6;protocol=https \ | 19 | SRC_URI = "git://github.com/oneapi-src/oneDNN.git;branch=${DNN_BRANCH};protocol=https \ |
18 | file://run-ptest \ | 20 | file://run-ptest \ |
19 | " | 21 | " |
20 | 22 | ||
@@ -32,10 +34,11 @@ EXTRA_OECMAKE += " \ | |||
32 | -DDNNL_CPU_RUNTIME=OMP \ | 34 | -DDNNL_CPU_RUNTIME=OMP \ |
33 | -DDNNL_ARCH_OPT_FLAGS="" \ | 35 | -DDNNL_ARCH_OPT_FLAGS="" \ |
34 | -DCMAKE_SKIP_RPATH=ON \ | 36 | -DCMAKE_SKIP_RPATH=ON \ |
37 | -DONEDNN_BUILD_GRAPH=OFF \ | ||
35 | " | 38 | " |
36 | 39 | ||
37 | PACKAGECONFIG ??= "gpu" | 40 | PACKAGECONFIG ??= "gpu" |
38 | PACKAGECONFIG[gpu] = "-DDNNL_GPU_RUNTIME=OCL, , opencl-headers ocl-icd, intel-compute-runtime" | 41 | PACKAGECONFIG[gpu] = "-DDNNL_GPU_RUNTIME=OCL, , opencl-headers virtual/opencl-icd, intel-compute-runtime" |
39 | 42 | ||
40 | do_install:append () { | 43 | do_install:append () { |
41 | install -d ${D}${bindir}/mkl-dnn/tests/benchdnn/inputs | 44 | install -d ${D}${bindir}/mkl-dnn/tests/benchdnn/inputs |
diff --git a/dynamic-layers/clang-layer/recipes-core/ispc/ispc/0001-CMakeLists.txt-link-with-libclang-cpp-library-instea.patch b/dynamic-layers/clang-layer/recipes-core/ispc/ispc/0001-CMakeLists.txt-link-with-libclang-cpp-library-instea.patch deleted file mode 100644 index 4e25420c..00000000 --- a/dynamic-layers/clang-layer/recipes-core/ispc/ispc/0001-CMakeLists.txt-link-with-libclang-cpp-library-instea.patch +++ /dev/null | |||
@@ -1,28 +0,0 @@ | |||
1 | From b9bc0df996d1e65fd70d5eb2d40866693f23bb67 Mon Sep 17 00:00:00 2001 | ||
2 | From: Naveen Saini <naveen.kumar.saini@intel.com> | ||
3 | Date: Thu, 24 Jun 2021 17:53:27 +0800 | ||
4 | Subject: [PATCH] CMakeLists.txt: link with libclang-cpp library instead | ||
5 | |||
6 | Upstream-Status: Inappropriate | ||
7 | |||
8 | Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com> | ||
9 | --- | ||
10 | CMakeLists.txt | 2 +- | ||
11 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
12 | |||
13 | diff --git a/CMakeLists.txt b/CMakeLists.txt | ||
14 | index ef88317e..7507d6a5 100644 | ||
15 | --- a/CMakeLists.txt | ||
16 | +++ b/CMakeLists.txt | ||
17 | @@ -281,7 +281,7 @@ if (WASM_ENABLED) | ||
18 | list(APPEND ISPC_TARGETS wasm-i32x4) | ||
19 | endif() | ||
20 | |||
21 | -set(CLANG_LIBRARY_LIST clangFrontend clangDriver clangSerialization clangParse clangSema clangAnalysis clangAST clangBasic clangEdit clangLex) | ||
22 | +set(CLANG_LIBRARY_LIST clang-cpp) | ||
23 | set(LLVM_COMPONENTS engine ipo bitreader bitwriter instrumentation linker option frontendopenmp) | ||
24 | |||
25 | if (X86_ENABLED) | ||
26 | -- | ||
27 | 2.17.1 | ||
28 | |||
diff --git a/dynamic-layers/clang-layer/recipes-core/ispc/ispc/0001-Fix-QA-Issues.patch b/dynamic-layers/clang-layer/recipes-core/ispc/ispc/0001-Fix-QA-Issues.patch deleted file mode 100644 index e7bb599e..00000000 --- a/dynamic-layers/clang-layer/recipes-core/ispc/ispc/0001-Fix-QA-Issues.patch +++ /dev/null | |||
@@ -1,37 +0,0 @@ | |||
1 | From 139b94a7fb72114c31a2a6ab3f7e6024b4a738ec Mon Sep 17 00:00:00 2001 | ||
2 | From: Yogesh Tyagi <yogesh.tyagi@intel.com> | ||
3 | Date: Tue, 26 Jul 2022 15:25:10 +0800 | ||
4 | Subject: [PATCH] Fix QA Issues | ||
5 | |||
6 | Stop ispc from inserting host file path in generated headers which leads to reproducibility problems. | ||
7 | |||
8 | Upstream-Status: Inappropriate [OE build specific] | ||
9 | |||
10 | Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com> | ||
11 | |||
12 | --- | ||
13 | src/module.cpp | 4 ++-- | ||
14 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
15 | |||
16 | diff --git a/src/module.cpp b/src/module.cpp | ||
17 | index 58a2ae83..82673052 100644 | ||
18 | --- a/src/module.cpp | ||
19 | +++ b/src/module.cpp | ||
20 | @@ -2105,7 +2105,7 @@ bool Module::writeHeader(const char *fn) { | ||
21 | perror("fopen"); | ||
22 | return false; | ||
23 | } | ||
24 | - fprintf(f, "//\n// %s\n// (Header automatically generated by the ispc compiler.)\n", fn); | ||
25 | + fprintf(f, "//\n// \n// (Header automatically generated by the ispc compiler.)\n"); | ||
26 | fprintf(f, "// DO NOT EDIT THIS FILE.\n//\n\n"); | ||
27 | |||
28 | // Create a nice guard string from the filename, turning any | ||
29 | @@ -2219,7 +2219,7 @@ bool Module::writeDispatchHeader(DispatchHeaderInfo *DHI) { | ||
30 | FILE *f = DHI->file; | ||
31 | |||
32 | if (DHI->EmitFrontMatter) { | ||
33 | - fprintf(f, "//\n// %s\n// (Header automatically generated by the ispc compiler.)\n", DHI->fn); | ||
34 | + fprintf(f, "//\n// \n// (Header automatically generated by the ispc compiler.)\n"); | ||
35 | fprintf(f, "// DO NOT EDIT THIS FILE.\n//\n\n"); | ||
36 | } | ||
37 | // Create a nice guard string from the filename, turning any | ||
diff --git a/dynamic-layers/clang-layer/recipes-core/ispc/ispc/0002-cmake-don-t-build-for-32-bit-targets.patch b/dynamic-layers/clang-layer/recipes-core/ispc/ispc/0002-cmake-don-t-build-for-32-bit-targets.patch deleted file mode 100644 index a13ade9f..00000000 --- a/dynamic-layers/clang-layer/recipes-core/ispc/ispc/0002-cmake-don-t-build-for-32-bit-targets.patch +++ /dev/null | |||
@@ -1,64 +0,0 @@ | |||
1 | From 493e886d6dae2ed7bdc12ed03f717ee0e98dfe09 Mon Sep 17 00:00:00 2001 | ||
2 | From: Naveen Saini <naveen.kumar.saini@intel.com> | ||
3 | Date: Thu, 24 Feb 2022 20:01:11 +0530 | ||
4 | Subject: [PATCH] cmake: don't build for 32-bit targets | ||
5 | |||
6 | Error 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 | |||
12 | Remove SYSTEM include search path and set -isysroot dir path | ||
13 | for root dir for cross compilation. | ||
14 | |||
15 | Upstream-Status: Inappropriate | ||
16 | |||
17 | Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com> | ||
18 | --- | ||
19 | cmake/GenerateBuiltins.cmake | 8 ++++---- | ||
20 | 1 file changed, 4 insertions(+), 4 deletions(-) | ||
21 | |||
22 | diff --git a/cmake/GenerateBuiltins.cmake b/cmake/GenerateBuiltins.cmake | ||
23 | index fa228247..7adc7e52 100644 | ||
24 | --- a/cmake/GenerateBuiltins.cmake | ||
25 | +++ b/cmake/GenerateBuiltins.cmake | ||
26 | @@ -272,7 +272,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 | @@ -354,7 +354,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 | @@ -415,7 +415,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" "wasm32") | ||
52 | builtin_to_cpp(${bit} ${os_name} ${arch} "${supported_archs}" "${supported_oses}" res${bit}${os_name}${arch}) | ||
53 | @@ -428,7 +428,7 @@ function (generate_common_builtins resultList) | ||
54 | endforeach() | ||
55 | endforeach() | ||
56 | if (XE_ENABLED) | ||
57 | - foreach (bit 32 64) | ||
58 | + foreach (bit 64) | ||
59 | builtin_xe_to_cpp(${bit} res_xe_${bit}) | ||
60 | list(APPEND tmpList ${res_xe_${bit}} ) | ||
61 | if(MSVC) | ||
62 | -- | ||
63 | 2.17.1 | ||
64 | |||
diff --git a/dynamic-layers/clang-layer/recipes-core/ispc/ispc/6a1b2ffae0cc12467838bc671e3b089924de90a6.patch b/dynamic-layers/clang-layer/recipes-core/ispc/ispc/6a1b2ffae0cc12467838bc671e3b089924de90a6.patch deleted file mode 100644 index 6aac0c79..00000000 --- a/dynamic-layers/clang-layer/recipes-core/ispc/ispc/6a1b2ffae0cc12467838bc671e3b089924de90a6.patch +++ /dev/null | |||
@@ -1,33 +0,0 @@ | |||
1 | From 6a1b2ffae0cc12467838bc671e3b089924de90a6 Mon Sep 17 00:00:00 2001 | ||
2 | From: Dmitry Babokin <dmitry.y.babokin@intel.com> | ||
3 | Date: Thu, 5 May 2022 16:34:34 -0700 | ||
4 | Subject: [PATCH] Bump ISPC version v1.19.0dev | ||
5 | |||
6 | Upstream-Status: Backport | ||
7 | |||
8 | Include only the LLVM specific bits and not the ispc version bump. | ||
9 | |||
10 | Signed-off-by: Anuj Mittal <anuj.mittal@intel.com> | ||
11 | --- | ||
12 | diff --git a/src/ispc_version.h b/src/ispc_version.h | ||
13 | index 0e28dfcfa..2b9d9b0cc 100644 | ||
14 | --- a/src/ispc_version.h | ||
15 | +++ b/src/ispc_version.h | ||
16 | @@ -51,7 +51,7 @@ | ||
17 | #define ISPC_LLVM_15_0 150000 | ||
18 | |||
19 | #define OLDEST_SUPPORTED_LLVM ISPC_LLVM_10_0 | ||
20 | -#define LATEST_SUPPORTED_LLVM ISPC_LLVM_14_0 | ||
21 | +#define LATEST_SUPPORTED_LLVM ISPC_LLVM_15_0 | ||
22 | |||
23 | #ifdef __ispc__xstr | ||
24 | #undef __ispc__xstr | ||
25 | @@ -63,7 +63,7 @@ | ||
26 | __ispc__xstr(LLVM_VERSION_MAJOR) "." __ispc__xstr(LLVM_VERSION_MINOR) "." __ispc__xstr(LLVM_VERSION_PATCH) | ||
27 | |||
28 | #if ISPC_LLVM_VERSION < OLDEST_SUPPORTED_LLVM || ISPC_LLVM_VERSION > LATEST_SUPPORTED_LLVM | ||
29 | -#error "Only LLVM 11.0 - 14.0 are supported" | ||
30 | +#error "Only LLVM 11.0 - 14.0 and 15.0 development branch are supported" | ||
31 | #endif | ||
32 | |||
33 | #define ISPC_VERSION_STRING \ | ||
diff --git a/dynamic-layers/clang-layer/recipes-core/ispc/ispc/ec35a6f8e60ba77e59a6f2bfec27011e0ab34dda.patch b/dynamic-layers/clang-layer/recipes-core/ispc/ispc/ec35a6f8e60ba77e59a6f2bfec27011e0ab34dda.patch deleted file mode 100644 index a5ab8c19..00000000 --- a/dynamic-layers/clang-layer/recipes-core/ispc/ispc/ec35a6f8e60ba77e59a6f2bfec27011e0ab34dda.patch +++ /dev/null | |||
@@ -1,63 +0,0 @@ | |||
1 | From ec35a6f8e60ba77e59a6f2bfec27011e0ab34dda Mon Sep 17 00:00:00 2001 | ||
2 | From: Arina Neshlyaeva <arina.neshlyaeva@intel.com> | ||
3 | Date: Tue, 23 Aug 2022 15:21:50 -0700 | ||
4 | Subject: [PATCH] Adjust opt passes for LLVM 15 | ||
5 | |||
6 | Upstream-Status: Backport | ||
7 | Signed-off-by: Anuj Mittal <anuj.mittal@intel.com> | ||
8 | --- | ||
9 | src/opt.cpp | 17 +++++++++++++++++ | ||
10 | 1 file changed, 17 insertions(+) | ||
11 | |||
12 | diff --git a/src/opt.cpp b/src/opt.cpp | ||
13 | index 910821e26..86219f384 100644 | ||
14 | --- a/src/opt.cpp | ||
15 | +++ b/src/opt.cpp | ||
16 | @@ -84,6 +84,9 @@ | ||
17 | #include <llvm/Transforms/Scalar.h> | ||
18 | #include <llvm/Transforms/Scalar/GVN.h> | ||
19 | #include <llvm/Transforms/Scalar/InstSimplifyPass.h> | ||
20 | +#if ISPC_LLVM_VERSION >= ISPC_LLVM_15_0 | ||
21 | +#include <llvm/Transforms/Scalar/SimpleLoopUnswitch.h> | ||
22 | +#endif | ||
23 | #include <llvm/Transforms/Utils.h> | ||
24 | #include <llvm/Transforms/Utils/BasicBlockUtils.h> | ||
25 | |||
26 | @@ -647,7 +650,11 @@ void ispc::Optimize(llvm::Module *module, int optLevel) { | ||
27 | optPM.add(llvm::createCFGSimplificationPass()); | ||
28 | #endif | ||
29 | |||
30 | +#if ISPC_LLVM_VERSION < ISPC_LLVM_15_0 | ||
31 | + // Starting LLVM 15.0 this pass is supported with new pass manager only (217e857) | ||
32 | + // TODO: switch ISPC to new pass manager: https://github.com/ispc/ispc/issues/2359 | ||
33 | optPM.add(llvm::createArgumentPromotionPass()); | ||
34 | +#endif | ||
35 | |||
36 | optPM.add(llvm::createAggressiveDCEPass()); | ||
37 | optPM.add(llvm::createInstructionCombiningPass(), 241); | ||
38 | @@ -722,7 +729,11 @@ void ispc::Optimize(llvm::Module *module, int optLevel) { | ||
39 | optPM.add(CreateInstructionSimplifyPass()); | ||
40 | |||
41 | optPM.add(llvm::createFunctionInliningPass()); | ||
42 | +#if ISPC_LLVM_VERSION < ISPC_LLVM_15_0 | ||
43 | + // Starting LLVM 15.0 this pass is supported with new pass manager only (217e857) | ||
44 | + // TODO: switch ISPC to new pass manager: https://github.com/ispc/ispc/issues/2359 | ||
45 | optPM.add(llvm::createArgumentPromotionPass()); | ||
46 | +#endif | ||
47 | |||
48 | optPM.add(llvm::createSROAPass()); | ||
49 | |||
50 | @@ -736,7 +747,13 @@ void ispc::Optimize(llvm::Module *module, int optLevel) { | ||
51 | optPM.add(llvm::createReassociatePass()); | ||
52 | optPM.add(llvm::createLoopRotatePass()); | ||
53 | optPM.add(llvm::createLICMPass()); | ||
54 | + // Loop unswitch pass was removed in LLVM 15.0 (fb4113). | ||
55 | + // Recommended replacement: createSimpleLoopUnswitchLegacyPass | ||
56 | +#if ISPC_LLVM_VERSION < ISPC_LLVM_15_0 | ||
57 | optPM.add(llvm::createLoopUnswitchPass(false)); | ||
58 | +#else | ||
59 | + optPM.add(llvm::createSimpleLoopUnswitchLegacyPass(false)); | ||
60 | +#endif | ||
61 | optPM.add(llvm::createInstructionCombiningPass()); | ||
62 | optPM.add(CreateInstructionSimplifyPass()); | ||
63 | optPM.add(llvm::createIndVarSimplifyPass()); | ||
diff --git a/dynamic-layers/clang-layer/recipes-core/ispc/ispc_1.18.0.bb b/dynamic-layers/clang-layer/recipes-core/ispc/ispc_1.18.0.bb deleted file mode 100644 index 24b0988e..00000000 --- a/dynamic-layers/clang-layer/recipes-core/ispc/ispc_1.18.0.bb +++ /dev/null | |||
@@ -1,49 +0,0 @@ | |||
1 | SUMMARY = "Intel(R) Implicit SPMD Program Compiler" | ||
2 | DESCRIPTION = "ispc is a compiler for a variant of the C programming language, \ | ||
3 | with extensions for single program, multiple data programming." | ||
4 | HOMEPAGE = "https://github.com/ispc/ispc" | ||
5 | |||
6 | LICENSE = "BSD-3-Clause & Apache-2.0-with-LLVM-exception" | ||
7 | LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=da5ecffdd210b3cf776b32b41c182e87 \ | ||
8 | file://third-party-programs.txt;md5=3cd6f8a7c3bd9d2bb898fcb27c75221a" | ||
9 | |||
10 | inherit cmake python3native | ||
11 | |||
12 | S = "${WORKDIR}/git" | ||
13 | |||
14 | SRC_URI = "git://github.com/ispc/ispc.git;protocol=https;branch=main \ | ||
15 | file://0001-CMakeLists.txt-link-with-libclang-cpp-library-instea.patch \ | ||
16 | file://0002-cmake-don-t-build-for-32-bit-targets.patch \ | ||
17 | file://0001-Fix-QA-Issues.patch \ | ||
18 | file://6a1b2ffae0cc12467838bc671e3b089924de90a6.patch \ | ||
19 | file://ec35a6f8e60ba77e59a6f2bfec27011e0ab34dda.patch \ | ||
20 | " | ||
21 | SRCREV = "f7ec3aa173c816377c215d83196b5c7c3a88db1c" | ||
22 | |||
23 | COMPATIBLE_HOST = '(x86_64).*-linux' | ||
24 | |||
25 | DEPENDS += " clang-native bison-native flex-native" | ||
26 | RDEPENDS:${PN} += " clang-libllvm clang" | ||
27 | |||
28 | YFLAGS='-d -t -v -y --file-prefix-map=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}' | ||
29 | |||
30 | do_configure:prepend() { | ||
31 | sed -i -e 's#\${BISON_EXECUTABLE}.*#\${BISON_EXECUTABLE} ${YFLAGS} #g' ${S}/CMakeLists.txt | ||
32 | sed -i -e 's#\${FLEX_EXECUTABLE}.*#\${FLEX_EXECUTABLE} \-L #g' ${S}/CMakeLists.txt | ||
33 | } | ||
34 | |||
35 | EXTRA_OECMAKE += " \ | ||
36 | -DISPC_INCLUDE_TESTS=OFF \ | ||
37 | -DISPC_INCLUDE_EXAMPLES=OFF \ | ||
38 | -DISPC_NO_DUMPS=ON \ | ||
39 | -DARM_ENABLED=OFF \ | ||
40 | -DISPC_CROSS=ON \ | ||
41 | -DISPC_ANDROID_TARGET=OFF \ | ||
42 | -DISPC_FREEBSD_TARGET=OFF \ | ||
43 | -DISPC_WINDOWS_TARGET=OFF \ | ||
44 | -DISPC_IOS_TARGET=OFF \ | ||
45 | -DISPC_PS4_TARGET=OFF \ | ||
46 | -DSYSROOT_DIR=${STAGING_DIR_NATIVE} \ | ||
47 | " | ||
48 | |||
49 | BBCLASSEXTEND = "native nativesdk" | ||
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/0002-Build-not-able-to-locate-cpp_generation_tool.patch index 4646856d..45288ce1 100644 --- 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/0002-Build-not-able-to-locate-cpp_generation_tool.patch | |||
@@ -1,35 +1,34 @@ | |||
1 | From 40e9344d37d62158e6c9f72919f0595ef5fde61a Mon Sep 17 00:00:00 2001 | 1 | From 8c330d0cb5167612296801f0202b0de35e9ca88d Mon Sep 17 00:00:00 2001 |
2 | From: Dongwon Kim <dongwon.kim@intel.com> | 2 | From: Dongwon Kim <dongwon.kim@intel.com> |
3 | Date: Sat, 21 Aug 2021 16:09:39 -0700 | 3 | Date: Sat, 21 Aug 2021 16:09:39 -0700 |
4 | Subject: [PATCH] Build not able to locate cpp_generation_tool. | 4 | Subject: [PATCH 2/5] Build not able to locate cpp_generation_tool. |
5 | 5 | ||
6 | Upstream-Status: Inappropriate [oe specific] | 6 | Upstream-Status: Inappropriate [oe specific] |
7 | 7 | ||
8 | Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com> | 8 | Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com> |
9 | Signed-off-by: Dongwon Kim <dongwon.kim@intel.com> | 9 | Signed-off-by: Dongwon Kim <dongwon.kim@intel.com> |
10 | |||
11 | --- | 10 | --- |
12 | shared/source/built_ins/kernels/CMakeLists.txt | 8 ++++---- | 11 | shared/source/built_ins/kernels/CMakeLists.txt | 10 +++++----- |
13 | 1 file changed, 4 insertions(+), 4 deletions(-) | 12 | 1 file changed, 5 insertions(+), 5 deletions(-) |
14 | 13 | ||
15 | diff --git a/shared/source/built_ins/kernels/CMakeLists.txt b/shared/source/built_ins/kernels/CMakeLists.txt | 14 | Index: git/shared/source/built_ins/kernels/CMakeLists.txt |
16 | index 769e2a100..eef25747e 100644 | 15 | =================================================================== |
17 | --- a/shared/source/built_ins/kernels/CMakeLists.txt | 16 | --- git.orig/shared/source/built_ins/kernels/CMakeLists.txt |
18 | +++ b/shared/source/built_ins/kernels/CMakeLists.txt | 17 | +++ git/shared/source/built_ins/kernels/CMakeLists.txt |
19 | @@ -94,9 +94,9 @@ function(compile_builtin core_type platform_type builtin bits builtin_options mo | 18 | @@ -122,9 +122,9 @@ function(compile_builtin core_type platf |
20 | ) | 19 | endif() |
21 | add_custom_command( | 20 | add_custom_command( |
22 | OUTPUT ${OUTPUT_FILE_CPP} | 21 | OUTPUT ${OUTPUT_FILE_CPP} |
23 | - COMMAND $<TARGET_FILE:cpp_generate_tool> --file ${BINARY_OUTPUT}.gen --output ${OUTPUT_FILE_CPP} --array ${mode}_${BASENAME} --platform ${family_name_with_type} --revision_id ${REVISION_ID} | 22 | - COMMAND $<TARGET_FILE:cpp_generate_tool> --file ${BINARY_OUTPUT}.bin --output ${OUTPUT_FILE_CPP} --array ${mode}_${BASENAME} --device ${RELEASE_FILENAME} |
24 | + COMMAND cpp_generate_tool --file ${BINARY_OUTPUT}.gen --output ${OUTPUT_FILE_CPP} --array ${mode}_${BASENAME} --platform ${family_name_with_type} --revision_id ${REVISION_ID} | 23 | + COMMAND cpp_generate_tool --file ${BINARY_OUTPUT}.bin --output ${OUTPUT_FILE_CPP} --array ${mode}_${BASENAME} --device ${RELEASE_FILENAME} |
25 | WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} | 24 | WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} |
26 | - DEPENDS ${OUTPUT_FILES_BINARIES} $<TARGET_FILE:cpp_generate_tool> | 25 | - DEPENDS ${OUTPUT_FILES_BINARIES} $<TARGET_FILE:cpp_generate_tool> |
27 | + DEPENDS ${OUTPUT_FILES_BINARIES} cpp_generate_tool | 26 | + DEPENDS ${OUTPUT_FILES_BINARIES} cpp_generate_tool |
28 | ) | 27 | ) |
29 | list(APPEND BUILTINS_COMMANDS "${OUTPUT_FILE_CPP}") | 28 | list(APPEND BUILTINS_COMMANDS "${OUTPUT_FILE_CPP}") |
30 | else() | 29 | else() |
31 | @@ -147,9 +147,9 @@ function(generate_cpp_spirv builtin) | 30 | @@ -176,9 +176,9 @@ function(generate_cpp_spirv builtin) |
32 | ) | 31 | endif() |
33 | add_custom_command( | 32 | add_custom_command( |
34 | OUTPUT ${OUTPUT_FILE_CPP} | 33 | OUTPUT ${OUTPUT_FILE_CPP} |
35 | - COMMAND $<TARGET_FILE:cpp_generate_tool> --file ${GENERATED_SPV_INPUT} --output ${OUTPUT_FILE_CPP} --array ${BASENAME} | 34 | - COMMAND $<TARGET_FILE:cpp_generate_tool> --file ${GENERATED_SPV_INPUT} --output ${OUTPUT_FILE_CPP} --array ${BASENAME} |
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 @@ | |||
1 | From 0006db5f55a9f08bd3452558a53704cd3bbb790f Mon Sep 17 00:00:00 2001 | ||
2 | From: Dongwon Kim <dongwon.kim@intel.com> | ||
3 | Date: Wed, 2 Mar 2022 15:52:45 -0800 | ||
4 | Subject: [PATCH 3/5] external ocloc | ||
5 | |||
6 | Upstream-Status: Inappropriate | ||
7 | |||
8 | Signed-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 | |||
13 | Index: 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/external-ocloc.patch b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/external-ocloc.patch deleted file mode 100644 index 9ee8c96a..00000000 --- a/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/external-ocloc.patch +++ /dev/null | |||
@@ -1,40 +0,0 @@ | |||
1 | From 1189028d9f77265edf6258a66f8ecadf3aad556a Mon Sep 17 00:00:00 2001 | ||
2 | From: Dongwon Kim <dongwon.kim@intel.com> | ||
3 | Date: Wed, 2 Mar 2022 15:52:45 -0800 | ||
4 | Subject: [PATCH] external ocloc | ||
5 | |||
6 | Upstream-Status: Inappropriate | ||
7 | |||
8 | Signed-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 | |||
13 | diff --git a/cmake/ocloc_cmd_prefix.cmake b/cmake/ocloc_cmd_prefix.cmake | ||
14 | index 9b6bd3cd3..0aba48709 100644 | ||
15 | --- a/cmake/ocloc_cmd_prefix.cmake | ||
16 | +++ b/cmake/ocloc_cmd_prefix.cmake | ||
17 | @@ -4,12 +4,14 @@ | ||
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 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 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=${NEO__IGC_LIBRARY_PATH}:$<TARGET_FILE_DIR:ocloc_lib> $<TARGET_FILE:ocloc>) | ||
33 | + else() | ||
34 | + set(ocloc_cmd_prefix LD_LIBRARY_PATH=$<TARGET_FILE_DIR:ocloc_lib> $<TARGET_FILE:ocloc>) | ||
35 | + endif() | ||
36 | endif() | ||
37 | endif() | ||
38 | -- | ||
39 | 2.20.1 | ||
40 | |||
diff --git a/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime_22.38.24278.bb b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime_25.13.33276.16.bb index f7043a18..635e8c2f 100644 --- a/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime_22.38.24278.bb +++ b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime_25.13.33276.16.bb | |||
@@ -4,27 +4,24 @@ is an open source project to converge Intel's development efforts \ | |||
4 | on OpenCL(TM) compute stacks supporting the GEN graphics hardware \ | 4 | on OpenCL(TM) compute stacks supporting the GEN graphics hardware \ |
5 | architecture." | 5 | architecture." |
6 | 6 | ||
7 | LICENSE = "MIT" | 7 | LICENSE = "MIT & Apache-2.0" |
8 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=9280143b568466d8fbe385f838078b93 \ | 8 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=eca6ec6997e18db166db7109cdbe611c \ |
9 | file://third_party/opencl_headers/LICENSE;md5=dcefc90f4c3c689ec0c2489064e7273b" | 9 | file://third_party/opencl_headers/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" |
10 | 10 | ||
11 | SRC_URI = "git://github.com/intel/compute-runtime.git;protocol=https;branch=master \ | 11 | SRC_URI = "git://github.com/intel/compute-runtime.git;protocol=https;branch=releases/25.13 \ |
12 | " | 12 | file://0002-Build-not-able-to-locate-cpp_generation_tool.patch \ |
13 | file://0003-external-ocloc.patch \ | ||
14 | " | ||
13 | 15 | ||
14 | SRC_URI:append:class-target = "file://allow-to-find-cpp-generation-tool.patch \ | 16 | SRCREV = "a9961bdfaa07250fd52ff930bf8f31fb4e3b7799" |
15 | file://external-ocloc.patch \ | ||
16 | " | ||
17 | |||
18 | SRCREV = "f7a4790d84eba7d0ee2028a900625bdfc0c557b3" | ||
19 | 17 | ||
20 | S = "${WORKDIR}/git" | 18 | S = "${WORKDIR}/git" |
21 | 19 | ||
22 | DEPENDS += " intel-graphics-compiler gmmlib" | 20 | DEPENDS += " intel-graphics-compiler gmmlib libva qemu-native" |
23 | DEPENDS:append:class-target = " intel-compute-runtime-native libva" | ||
24 | 21 | ||
25 | RDEPENDS:${PN} += " intel-graphics-compiler gmmlib" | 22 | RDEPENDS:${PN} += " intel-graphics-compiler gmmlib" |
26 | 23 | ||
27 | inherit cmake pkgconfig | 24 | inherit cmake pkgconfig qemu |
28 | 25 | ||
29 | COMPATIBLE_HOST = '(x86_64).*-linux' | 26 | COMPATIBLE_HOST = '(x86_64).*-linux' |
30 | COMPATIBLE_HOST:libc-musl = "null" | 27 | COMPATIBLE_HOST:libc-musl = "null" |
@@ -40,14 +37,20 @@ EXTRA_OECMAKE = " \ | |||
40 | 37 | ||
41 | EXTRA_OECMAKE:append:class-target = " \ | 38 | EXTRA_OECMAKE:append:class-target = " \ |
42 | -Docloc_cmd_prefix=ocloc \ | 39 | -Docloc_cmd_prefix=ocloc \ |
43 | " | 40 | -DCMAKE_CROSSCOMPILING_EMULATOR=${WORKDIR}/qemuwrapper \ |
41 | " | ||
44 | 42 | ||
45 | PACKAGECONFIG ??= "" | 43 | PACKAGECONFIG ??= "" |
46 | PACKAGECONFIG[levelzero] = "-DBUILD_WITH_L0=ON, -DBUILD_WITH_L0=OFF, level-zero" | 44 | PACKAGECONFIG[levelzero] = "-DBUILD_WITH_L0=ON, -DBUILD_WITH_L0=OFF, level-zero" |
47 | 45 | ||
48 | do_install:append:class-native() { | 46 | do_configure:prepend:class-target () { |
49 | install -d ${D}${bindir} | 47 | # Write out a qemu wrapper that will be used by cmake. |
50 | install ${B}/bin/cpp_generate_tool ${D}${bindir}/ | 48 | 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}')])}" |
49 | cat > ${WORKDIR}/qemuwrapper << EOF | ||
50 | #!/bin/sh | ||
51 | $qemu_binary "\$@" | ||
52 | EOF | ||
53 | chmod +x ${WORKDIR}/qemuwrapper | ||
51 | } | 54 | } |
52 | 55 | ||
53 | FILES:${PN} += " \ | 56 | FILES:${PN} += " \ |
@@ -57,6 +60,4 @@ FILES:${PN} += " \ | |||
57 | 60 | ||
58 | FILES:${PN}-dev = "${includedir}" | 61 | FILES:${PN}-dev = "${includedir}" |
59 | 62 | ||
60 | BBCLASSEXTEND = "native nativesdk" | ||
61 | |||
62 | UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)" | 63 | UPSTREAM_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 index 0dd75537..456a8c65 100644 --- 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 | |||
@@ -1,4 +1,4 @@ | |||
1 | From 16fb6c022380bbb3c48f21372fcb1da7f30d3903 Mon Sep 17 00:00:00 2001 | 1 | From 1b98a931c3bf8daccc48cd618335ff35e3d382da Mon Sep 17 00:00:00 2001 |
2 | From: Anuj Mittal <anuj.mittal@intel.com> | 2 | From: Anuj Mittal <anuj.mittal@intel.com> |
3 | Date: Tue, 12 Oct 2021 23:46:42 +0800 | 3 | Date: Tue, 12 Oct 2021 23:46:42 +0800 |
4 | Subject: [PATCH] BiF/CMakeLists.txt: remove opt from DEPENDS | 4 | Subject: [PATCH] BiF/CMakeLists.txt: remove opt from DEPENDS |
@@ -14,22 +14,19 @@ Upstream-Status: Inappropriate | |||
14 | 14 | ||
15 | Signed-off-by: Anuj Mittal <anuj.mittal@intel.com> | 15 | Signed-off-by: Anuj Mittal <anuj.mittal@intel.com> |
16 | --- | 16 | --- |
17 | IGC/VectorCompiler/lib/BiF/CMakeLists.txt | 2 +- | 17 | IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake | 2 +- |
18 | 1 file changed, 1 insertion(+), 1 deletion(-) | 18 | 1 file changed, 1 insertion(+), 1 deletion(-) |
19 | 19 | ||
20 | diff --git a/IGC/VectorCompiler/lib/BiF/CMakeLists.txt b/IGC/VectorCompiler/lib/BiF/CMakeLists.txt | 20 | Index: git/IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake |
21 | index be8e5557e..07ab40382 100644 | 21 | =================================================================== |
22 | --- a/IGC/VectorCompiler/lib/BiF/CMakeLists.txt | 22 | --- git.orig/IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake |
23 | +++ b/IGC/VectorCompiler/lib/BiF/CMakeLists.txt | 23 | +++ git/IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake |
24 | @@ -112,7 +112,7 @@ function(vc_build_bif RES_FILE CMCL_SRC_PATH BIF_NAME PTR_BIT_SIZE) | 24 | @@ -121,7 +121,7 @@ function(vc_build_bif RES_FILE CMCL_SRC_ |
25 | add_custom_command(OUTPUT ${BIF_OPT_BC_PATH} | 25 | COMMENT "vc_build_bif: Translating CMCL builtins: ${BIF_CLANG_BC_NAME_FINAL} -> ${BIF_OPT_BC_NAME}" |
26 | COMMAND ${LLVM_OPT_EXE} --O2 -o ${BIF_OPT_BC_NAME} ${BIF_CMCL_BC_NAME} | 26 | COMMAND CMCLTranslatorTool ${OPT_OPAQUE_ARG} -o ${BIF_CMCL_BC_PATH} ${BIF_CLANG_BC_PATH_FINAL} |
27 | COMMENT "vc_build_bif: running opt with O2: ${BIF_CMCL_BC_NAME} -> ${BIF_OPT_BC_NAME}" | 27 | COMMAND ${LLVM_OPT_EXE} ${OPT_OPAQUE_ARG} --O2 -o ${BIF_OPT_BC_PATH} ${BIF_CMCL_BC_PATH} |
28 | - DEPENDS opt ${BIF_CMCL_BC_PATH}) | 28 | - DEPENDS CMCLTranslatorTool ${LLVM_OPT_EXE} ${OPT_BC_DEPENDS}) |
29 | + DEPENDS ${BIF_CMCL_BC_PATH}) | 29 | + DEPENDS CMCLTranslatorTool ${BIF_CLANG_BC_PATH_FINAL}) |
30 | set(${RES_FILE} ${BIF_OPT_BC_NAME} PARENT_SCOPE) | ||
31 | endfunction() | ||
32 | 30 | ||
33 | -- | 31 | add_custom_target(${TARGET_NAME} |
34 | 2.35.3 | 32 | DEPENDS ${BIF_OPT_BC_PATH} |
35 | |||
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 @@ | |||
1 | From 048512728eea53b3772a3f80ac9743bfc462487e Mon Sep 17 00:00:00 2001 | ||
2 | From: Yogesh Tyagi <yogesh.tyagi@intel.com> | ||
3 | Date: Thu, 2 Jan 2025 15:59:27 +0530 | ||
4 | Subject: [PATCH] Build not able to locate BiFManager-bin | ||
5 | |||
6 | Upstream-Status: Inappropriate [oe specific] | ||
7 | |||
8 | Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com> | ||
9 | --- | ||
10 | IGC/BiFModule/CMakeLists.txt | 4 ++-- | ||
11 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
12 | |||
13 | Index: 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 @@ | |||
1 | From 251e2854dd206ebf66e5908d3277e4585fe2a63b Mon Sep 17 00:00:00 2001 | ||
2 | From: Anuj Mittal <anuj.mittal@intel.com> | ||
3 | Date: Mon, 9 Jan 2023 11:43:05 +0800 | ||
4 | Subject: [PATCH] external/SPIRV-Tools: change path to tools and headers | ||
5 | |||
6 | We clone the SPIRV headers and tools in a different directory to ensure | ||
7 | file path substitutions take place. | ||
8 | |||
9 | Upstream-Status: Inappropriate | ||
10 | |||
11 | Signed-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 | |||
16 | Index: 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 index 24367f19..3d9ae02f 100644 --- 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 | |||
@@ -1,17 +1,18 @@ | |||
1 | From 5329f00de484b470152e2bd3a5ab6dac45668b13 Mon Sep 17 00:00:00 2001 | 1 | From 1641dc87b2ed6b6b87b2cef824e4d66da65b0b30 Mon Sep 17 00:00:00 2001 |
2 | From: Anuj Mittal <anuj.mittal@intel.com> | 2 | From: Anuj Mittal <anuj.mittal@intel.com> |
3 | Date: Thu, 19 May 2022 22:50:09 +0800 | 3 | Date: Thu, 19 May 2022 22:50:09 +0800 |
4 | Subject: [PATCH] fix tblgen | 4 | Subject: [PATCH] fix tblgen |
5 | 5 | ||
6 | Upstream-Status: Inappropriate [OE specific] | ||
6 | --- | 7 | --- |
7 | IGC/cmake/igc_llvm.cmake | 2 +- | 8 | IGC/cmake/igc_llvm.cmake | 2 +- |
8 | 1 file changed, 1 insertion(+), 1 deletion(-) | 9 | 1 file changed, 1 insertion(+), 1 deletion(-) |
9 | 10 | ||
10 | diff --git a/IGC/cmake/igc_llvm.cmake b/IGC/cmake/igc_llvm.cmake | 11 | diff --git a/IGC/cmake/igc_llvm.cmake b/IGC/cmake/igc_llvm.cmake |
11 | index 89c03fc49..85be9ae08 100644 | 12 | index b708cc904..fe4668890 100644 |
12 | --- a/IGC/cmake/igc_llvm.cmake | 13 | --- a/IGC/cmake/igc_llvm.cmake |
13 | +++ b/IGC/cmake/igc_llvm.cmake | 14 | +++ b/IGC/cmake/igc_llvm.cmake |
14 | @@ -48,7 +48,7 @@ else() | 15 | @@ -53,7 +53,7 @@ else() |
15 | set(LLVM_OPT_EXE "opt" CACHE STRING "") | 16 | set(LLVM_OPT_EXE "opt" CACHE STRING "") |
16 | 17 | ||
17 | set(LLVM_TABLEGEN_EXE "llvm-tblgen") | 18 | set(LLVM_TABLEGEN_EXE "llvm-tblgen") |
@@ -20,6 +21,3 @@ index 89c03fc49..85be9ae08 100644 | |||
20 | if(DEFINED LLVM_TABLEGEN) | 21 | if(DEFINED LLVM_TABLEGEN) |
21 | set(LLVM_TABLEGEN_EXE ${LLVM_TABLEGEN}) | 22 | set(LLVM_TABLEGEN_EXE ${LLVM_TABLEGEN}) |
22 | else() | 23 | else() |
23 | -- | ||
24 | 2.35.3 | ||
25 | |||
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 index 7dd36aec..4269fadf 100644 --- 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 | |||
@@ -1,7 +1,7 @@ | |||
1 | From c2b7f30dd56568482b1b7c2f22bafdf68736fc88 Mon Sep 17 00:00:00 2001 | 1 | From ca136c04d4ac60e3febc8ea2b9c4d4736365a424 Mon Sep 17 00:00:00 2001 |
2 | From: Lee Chee Yang <chee.yang.lee@intel.com> | 2 | From: Lee Chee Yang <chee.yang.lee@intel.com> |
3 | Date: Wed, 2 Sep 2020 08:28:35 +0800 | 3 | Date: Wed, 2 Sep 2020 08:28:35 +0800 |
4 | Subject: [PATCH 3/5] Improve Reproducibility for src package | 4 | Subject: [PATCH] Improve Reproducibility for src package |
5 | 5 | ||
6 | Improve reproducibility for intel-graphics-compiler-src package. | 6 | Improve reproducibility for intel-graphics-compiler-src package. |
7 | needs to pass build path as environment variable to the build. | 7 | needs to pass build path as environment variable to the build. |
@@ -13,11 +13,11 @@ Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com> | |||
13 | visa/CMakeLists.txt | 7 +++++-- | 13 | visa/CMakeLists.txt | 7 +++++-- |
14 | 1 file changed, 5 insertions(+), 2 deletions(-) | 14 | 1 file changed, 5 insertions(+), 2 deletions(-) |
15 | 15 | ||
16 | diff --git a/visa/CMakeLists.txt b/visa/CMakeLists.txt | 16 | Index: git/visa/CMakeLists.txt |
17 | index 65dbb4934..8cd607a69 100644 | 17 | =================================================================== |
18 | --- a/visa/CMakeLists.txt | 18 | --- git.orig/visa/CMakeLists.txt |
19 | +++ b/visa/CMakeLists.txt | 19 | +++ git/visa/CMakeLists.txt |
20 | @@ -123,8 +123,11 @@ endif() | 20 | @@ -135,8 +135,11 @@ endif() |
21 | set(bison_output_file ${CMAKE_CURRENT_BINARY_DIR}/CISA.tab.cpp) | 21 | set(bison_output_file ${CMAKE_CURRENT_BINARY_DIR}/CISA.tab.cpp) |
22 | set(flex_output_file ${CMAKE_CURRENT_BINARY_DIR}/lex.CISA.cpp) | 22 | set(flex_output_file ${CMAKE_CURRENT_BINARY_DIR}/lex.CISA.cpp) |
23 | 23 | ||
@@ -31,6 +31,3 @@ index 65dbb4934..8cd607a69 100644 | |||
31 | ADD_FLEX_BISON_DEPENDENCY(CISAScanner CISAParser) | 31 | ADD_FLEX_BISON_DEPENDENCY(CISAScanner CISAParser) |
32 | set(CISAScanner_dependencies) | 32 | set(CISAScanner_dependencies) |
33 | 33 | ||
34 | -- | ||
35 | 2.20.1 | ||
36 | |||
diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_1.0.12149.1.bb b/dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_2.10.10.bb index ed9b47cb..b6d8ddeb 100644 --- a/dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_1.0.12149.1.bb +++ b/dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_2.10.10.bb | |||
@@ -6,22 +6,24 @@ hardware architecture." | |||
6 | LICENSE = "MIT & Apache-2.0" | 6 | LICENSE = "MIT & Apache-2.0" |
7 | LIC_FILES_CHKSUM = "file://IGC/BiFModule/Implementation/ExternalLibraries/libclc/LICENSE.TXT;md5=311cfc1a5b54bab8ed34a0b5fba4373e \ | 7 | LIC_FILES_CHKSUM = "file://IGC/BiFModule/Implementation/ExternalLibraries/libclc/LICENSE.TXT;md5=311cfc1a5b54bab8ed34a0b5fba4373e \ |
8 | file://LICENSE.md;md5=488d74376edf2765f6e78d271543dde3 \ | 8 | file://LICENSE.md;md5=488d74376edf2765f6e78d271543dde3 \ |
9 | file://NOTICES.txt;md5=7f4fbc3eb2c34807465e63b1ec3c9d1a" | 9 | file://NOTICES.txt;md5=b81a52411c84df3419f20bad4d755880" |
10 | 10 | ||
11 | SRC_URI = "git://github.com/intel/intel-graphics-compiler.git;protocol=https;name=igc;branch=releases/igc-1.0.12149 \ | 11 | SRC_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=git/vc-intrinsics;name=vc;nobranch=1 \ | 12 | git://github.com/intel/vc-intrinsics.git;protocol=https;destsuffix=git/vc-intrinsics;name=vc;nobranch=1 \ |
13 | git://github.com/KhronosGroup/SPIRV-Tools.git;protocol=https;destsuffix=SPIRV-Tools;name=spirv-tools;branch=sdk-1.3.204 \ | 13 | git://github.com/KhronosGroup/SPIRV-Tools.git;protocol=https;destsuffix=git/SPIRV-Tools;name=spirv-tools;branch=main \ |
14 | git://github.com/KhronosGroup/SPIRV-Headers.git;protocol=https;destsuffix=SPIRV-Headers;name=spirv-headers;branch=master \ | 14 | git://github.com/KhronosGroup/SPIRV-Headers.git;protocol=https;destsuffix=git/SPIRV-Headers;name=spirv-headers;branch=main \ |
15 | file://0003-Improve-Reproducibility-for-src-package.patch \ | 15 | file://0003-Improve-Reproducibility-for-src-package.patch \ |
16 | file://0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.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 \ | ||
17 | " | 19 | " |
18 | 20 | ||
19 | SRC_URI:append:class-native = " file://0001-fix-tblgen.patch" | 21 | SRC_URI:append:class-native = " file://0001-fix-tblgen.patch" |
20 | 22 | ||
21 | SRCREV_igc = "a3d06ca6798d1c70bb0bf274695ac74ce0532ae4" | 23 | SRCREV_igc = "83925314d4fc32b017fcbfcd73e0667ba833fb8f" |
22 | SRCREV_vc = "984bb27baacce6ee5c716c2e64845f2a1928025b" | 24 | SRCREV_vc = "9d255266e1df8f1dc5d11e1fbb03213acfaa4fc7" |
23 | SRCREV_spirv-tools = "45dd184c790d6bfc78a5a74a10c37e888b1823fa" | 25 | SRCREV_spirv-tools = "f289d047f49fb60488301ec62bafab85573668cc" |
24 | SRCREV_spirv-headers = "b42ba6d92faf6b4938e6f22ddd186dbdacc98d78" | 26 | SRCREV_spirv-headers = "0e710677989b4326ac974fd80c5308191ed80965" |
25 | 27 | ||
26 | SRCREV_FORMAT = "igc_vc_spirv-tools_spirv-headers" | 28 | SRCREV_FORMAT = "igc_vc_spirv-tools_spirv-headers" |
27 | 29 | ||
@@ -30,43 +32,48 @@ export B | |||
30 | 32 | ||
31 | S = "${WORKDIR}/git" | 33 | S = "${WORKDIR}/git" |
32 | 34 | ||
33 | inherit cmake pkgconfig | 35 | inherit cmake pkgconfig qemu python3native |
34 | 36 | ||
35 | CXXFLAGS:append = " -Wno-error=nonnull" | 37 | CXXFLAGS:append = " -Wno-error=nonnull" |
36 | 38 | ||
37 | COMPATIBLE_HOST = '(x86_64).*-linux' | 39 | COMPATIBLE_HOST = '(x86_64).*-linux' |
38 | COMPATIBLE_HOST:libc-musl = "null" | 40 | COMPATIBLE_HOST:libc-musl = "null" |
39 | 41 | ||
40 | DEPENDS += " flex-native bison-native clang opencl-clang" | 42 | DEPENDS += " flex-native bison-native clang clang-cross-x86_64 opencl-clang qemu-native python3-mako-native \ |
41 | DEPENDS:append:class-target = " clang-cross-x86_64 intel-graphics-compiler-native" | 43 | python3-pyyaml-native \ |
44 | " | ||
42 | 45 | ||
43 | RDEPENDS:${PN} += "opencl-clang" | 46 | RDEPENDS:${PN} += "opencl-clang" |
44 | 47 | ||
45 | PACKAGECONFIG ??= "vc" | 48 | PACKAGECONFIG ??= "vc" |
46 | PACKAGECONFIG[vc] = "-DIGC_BUILD__VC_ENABLED=ON -DIGC_OPTION__LINK_KHRONOS_SPIRV_TRANSLATOR=ON -DIGC_OPTION__USE_KHRONOS_SPIRV_TRANSLATOR_IN_VC=ON -DIGC_OPTION__SPIRV_TRANSLATOR_MODE=Prebuilds,-DIGC_BUILD__VC_ENABLED=OFF," | 49 | PACKAGECONFIG[vc] = "-DIGC_BUILD__VC_ENABLED=ON -DIGC_OPTION__LINK_KHRONOS_SPIRV_TRANSLATOR=ON -DIGC_OPTION__SPIRV_TRANSLATOR_MODE=Prebuilds,-DIGC_BUILD__VC_ENABLED=OFF," |
47 | 50 | ||
48 | EXTRA_OECMAKE = " \ | 51 | EXTRA_OECMAKE = " \ |
49 | -DIGC_OPTION__LLVM_PREFERRED_VERSION=${LLVMVERSION} \ | 52 | -DIGC_OPTION__LLVM_PREFERRED_VERSION=${LLVMVERSION} \ |
50 | -DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 \ | ||
51 | -DVC_INTRINSICS_SRC="${S}/vc-intrinsics" \ | 53 | -DVC_INTRINSICS_SRC="${S}/vc-intrinsics" \ |
52 | -DIGC_OPTION__LLVM_MODE=Prebuilds \ | 54 | -DIGC_OPTION__LLVM_MODE=Prebuilds \ |
53 | -DLLVM_TABLEGEN=${STAGING_BINDIR_NATIVE}/llvm-tblgen \ | 55 | -DLLVM_TABLEGEN=${STAGING_BINDIR_NATIVE}/llvm-tblgen \ |
54 | -DLLVM_LINK_EXE=${STAGING_BINDIR_NATIVE}/llvm-link \ | 56 | -DLLVM_LINK_EXE=${STAGING_BINDIR_NATIVE}/llvm-link \ |
57 | -DCLANG_EXE=${STAGING_BINDIR_NATIVE}/clang \ | ||
58 | -DCMAKE_CROSSCOMPILING_EMULATOR=${WORKDIR}/qemuwrapper \ | ||
55 | " | 59 | " |
56 | 60 | ||
57 | do_install:append:class-native () { | 61 | do_configure:prepend:class-target () { |
58 | install -d ${D}${bindir} | 62 | # Write out a qemu wrapper that will be used by cmake. |
59 | install ${B}/IGC/Release/elf_packager ${D}${bindir}/ | 63 | qemu_binary="${@qemu_wrapper_cmdline(d, d.getVar('STAGING_DIR_HOST'), [d.expand('${STAGING_DIR_HOST}${libdir}'),d.expand('${STAGING_DIR_HOST}${base_libdir}')])}" |
60 | if ${@bb.utils.contains('PACKAGECONFIG', 'vc', 'true', 'false', d)}; then | 64 | cat > ${WORKDIR}/qemuwrapper << EOF |
61 | install ${B}/IGC/Release/CMCLTranslatorTool ${D}${bindir}/ | 65 | #!/bin/sh |
62 | install ${B}/IGC/Release/vcb ${D}${bindir}/ | 66 | $qemu_binary "\$@" |
63 | fi | 67 | EOF |
68 | chmod +x ${WORKDIR}/qemuwrapper | ||
64 | } | 69 | } |
65 | 70 | ||
66 | BBCLASSEXTEND = "native nativesdk" | ||
67 | 71 | ||
68 | UPSTREAM_CHECK_GITTAGREGEX = "^igc-(?P<pver>(?!19\..*)\d+(\.\d+)+)$" | 72 | UPSTREAM_CHECK_GITTAGREGEX = "^v(?P<pver>\d+(\.\d+)+)$" |
69 | 73 | ||
70 | FILES:${PN} += " \ | 74 | FILES:${PN} += " \ |
71 | ${libdir}/igc/NOTICES.txt \ | 75 | ${libdir}/igc2/NOTICES.txt \ |
72 | " | 76 | " |
77 | |||
78 | # libigc.so contains buildpaths | ||
79 | INSANE_SKIP:${PN} += "buildpaths" | ||
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 @@ | |||
1 | From 5aea653e611b59c70e529a1bd71885a509831557 Mon Sep 17 00:00:00 2001 | ||
2 | From: Anuj Mittal <anuj.mittal@intel.com> | ||
3 | Date: Tue, 1 Aug 2023 11:15:31 +0800 | ||
4 | Subject: [PATCH] cl_headers/CMakeLists.txt: use clang from native sysroot | ||
5 | |||
6 | Allow clang to be found in target sysroot for target builds and dont try | ||
7 | to compile cross binaries, we do that ourselves. | ||
8 | |||
9 | Upstream-Status: Inappropriate [oe-specific] | ||
10 | Signed-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 | |||
16 | diff --git a/CMakeLists.txt b/CMakeLists.txt | ||
17 | index 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) | ||
35 | diff --git a/cl_headers/CMakeLists.txt b/cl_headers/CMakeLists.txt | ||
36 | index 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 | -- | ||
48 | 2.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 @@ | |||
1 | From f3ef79a6301bab0b3a447f07ceb94c39a95009df Mon Sep 17 00:00:00 2001 | ||
2 | From: Anuj Mittal <anuj.mittal@intel.com> | ||
3 | Date: Thu, 2 Apr 2020 08:59:20 +0800 | ||
4 | Subject: [PATCH] don't redefine LLVM_TABLEGEN_EXE | ||
5 | |||
6 | Use the value that has been passed by the user. | ||
7 | |||
8 | Upstream-Status: Submitted | ||
9 | Signed-off-by: Anuj Mittal <anuj.mittal@intel.com> | ||
10 | --- | ||
11 | CMakeLists.txt | 5 ++++- | ||
12 | 1 file changed, 4 insertions(+), 1 deletion(-) | ||
13 | |||
14 | diff --git a/CMakeLists.txt b/CMakeLists.txt | ||
15 | index 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 | -- | ||
31 | 2.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 @@ | |||
1 | From 43c806ef321b1f677a49d28c89fb7ffecf539c2d Mon Sep 17 00:00:00 2001 | ||
2 | From: Tim Creech <timothy.m.creech@intel.com> | ||
3 | Date: Wed, 28 Jun 2023 03:45:51 -0400 | ||
4 | Subject: [PATCH 2/2] Request native clang only when cross-compiling (#464) | ||
5 | |||
6 | * Request native clang only when cross-compiling | ||
7 | |||
8 | LLVM_USE_HOST_TOOLS may be set if LLVM is configured with | ||
9 | LLVM_OPTIMIZED_TABLEGEN, which does not necessarily indicate | ||
10 | cross-compilation or that clang will only execute on the target. | ||
11 | |||
12 | By checking that CMAKE_CROSSCOMPILING is set, we ensure that we only | ||
13 | build/use clang again if necessary for host execution. | ||
14 | |||
15 | * fixup: CMAKE_CROSSCOMPILING implies LLVM_USE_HOST_TOOLS | ||
16 | |||
17 | Co-authored-by: Wenju He <wenju.he@intel.com> | ||
18 | |||
19 | * fixup: also use CMAKE_CROSSCOMPILING in top-level CMakeLists.txt | ||
20 | |||
21 | --------- | ||
22 | |||
23 | Co-authored-by: Wenju He <wenju.he@intel.com> | ||
24 | |||
25 | Upstream-Status: Backport [https://github.com/intel/opencl-clang/commit/53843eee13cfb2357919ee02714a43bef1af0f86] | ||
26 | Signed-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 | |||
32 | diff --git a/CMakeLists.txt b/CMakeLists.txt | ||
33 | index 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() | ||
45 | diff --git a/cl_headers/CMakeLists.txt b/cl_headers/CMakeLists.txt | ||
46 | index 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 | -- | ||
59 | 2.37.3 | ||
60 | |||
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 index 1d9b4d51..31a3fb21 100644 --- a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang.inc +++ b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang.inc | |||
@@ -6,6 +6,8 @@ LICENSE = "NCSA" | |||
6 | LIC_FILES_CHKSUM = "file://LICENSE;md5=e8a15bf1416762a09ece07e44c79118c" | 6 | LIC_FILES_CHKSUM = "file://LICENSE;md5=e8a15bf1416762a09ece07e44c79118c" |
7 | 7 | ||
8 | SRC_URI = "git://github.com/intel/opencl-clang.git;branch=${BRANCH};protocol=https \ | 8 | SRC_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 \ | ||
9 | " | 11 | " |
10 | S = "${WORKDIR}/git" | 12 | S = "${WORKDIR}/git" |
11 | 13 | ||
@@ -16,9 +18,17 @@ DEPENDS:append:class-target = " opencl-clang-native" | |||
16 | COMPATIBLE_HOST = '(x86_64).*-linux' | 18 | COMPATIBLE_HOST = '(x86_64).*-linux' |
17 | COMPATIBLE_HOST:libc-musl = "null" | 19 | COMPATIBLE_HOST:libc-musl = "null" |
18 | 20 | ||
21 | DEPENDS += " spirv-llvm-translator" | ||
22 | |||
23 | EXTRA_OECMAKE += "\ | ||
24 | -DLLVM_TABLEGEN_EXE=${STAGING_BINDIR_NATIVE}/llvm-tblgen \ | ||
25 | -DCMAKE_SKIP_RPATH=TRUE \ | ||
26 | -DPREFERRED_LLVM_VERSION=${LLVMVERSION} \ | ||
27 | " | ||
28 | |||
19 | do_install:append:class-native() { | 29 | do_install:append:class-native() { |
20 | install -d ${D}${bindir} | 30 | install -d ${D}${bindir} |
21 | install -m 0755 ${B}/linux_linker/linux_resource_linker ${D}${bindir}/ | 31 | install -m 0755 ${B}/bin/linux_resource_linker ${D}${bindir}/ |
22 | } | 32 | } |
23 | 33 | ||
24 | BBCLASSEXTEND = "native nativesdk" | 34 | BBCLASSEXTEND = "native nativesdk" |
diff --git a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_14.0.0.bb b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_14.0.0.bb deleted file mode 100644 index 367ca7e9..00000000 --- a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_14.0.0.bb +++ /dev/null | |||
@@ -1,15 +0,0 @@ | |||
1 | require opencl-clang.inc | ||
2 | |||
3 | SRC_URI:append = " file://0001-don-t-redefine-LLVM_TABLEGEN_EXE.patch \ | ||
4 | " | ||
5 | SRCREV = "06c7c0d7f5cbd13810d79489a533fa6c5b6c7d9f" | ||
6 | |||
7 | BRANCH = "ocl-open-140" | ||
8 | |||
9 | DEPENDS += " spirv-llvm-translator" | ||
10 | |||
11 | EXTRA_OECMAKE += "\ | ||
12 | -DLLVM_TABLEGEN_EXE=${STAGING_BINDIR_NATIVE}/llvm-tblgen \ | ||
13 | -DCMAKE_SKIP_RPATH=TRUE \ | ||
14 | -DPREFERRED_LLVM_VERSION=${LLVMVERSION} \ | ||
15 | " | ||
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 @@ | |||
1 | require opencl-clang.inc | ||
2 | |||
3 | SRCREV = "60fd799cc58755c16d951f9ebfde6d0f9b8554dd" | ||
4 | |||
5 | BRANCH = "ocl-open-150" | ||
diff --git a/dynamic-layers/clang-layer/recipes-opencl/vc-intrinsics/vc-intrinsics_0.1.0.bb b/dynamic-layers/clang-layer/recipes-opencl/vc-intrinsics/vc-intrinsics_0.1.0.bb deleted file mode 100644 index dfdb4450..00000000 --- a/dynamic-layers/clang-layer/recipes-opencl/vc-intrinsics/vc-intrinsics_0.1.0.bb +++ /dev/null | |||
@@ -1,27 +0,0 @@ | |||
1 | SUMMARY = "VC Intrinsics" | ||
2 | DESCRIPTION = "VC Intrinsics project contains a set of new intrinsics on \ | ||
3 | top of core LLVM IR instructions that represent SIMD semantics of a program \ | ||
4 | targeting GPU" | ||
5 | |||
6 | LICENSE = "MIT" | ||
7 | LIC_FILES_CHKSUM = "file://Readme.md;beginline=1;endline=7;md5=3b2db19c3b0877bb312b7adbcb815adc" | ||
8 | |||
9 | SRC_URI = "git://github.com/intel/vc-intrinsics.git;protocol=https;branch=master \ | ||
10 | " | ||
11 | SRCREV = "99ac111c2604a47d865bd4d7996be8cfaf2af146" | ||
12 | |||
13 | S = "${WORKDIR}/git" | ||
14 | |||
15 | PE = "1" | ||
16 | PV .= "+git${SRCPV}" | ||
17 | |||
18 | inherit cmake | ||
19 | |||
20 | COMPATIBLE_HOST = '(x86_64).*-linux' | ||
21 | COMPATIBLE_HOST:libc-musl = "null" | ||
22 | |||
23 | DEPENDS += " clang" | ||
24 | |||
25 | EXTRA_OECMAKE = "-DLLVM_DIR=${STAGING_LIBDIR}" | ||
26 | |||
27 | BBCLASSEXTEND = "native nativesdk" | ||