PKGNAME=rocm-hipblaslt
PKGDES="HIP library for GEMM operations with extended functionality"
PKGSEC=devel
PKGDEP="rocm-llvm rocm-clr rocm-cmake rocm-hipblas-common rocm-roctracer rocm-origami rocm-smi-lib"

# FIXME: Undefined symbol: cblas_dgemm. Build-time dependency to lapack
# was removed.
BUILDDEP="cmake cargo rustc llvm maturin msgpack-c++ rocm-smi-lib gtest pyyaml blis python-msgpack"

USECLANG=1

# FIXME: gfortran does not support ld.lld, yet BUILD_CLIENTS_* requires FORTRAN.
#
# unrecognized command-line option ‘-fld-lld’
NOLTO=1

# Note: Control Flow Protection is not supported by GPU targets.
#
# https://github.com/llvm/llvm-project/issues/86450
AB_FLAGS_CFP=0

# FIXME: Segmentation Fault
#  failed: null sections(STRTAB)
#  rocm-clr rocclr/elf/elf.cpp:282
ABSTRIP=0

ABTYPE=cmakeninja
CMAKE_AFTER=(
    '-DCMAKE_INSTALL_PREFIX=/usr/lib/rocm'
    '-DCMAKE_C_COMPILER=/usr/lib/rocm/lib/llvm/bin/clang'
    '-DCMAKE_CXX_COMPILER=/usr/lib/rocm/lib/llvm/bin/clang++'
    '-DCMAKE_SKIP_INSTALL_RPATH=OFF'
    '-DCMAKE_PREFIX_PATH=/usr/lib/rocm'
    '-DROCM_PATH=/usr/lib/rocm'
    '-DCMAKE_FIND_ROOT_PATH=/usr/lib/rocm/;/usr/lib/rocm/lib/llvm/'
    '-DCMAKE_INSTALL_RPATH=/usr/lib/rocm/lib/llvm/lib;/usr/lib/rocm/lib'
    '-DCMAKE_LINKER_TYPE=LLD'
    # FIXME: ld.lld: error: undefined symbol: cblas_dgemm
    '-DHIPBLASLT_ENABLE_CLIENT=OFF'
    '-DORIGAMI_ENABLE_INSTALL=OFF'
)

# Note: Disable iGPU/CDNA on ARM64. Reduce build pressure.
CMAKE_AFTER__ARM64=(
    "${CMAKE_AFTER[@]}"
    '-DGPU_TARGETS=gfx1100;gfx1101;gfx1102;gfx1200;gfx1201'
)

FAIL_ARCH="!(amd64|arm64|loongarch64)"
