# Maintainer: Daniel Bermond <dbermond@archlinux.org>
# Maintainer: Bruno Pagani <archange@archlinux.org>
_srcname=SPIRV-LLVM-Translator
pkgname=${_srcname,,}
pkgver=17.0.0.r6+g708835142
pkgrel=1
pkgdesc="Tool and a library for bi-directional translation between SPIR-V and LLVM IR"
arch=(x86_64 armv7h)
url="https://github.com/KhronosGroup/SPIRV-LLVM-Translator"
license=(LicenseRef-custom)
depends=(llvm-libs spirv-tools)
makedepends=(git cmake llvm spirv-headers)
checkdepends=(python python-setuptools clang)
# Current point in the used LLVM branch
_commit=7088351420a8f0c3e5f9be678fd1d16ae826e37f
source=(git+${url}.git#commit=$_commit)
sha256sums=('SKIP')
pkgver() {
cd ${_srcname}
git describe --tags | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./;s/-/+/'
}
build() {
cmake -B build -S ${_srcname} \
-G 'Unix Makefiles' \
-DBUILD_SHARED_LIBS=ON \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
-DCMAKE_SKIP_RPATH=ON \
-DLLVM_INCLUDE_TESTS=ON \
-DLLVM_EXTERNAL_LIT=/usr/bin/lit \
-DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR=/usr/include/spirv/ \
-Wno-dev
cmake --build build
}
check() {
LD_LIBRARY_PATH="${srcdir}/build/lib/SPIRV" ctest --test-dir build --output-on-failure
}
package() {
DESTDIR="${pkgdir}" cmake --install build
install -Dm755 build/tools/llvm-spirv/llvm-spirv -t "${pkgdir}"/usr/bin
install -Dm644 ${_srcname}/LICENSE.TXT -t "${pkgdir}"/usr/share/licenses/${pkgname}/
}