# SliTaz package receipt.

PACKAGE="llvm"
VERSION="11.1.0"
CATEGORY="development"
SHORT_DESC="LLVM - Modular compiler toolchain collection."
MAINTAINER="pascal.bellard@slitaz.org"
LICENSE="MIT"
WEB_SITE="http://llvm.org/"
TARBALL="$PACKAGE-$VERSION.src.tar.xz"
WGET_URL="https://github.com/llvm/llvm-project/releases/download/llvmorg-$VERSION/$TARBALL"

DEPENDS="libffi gcc-lib-base llvm-lib-base"
BUILD_DEPENDS="cmake libffi-dev zlib-dev ninja"

# Rules to configure and make the package.
compile_rules()
{
    mkdir build && cd build

    CC=gcc CXX=g++                              \
    cmake -DCMAKE_INSTALL_PREFIX=/usr           \
      -DLLVM_ENABLE_FFI=ON                      \
      -DCMAKE_BUILD_TYPE=Release                \
      -DLLVM_BUILD_LLVM_DYLIB=ON                \
      -DLLVM_LINK_LLVM_DYLIB=ON                 \
      -DLLVM_ENABLE_RTTI=ON                     \
      -DLLVM_TARGETS_TO_BUILD="host;AMDGPU;BPF" \
      -DLLVM_BUILD_TESTS=OFF                    \
      -DLLVM_BINUTILS_INCDIR=/usr/include       \
      -Wno-dev -G Ninja ..                      &&
    ninja && ninja install || return 1
}

# Rules to gen a SliTaz package suitable for Tazpkg.
genpkg_rules()
{
    mkdir -p $fs/usr/lib
    cp -a $install/usr/bin $fs/usr
    cp -a $install/usr/lib/*.*a $fs/usr/lib
    cp -a $install/usr/include $fs/usr
}