archrelease: copy trunk to community-any
[ArchLinux/community.git] / rocrand / repos / community-x86_64 / PKGBUILD
blobc26d44bbcc0ddab491c74a8563b9f392866ab250
1 # Maintainer: Torsten Keßler <tpkessler at archlinux dot org>
2 # Contributor: Jakub Okoński <jakub@okonski.org>
3 pkgname=rocrand
4 pkgver=5.4.3
5 pkgrel=1
6 pkgdesc='Pseudo-random and quasi-random number generator on ROCm'
7 arch=('x86_64')
8 url='https://rocrand.readthedocs.io/en/latest/'
9 license=('MIT')
10 depends=('hip')
11 makedepends=('rocm-cmake' 'gcc-fortran' 'python')
12 optdepends=('gcc-fortran: Use Fortran wrapper'
13             'python: Use Python wrapper')
14 _git='https://github.com/ROCmSoftwarePlatform/rocRAND'
15 _hiprand='https://github.com/ROCmSoftwarePlatform/hipRAND'
16 source=("$pkgname-$pkgver.tar.gz::$_git/archive/rocm-$pkgver.tar.gz"
17         "$pkgname-hiprand-$pkgver.tar.gz::$_hiprand/archive/20ac3db9d7462c15a3e96a6f0507cd5f2ee089c4.tar.gz")
18 sha256sums=('463aa760e9f74e45b326765040bb8a8a4fa27aaeaa5e5df16f8289125f88a619'
19             'ee38a68c9e88056b7ecd41553e496e455dbb3fe08871ff3545430d6733070e6b')
20 options=(!lto)
21 _dirname="$(basename "$_git")-$(basename "${source[0]}" ".tar.gz")"
22 _hipname="$(basename "$_hiprand")-$(basename "${source[1]}" ".tar.gz")"
24 prepare() {
25   rm -r "$srcdir/$_dirname/hipRAND"
26   ln -s "$srcdir/$_hipname" "$srcdir/$_dirname/hipRAND"
29 build() {
30   # -fcf-protection is not supported by HIP, see
31   # https://docs.amd.com/bundle/ROCm-Compiler-Reference-Guide-v5.4/page/Appendix_A.html
32   CXXFLAGS="${CXXFLAGS} -fcf-protection=none" \
33   cmake \
34     -Wno-dev \
35     -B build \
36     -S "$_dirname" \
37     -DCMAKE_BUILD_TYPE=None \
38     -DCMAKE_TOOLCHAIN_FILE=toolchain-linux.cmake \
39     -DCMAKE_CXX_COMPILER=/opt/rocm/hip/bin/hipcc \
40     -DCMAKE_INSTALL_PREFIX=/opt/rocm
41   cmake --build build
44 package() {
45   DESTDIR="$pkgdir" cmake --install build
47   echo '/opt/rocm/hiprand/lib' > rocrand.conf
48   echo '/opt/rocm/rocrand/lib' >> rocrand.conf
49   install -Dm644 rocrand.conf "$pkgdir/etc/ld.so.conf.d/$pkgname.conf"
50   install -Dm644 "$_dirname/LICENSE.txt" "$pkgdir/usr/share/licenses/$pkgname/LICENSE"