Date: Sunday, May 30, 2021 @ 06:21:33 Author: foutrelis Revision: 950347
archrelease: copy trunk to community-staging-x86_64 Added: ispc/repos/community-staging-x86_64/ ispc/repos/community-staging-x86_64/PKGBUILD (from rev 950346, ispc/trunk/PKGBUILD) ispc/repos/community-staging-x86_64/ispc-libclang-cpp.patch (from rev 950346, ispc/trunk/ispc-libclang-cpp.patch) ispc/repos/community-staging-x86_64/llvm12.patch (from rev 950346, ispc/trunk/llvm12.patch) -------------------------+ PKGBUILD | 45 +++++++++++++++++++++++++++++++++++++++ ispc-libclang-cpp.patch | 11 +++++++++ llvm12.patch | 52 ++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 108 insertions(+) Copied: ispc/repos/community-staging-x86_64/PKGBUILD (from rev 950346, ispc/trunk/PKGBUILD) =================================================================== --- community-staging-x86_64/PKGBUILD (rev 0) +++ community-staging-x86_64/PKGBUILD 2021-05-30 06:21:33 UTC (rev 950347) @@ -0,0 +1,45 @@ +# Maintainer: Lukas Jirkovsky <l.jirkov...@gmail.com> +# Maintainer: Bruno Pagani <archa...@archlinux.org> + +pkgname=ispc +pkgver=1.15.0 +pkgrel=3 +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) +source=(https://github.com/ispc/ispc/archive/v${pkgver}/${pkgname}-${pkgver}.tar.gz + llvm12.patch + ispc-libclang-cpp.patch) +sha256sums=('2658ff00dc045ac9fcefbf6bd26dffaf723b059a942a27df91bbb61bc503a285' + '7fc5cee572731a5a31f02c7ecea301c42551c56160d58f164cfd01834e53087a' + 'f6a162b8b60e0a0d17526c4e70bf9bc681c0e16cfee2b8cde1d7f9a5a99b8e78') + +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 +} + +build() { + 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 + make -C build +} + +check() { + make -C build check-all +} + +package() { + make -C build DESTDIR="${pkgdir}" install + install -Dm644 ${pkgname}-${pkgver}/LICENSE.txt -t "${pkgdir}"/usr/share/licenses/${pkgname} +} Copied: ispc/repos/community-staging-x86_64/ispc-libclang-cpp.patch (from rev 950346, ispc/trunk/ispc-libclang-cpp.patch) =================================================================== --- community-staging-x86_64/ispc-libclang-cpp.patch (rev 0) +++ community-staging-x86_64/ispc-libclang-cpp.patch 2021-05-30 06:21:33 UTC (rev 950347) @@ -0,0 +1,11 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -209,7 +209,7 @@ if (WASM_ENABLED) + endif() + 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) + + if (${LLVM_VERSION_NUMBER} VERSION_GREATER_EQUAL "10.0.0") Copied: ispc/repos/community-staging-x86_64/llvm12.patch (from rev 950346, ispc/trunk/llvm12.patch) =================================================================== --- community-staging-x86_64/llvm12.patch (rev 0) +++ community-staging-x86_64/llvm12.patch 2021-05-30 06:21:33 UTC (rev 950347) @@ -0,0 +1,52 @@ +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); + } +