8000 [clr-interp] Include clrinterpreter library in the iOS app bundle by kotlarmilos · Pull Request #117277 · dotnet/runtime · GitHub
[go: up one dir, main page]

Skip to content

[clr-interp] Include clrinterpreter library in the iOS app bundle #117277

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

Open
wants to merge 16 commits into
base: main
Choose a base branch
from

Conversation

kotlarmilos
Copy link
Member

Description

This PR updates the installation target for clrinterpreter to include it in the sharedFramework, ensuring it is bundled in the iOS app.

Copy link
Contributor

Tagging subscribers to this area: @BrzVlad, @janvorli, @kg
See info in area-owners.md if you want to be subscribed.

@kotlarmilos
Copy link
Member Author
kotlarmilos commented Jul 17, 2025

Currently, the iOS simulator app dynamically links both libclrjit.dylib and libclrinterpreter.dylib. We can still statically link libclrjit_static.a, but in that case, we would need to load libclrinterpreter.dylib as a dynamic library. Once the interpreter startup path is resolved and the iOS device coreclr build is ready, I suggest switching to static linking with libclrinterpreter.a and disabling JIT entirely, so only the interpreter is statically linked.

@kotlarmilos kotlarmilos marked this pull request as ready for review July 17, 2025 13:01
@@ -115,6 +115,8 @@
<PlatformManifestFileEntry Condition="'$(PgoInstrument)' != ''" Include="clrjit.pgd" IsNative="true" />
<PlatformManifestFileEntry Include="libclrjit.so" IsNative="true" />
<PlatformManifestFileEntry Include="libclrjit.dylib" IsNative="true" />
<PlatformManifestFileEntry Condition="('$(Configuration)' == 'Debug' or '$(Configuration)' == 'Checked') or ('$(TargetArchitecture)' == 'x64' or '$(TargetArchitecture)' == 'arm64')" Include="libclrinterpreter.so" IsNative="true" />
Copy link
Member

Choose a reason for hiding this comment

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

We often mix-and-match configurations. E.g. build checked coreclr runtime and everything else as release. Does this condition work well with this mix-and-match?

Copy link
Member Author

Choose a reason for hiding this comment

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

Thanks, probably doesn't work with mix-and-match. I replaced it with CoreCLRConfiguration.

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

Successfully merging this pull request may close these issues.

3 participants
0