[arch-commits] Commit in ispc/trunk (PKGBUILD ispc-libclang-cpp.patch llvm12.patch)

Bruno Pagani archange at gemini.archlinux.org
Tue Jul 20 20:51:33 UTC 2021


    Date: Tuesday, July 20, 2021 @ 20:51:33
  Author: archange
Revision: 980568

upgpkg: ispc 1.16.0-1

Modified:
  ispc/trunk/PKGBUILD
  ispc/trunk/ispc-libclang-cpp.patch
Deleted:
  ispc/trunk/llvm12.patch

-------------------------+
 PKGBUILD                |   41 +++++++++++++++++++++++++-----------
 ispc-libclang-cpp.patch |    7 ++----
 llvm12.patch            |   52 ----------------------------------------------
 3 files changed, 32 insertions(+), 68 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2021-07-20 20:08:36 UTC (rev 980567)
+++ PKGBUILD	2021-07-20 20:51:33 UTC (rev 980568)
@@ -2,27 +2,41 @@
 # Maintainer: Bruno Pagani <archange at archlinux.org>
 
 pkgname=ispc
-pkgver=1.15.0
-pkgrel=3
+pkgver=1.16.0
+pkgrel=1
 pkgdesc="Compiler for high-performance SIMD programming on the CPU"
 arch=(x86_64)
 url="https://ispc.github.io/"
 license=(BSD)
-depends=(ncurses zlib llvm-libs clang)
-makedepends=(llvm python lib32-glibc cmake) # level-zero-headers level-zero-loader openmp spirv-llvm-translator vc-intrinsics)
+depends=(ncurses zlib llvm-libs clang spirv-llvm-translator)
+makedepends=(llvm python lib32-glibc cmake level-zero-headers level-zero-loader openmp vc-intrinsics)
+optdepends=(
+    'intel-compute-runtime: GPU support'
+    'level-zero-loader: GPU support'
+    'openmp: GPU support'
+)
+_gtestcommit=6a7ed316a5cdc07b6d26362c90770787513822d4
 source=(https://github.com/ispc/ispc/archive/v${pkgver}/${pkgname}-${pkgver}.tar.gz
-        llvm12.patch
+        googletest-${_gtestcommit}.zip::https://github.com/google/googletest/archive/${_gtestcommit}.zip
+        ispc-fix-missing-string.patch::https://patch-diff.githubusercontent.com/raw/ispc/ispc/pull/2126.patch
         ispc-libclang-cpp.patch)
-sha256sums=('2658ff00dc045ac9fcefbf6bd26dffaf723b059a942a27df91bbb61bc503a285'
-            '7fc5cee572731a5a31f02c7ecea301c42551c56160d58f164cfd01834e53087a'
-            'f6a162b8b60e0a0d17526c4e70bf9bc681c0e16cfee2b8cde1d7f9a5a99b8e78')
+sha256sums=('c6b1c5487ce0e6b439e7cdf6656179092204a4256f99615485f0569b72dc74b0'
+            '718cc64f6f563399a228fc439b6ea9cb58d062e66e5340b92ca0f26adecfaac5'
+            '6b4a7b1809ad502951d67c82f9a589b66e58596f78bab5b2ba5a0e1df2a97c52'
+            '51ae0943cbce2b3f29549c5fb262e8620ad5e171283a83255e15dac20c86bf9f')
 
 prepare() {
   cd ${pkgname}-${pkgver}
-  patch -p1 -i ../llvm12.patch # Fix build with LLVM 12
   patch -p1 -i ../ispc-libclang-cpp.patch # Build with unified libclang-cpp.so
   # Remove tests that requires DUMPS (https://github.com/ispc/ispc/issues/1752)
   sed -i '/debug-phase/d' tests/lit-tests/arg_parsing_errors.ispc
+  # Add Google Test
+  rmdir ispcrt/tests/vendor/google/googletest
+  mv ../googletest-6a7ed316a5cdc07b6d26362c90770787513822d4 ispcrt/tests/vendor/google/googletest
+  # Broken check?
+  sed -i 's|NOT EXISTS "${PROJECT_SOURCE_DIR}/ispcrt/tests/vendor/google/googletest/CMakeLists.txt"|FALSE|' ispcrt/tests/CMakeLists.txt
+  # Missing includes https://github.com/ispc/ispc/pull/2126
+  patch -p1 -i ../ispc-fix-missing-string.patch
 }
 
 build() {
@@ -29,9 +43,9 @@
   cmake -B build -S ${pkgname}-${pkgver} \
     -DCMAKE_INSTALL_PREFIX=/usr \
     -DISPC_INCLUDE_EXAMPLES=OFF \
-    -DISPC_NO_DUMPS=ON #\
-#    -DGENX_ENABLED=ON \
-#    -DGENX_DEPS_DIR=/usr
+    -DISPC_NO_DUMPS=ON \
+    -DGENX_ENABLED=ON \
+    -DGENX_DEPS_DIR=/usr
   make -C build
 }
 
@@ -42,4 +56,7 @@
 package() {
   make -C build DESTDIR="${pkgdir}" install
   install -Dm644 ${pkgname}-${pkgver}/LICENSE.txt -t "${pkgdir}"/usr/share/licenses/${pkgname}
+  # Remove uneeded files
+  rm -r "${pkgdir}"/build
+  rm "${pkgdir}"/usr/lib/libispcrt_static.a
 }

Modified: ispc-libclang-cpp.patch
===================================================================
--- ispc-libclang-cpp.patch	2021-07-20 20:08:36 UTC (rev 980567)
+++ ispc-libclang-cpp.patch	2021-07-20 20:51:33 UTC (rev 980568)
@@ -1,11 +1,10 @@
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -209,7 +209,7 @@ if (WASM_ENABLED)
-     endif()
+@@ -281,6 +281,6 @@ 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)
- set(LLVM_COMPONENTS engine ipo bitreader bitwriter instrumentation linker option)
+ set(LLVM_COMPONENTS engine ipo bitreader bitwriter instrumentation linker option frontendopenmp)
  
- if (${LLVM_VERSION_NUMBER} VERSION_GREATER_EQUAL "10.0.0")

Deleted: llvm12.patch
===================================================================
--- llvm12.patch	2021-07-20 20:08:36 UTC (rev 980567)
+++ llvm12.patch	2021-07-20 20:51:33 UTC (rev 980568)
@@ -1,52 +0,0 @@
-Author: Hans-Peter Jansen (frispete)
-
-Found @ https://build.opensuse.org/package/show/devel:tools:compiler/ispc
-
-Index: b/src/ctx.cpp
-===================================================================
---- a/src/ctx.cpp
-+++ b/src/ctx.cpp
-@@ -1473,11 +1473,15 @@ void FunctionEmitContext::AddDebugPos(ll
-     llvm::Instruction *inst = llvm::dyn_cast<llvm::Instruction>(value);
-     if (inst != NULL && m->diBuilder) {
-         SourcePos p = pos ? *pos : currentPos;
--        if (p.first_line != 0)
-+        if (p.first_line != 0) {
-             // If first_line == 0, then we're in the middle of setting up
-             // the standard library or the like; don't add debug positions
-             // for those functions
--            inst->setDebugLoc(llvm::DebugLoc::get(p.first_line, p.first_column, scope ? scope : GetDIScope()));
-+            scope = scope ? scope : GetDIScope();
-+            llvm::DebugLoc diLoc =
-+                llvm::DILocation::get(scope->getContext(), p.first_line, p.first_column, scope, nullptr, false);
-+            inst->setDebugLoc(diLoc);
-+        }
-     }
- }
- 
-@@ -1518,9 +1522,10 @@ void FunctionEmitContext::EmitVariableDe
-     llvm::DILocalVariable *var = m->diBuilder->createAutoVariable(
-         scope, sym->name, sym->pos.GetDIFile(), sym->pos.first_line, diType, true /* preserve through opts */);
- 
-+    llvm::DebugLoc diLoc =
-+        llvm::DILocation::get(scope->getContext(), sym->pos.first_line, sym->pos.first_column, scope, nullptr, false);
-     llvm::Instruction *declareInst =
--        m->diBuilder->insertDeclare(sym->storagePtr, var, m->diBuilder->createExpression(),
--                                    llvm::DebugLoc::get(sym->pos.first_line, sym->pos.first_column, scope), bblock);
-+        m->diBuilder->insertDeclare(sym->storagePtr, var, m->diBuilder->createExpression(), diLoc, bblock);
-     AddDebugPos(declareInst, &sym->pos, scope);
- }
- 
-@@ -1535,9 +1540,10 @@ void FunctionEmitContext::EmitFunctionPa
-         m->diBuilder->createParameterVariable(scope, sym->name, argNum + 1, sym->pos.GetDIFile(), sym->pos.first_line,
-                                               diType, true /* preserve through opts */, flags);
- 
-+    llvm::DebugLoc diLoc =
-+        llvm::DILocation::get(scope->getContext(), sym->pos.first_line, sym->pos.first_column, scope, nullptr, false);
-     llvm::Instruction *declareInst =
--        m->diBuilder->insertDeclare(sym->storagePtr, var, m->diBuilder->createExpression(),
--                                    llvm::DebugLoc::get(sym->pos.first_line, sym->pos.first_column, scope), bblock);
-+        m->diBuilder->insertDeclare(sym->storagePtr, var, m->diBuilder->createExpression(), diLoc, bblock);
-     AddDebugPos(declareInst, &sym->pos, scope);
- }
- 




More information about the arch-commits mailing list