dotnet / runtime

.NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.
https://docs.microsoft.com/dotnet/core/
MIT License
14.85k stars 4.62k forks source link

[wasi] Align build configuration with NativeAOT-LLVM #100921

Open maraf opened 4 months ago

maraf commented 4 months ago
SingleAccretion commented 4 months ago

NativeAOT-LLVM as it currently is doesn't use PublishAot (in fact, it doesn't work with it). See https://github.com/dotnet/runtimelab/issues/2235#issuecomment-1481415589.

Is the first item here, effectively, about making it work?

lewing commented 4 months ago

NativeAOT-LLVM as it currently is doesn't use PublishAot (in fact, it doesn't work with it). See dotnet/runtimelab#2235 (comment).

Is the first item here, effectively, about making it work?

We definitely need an msbuild gesture to distinguish between the build targets, it seems like PublishAot is the correct one right now but your feedback is welcome.

maraf commented 4 months ago

The most problematic thing with PublishAot=true is that we need to know "current" version of LLVM packages. One way to tackle the problem and minify changes needed in the client's proj, is to produce a custom/nuget SDK,

EDIT: Current plan is to integrate needed bits directly into mono workload manifest

pavelsavara commented 1 month ago

why this is P0 ?

maraf commented 1 month ago

why this is P0 ?

Because lowering the barrier between two modes is important.