-
Notifications
You must be signed in to change notification settings - Fork 132
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
Missing Microsoft.DotNet.ILCompiler package on s390x #3076
Comments
I couldn't figure out the best area label to add to this issue. If you have write-permissions please help me learn by adding exactly one area label. |
I built .NET from source last week for x64 using mono runtime. I had to apply some simple patches here and there. Suggestion for name: For separate repo builds, the repositories can still set this to @crummel @MichaelSimons how does that sound? I can look into implementing this. |
Same issue is being faced on the ppc64le source-build |
I am in favor of that. |
Closing as I believe this has been resolved, feel free to reopen if not. |
When running an iterated source-build on s390x (i.e. using the output of the previous source-build as input set of package instead of the tarball), building the SDK fails due to a missing package
Microsoft.DotNet.ILCompiler
.On Intel, this package is generated by the
runtime
repository, but on s390x this does not happen due to a check ineng/Subsets.props
:Both the
NativeAotSupported
check and theRuntimeFlavor
check fail on s390x.Fixing this in the runtime build seems non-trivial since the actual artifacts to be packaged in that package are only created as part of the CoreCLR build, which doesn't happen on s390x.
Also, given that this package - while it itself seems to be platform-agnostic - simply adds support to the SDK to pull in various other packages needed for the NativeAOT build, and those are not available on s390x either, it seems this package shouldn't be really needed on s390x. We accept that the NativeAOT feature will not be available on the platform.
I thought this would be a simple matter of making the
Microsoft.DotNet.ILCompiler
line insrc/Layout/redist/targets/BundledSdks.targets
in the SDK repo conditional on the platform. But it turns out this isn't easily possible as the SDK repo build as part of the source-build process doesn't appear to even be aware which platform is being targeted. None of theArchitecture
,TargetRid
orPlatform
properties (or any other property I could identify) are set to indicate a s390x target architecture.We could disable the line for building with source-build generally, but I understand this is undesirable, as there is supposed to be NativeAOT support on Intel (even though the compiler packages aren't build with source-build, they would be pulled in from nuget at runtime if the SDK support is available).
@crummel any suggestions on how to best address this problem?
FYI - @tmds @omajid @janani66
The text was updated successfully, but these errors were encountered: