Skip to content

fix: Add iOS min SDK version link flags#1783

Merged
dsnopek merged 1 commit into
godotengine:masterfrom
Faless:fix/ios_sdk_version_link_flags
May 27, 2025
Merged

fix: Add iOS min SDK version link flags#1783
dsnopek merged 1 commit into
godotengine:masterfrom
Faless:fix/ios_sdk_version_link_flags

Conversation

@Faless

@Faless Faless commented May 21, 2025

Copy link
Copy Markdown
Contributor

This is required when publishing to the App Store, and consistent with what we already do for the macOS deployment target.

See godotengine/webrtc-native#169

@Faless
Faless requested a review from a team as a code owner May 21, 2025 14:34
@Faless Faless added bug This has been identified as a bug platform:ios topic:buildsystem Related to the buildsystem or CI setup labels May 21, 2025
@Faless Faless changed the title fix: Add iOS min SDK version to link flags fix: Add iOS min SDK version link flags May 21, 2025
This is required when publishing to the App Store, and consistent with
what we already do for the macOS deployment target.
@Faless
Faless force-pushed the fix/ios_sdk_version_link_flags branch from 2e682a5 to 4879eb7 Compare May 21, 2025 14:34
@Faless

Faless commented May 21, 2025

Copy link
Copy Markdown
Contributor Author

iOS build process is not linking anything, it's static library, it should not use LINKFLAGS at all.

My understanding was that it's possible to distribute them as dynlib in a signed framework... is that no longer the case?

@bruvzg

bruvzg commented May 21, 2025

Copy link
Copy Markdown
Member

My understanding was that it's possible to distribute them as dynlib in a signed framework... is that no longer the case?

I have not noticed it's godot-cpp, not the main repo, for godot-cpp it is relevant when building framework (it can be static library as well, but it's an option).

@Faless

Faless commented May 21, 2025

Copy link
Copy Markdown
Contributor Author

I have not noticed it's godot-cpp, not the main repo, for godot-cpp it is relevant when building framework (it can be static library as well, but it's an option).

Yeah, the reason is that I'm using the shared library in webrtc-native because I don't have a mac, so I can't generate the xcframework plist, which is a binary file and not an XML unlike the one from framework (at least that's the case for all the ones I've found), and I can't trust random users to upload a valid plist.

I'd love to support the static library (which seems to be the preferred method), but I'm not going to buy an Apple device just for that :( .

@bruvzg

bruvzg commented May 21, 2025

Copy link
Copy Markdown
Member

xcframework plist can be XML as well, here's one from MoltenVK SDK for example (it's just a list of files and target architectures) - https://gist.github.com/bruvzg/54394f35ec02f4f75d7600113df3c1bb

@Faless

Faless commented May 21, 2025

Copy link
Copy Markdown
Contributor Author

Oh, thank you so much, I've been trying to find an example for soooo long 🤩 ...

I'll open a PR on webrtc-native to switch to use a static library, that should make deploying easier.

@bruvzg

bruvzg commented May 21, 2025

Copy link
Copy Markdown
Member

plist formats are interchangeable, not sure if there are cross-platform standalone conversion tools (macOS have such tool bundled), but we have code in Godot that's capable of reading both XML and binary plists (but not writing, it only writes XMLs and ASN.1 for signatures) - https://github.com/godotengine/godot/blob/master/core/io/plist.cpp

@dsnopek dsnopek added this to the 4.x milestone May 27, 2025
@dsnopek
dsnopek merged commit af4f05e into godotengine:master May 27, 2025
@dsnopek

dsnopek commented May 27, 2025

Copy link
Copy Markdown
Collaborator

Thanks!

@Faless
Faless deleted the fix/ios_sdk_version_link_flags branch May 27, 2025 22:22
@dsnopek

dsnopek commented Jun 24, 2025

Copy link
Copy Markdown
Collaborator

Cherry-picked for 4.3 in PR #1803

@dsnopek

dsnopek commented Jun 24, 2025

Copy link
Copy Markdown
Collaborator

Cherry-picked for 4.4 in PR #1805

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug This has been identified as a bug platform:ios topic:buildsystem Related to the buildsystem or CI setup

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants