Skip to content

Adds OSXCROSS_LET_TOOLCHAIN_SET_MIN_VERSION env variable#467

Open
Raphael-Martin-TS3D wants to merge 1 commit into
tpoechtrager:masterfrom
Raphael-Martin-TS3D:let-toolchain-decide-version-min
Open

Adds OSXCROSS_LET_TOOLCHAIN_SET_MIN_VERSION env variable#467
Raphael-Martin-TS3D wants to merge 1 commit into
tpoechtrager:masterfrom
Raphael-Martin-TS3D:let-toolchain-decide-version-min

Conversation

@Raphael-Martin-TS3D

Copy link
Copy Markdown
Contributor

Use case

3rd parties management tools like conan, use conan profiles to define the binaries they create.
These profiles are declarative.

Osxcross clang wrapper is setting -mmacosx-version-min, which overrides conan profiles.

Solution

I am suggesting this solution to let users disengage this variable and let, for instance conan, manage the binaries parameters.

@tpoechtrager

Copy link
Copy Markdown
Owner

How does conan set the minimum version? The default one can be easily overriden by setting MACOS_DEPLOYMENT_TARGET (env) or via -mmacos-version-min=X.XX.

@Raphael-Martin-TS3D

Copy link
Copy Markdown
Contributor Author

Conan is using -mmacos-version-min=X.XX indeed.
I will try that. But is it going to work when the target is iOS? Because it's not the same parameter.

@tpoechtrager

Copy link
Copy Markdown
Owner

Conan is using -mmacos-version-min=X.XX indeed.

No problem then.

But is it going to work when the target is iOS? Because it's not the same parameter.

OSXCross only supports macOS.

A minimalistic iOS toolchain is available here: https://github.com/tpoechtrager/cctools-port/tree/1024.3-ld64-955.13/usage_examples/ios_toolchain

@Raphael-Martin-TS3D

Copy link
Copy Markdown
Contributor Author

Thank you for your answer.
Sorry if I missed a thread or something but why is osxcross not supporting macOS? Because it is working for us.
And there are many targets like VisionOS, iphoneSimulator, ... That work fine to us.

Besides, thank you for the cctools link but cctools is less versatile in terms of target architectures and stuff, we would have to multiply toolchains for the different targets instead of just having one that's able to manage everything.

@tpoechtrager

Copy link
Copy Markdown
Owner

I guess you meant iOS and not macOS. Simply because having it work properly would require a lot of work.
There are way too many edge cases to quickly add support for iOS, VisionOS,...

@Raphael-Martin-TS3D

Copy link
Copy Markdown
Contributor Author

Indeed I meant iOS my bad.
We are definitely willing to support these platforms based on osxcross since it is powerful and working fine for us.
So you have the choice here I guess:

  • We just patch osxcross on our side to support our targets
  • We create a branch on your repository that is supporting iOS, VisionOS, simulators ... and we work on it until we are sure enough it is working fine. I am down to write a documentation in a README file that describes how to use osxcross on all these targets.
  • We make small pull requests like this and see where it goes

My team would be glad to support this osxcross project, we like it.

@tpoechtrager

Copy link
Copy Markdown
Owner

That would great. You could try to patch it on your side and start creating PRs once it's mature enough. :)
Feel free to ask me questions anytime if you really want to work on it.

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.

2 participants