PKGNAME=intel-graphics-compiler
PKGSEC=devel
PKGDEP="gcc-runtime glibc zlib"
BUILDDEP="mako pyyaml"
PKGDES="An LLVM based compiler for OpenCL targeting Intel Gen graphics hardware architecture"

LLVM_VER=16.0.6
ABTYPE=cmakeninja
CMAKE_AFTER=(
    "-DCCLANG_FROM_SYSTEM=OFF"
    "-DCMAKE_BUILD_TYPE=Release"
    "-DIGC_OPTION__CLANG_MODE=Source"
    "-DIGC_OPTION__LINK_KHRONOS_SPIRV_TRANSLATOR=ON"
    "-DIGC_OPTION__LLD_MODE=Source"
    "-DIGC_OPTION__LLVM_MODE=Source"
    "-DIGC_OPTION__LLVM_PREFERRED_VERSION=${LLVM_VER}"
    "-DIGC_OPTION__SPIRV_TOOLS_MODE=Source"
    "-DIGC_OPTION__USE_KHRONOS_SPIRV_TRANSLATOR_IN_SC=ON"
    "-DIGC_OPTION__USE_PREINSTALLED_SPIRV_HEADERS=OFF"
    "-DIGC_OPTION__VC_INTRINSICS_MODE=Source"
    "-DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR="${SRCDIR}"/../SPIRV-Headers"
)

CMAKE_AFTER__AMD64=(
    ${CMAKE_AFTER[@]}
    "-DIGC_OPTION__ARCHITECTURE_TARGET=Linux64"
)

CMAKE_AFTER__LOONGARCH64=(
    ${CMAKE_AFTER[@]}
    "-DIGC_OPTION__ARCHITECTURE_TARGET=LinuxLoongArch"
)

CMAKE_AFTER__ARM64=(
    ${CMAKE_AFTER[@]}
    "-DIGC_OPTION__ARCHITECTURE_TARGET=LinuxARM"
)
# FIXME Disable RV64 until the test is successful.
CMAKE_AFTER__RISCV64=(
    ${CMAKE_AFTER[@]}
    "-DIGC_OPTION__ARCHITECTURE_TARGET=LinuxRISCV"
)

NOLTO=1
FAIL_ARCH="@(loongarch64_nosimd|loongson3|riscv64|ppc64el)"
