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

Persist FPU variables across try_compile passes #83206

Merged
merged 2 commits into from
Mar 25, 2023

Conversation

am11
Copy link
Member

@am11 am11 commented Mar 9, 2023

When -cmakeargs -DCLR_ARM_FPU_TYPE=vfpv4 is passed from command-line, the first pass to toolchain was failing the condition if (NOT DEFINED CLR_ARM_FPU_TYPE) as expected, but the second and subsequent passes were satisfying the condition. This is because how cmake invokes the toolchain file.

Append variables the must persist across the passes to CMAKE_TRY_COMPILE_PLATFORM_VARIABLES to override this behavior.

Second issue was that we weren't propagating cmakeargs in corehost.proj and build-native.proj properly; missing -cmakeargs argument name. Note that src/coreclr/runtime.proj already handles it.

Fixes #83170.
Upstream PR dotnet/arcade#12817

@ghost
Copy link

ghost commented Mar 9, 2023

Tagging subscribers to this area: @dotnet/area-infrastructure-libraries
See info in area-owners.md if you want to be subscribed.

Issue Details

When -cmakeargs -DCLR_ARM_FPU_TYPE=vfpv4 is passed from command-line, the first pass to toolchain was failing the condition if (NOT DEFINED CLR_ARM_FPU_TYPE) as expected, but the second and subsequent passes were satisfying the condition. This is because how cmake invokes the toolchain file.

Append variables we must persist across the passes to CMAKE_TRY_COMPILE_PLATFORM_VARIABLES to override this behavior.

Second issue was that we weren't propagating cmakeargs in corehost.proj and build-native.proj properly; missing -cmakeargs argument name.

Fixes #83170.
Upstream PR #12817

Author: am11
Assignees: -
Labels:

area-Infrastructure-libraries

Milestone: -

@ghost
Copy link

ghost commented Mar 9, 2023

Tagging subscribers to this area: @dotnet/runtime-infrastructure
See info in area-owners.md if you want to be subscribed.

Issue Details

When -cmakeargs -DCLR_ARM_FPU_TYPE=vfpv4 is passed from command-line, the first pass to toolchain was failing the condition if (NOT DEFINED CLR_ARM_FPU_TYPE) as expected, but the second and subsequent passes were satisfying the condition. This is because how cmake invokes the toolchain file.

Append variables we must persist across the passes to CMAKE_TRY_COMPILE_PLATFORM_VARIABLES to override this behavior.

Second issue was that we weren't propagating cmakeargs in corehost.proj and build-native.proj properly; missing -cmakeargs argument name.

Fixes #83170.
Upstream PR #12817

Author: am11
Assignees: -
Labels:

area-Infrastructure

Milestone: -

@ghost ghost added the community-contribution Indicates that the PR has been added by a community member label Mar 9, 2023
@am11
Copy link
Member Author

am11 commented Mar 24, 2023

@janvorli PTAL. Trying to avoid merge conflicts with other PRs changing these lines. :)

Copy link
Member

@janvorli janvorli left a comment

Choose a reason for hiding this comment

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

LGTM, thank you! I have thought that I have already approved this, but obviously I was daydreaming.

@janvorli janvorli closed this Mar 24, 2023
@janvorli janvorli reopened this Mar 24, 2023
@am11
Copy link
Member Author

am11 commented Mar 24, 2023

Mono failures are unrelated, wasm-windows: #64227, ios: #82083.

@am11 am11 requested a review from jkotas March 25, 2023 07:54
@jkotas jkotas merged commit c22b79a into dotnet:main Mar 25, 2023
@ghost ghost locked as resolved and limited conversation to collaborators Apr 24, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-Infrastructure community-contribution Indicates that the PR has been added by a community member
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Unable to cross-compile CoreCLR for Linux ARM vfpv4-d16
6 participants