Skip to content
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

Maybe we should still provice alsa-javacpp-platform.jar #1

Open
atsushieno opened this issue Aug 29, 2024 · 1 comment
Open

Maybe we should still provice alsa-javacpp-platform.jar #1

atsushieno opened this issue Aug 29, 2024 · 1 comment

Comments

@atsushieno
Copy link
Owner

atsushieno commented Aug 29, 2024

Currently alsa-javacpp is referenced in ktmidi in the way that JavaCPP does not really endorse - it directly adds implementation reference to alsa-javacpp package. On the other hand, we add rtmidi-javacpp and rtmidi-javacpp-platform, nicely in accordance with the official approach.

It did not matter because ALSA only runs on Linux and we could at least build alsa-javacpp for Linux x86_64 and Linux arm64 without hassle. The implemetation would resolve to both of them, but that did not matter.

Maybe.

I'm not sure if it brings in any conflicts at resolving libjnialsa.so from both references on arm64 (it never did for me on x64). And not sure what happens if we get RISC-V ABI.

So, probably we should add the "platform" jar just like other libraries.

It however brings in a drawback; right now we can reference only ktmidi-jvm-desktop jar and Gradle automatically resolves the "implementation" dependencies. If we switch to the "platform" manner, the reference will have to become "api" and we will need javacpp-platform Gradle plugin at each app. This change may bring in confusion among ktmidi app developers. If they update ktmidi version without checking anything, it will suddenly break their builds. That is something we should avoid.

@atsushieno
Copy link
Owner Author

We could at least publish alsa-javacpp-platform.jar. Whether we use it or not in ktmidi is up to ktmidi, not here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant