# Author: mosra <mosra@centrum.cz>
pkgname=magnum-plugins
pkgver=dev.clang
pkgrel=1
pkgdesc="Plugins for the Magnum C++11/C++14 graphics engine (built with clang)"
arch=('i686' 'x86_64')
url="https://magnum.graphics"
license=('MIT')
depends=('magnum' 'devil' 'faad2' 'freetype2' 'harfbuzz' 'libjpeg' 'libpng' 'assimp' 'meshoptimizer')
makedepends=('cmake' 'clang' 'ninja' 'basis-universal-src')
options=(!strip)
provides=('magnum-plugins-git')

_rootdir=$startdir/../../

build() {
    # Disable optimization (saves A LOT of compilation time)
    newcxxflags=$(echo $CXXFLAGS | sed s/-O.//g | sed s/-D_FORTIFY_SOURCE=.//g)
    export CXXFLAGS="$newcxxflags"

    if [ ! -d "$_rootdir/build-clang" ] ; then
        mkdir "$_rootdir/build-clang"
        cd "$_rootdir/build-clang"

        cmake .. \
            -DCMAKE_CXX_COMPILER=clang++ \
            -G Ninja
    fi

    cd "$_rootdir/build-clang"

    cmake .. \
        -DCMAKE_BUILD_TYPE=Debug \
        -DCMAKE_INSTALL_PREFIX=/usr \
        -DBASIS_UNIVERSAL_DIR=/opt/basis-universal \
        -DBUILD_TESTS=ON \
        -DBUILD_GL_TESTS=ON \
        -DWITH_ASSIMPIMPORTER=ON \
        -DWITH_BASISIMPORTER=ON \
        -DWITH_BASISIMAGECONVERTER=ON \
        -DWITH_DDSIMPORTER=ON \
        -DWITH_DEVILIMAGEIMPORTER=ON \
        -DWITH_DRFLACAUDIOIMPORTER=ON \
        -DWITH_DRMP3AUDIOIMPORTER=ON \
        -DWITH_DRWAVAUDIOIMPORTER=ON \
        -DWITH_FAAD2AUDIOIMPORTER=ON \
        -DWITH_FREETYPEFONT=ON \
        -DWITH_HARFBUZZFONT=ON \
        -DWITH_ICOIMPORTER=ON \
        -DWITH_JPEGIMAGECONVERTER=ON \
        -DWITH_JPEGIMPORTER=ON \
        -DWITH_MESHOPTIMIZERSCENECONVERTER=ON \
        -DWITH_MINIEXRIMAGECONVERTER=ON \
        -DWITH_OPENGEXIMPORTER=ON \
        -DWITH_PNGIMAGECONVERTER=ON \
        -DWITH_PNGIMPORTER=ON \
        -DWITH_PRIMITIVEIMPORTER=ON \
        -DWITH_STANFORDIMPORTER=ON \
        -DWITH_STANFORDSCENECONVERTER=ON \
        -DWITH_STBIMAGECONVERTER=ON \
        -DWITH_STBIMAGEIMPORTER=ON \
        -DWITH_STBTRUETYPEFONT=ON \
        -DWITH_STBVORBISAUDIOIMPORTER=ON \
        -DWITH_STLIMPORTER=ON \
        -DWITH_TINYGLTFIMPORTER=ON
    ninja
}

check() {
    cd "$_rootdir/build-clang"
    CORRADE_TEST_COLOR=ON ctest --output-on-failure -j5
}

package() {
    cd "$_rootdir/build-clang"
    DESTDIR="$pkgdir/" ninja install
}

# kate: hl bash
