# Author: mosra pkgname=android-arm64-magnum pkgver=dev pkgrel=1 pkgdesc="C++11/C++14 graphics middleware for games and data visualization (Android ARM64)" arch=('any') url="https://magnum.graphics" license=('MIT') depends=('android-arm64-corrade') makedepends=('cmake>=3.20' 'ninja' 'android-ndk' 'corrade') options=('!strip' '!buildflags') _rootdir=$startdir/../../ build() { if [ ! -d "$_rootdir/build-android-arm64" ] ; then mkdir "$_rootdir/build-android-arm64" cd "$_rootdir/build-android-arm64" cmake .. \ -DCMAKE_SYSTEM_NAME=Android \ -DCMAKE_SYSTEM_VERSION=24 \ -DCMAKE_ANDROID_ARCH_ABI=arm64-v8a \ -DCMAKE_ANDROID_STL_TYPE=c++_static \ -DCMAKE_INSTALL_PREFIX=/opt/android-ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr \ -G Ninja fi cd "$_rootdir/build-android-arm64" # Colored output is enabled implicitly. If Ninja detects it's outputting to # a pipe, it strips it away from the output; Clang unfortunately doesn't # have any env var to temporarily disable colors. The inverse, i.e. # preserving colors when Ninja outputs to a pipe can be done with # CLICOLOR_FORCE=1: https://github.com/ninja-build/ninja/issues/2196 cmake .. \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_COLOR_DIAGNOSTICS=ON \ -DMAGNUM_WITH_VK=ON \ -DMAGNUM_WITH_ANYAUDIOIMPORTER=OFF \ -DMAGNUM_WITH_ANYIMAGECONVERTER=ON \ -DMAGNUM_WITH_ANYIMAGEIMPORTER=ON \ -DMAGNUM_WITH_ANYSCENECONVERTER=ON \ -DMAGNUM_WITH_ANYSCENEIMPORTER=ON \ -DMAGNUM_WITH_ANYSHADERCONVERTER=ON \ -DMAGNUM_WITH_MAGNUMFONT=ON \ -DMAGNUM_WITH_OBJIMPORTER=ON \ -DMAGNUM_WITH_TGAIMAGECONVERTER=ON \ -DMAGNUM_WITH_TGAIMPORTER=ON \ -DMAGNUM_WITH_ANDROIDAPPLICATION=ON \ -DMAGNUM_WITH_EGLCONTEXT=ON \ -DMAGNUM_WITH_WINDOWLESSEGLAPPLICATION=ON \ -DMAGNUM_WITH_DISTANCEFIELDCONVERTER=ON \ -DMAGNUM_WITH_FONTCONVERTER=ON \ -DMAGNUM_WITH_IMAGECONVERTER=ON \ -DMAGNUM_WITH_SCENECONVERTER=ON \ -DMAGNUM_WITH_SHADERCONVERTER=ON \ -DMAGNUM_WITH_GL_INFO=ON \ -DMAGNUM_WITH_VK_INFO=ON \ -DMAGNUM_TARGET_GLES2=OFF \ -DMAGNUM_BUILD_TESTS=ON \ -DMAGNUM_BUILD_GL_TESTS=ON \ -DMAGNUM_BUILD_VK_TESTS=ON ninja } package() { cd "$_rootdir/build-android-arm64" DESTDIR="$pkgdir/" ninja install/strip }