From 068533789330a35320cefa8bfbae180d4aea19f8 Mon Sep 17 00:00:00 2001 From: Anuj Mittal Date: Mon, 21 Aug 2023 09:47:15 +0800 Subject: ispc: upgrade 1.20.0 -> 1.21.0 * Allows compilation with LLVM16. * ISPC_NO_DUMPS is no longer an option and ISPC_PS4_TARGET has been renamed. * Libraries now have proper so versions so packaging tweaks are no longer required. Signed-off-by: Anuj Mittal --- ...0002-cmake-don-t-build-for-32-bit-targets.patch | 27 +++----- .../recipes-core/ispc/ispc_1.20.0.bb | 74 ---------------------- .../recipes-core/ispc/ispc_1.21.0.bb | 65 +++++++++++++++++++ 3 files changed, 74 insertions(+), 92 deletions(-) delete mode 100644 dynamic-layers/openembedded-layer/recipes-core/ispc/ispc_1.20.0.bb create mode 100644 dynamic-layers/openembedded-layer/recipes-core/ispc/ispc_1.21.0.bb 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 index a13ade9f..ef9d99c0 100644 --- 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 @@ -1,4 +1,4 @@ -From 493e886d6dae2ed7bdc12ed03f717ee0e98dfe09 Mon Sep 17 00:00:00 2001 +From cad70deae39566fa11814e27f06d5fe8ddcb1cbc Mon Sep 17 00:00:00 2001 From: Naveen Saini Date: Thu, 24 Feb 2022 20:01:11 +0530 Subject: [PATCH] cmake: don't build for 32-bit targets @@ -16,14 +16,14 @@ Upstream-Status: Inappropriate Signed-off-by: Naveen Saini --- - cmake/GenerateBuiltins.cmake | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) + cmake/GenerateBuiltins.cmake | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/cmake/GenerateBuiltins.cmake b/cmake/GenerateBuiltins.cmake -index fa228247..7adc7e52 100644 +index 936590a7..b8f731de 100644 --- a/cmake/GenerateBuiltins.cmake +++ b/cmake/GenerateBuiltins.cmake -@@ -272,7 +272,7 @@ function(builtin_to_cpp bit os_name arch supported_archs supported_oses resultFi +@@ -253,7 +253,7 @@ function(builtin_to_cpp bit os_name arch supported_archs supported_oses resultFi # In this case headers will be installed in /usr/arm-linux-gnueabihf/include and will not be picked up # by clang by default. So the following line adds such path explicitly. If this path doesn't exist and # the headers can be found in other locations, this should not be a problem. @@ -32,7 +32,7 @@ index fa228247..7adc7e52 100644 endif() endif() -@@ -354,7 +354,7 @@ function (generate_target_builtins resultList) +@@ -340,7 +340,7 @@ function (generate_target_builtins resultList) set(regular_targets ${ARGN}) list(FILTER regular_targets EXCLUDE REGEX wasm) foreach (ispc_target ${regular_targets}) @@ -41,24 +41,15 @@ index fa228247..7adc7e52 100644 foreach (os_name ${TARGET_OS_LIST_FOR_LL}) target_ll_to_cpp(target-${ispc_target} ${bit} ${os_name} output${os_name}${bit}) list(APPEND tmpList ${output${os_name}${bit}}) -@@ -415,7 +415,7 @@ function (generate_common_builtins resultList) +@@ -406,7 +406,7 @@ function (generate_common_builtins resultList) endif() message (STATUS "ISPC will be built with support of ${supported_oses} for ${supported_archs}") - foreach (bit 32 64) + foreach (bit 64) foreach (os_name "windows" "linux" "freebsd" "macos" "android" "ios" "ps4" "web") - foreach (arch "x86" "arm" "wasm32") + foreach (arch "x86" "arm" "wasm") builtin_to_cpp(${bit} ${os_name} ${arch} "${supported_archs}" "${supported_oses}" res${bit}${os_name}${arch}) -@@ -428,7 +428,7 @@ function (generate_common_builtins resultList) - endforeach() - endforeach() - if (XE_ENABLED) -- foreach (bit 32 64) -+ foreach (bit 64) - builtin_xe_to_cpp(${bit} res_xe_${bit}) - list(APPEND tmpList ${res_xe_${bit}} ) - if(MSVC) -- -2.17.1 +2.41.0 diff --git a/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc_1.20.0.bb b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc_1.20.0.bb deleted file mode 100644 index 4e607004..00000000 --- a/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc_1.20.0.bb +++ /dev/null @@ -1,74 +0,0 @@ -SUMMARY = "Intel(R) Implicit SPMD Program Compiler" -DESCRIPTION = "ispc is a compiler for a variant of the C programming language, \ -with extensions for single program, multiple data programming." -HOMEPAGE = "https://github.com/ispc/ispc" - -LICENSE = "BSD-3-Clause & Apache-2.0-with-LLVM-exception" -LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=da5ecffdd210b3cf776b32b41c182e87 \ - file://third-party-programs.txt;md5=2061218c7be521556719c8b504bf9ddd" - -inherit cmake python3native ptest - -S = "${WORKDIR}/git" - -SRC_URI = "git://github.com/ispc/ispc.git;protocol=https;branch=main \ - file://0002-cmake-don-t-build-for-32-bit-targets.patch \ - file://0001-Fix-QA-Issues.patch \ - file://0001-Add-print-function-to-print-test-run-status-in-ptest.patch \ - file://run-ptest \ - " - -SRCREV = "14bd04aa7e68cd33eb1d96b33058cb64d7ef76f4" - -COMPATIBLE_HOST = '(x86_64).*-linux' - -DEPENDS += " clang-native bison-native flex-native" -DEPENDS:append:class-target = " clang" -RDEPENDS:${PN}-ptest += " python3-multiprocessing" - -PACKAGECONFIG ??= "tbb" -PACKAGECONFIG[tbb] = "-DISPCRT_BUILD_TASK_MODEL=TBB, -DISPCRT_BUILD_TASK_MODEL=OpenMP, tbb" - -YFLAGS='-d -t -v -y --file-prefix-map=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}' - -do_configure:prepend() { - sed -i -e 's#\${BISON_EXECUTABLE}.*#\${BISON_EXECUTABLE} ${YFLAGS} #g' ${S}/CMakeLists.txt - sed -i -e 's#\${FLEX_EXECUTABLE}.*#\${FLEX_EXECUTABLE} \-L #g' ${S}/CMakeLists.txt -} - -do_install_ptest() { - cp -rf ${S}/run_tests.py ${D}${PTEST_PATH} - cp -rf ${S}/common.py ${D}${PTEST_PATH} - cp -rf ${S}/tests ${D}${PTEST_PATH} - cp -rf ${S}/test_static.isph ${D}${PTEST_PATH} - cp -rf ${S}/fail_db.txt ${D}${PTEST_PATH} - cp -rf ${S}/test_static.cpp ${D}${PTEST_PATH} -} - -EXTRA_OECMAKE += " \ - -DISPC_INCLUDE_TESTS=OFF \ - -DISPC_INCLUDE_EXAMPLES=OFF \ - -DISPC_NO_DUMPS=ON \ - -DARM_ENABLED=OFF \ - -DISPC_CROSS=ON \ - -DISPC_ANDROID_TARGET=OFF \ - -DISPC_FREEBSD_TARGET=OFF \ - -DISPC_WINDOWS_TARGET=OFF \ - -DISPC_IOS_TARGET=OFF \ - -DISPC_PS4_TARGET=OFF \ - -DSYSROOT_DIR=${STAGING_DIR} \ - -DCLANG_EXECUTABLE=${STAGING_BINDIR_NATIVE}/clang \ - -DCLANGPP_EXECUTABLE=${STAGING_BINDIR_NATIVE}/clang++ \ - -DLLVM_DIS_EXECUTABLE=${STAGING_BINDIR_NATIVE}/llvm-dis \ - -DLLVM_AS_EXECUTABLE=${STAGING_BINDIR_NATIVE}/llvm-as \ - " - -FILES:${PN}-dev = "\ - ${libdir}/libispcrt_device_cpu${SOLIBSDEV} \ - ${libdir}/cmake \ - ${includedir} \ - " - -FILES:${PN} += "${libdir}/libispcrt.so" - -BBCLASSEXTEND = "native nativesdk" diff --git a/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc_1.21.0.bb b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc_1.21.0.bb new file mode 100644 index 00000000..773ed594 --- /dev/null +++ b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc_1.21.0.bb @@ -0,0 +1,65 @@ +SUMMARY = "Intel(R) Implicit SPMD Program Compiler" +DESCRIPTION = "ispc is a compiler for a variant of the C programming language, \ +with extensions for single program, multiple data programming." +HOMEPAGE = "https://github.com/ispc/ispc" + +LICENSE = "BSD-3-Clause & Apache-2.0-with-LLVM-exception" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=da5ecffdd210b3cf776b32b41c182e87 \ + file://third-party-programs.txt;md5=2061218c7be521556719c8b504bf9ddd" + +inherit cmake python3native ptest + +S = "${WORKDIR}/git" + +SRC_URI = "git://github.com/ispc/ispc.git;protocol=https;branch=main \ + file://0002-cmake-don-t-build-for-32-bit-targets.patch \ + file://0001-Fix-QA-Issues.patch \ + file://0001-Add-print-function-to-print-test-run-status-in-ptest.patch \ + file://run-ptest \ + " + +SRCREV = "f925f2563441a36eff1cb7a617934253dc9c100c" + +COMPATIBLE_HOST = '(x86_64).*-linux' + +DEPENDS += " clang-native bison-native flex-native" +DEPENDS:append:class-target = " clang" +RDEPENDS:${PN}-ptest += " python3-multiprocessing" + +PACKAGECONFIG ??= "tbb" +PACKAGECONFIG[tbb] = "-DISPCRT_BUILD_TASK_MODEL=TBB, -DISPCRT_BUILD_TASK_MODEL=OpenMP, tbb" + +YFLAGS='-d -t -v -y --file-prefix-map=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}' + +do_configure:prepend() { + sed -i -e 's#\${BISON_EXECUTABLE}.*#\${BISON_EXECUTABLE} ${YFLAGS} #g' ${S}/CMakeLists.txt + sed -i -e 's#\${FLEX_EXECUTABLE}.*#\${FLEX_EXECUTABLE} \-L #g' ${S}/CMakeLists.txt +} + +do_install_ptest() { + cp -rf ${S}/run_tests.py ${D}${PTEST_PATH} + cp -rf ${S}/common.py ${D}${PTEST_PATH} + cp -rf ${S}/tests ${D}${PTEST_PATH} + cp -rf ${S}/test_static.isph ${D}${PTEST_PATH} + cp -rf ${S}/fail_db.txt ${D}${PTEST_PATH} + cp -rf ${S}/test_static.cpp ${D}${PTEST_PATH} +} + +EXTRA_OECMAKE += " \ + -DISPC_INCLUDE_TESTS=OFF \ + -DISPC_INCLUDE_EXAMPLES=OFF \ + -DARM_ENABLED=OFF \ + -DISPC_CROSS=ON \ + -DISPC_ANDROID_TARGET=OFF \ + -DISPC_FREEBSD_TARGET=OFF \ + -DISPC_WINDOWS_TARGET=OFF \ + -DISPC_IOS_TARGET=OFF \ + -DISPC_PS_TARGET=OFF \ + -DSYSROOT_DIR=${STAGING_DIR} \ + -DCLANG_EXECUTABLE=${STAGING_BINDIR_NATIVE}/clang \ + -DCLANGPP_EXECUTABLE=${STAGING_BINDIR_NATIVE}/clang++ \ + -DLLVM_DIS_EXECUTABLE=${STAGING_BINDIR_NATIVE}/llvm-dis \ + -DLLVM_AS_EXECUTABLE=${STAGING_BINDIR_NATIVE}/llvm-as \ + " + +BBCLASSEXTEND = "native nativesdk" -- cgit v1.2.3-54-g00ecf