-
Notifications
You must be signed in to change notification settings - Fork 5.6k
[HybridGlobalization] Fix xamarin_macios build after system ICU change #96270
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
Changes from 2 commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||
|---|---|---|---|---|---|---|---|---|
|
|
@@ -107,6 +107,13 @@ else() | |||||||
| endif() | ||||||||
|
|
||||||||
| if (CLR_CMAKE_TARGET_APPLE) | ||||||||
| if(CLR_CMAKE_TARGET_IOS) | ||||||||
|
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @vargaz Do you think this block is also unnecessary?
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. That might be needed, those defines are not set in that project. I think the issues is that in some cases these files are compiled as part of the mono runtime, and sometimes they are compiled into a separate lib ?
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yes, when I build runtime locally I see that we compile the globalization code twice:
That is why I don't see any failure on runtime, but
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
I am not sure how is it possible for xamarin to skip cmake inclusions needed to build this cmake list? These TARGET_XX variables are defined in
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
xamarin/xamarin-macios doesn't build anything from dotnet/runtime, we consume the static/dynamic libraries dotnet/runtime ships. The problem is that those libraries aren't built correctly.
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
In xamarin-macios, dotnet/runtime artifacts are consumed in two different ways:
On the other hand, the C source files comprising By the way @mkhamoyan there's similar logic in https://github.com/dotnet/runtime/blob/main/src/native/libs/System.Security.Cryptography.Native.Apple/CMakeLists.txt#L60-L70. Maybe it would make more sense to move it up to Also - I'm not sure why we link the icu shim directly into
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
I do not think that this is correct. These defines are defined in I expect that we are going to find that this fix is not addressing the xamarin-macios build break.
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Yea, I agree now, I don't see how this change would fix anything.
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yeah, I don't think it addresses it either. @mkhamoyan pointed this out to me earlier today in that the xamarin build may need to be modified because only a subset of the pinvokes will be active since we are shipping with hybrid globalization always on. We plan on adding the ability to turn it off and use our ICU in a later change.
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Reverting this PR #96658 |
||||||||
| add_definitions(-DTARGET_IOS) | ||||||||
| elseif(CLR_CMAKE_TARGET_TVOS) | ||||||||
| add_definitions(-DTARGET_TVOS) | ||||||||
| elseif(CLR_CMAKE_TARGET_MACCATALYST) | ||||||||
| add_definitions(-DTARGET_MACCATALYST) | ||||||||
| endif() | ||||||||
|
directhex marked this conversation as resolved.
|
||||||||
| set(NATIVEGLOBALIZATION_SOURCES_OBJC | ||||||||
| pal_locale.m | ||||||||
| pal_collation.m | ||||||||
|
|
||||||||
Uh oh!
There was an error while loading. Please reload this page.