Skip to content

Unable to get EMSDK version when evaluating NativeFileReference in nuget package props or targets #61306

@yamachu

Description

@yamachu

Is your feature request related to a problem? Please describe.

The following article explains that pre-built libraries need to be built with the same version of emscripten specified in wasm-tools.
https://devblogs.microsoft.com/dotnet/asp-net-core-updates-in-net-6-rc-2/#native-dependencies-support-for-blazor-webassembly-apps
As the version of wasm-tools increases in the future, the version of emscripten is expected to increase as well.

Describe the solution you'd like

If we can get the version of emscripten in the build environment,
we can create backward compatible nuget packages by including the version information in the NativeFileReference path.

So, I would like you to provide a variable to get the version.

Additional context

I evaluated RuntimeEmccVersionRaw and ActualEmccVersionRaw with PropertyGroup and with NativeFileReference, but they were evaluated as empty characters. (so now fixed value is written as 2.0.23)

https://github.com/yamachu/SharpOpenJTalk/blob/f864409201d446de8757a8b2d4fdde17e5c29dc8/library/full/nuget/SharpOpenJTalk.props#L2-L6

I think this is due to the slow evaluation timing of the target that evaluates Emscripten's Version.

https://github.com/dotnet/runtime/blob/b9a2c48aa84b0b05f9a02ff42f2e249033261292/src/mono/wasm/build/WasmApp.Native.targets

Metadata

Metadata

Assignees

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions