Skip to content

Conversation

@am11
Copy link
Member

@am11 am11 commented Oct 24, 2025

No description provided.

@am11 am11 requested a review from a team as a code owner October 24, 2025 17:11
@am11
Copy link
Member Author

am11 commented Oct 24, 2025

@hoyosjs, @mikem8361, can you please run other / official legs against the PR so we can validate there is no regression?

The only diff with dontet/runtime's eng/native (including dotnet/runtime#121071) is additional HAVE_PROCFS_MAPS_EXITCODE in tryrun.cmake (because the related code was moved from runtime to diagnostics, and this is needed by cross-compilation).

</Choose>

<Choose>
<When Condition="$(TargetRid.StartsWith('win'))">
Copy link
Member

Choose a reason for hiding this comment

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

This probably breaks dbgshim packaging. I can run the official leg but see

<ItemGroup>
<None Include="$(NativeBinDir)$(LibPrefix)dbgshim$(LibSuffix)"
PackagePath="runtimes/$(PackageRID)/native"
Pack="true" />
</ItemGroup>

We don't use targetRid since that's not correct on our packaging leg - we use a vertical for these packages since a fair number of our packages have RID assets from all different verticals.

Copy link
Member Author

Choose a reason for hiding this comment

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

Ah, good catch. In runtime, arcade, VMR etc. PackageRID/OutputRID were removed, we are using TargetRid. I've renamed them.

@hoyosjs
Copy link
Member

hoyosjs commented Oct 24, 2025

@am11 - do you see any use of HAVE_PROCFS_MAPS_EXITCODE? I couldn't see any referencing code.

@am11
Copy link
Member Author

am11 commented Oct 25, 2025

HAVE_PROCFS_MAPS is a feature check used in our code.

_EXITCODE is a convention used by CMake’s try-run infrastructure to store precomputed or cached results when cross-compiling. Since cross-compilation doesn’t have access to the actual target machine (for example, FreeBSD), the configuration introspection tests are executed on a representative target system beforehand, and the resulting exit codes are cached via _EXITCODE for reuse during the cross build.

@hoyosjs
Copy link
Member

hoyosjs commented Oct 27, 2025

TargetRid sadly has different semantic meaning here. We pass it down.

/p:TargetRid="$__TargetRid" \
- in our packaging leg it's always win-x64.

@am11
Copy link
Member Author

am11 commented Oct 27, 2025

@hoyosjs do you have a repro? I’m not sure what the intended forward path is; the goal of eng/native was to stay aligned with runtime, so new configs wouldn’t require duplicate engineering work.

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