# Maintainer: Torsten Keßler # Contributor: Markus Näther pkgname=rocalution pkgver=5.2.1 pkgrel=1 pkgdesc='Next generation library for iterative sparse solvers for ROCm platform' arch=('x86_64') url='https://rocalution.readthedocs.io/en/master' license=('MIT') depends=('hip' 'rocsparse' 'rocblas' 'rocprim' 'rocrand' 'openmp') makedepends=('cmake' 'rocm-cmake' 'git') _git='https://github.com/ROCmSoftwarePlatform/rocALUTION' source=("$pkgname-$pkgver.tar.gz::$_git/archive/rocm-$pkgver.tar.gz" "rocblas-rocsparse-include-path.patch::$_git/commit/8264818ab790c48f12df45e6dc90d504be72d690.patch") sha256sums=('f246bd5b5d1b5821c29b566610a1c1d5c5cc361e0e5c373b8b04168b05e9b26f' 'SKIP') _dirname="$(basename "$_git")-$(basename "${source[0]}" ".tar.gz")" prepare() { cd "$_dirname" patch -Np1 -i "$srcdir/rocblas-rocsparse-include-path.patch" } build() { local cmake_args=(-DROCM_PATH=/opt/rocm) if [[ -n "$AMDGPU_TARGETS" ]]; then cmake_args+=(-DAMDGPU_TARGETS="$AMDGPU_TARGETS") fi # -fcf-protection is not supported by HIP, see # https://docs.amd.com/bundle/ROCm-Compiler-Reference-Guide-v5.2/page/Appendix_A.html CXXFLAGS="${CXXFLAGS} -fcf-protection=none" \ cmake -B build \ -S "$_dirname" \ "${cmake_args[@]}" make -C build } package() { DESTDIR="$pkgdir" make -C build install install -Dm644 /dev/stdin "$pkgdir/etc/ld.so.conf.d/rocalution.conf" << EOF /opt/rocm/rocalution/lib EOF install -Dm644 "$_dirname/LICENSE.md" "$pkgdir/usr/share/licenses/$pkgname/LICENSE" }