Closed Ghabry closed 1 year ago
This is ready now. Compiled everything on Linux and macOS.
I disabled (hidden=true) the Windows presets for now because the CMake provided by VS2019 is too old and I won't install VS2022 before the next Player release. Consider this as "should work" but I can't really test this on Windows right now.
As this is mostly for prototyping it always builds the static library by default (can be overwritten) and disables the tools on selected platforms.
Testscript for Linux
#!/bin/bash
set -e
export EASYRPG_BUILDSCRIPTS=$PWD/easyrpg-buildscripts
cd easyrpg-liblcf
# Native
echo "=== Native ==="
cmake . -GNinja --preset debug
cmake --build --preset debug
# Linux
echo "=== Linux ==="
cmake . -GNinja --preset linux-debug
cmake --build --preset linux-debug
# Vita
echo "=== Vita ==="
cmake . -GNinja --preset psvita-debug
cmake --build --preset psvita-debug
# 3DS
echo "=== 3ds ==="
cmake . -GNinja --preset 3ds-debug
cmake --build --preset 3ds-debug
# Wii
echo "=== Wii ==="
cmake . -GNinja --preset wii-debug
cmake --build --preset wii-debug
# Switch
echo "=== Switch ==="
cmake . -GNinja --preset switch-debug
cmake --build --preset switch-debug
# emscripten
echo "=== Emscripten ==="
cmake . -GNinja --preset emscripten-debug
cmake --build --preset emscripten-debug
# Android
echo "=== Android v7a ==="
cmake . -GNinja --preset android-armeabi-v7a-debug
cmake --build --preset android-armeabi-v7a-debug
echo "=== Android v8a ==="
cmake . -GNinja --preset android-arm64-v8a-debug
cmake --build --preset android-arm64-v8a-debug
echo "=== Android x86 ==="
cmake . -GNinja --preset android-x86-debug
cmake --build --preset android-x86-debug
echo "=== Android x64 ==="
cmake . -GNinja --preset android-x86_64-debug
cmake --build --preset android-x86_64-debug
Test for macOS
export EASYRPG_BUILDSCRIPTS=$HOME/jenkins/workspace/macos-toolchain
cmake . -GNinja --preset macos-debug
cmake --build --preset macos-debug
The generator script is not needed downstream because the generated files are in the repo. The generated files are not code (no idea if a DSL/Domain specific language is code or content :thinking:). I will change the license, thanks for that info.
Almost like the Player one but the script is a bit simplified (no libretro or liblcf) and Android was added. (Android makes no sense for Player as it requires Gradle)
Not tested yet ;)