Skip to content

Conversation

@dimensionscape
Copy link
Member

Hxcpp needs the PLATFORM define for older ndks that require the gcc toolchain. We initially removed it since Lime potentially was going to have a minimum requirement of android sdk 28 due to openal soft version 1.20.1, however, this was solved by upgrading to 1.21.1 which presented no further conflicts with sdk 21.

To simply things, we just provide both defines for now.

Hxcpp needs the PLATFORM define for older ndks that require the gcc toolchain. We initially removed it since Lime potentially was going to have a minimum requirement of android sdk 28 due to openal soft version 1.20.1, however, this was solved by upgrading to 1.21.1 which presented no further conflicts with sdk 21. 

To simply things, we just provide both defines for now.
@tobil4sk
Copy link
Member

We mainly need PLATFORM_NUMBER for hxcpp 4.3.2, where it became configurable however min sdk 21 wasn't set by default yet for 32 bit architectures.

This may actually be useful to go in develop, as it may solve some issues building on android and prevent people having to resort to git hxcpp. Disabling 32 bit builds by default may also help even further even for older versions of hxcpp.

Also note, that at least for builds with openal-soft, you can't build lime with an ndk older than 20, so PLATFORM would never be read in that case. I guess it's possible that builds with mojoal might still work with older ndks but I haven't tested.

@tobil4sk
Copy link
Member

We mainly need PLATFORM_NUMBER for hxcpp 4.3.2

It turns out I had confused myself, 4.3.2 does not include the change so PLATFORM_NUMBER does nothing unless using git hxcpp, where the min sdk is already set to 21 currently. This means we can't really do anything to fix things with hxcpp 4.3.2.

@tobil4sk
Copy link
Member

I've tested with some older ndks (in particular, I was successful with r15 and r17). I had to make some modifications to hxcpp, but I was able to get them compiling when using -Dmojoal, so if we want to continue supporting that then this change makes sense.

@player-03
Copy link
Contributor

To simply things, we just provide both defines for now.

But what actually happened is we forgot about it, and no one seems to have complained. I don't know, still sounds like a bug worth fixing, but with Google becoming more and more strict, there are probably fewer and fewer people who care about old NDKs.

@tobil4sk
Copy link
Member

tobil4sk commented Oct 3, 2025

But what actually happened is we forgot about it, and no one seems to have complained.

Note, this was on the 8.3.0 branch until now, which might mean fewer users interacted with it.

I think it is best to merge this unless we explicitly disallow ndks older than 19 from being used for lime projects.

@joshtynjala joshtynjala changed the base branch from 8.3.0-Dev to develop October 3, 2025 16:54
@joshtynjala joshtynjala merged commit 9f2f518 into develop Oct 3, 2025
62 checks passed
@tobil4sk tobil4sk deleted the dimensionscape-patch-1 branch October 3, 2025 17:36
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

Successfully merging this pull request may close these issues.

5 participants