fluidsynth/test-android
atsushieno 0635766f85 [test-android] fix gettext build in build.sh by distinct --host and --target.
gettext is known as cause of problem for running host tool in target ABI
in our builds, and the latest script still had the issue.
https://github.com/atsushieno/aap-lv2-fluidsynth/actions/runs/914453645

This fixes the problem by explicitly specifying that the build host is
x86_64 linux.
If you want to reuse the script on other platforms, you have to edit it.
2021-06-12 19:05:52 +09:00
..
app Add Android test app. 2021-06-12 19:05:51 +09:00
build-scripts [test-android] fix gettext build in build.sh by distinct --host and --target. 2021-06-12 19:05:52 +09:00
gradle/wrapper Add Android test app. 2021-06-12 19:05:51 +09:00
.gitignore Add Android test app. 2021-06-12 19:05:51 +09:00
build.gradle Add Android test app. 2021-06-12 19:05:51 +09:00
gradle.properties Add Android test app. 2021-06-12 19:05:51 +09:00
gradlew Add Android test app. 2021-06-12 19:05:51 +09:00
gradlew.bat Add Android test app. 2021-06-12 19:05:51 +09:00
README.md [test-android] some followups on README. 2021-06-12 19:05:51 +09:00
settings.gradle Add Android test app. 2021-06-12 19:05:51 +09:00

Android test runner

It is meant to be an Android app that runs those fluidsynth tests under ../test directory.

It is not immediately doable at this moment because everything is based on ctest where each source has main() function that cannot be more than one within a shared library. Either every single test source file has to be compiled separately, or renaming main() to something else and have separate runnable (latter is much simpler).

But so far this app makes sure that it loads libfluidsynth.so without problem.

Building

It can be built and run from Android Studio (or gradle if you prefer).

You have to build fluidsynth for Android first, and then copy libfluidsynth.so and all the dependencies into app/src/main/jniLibs/{ABI} (armeabi-v7a / arm64-v8a / x86 / x86_64).

If you want to build them locally the scripts under build-scripts directory would be useful. Run download.sh first, and then build-all-archs.sh. The scripts are mostly taken from the build scripts from .azure.