ispc: upgrade 1.19.0 -> 1.20.0

* Release Notes:
  https://github.com/ispc/ispc/releases/tag/v1.20.0

* Drop already merged patches:
  0001-CMakeLists.txt-allow-to-pick-llvm-config-from-usr-bi.patch
  0001-CMakeLists.txt-link-with-libclang-cpp-library-instea.patch
  ffc75e464ff2b8fce7dbf74f1846ebd0852bc6f9.patch

* Fix packaging to ensure libispcrt is packaged correctly.

* ISPC runtime with CPU support can either be enabled with OpenMP or
  TBB. TBB is enabled by default that needs meta-oe to be included.

Signed-off-by: Teoh Suh Haw <suh.haw.teoh@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
This commit is contained in:
Teoh Suh Haw 2023-06-08 16:00:25 +08:00 committed by Anuj Mittal
parent dbc3ac3084
commit 3c367f25f6
8 changed files with 14 additions and 102 deletions

View File

@ -1,37 +0,0 @@
From 51d248d3b470f3fa1cf2ed3f5742851091acb65f Mon Sep 17 00:00:00 2001
From: Naveen Saini <naveen.kumar.saini@intel.com>
Date: Fri, 12 May 2023 09:10:11 +0800
Subject: [PATCH] CMakeLists.txt: allow to pick llvm-config from
usr/bin/crossscripts/
ispc needs to invoke native llvm-config from target sysroot to list LLVM
lib libraries. clang already provides crossscripts/llvm-config, which does
the job.
However, using LLVM_TOOLS_BINARY_DIR leads to wrong llvm-config being
used. So remove it from search path for llvm-config.
Upstream-Status: Inappropriate
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
---
cmake/FindLLVM.cmake | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/cmake/FindLLVM.cmake b/cmake/FindLLVM.cmake
index d0297d5d..90d9fed2 100644
--- a/cmake/FindLLVM.cmake
+++ b/cmake/FindLLVM.cmake
@@ -41,8 +41,7 @@ find_package(LLVM REQUIRED CONFIG)
set(LLVM_VERSION "LLVM_${LLVM_VERSION_MAJOR}_${LLVM_VERSION_MINOR}")
message(STATUS "Found LLVM ${LLVM_VERSION}")
-find_program(LLVM_CONFIG_EXECUTABLE NAMES llvm-config
- PATHS ${LLVM_TOOLS_BINARY_DIR} PATH_SUFFIXES bin NO_DEFAULT_PATH)
+find_program(LLVM_CONFIG_EXECUTABLE NAMES llvm-config)
if (NOT LLVM_CONFIG_EXECUTABLE)
message(FATAL_ERROR "Failed to find llvm-config")
endif()
--
2.37.3

View File

@ -1,28 +0,0 @@
From 0445d97c8ad66c9cbb2c6f88c52aadc0b01a1f15 Mon Sep 17 00:00:00 2001
From: Naveen Saini <naveen.kumar.saini@intel.com>
Date: Tue, 11 Oct 2022 16:43:22 +0800
Subject: [PATCH] CMakeLists.txt: link with libclang-cpp library instead
Upstream-Status: Inappropriate
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
---
CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index f6199704..f979f1c1 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -288,7 +288,7 @@ if (WASM_ENABLED)
list(APPEND ISPC_TARGETS wasm-i32x4)
endif()
-set(CLANG_LIBRARY_LIST clangFrontend clangDriver clangSerialization clangParse clangSema clangAnalysis clangAST clangBasic clangEdit clangLex)
+set(CLANG_LIBRARY_LIST clang-cpp)
if (${LLVM_VERSION_NUMBER} VERSION_GREATER_EQUAL "15.0.0")
list(APPEND CLANG_LIBRARY_LIST clangSupport)
endif()
--
2.37.3

View File

@ -1,32 +0,0 @@
From ffc75e464ff2b8fce7dbf74f1846ebd0852bc6f9 Mon Sep 17 00:00:00 2001
From: Luya Tshimbalanga <luya@fedoraproject.org>
Date: Tue, 28 Feb 2023 17:20:21 -0800
Subject: [PATCH] Fix build with GCC 13 and possibly Clang 15
This fix add missing <cstdint> include to handle "uint32_t".
Upstream-Status: Backport
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
---
src/target_registry.h | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/target_registry.h b/src/target_registry.h
index 2f7d13a8af..bad4ed0815 100644
--- a/src/target_registry.h
+++ b/src/target_registry.h
@@ -1,5 +1,5 @@
/*
- Copyright (c) 2019-2021, Intel Corporation
+ Copyright (c) 2019-2023, Intel Corporation
All rights reserved.
Redistribution and use in source and binary forms, with or without
@@ -40,6 +40,7 @@
#include "bitcode_lib.h"
#include <bitset>
+#include <cstdint>
#include <map>
#include <vector>

View File

@ -5,23 +5,20 @@ 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=3cd6f8a7c3bd9d2bb898fcb27c75221a"
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://0001-CMakeLists.txt-link-with-libclang-cpp-library-instea.patch \
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://0001-CMakeLists.txt-allow-to-pick-llvm-config-from-usr-bi.patch \
file://ffc75e464ff2b8fce7dbf74f1846ebd0852bc6f9.patch \
file://run-ptest \
"
SRCREV = "ee43967286215a0511c2bc090e604848b4a32bed"
SRCREV = "14bd04aa7e68cd33eb1d96b33058cb64d7ef76f4"
COMPATIBLE_HOST = '(x86_64).*-linux'
@ -29,6 +26,9 @@ 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() {
@ -62,4 +62,13 @@ EXTRA_OECMAKE += " \
-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"