# Author: mosra <mosra@centrum.cz>
pkgname=magnum
pkgver=dev.gcc45
pkgrel=1
pkgdesc="C++11 and OpenGL 2D/3D graphics engine (built with GCC 4.5)"
arch=('i686' 'x86_64')
url="http://mosra.cz/blog/magnum.php"
license=('MIT')
depends=('corrade' 'openal' 'freeglut' 'sdl2')
makedepends=('cmake' 'ninja' 'gcc45')
options=('!strip' 'staticlibs')
provides=('magnum-git')

_rootdir=$startdir/../../

build() {
    # Disable flags unknown to GCC 4.7
    newcxxflags=$(echo $CXXFLAGS | sed s/-fstack-protector-strong.//g)
    export CXXFLAGS="$newcxxflags"

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

        cmake .. \
            -DCMAKE_CXX_COMPILER=g++-4.5 \
            -G Ninja
    fi

    cd "$_rootdir/build-gcc45"

    cmake .. \
        -DCMAKE_BUILD_TYPE=Debug \
        -DCMAKE_INSTALL_PREFIX=/usr \
        -DWITH_AUDIO=ON \
        -DWITH_GLUTAPPLICATION=ON \
        -DWITH_GLXAPPLICATION=ON \
        -DWITH_SDL2APPLICATION=ON \
        -DWITH_WINDOWLESSGLXAPPLICATION=ON \
        -DWITH_MAGNUMFONT=ON \
        -DWITH_MAGNUMFONTCONVERTER=ON \
        -DWITH_OBJIMPORTER=ON \
        -DWITH_TGAIMAGECONVERTER=ON \
        -DWITH_TGAIMPORTER=ON \
        -DWITH_WAVAUDIOIMPORTER=ON \
        -DWITH_DISTANCEFIELDCONVERTER=ON \
        -DWITH_FONTCONVERTER=ON \
        -DWITH_MAGNUMINFO=ON \
        -DBUILD_TESTS=ON \
        -DBUILD_GL_TESTS=ON
    ninja
}

check() {
    cd "$_rootdir/build-gcc45"
    ctest --output-on-failure -j5
}

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