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

Include env["suffix"] in binary names for macOS and iOS #77

Merged
merged 1 commit into from
Feb 20, 2025

Conversation

unvermuthet
Copy link
Contributor

Fixes #76

This adds the whole suffix instead of just the platform and target to the binary names.

if env["platform"] == "macos" or env["platform"] == "ios":
filepath = "{}.framework/".format(env["platform"])
file = "{}{}".format(libname, env["suffix"])

Here is the effect on the file names for macOS:

Before:

Resources
libEXTENSION-NAME.macos.template_debug

After:

Resources
libEXTENSION-NAME.macos.template_debug.double.universal
libEXTENSION-NAME.macos.template_debug.universal

Requires adjustment to Info.plist files.

Also fixes the CFBundleExecutable pointing to a macOS framework for iOS. 3b48c09#diff-38bc16d5822bfc5e55a99774078b8f4612d6936342a53059e42ee74bd5fd0661R10

Copy link
Contributor

@Ivorforce Ivorforce left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Generally a good idea, but you'll need to adjust the .gdextension files too.

@unvermuthet unvermuthet force-pushed the macos-ios-binary-naming branch from a59327c to a21da62 Compare February 19, 2025 12:08
@unvermuthet
Copy link
Contributor Author

Oups! Thanks for catching that.

Copy link
Contributor

@Ivorforce Ivorforce left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested the change, works fine. I've had the same change (using suffix for .framework) in my own repo for a while now.

It would be good to rename the .framework for each platform separately, but that's outside the scope of this PR. As discussed in the meeting, hopefully we can soon eliminate .framework generation altogether anyway.

@unvermuthet
Copy link
Contributor Author

unvermuthet commented Feb 19, 2025

I got my MacOS VM working and was able to do some testing concerning not using .framework folders at all. The exporter won't create .framework folders, it will just sign them and throw them in Contents/Framework. I will report my findings in a seperate issue / draft PR.

@paddy-exe paddy-exe added bug Something isn't working enhancement New feature or request labels Feb 20, 2025
@paddy-exe paddy-exe merged commit 2281ade into godotengine:main Feb 20, 2025
0 of 23 checks passed
@paddy-exe
Copy link
Collaborator

Thank you both for creating the PR and testing! Merged 👍🏻

@unvermuthet unvermuthet deleted the macos-ios-binary-naming branch February 20, 2025 17:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

double and single builds have the same filename for MacOS and iOS
3 participants