-
Notifications
You must be signed in to change notification settings - Fork 246
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Android testing setup #913
Add Android testing setup #913
Conversation
As described on README, it does not really run tests yet. But it asserts that libfluidsynth.so is loadable at least.
Changes are from FluidSynth#897 (comment)
…-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.
…eeded." This reverts commit f5144c0.
…oid test. The existing ctests cannot be simply used in Android tests because everything is compiled as standalone executable with `main()` function. Since Android 11+ does not support standalone executables, those test `main()` functions are converted as unique functions and then picked up in this test's native-lib CMakeLists.txt. Since those tests depend on libfluidsynth internals, we cannot simply link with libfluidsynth.so. We instead compile the library with OBJ files.
... not in CMakeLists.txt.
Some defects I'm aware of:
|
Works like a charm! I only added a missing One question: Currently, a single |
context: FluidSynth#913 (comment) Run with `./gradlew -PcustomAbiFilters=x86` etc.
awesome!
Looks like Azure DevOps has awkward limitation.. I just added an customizible build property. Now you can run gradle like: |
Kudos, SonarCloud Quality Gate passed! |
Perfect, thank you! I'm merging this and in the next days / weeks will work on the ADops integration.
It's intentional: You get up to 10 parallel build slots in Azure, but each virtual machine only gets a dual-core CPU. Building all four archs on a single VM takes way too long (for my taste). But building each architecture in a different slot reduces overall build time by factor four ;) |
context: #912
This adds basic testing setup along with custom build scripts and test source generator scripts.
The rationale behind the app and how-to documentation to set up and run both locally and on Azure DevOps are described on
test-android/README.md
.Changes are rebased off of master HEAD and can be either packed in merge-commit or merged as is (some extraneous reverts involved though).