summaryrefslogtreecommitdiff
path: root/libs/rocm-rocblas/MAKEPKG
blob: 1890637af117932af7b4d5fcd2ed04204062f14d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#!/bin/mkpkg
# description: ROCm BLAS library (reference build, no Tensile)
# url: https://github.com/ROCm/rocBLAS

name=rocm-rocblas
_name=therock
version=10.0
release=1
depends=(rocm-hipamd rocm-llvm)
makedeps=(gcc-compat cmake ninja python3 rocm-cmake)
source=(
    https://github.com/ROCm/rocm-libraries/releases/download/$_name-$version/rocblas.tar.gz
    fix-rocblas-ostream.awk
    fix-rocblas-no-stdcxxfs.awk
)
renames=($name-$version.tar.gz
    ""
    ""
)

sha256sums=(
    "628dc9a5c43ecb70414da7abb591a0996d215d2bd62d0bc587fe808508731035"
    "4085116b5ab484e61c6e45b259950a4021fb82c50bfb1a175d2ba45d32c67d4c"
    "dea9e2261a06a0da1a18bd2c3e2b8dd15963d3f2083f3c2b65918cf917ec4576"
)

patch() {
    awk -f "$SRC/fix-rocblas-no-stdcxxfs.awk" \
        rocblas/library/CMakeLists.txt > CMakeLists.txt.tmp
    mv CMakeLists.txt.tmp rocblas/library/CMakeLists.txt

    awk -f "$SRC/fix-rocblas-ostream.awk" \
        rocblas/library/src/include/rocblas_ostream.hpp \
        > rocblas_ostream.hpp.tmp
    mv rocblas_ostream.hpp.tmp \
        rocblas/library/src/include/rocblas_ostream.hpp
}

build() {
    cmake -S rocblas -B build -G Ninja -Wno-dev \
        -DCMAKE_BUILD_TYPE=Release \
        -DCMAKE_INSTALL_PREFIX=/usr \
        -DCMAKE_INSTALL_LIBDIR=lib \
        -DCMAKE_CXX_COMPILER=/usr/lib/rocm/llvm/bin/clang++ \
        -DCMAKE_CXX_FLAGS="--hip-path=/usr" \
        -DCMAKE_PREFIX_PATH="/usr;/usr/lib/rocm;/usr/lib/rocm/llvm" \
        -DAMDDeviceLibs_DIR=/usr/lib/rocm/lib/cmake/AMDDeviceLibs \
        -DROCM_PATH=/usr \
        -DHIP_PLATFORM=amd \
        -DFETCHCONTENT_FULLY_DISCONNECTED=ON \
        -DBUILD_WITH_TENSILE=OFF \
        -DAMDGPU_TARGETS="gfx1030;gfx1201" \
        -DBUILD_CLIENTS_TESTS=OFF \
        -DBUILD_CLIENTS_BENCHMARKS=OFF \
        -DBUILD_CLIENTS_SAMPLES=OFF

    ninja -C build
    DESTDIR=$PKG ninja -C build install

}

signify() {
    untrusted comment: public key
    RWTZ9IduCSQ/mL8337TEUinPwT92xFEUpD92hkS7IxcOnzTt9QdpohT3
}

# vim: filetype=sh