diff options
Diffstat (limited to 'dynamic-layers/clang-layer')
9 files changed, 133 insertions, 43 deletions
diff --git a/dynamic-layers/clang-layer/recipes-core/dnn/onednn_2.6.1.bb b/dynamic-layers/clang-layer/recipes-core/dnn/onednn_2.6.3.bb index ee39f51b..f7ec5f61 100644 --- a/dynamic-layers/clang-layer/recipes-core/dnn/onednn_2.6.1.bb +++ b/dynamic-layers/clang-layer/recipes-core/dnn/onednn_2.6.3.bb | |||
@@ -13,7 +13,7 @@ SECTION = "lib" | |||
13 | inherit pkgconfig cmake ptest | 13 | inherit pkgconfig cmake ptest |
14 | 14 | ||
15 | S = "${WORKDIR}/git" | 15 | S = "${WORKDIR}/git" |
16 | SRCREV = "58be3660fb57c4c4a3d306730e849237d1271572" | 16 | SRCREV = "92ac40077b3b5816c7b78cdf39a988599929f0e9" |
17 | SRC_URI = "git://github.com/oneapi-src/oneDNN.git;branch=rls-v2.6;protocol=https \ | 17 | SRC_URI = "git://github.com/oneapi-src/oneDNN.git;branch=rls-v2.6;protocol=https \ |
18 | file://run-ptest \ | 18 | file://run-ptest \ |
19 | " | 19 | " |
diff --git a/dynamic-layers/clang-layer/recipes-core/ispc/ispc/0001-CMakeLists.txt-allow-to-pick-llvm-config-from-usr-bi.patch b/dynamic-layers/clang-layer/recipes-core/ispc/ispc/0001-CMakeLists.txt-allow-to-pick-llvm-config-from-usr-bi.patch new file mode 100644 index 00000000..79e8e683 --- /dev/null +++ b/dynamic-layers/clang-layer/recipes-core/ispc/ispc/0001-CMakeLists.txt-allow-to-pick-llvm-config-from-usr-bi.patch | |||
@@ -0,0 +1,37 @@ | |||
1 | From 51d248d3b470f3fa1cf2ed3f5742851091acb65f Mon Sep 17 00:00:00 2001 | ||
2 | From: Naveen Saini <naveen.kumar.saini@intel.com> | ||
3 | Date: Fri, 12 May 2023 09:10:11 +0800 | ||
4 | Subject: [PATCH] CMakeLists.txt: allow to pick llvm-config from | ||
5 | usr/bin/crossscripts/ | ||
6 | |||
7 | ispc needs to invoke native llvm-config from target sysroot to list LLVM | ||
8 | lib libraries. clang already provides crossscripts/llvm-config, which does | ||
9 | the job. | ||
10 | |||
11 | However, using LLVM_TOOLS_BINARY_DIR leads to wrong llvm-config being | ||
12 | used. So remove it from search path for llvm-config. | ||
13 | |||
14 | Upstream-Status: Inappropriate | ||
15 | |||
16 | Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com> | ||
17 | --- | ||
18 | cmake/FindLLVM.cmake | 3 +-- | ||
19 | 1 file changed, 1 insertion(+), 2 deletions(-) | ||
20 | |||
21 | diff --git a/cmake/FindLLVM.cmake b/cmake/FindLLVM.cmake | ||
22 | index d0297d5d..90d9fed2 100644 | ||
23 | --- a/cmake/FindLLVM.cmake | ||
24 | +++ b/cmake/FindLLVM.cmake | ||
25 | @@ -41,8 +41,7 @@ find_package(LLVM REQUIRED CONFIG) | ||
26 | set(LLVM_VERSION "LLVM_${LLVM_VERSION_MAJOR}_${LLVM_VERSION_MINOR}") | ||
27 | message(STATUS "Found LLVM ${LLVM_VERSION}") | ||
28 | |||
29 | -find_program(LLVM_CONFIG_EXECUTABLE NAMES llvm-config | ||
30 | - PATHS ${LLVM_TOOLS_BINARY_DIR} PATH_SUFFIXES bin NO_DEFAULT_PATH) | ||
31 | +find_program(LLVM_CONFIG_EXECUTABLE NAMES llvm-config) | ||
32 | if (NOT LLVM_CONFIG_EXECUTABLE) | ||
33 | message(FATAL_ERROR "Failed to find llvm-config") | ||
34 | endif() | ||
35 | -- | ||
36 | 2.37.3 | ||
37 | |||
diff --git a/dynamic-layers/clang-layer/recipes-core/ispc/ispc/0001-Produce-position-independent-code-for-testing.patch b/dynamic-layers/clang-layer/recipes-core/ispc/ispc/0001-Produce-position-independent-code-for-testing.patch new file mode 100644 index 00000000..37dbd862 --- /dev/null +++ b/dynamic-layers/clang-layer/recipes-core/ispc/ispc/0001-Produce-position-independent-code-for-testing.patch | |||
@@ -0,0 +1,42 @@ | |||
1 | From 14cfd056fe69dc652f824f31462033e82cd54513 Mon Sep 17 00:00:00 2001 | ||
2 | From: Arina Neshlyaeva <arina.neshlyaeva@intel.com> | ||
3 | Date: Tue, 23 Aug 2022 15:26:21 -0700 | ||
4 | Subject: [PATCH] Produce position independent code for testing | ||
5 | |||
6 | Upstream-Status: Backport [https://github.com/ispc/ispc/commit/522a7395d762c7f2a3b1f76c6f352b5e5977f08a] | ||
7 | |||
8 | Signed-off-by: Arina Neshlyaeva <arina.neshlyaeva@intel.com> | ||
9 | Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com> | ||
10 | --- | ||
11 | run_tests.py | 8 ++++++-- | ||
12 | 1 file changed, 6 insertions(+), 2 deletions(-) | ||
13 | |||
14 | diff --git a/run_tests.py b/run_tests.py | ||
15 | index d4a40978..3520d376 100755 | ||
16 | --- a/run_tests.py | ||
17 | +++ b/run_tests.py | ||
18 | @@ -515,6 +515,11 @@ def run_test(testname, host, target): | ||
19 | cc_cmd = "%s -O2 -I. %s test_static.cpp -DTEST_SIG=%d -DTEST_WIDTH=%d %s -o %s" % \ | ||
20 | (options.compiler_exe, gcc_arch, match, width, obj_name, exe_name) | ||
21 | |||
22 | + # Produce position independent code for both c++ and ispc compilations. | ||
23 | + # The motivation for this is that Clang 15 changed default | ||
24 | + # from "-mrelocation-model static" to "-mrelocation-model pic", so | ||
25 | + # we enable PIC compilation to have it consistently regardless compiler version. | ||
26 | + cc_cmd += ' -fPIE' | ||
27 | if should_fail: | ||
28 | cc_cmd += " -DEXPECT_FAILURE" | ||
29 | |||
30 | @@ -526,8 +531,7 @@ def run_test(testname, host, target): | ||
31 | match, width, exe_name) | ||
32 | exe_name = "./" + exe_name | ||
33 | cc_cmd += " -DTEST_ZEBIN" if options.ispc_output == "ze" else " -DTEST_SPV" | ||
34 | - | ||
35 | - ispc_cmd = ispc_exe_rel + " --woff %s -o %s --arch=%s --target=%s -DTEST_SIG=%d" % \ | ||
36 | + ispc_cmd = ispc_exe_rel + " --pic --woff %s -o %s --arch=%s --target=%s -DTEST_SIG=%d" % \ | ||
37 | (filename, obj_name, options.arch, xe_target if target.is_xe() else options.target, match) | ||
38 | |||
39 | if target.is_xe(): | ||
40 | -- | ||
41 | 2.37.3 | ||
42 | |||
diff --git a/dynamic-layers/clang-layer/recipes-core/ispc/ispc_1.17.0.bb b/dynamic-layers/clang-layer/recipes-core/ispc/ispc_1.17.0.bb index cfd8e5bc..c50d8ef3 100644 --- a/dynamic-layers/clang-layer/recipes-core/ispc/ispc_1.17.0.bb +++ b/dynamic-layers/clang-layer/recipes-core/ispc/ispc_1.17.0.bb | |||
@@ -15,13 +15,15 @@ SRC_URI = "git://github.com/ispc/ispc.git;protocol=https;branch=main \ | |||
15 | file://0001-CMakeLists.txt-link-with-libclang-cpp-library-instea.patch \ | 15 | file://0001-CMakeLists.txt-link-with-libclang-cpp-library-instea.patch \ |
16 | file://0002-cmake-don-t-build-for-32-bit-targets.patch \ | 16 | file://0002-cmake-don-t-build-for-32-bit-targets.patch \ |
17 | file://0001-Enable-LLVM-15.0-support.patch \ | 17 | file://0001-Enable-LLVM-15.0-support.patch \ |
18 | file://0001-CMakeLists.txt-allow-to-pick-llvm-config-from-usr-bi.patch \ | ||
19 | file://0001-Produce-position-independent-code-for-testing.patch \ | ||
18 | " | 20 | " |
19 | SRCREV = "7ad8429369a4d5ced6b524fdfffe623939d8fe9a" | 21 | SRCREV = "7ad8429369a4d5ced6b524fdfffe623939d8fe9a" |
20 | 22 | ||
21 | COMPATIBLE_HOST = '(x86_64).*-linux' | 23 | COMPATIBLE_HOST = '(x86_64).*-linux' |
22 | 24 | ||
23 | DEPENDS += " clang-native bison-native " | 25 | DEPENDS += " clang-native bison-native " |
24 | RDEPENDS:${PN} += " clang-libllvm clang" | 26 | DEPENDS:append:class-target = " clang" |
25 | 27 | ||
26 | EXTRA_OECMAKE += " \ | 28 | EXTRA_OECMAKE += " \ |
27 | -DISPC_INCLUDE_TESTS=OFF \ | 29 | -DISPC_INCLUDE_TESTS=OFF \ |
@@ -34,7 +36,11 @@ EXTRA_OECMAKE += " \ | |||
34 | -DISPC_WINDOWS_TARGET=OFF \ | 36 | -DISPC_WINDOWS_TARGET=OFF \ |
35 | -DISPC_IOS_TARGET=OFF \ | 37 | -DISPC_IOS_TARGET=OFF \ |
36 | -DISPC_PS4_TARGET=OFF \ | 38 | -DISPC_PS4_TARGET=OFF \ |
37 | -DSYSROOT_DIR=${STAGING_DIR_NATIVE} \ | 39 | -DSYSROOT_DIR=${STAGING_DIR} \ |
40 | -DCLANG_EXECUTABLE=${STAGING_BINDIR_NATIVE}/clang \ | ||
41 | -DCLANGPP_EXECUTABLE=${STAGING_BINDIR_NATIVE}/clang++ \ | ||
42 | -DLLVM_DIS_EXECUTABLE=${STAGING_BINDIR_NATIVE}/llvm-dis \ | ||
43 | -DLLVM_AS_EXECUTABLE=${STAGING_BINDIR_NATIVE}/llvm-as \ | ||
38 | " | 44 | " |
39 | 45 | ||
40 | TOOLCHAIN = "clang" | 46 | TOOLCHAIN = "clang" |
diff --git a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0001-Fix-standalone-build-415.patch b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0001-Fix-standalone-build-415.patch new file mode 100644 index 00000000..732589f2 --- /dev/null +++ b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0001-Fix-standalone-build-415.patch | |||
@@ -0,0 +1,32 @@ | |||
1 | From 3a281f634be5e56d5fb49d07da85fe24e5971dd0 Mon Sep 17 00:00:00 2001 | ||
2 | From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= <Zatloukal.Frantisek@gmail.com> | ||
3 | Date: Fri, 21 Apr 2023 04:07:21 +0200 | ||
4 | Subject: [PATCH] Fix standalone build (#415) | ||
5 | |||
6 | Fixes https://github.com/intel/opencl-clang/issues/406 | ||
7 | Fixes https://github.com/intel/opencl-clang/issues/374 | ||
8 | |||
9 | Upstream-Status: Backport [https://github.com/intel/opencl-clang/commit/529a9188114bcbd8ed753d2276942384fa50d7a1] | ||
10 | Signed-off-by: Anuj Mittal <anuj.mittal@intel.com> | ||
11 | --- | ||
12 | cl_headers/CMakeLists.txt | 6 +++++- | ||
13 | 1 file changed, 5 insertions(+), 1 deletion(-) | ||
14 | |||
15 | diff --git a/cl_headers/CMakeLists.txt b/cl_headers/CMakeLists.txt | ||
16 | index 69cf11e..a258b62 100644 | ||
17 | --- a/cl_headers/CMakeLists.txt | ||
18 | +++ b/cl_headers/CMakeLists.txt | ||
19 | @@ -1,5 +1,9 @@ | ||
20 | set(CL_HEADERS_LIB cl_headers) | ||
21 | -set(CLANG_COMMAND $<TARGET_FILE:clang> ) | ||
22 | +if(USE_PREBUILT_LLVM) | ||
23 | + find_program(CLANG_COMMAND clang PATHS ${LLVM_TOOLS_BINARY_DIR}) | ||
24 | +else() | ||
25 | + set(CLANG_COMMAND $<TARGET_FILE:clang>) | ||
26 | +endif() | ||
27 | if(LLVM_USE_HOST_TOOLS AND NOT OPENCL_CLANG_BUILD_EXTERNAL) | ||
28 | build_native_tool(clang CLANG_COMMAND) | ||
29 | endif() | ||
30 | -- | ||
31 | 2.34.1 | ||
32 | |||
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/opencl-clang.inc b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang.inc index 1d9b4d51..0886e43b 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 | |||
@@ -16,9 +16,4 @@ DEPENDS:append:class-target = " opencl-clang-native" | |||
16 | COMPATIBLE_HOST = '(x86_64).*-linux' | 16 | COMPATIBLE_HOST = '(x86_64).*-linux' |
17 | COMPATIBLE_HOST:libc-musl = "null" | 17 | COMPATIBLE_HOST:libc-musl = "null" |
18 | 18 | ||
19 | do_install:append:class-native() { | ||
20 | install -d ${D}${bindir} | ||
21 | install -m 0755 ${B}/linux_linker/linux_resource_linker ${D}${bindir}/ | ||
22 | } | ||
23 | |||
24 | BBCLASSEXTEND = "native nativesdk" | 19 | BBCLASSEXTEND = "native nativesdk" |
diff --git a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_12.0.0.bb b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_12.0.0.bb index d0b2acfb..6cab99c2 100644 --- a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_12.0.0.bb +++ b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_12.0.0.bb | |||
@@ -10,3 +10,8 @@ EXTRA_OECMAKE += "\ | |||
10 | -DCMAKE_SKIP_RPATH=TRUE \ | 10 | -DCMAKE_SKIP_RPATH=TRUE \ |
11 | -DPREFERRED_LLVM_VERSION="12.0.0" \ | 11 | -DPREFERRED_LLVM_VERSION="12.0.0" \ |
12 | " | 12 | " |
13 | |||
14 | do_install:append:class-native() { | ||
15 | install -d ${D}${bindir} | ||
16 | install -m 0755 ${B}/linux_linker/linux_resource_linker ${D}${bindir}/ | ||
17 | } | ||
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 index 367ca7e9..2af08f39 100644 --- 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 | |||
@@ -1,8 +1,8 @@ | |||
1 | require opencl-clang.inc | 1 | require opencl-clang.inc |
2 | 2 | ||
3 | SRC_URI:append = " file://0001-don-t-redefine-LLVM_TABLEGEN_EXE.patch \ | 3 | SRC_URI:append = " file://0001-Fix-standalone-build-415.patch \ |
4 | " | 4 | " |
5 | SRCREV = "06c7c0d7f5cbd13810d79489a533fa6c5b6c7d9f" | 5 | SRCREV = "cf95b338d14685e4f3402ab1828bef31d48f1fd6" |
6 | 6 | ||
7 | BRANCH = "ocl-open-140" | 7 | BRANCH = "ocl-open-140" |
8 | 8 | ||
@@ -13,3 +13,8 @@ EXTRA_OECMAKE += "\ | |||
13 | -DCMAKE_SKIP_RPATH=TRUE \ | 13 | -DCMAKE_SKIP_RPATH=TRUE \ |
14 | -DPREFERRED_LLVM_VERSION=${LLVMVERSION} \ | 14 | -DPREFERRED_LLVM_VERSION=${LLVMVERSION} \ |
15 | " | 15 | " |
16 | |||
17 | do_install:append:class-native() { | ||
18 | install -d ${D}${bindir} | ||
19 | install -m 0755 ${B}/bin/linux_resource_linker ${D}${bindir}/ | ||
20 | } | ||