atsushieno/android-fluidsynth

build system changes in the original fluidsynth

atsushieno opened this issue · 4 comments

It turned out that the original Fluidsynth is moved from sourceforge to github about 8 months ago, and their development goes on there. One of the most significant changes that matter here is the build system changes - autotools are not used anymore and they switched to CMake.

It is problematic because 1) fluidsynth cmake does not really care about Android, and 2) cerbero does not really care about CMake for Android (cerbero does care about CMake, but for desktop).

This makes me ponder, it might be time to move away from Cerbero and use something different. That needs to support glib for Android though.

An option is to create a glib package and a fluidsynth package for https://github.com/google/cdep, but I don't like the current developers' direction that they don't care about package maintenance cost by making changes to the source trees for the target projects ("fork them, make changes to README.md, add package description and build packages there").

A new branch for opensles support based on the original Fluidsynth/fluidsynth is now being done at https://github.com/atsushieno/fluidsynth-fork/tree/opensles-v2 . And there is an almost-working Makefile based on this branch. I'm making further changes to it so that the entire set of the shared libraries can be built and collected within the fluidsynth source tree.

In the meantime, here is the existing Makefile. https://gist.github.com/atsushieno/beea5365f8727c8be93a35aefdf70c90

The latest build there is as smart as it used to be in this repo i.e. there is no more multiple shared libraries that increases app size unnecessarily anymore.

Now https://github.com/atsushieno/fluidsynth-fork/tree/opensles-v2 is the upgraded and almost upstream-compatible version of the port. There is no need to keep this repository anymore.