-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
Building ILC causes double writes in the runtime build #89763
Comments
Tagging subscribers to this area: @hoyosjs Issue DetailsRepro: Inspect the binary log and find the following double write: This is problematic as it makes the build slower as it needs to be and might break the incremental build feature in msbuild. After fixing this issue, we should consider adding CI protection to guard against double writes by doing something similar to https://www.meziantou.net/detecting-double-writes-in-msbuild-using-the-binlog.htm. AFAIK the roslyn team already does that.
|
This is related to/same as #79575. The SDK dumps an apphost there that we then need to delete: runtime/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.Publish.targets Lines 93 to 110 in e43cba3
This code originates from times when we couldn't put customizations into SDK because native AOT was an experimental project. It's no longer so. |
I see. Do you know if there's something that we can do in runtime meanwhile to avoid the double write? |
I don't like that we do that in the product itself either. I don't think there's anything we can do from here besides patching the SDK targets in the nuget cache after they restore. The SDK gets really mad if UseAppHost is false on something it considers self-contained. I was trying to fix this in dotnet/sdk#33229 that you're Cc'd on but it's currently in limbo because I'm sure it will break something else and I'm not mentally capable to deal with the worms from that can at this time. I'll be taking some time off soon so maybe after that. |
Repro:
build.cmd/sh clr+libs /bl
Inspect the binary log and find the following double write:
This is problematic as it makes the build slower as it needs to be and might break the incremental build feature in msbuild. After fixing this issue, we should consider adding CI protection to guard against double writes by doing something similar to https://www.meziantou.net/detecting-double-writes-in-msbuild-using-the-binlog.htm. AFAIK the roslyn team already does that.
cc @MichalStrehovsky
The text was updated successfully, but these errors were encountered: