PKGNAME=rocm-transfer-bench
PKGDES="Utility to benchmark simultaneous copies between CPU/GPU memory with CPUs, GPU kernels, DMA engines, and NICs"
PKGSEC=devel
PKGDEP="numactl openmpi rdma-core rocr-runtime rocm-llvm rocm-clr rocm-amdsmi rocminfo"
BUILDDEP="cmake rocm-cmake"

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

ABTYPE=cmakeninja
CMAKE_AFTER=(
    '-DCMAKE_INSTALL_PREFIX=/usr/lib/rocm'
    '-DCMAKE_CXX_COMPILER=/usr/lib/rocm/lib/llvm/bin/clang++'
    '-DCMAKE_PREFIX_PATH=/usr/lib/rocm'
    '-DCMAKE_SKIP_INSTALL_RPATH=OFF'
    '-DCMAKE_INSTALL_RPATH=/usr/lib/rocm/lib/llvm/lib;/usr/lib/rocm/lib'
    '-DCMAKE_LINKER_TYPE=LLD'
    '-DHIP_PLATFORM=amd'
    '-DENABLE_NIC_EXEC=1'
)

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