Skip to content
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

[wasm] Initial emscripten 3.1.30 support #81215

Merged
merged 57 commits into from
Mar 11, 2023
Merged
Changes from 1 commit
Commits
Show all changes
57 commits
Select commit Hold shift + click to select a range
ed80ed3
[wasm] Initial emscripten 3.1.30 support
radekdoulik Jan 26, 2023
96d59b8
Update icu dependency
radekdoulik Feb 10, 2023
6512388
Merge remote-tracking branch 'remotes/origin/main' into pr-wasm-emscr…
radekdoulik Feb 10, 2023
0d522ba
Update emsdk dependency
radekdoulik Feb 10, 2023
f5a205e
Use new docker images
radekdoulik Feb 10, 2023
7d2e8eb
Add "icudt68_dat" as JS imported function.
maraf Feb 13, 2023
44ede5e
Drop build-time support for undefined icudt68_dat.
maraf Feb 14, 2023
ab5c12e
Fix linker options
radekdoulik Feb 20, 2023
2e74270
Merge remote-tracking branch 'remotes/origin/main' into pr-wasm-emscr…
radekdoulik Feb 20, 2023
e275857
Fix remaining conflict
radekdoulik Feb 20, 2023
54dfd24
Limit new warnings option to browser
radekdoulik Feb 20, 2023
c302891
Try to force reinstall of certifi
radekdoulik Feb 20, 2023
9f145a3
Unset `FROZEN_CACHE` for `embuilder build MINIMAL`
radekdoulik Feb 21, 2023
d6f6a4e
Update emsdk deps
radekdoulik Feb 22, 2023
5067a1d
Remove assert for stack address
radekdoulik Feb 24, 2023
0bb6b01
Get back the stack base assert
radekdoulik Feb 27, 2023
04a83eb
Set stack size to 5MB
radekdoulik Feb 27, 2023
eb544bd
Disable WBT tests with SkiSharp
radekdoulik Feb 27, 2023
8b4a6e2
Disable more WBT tests with SkiSharp
radekdoulik Feb 28, 2023
6e8bd62
Set the stack size also in native targets
radekdoulik Feb 28, 2023
48464d3
Merge branch 'main' into pr-wasm-emscripten-3-1-30
radekdoulik Feb 28, 2023
df724b5
Update icu deps
radekdoulik Mar 1, 2023
2d67a1f
Update emsdk deps
radekdoulik Mar 1, 2023
e6ecd14
Enable BigInt support
radekdoulik Mar 1, 2023
918a47a
Enable BigInt here as well
radekdoulik Mar 1, 2023
cde2398
Merge branch 'main' into pr-wasm-emscripten-3-1-30
radekdoulik Mar 1, 2023
b7999eb
Temporarily allow undefined symbols
radekdoulik Mar 2, 2023
1107185
Merge branch 'main' into pr-wasm-emscripten-3-1-30
radekdoulik Mar 2, 2023
4f5b216
Try to use pip-system-certs package
radekdoulik Mar 2, 2023
0b3ce3c
Fix merge damage for marking "icudt68_dat" a JS imported function + r…
maraf Mar 3, 2023
053f2d3
Try another python certifi package
radekdoulik Mar 3, 2023
a5a8498
Merge branch 'main' into pr-wasm-emscripten-3-1-30
lewing Mar 3, 2023
a977682
Try install pip-system-certs for emsdk's python
radekdoulik Mar 6, 2023
d8b1e10
Merge branch 'main' into pr-wasm-emscripten-3-1-30
radekdoulik Mar 6, 2023
1e02d7c
Try to update machine certs for www.sqlite.org
radekdoulik Mar 6, 2023
e8f080b
Refactor + upgrade pip
radekdoulik Mar 6, 2023
031511d
Use new net8 images
radekdoulik Mar 8, 2023
889d036
Add `-s INCOMING_MODULE_JS_API=print,printErr`
radekdoulik Mar 8, 2023
f67ea5e
Introduce EmccStackSize msbuild property
radekdoulik Mar 8, 2023
37f4314
Merge branch 'main' into pr-wasm-emscripten-3-1-30
radekdoulik Mar 8, 2023
c179e40
Remove FIXME from merge
radekdoulik Mar 8, 2023
d2ee742
Fixes around updateMemoryViews
radekdoulik Mar 8, 2023
84dbae9
Pass --experimental-wasm-bigint to v8
radekdoulik Mar 8, 2023
b94be3d
Try multiple --engine-arg options
radekdoulik Mar 9, 2023
b551626
Revert "Introduce EmccStackSize msbuild property"
radekdoulik Mar 9, 2023
4c45801
Disable 3 filesystem related tests
radekdoulik Mar 9, 2023
c5f073f
Add bigint to AOT test template
radekdoulik Mar 9, 2023
b2a99a8
Introduce EmccStackSize msbuild property
radekdoulik Mar 8, 2023
fda96f7
Update emsdk deps
radekdoulik Mar 9, 2023
55fddbf
Update icu deps
radekdoulik Mar 9, 2023
0da18d5
Revert "Add `-s INCOMING_MODULE_JS_API=print,printErr`"
radekdoulik Mar 9, 2023
eb7be72
Merge branch 'main' into pr-wasm-emscripten-3-1-30
radekdoulik Mar 9, 2023
3fcf10f
Merge remote-tracking branch 'remotes/origin/main' into pr-wasm-emscr…
radekdoulik Mar 10, 2023
6420bf6
Update emsdk deps
radekdoulik Mar 10, 2023
58b5c1d
Update icu deps
radekdoulik Mar 10, 2023
2a446e1
Disable one more file related test
radekdoulik Mar 10, 2023
ef6443c
Merge branch 'main' into pr-wasm-emscripten-3-1-30
lewing Mar 10, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion src/mono/wasm/build/WasmApp.Native.targets
Original file line number Diff line number Diff line change
Expand Up @@ -325,10 +325,12 @@
<WriteLinesToFile Lines="@(_EmccCFlags)" File="$(_EmccCompileRsp)" Overwrite="true" WriteOnlyWhenDifferent="true" />
<ItemGroup>
<FileWrites Include="$(_EmccCompileRsp)" />
<EmscriptenMinimalBuildEnvVars Include="@(EmscriptenEnvVars)" />
Copy link
Member

Choose a reason for hiding this comment

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

It would be clearer to rename this to a private name like _EmscriptenEnvVarsForBuildMinimal.

Copy link
Member Author

Choose a reason for hiding this comment

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

I can do it in the follow up PR, to avoid more icu/emsdk package switch backs.

<EmscriptenMinimalBuildEnvVars Include="FROZEN_CACHE=" />
Copy link
Member

Choose a reason for hiding this comment

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

The Microsoft.NET.Runtime.Emscripten.Cache SDK overrides the WasmCachePath property. If we're unfreezing the cache here does that mean we can overwrite the nuget contents sometimes?

Copy link
Member

Choose a reason for hiding this comment

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

Copy link
Member Author

Choose a reason for hiding this comment

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

I think we do that on purpose IIRC

<!-- warm up the cache -->
<Exec Command="$(_EmBuilder) build MINIMAL" EnvironmentVariables="@(EmscriptenMinimalBuildEnvVars)" StandardOutputImportance="Low" StandardErrorImportance="Low" />
Is that right @radical?

Copy link
Member

Choose a reason for hiding this comment

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

the freezing/build was required before we were shipping the cache package we should probably review the logic there

Copy link
Member Author

Choose a reason for hiding this comment

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

to provide more context: the reason for the change itself is that the default value of FROZEN_CACHE proably changed with newer emscripten, and so the warming embuilder build MINIMAL build was now failing, complaining about not being able to update frozen cache.

Copy link
Member

Choose a reason for hiding this comment

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

This whole does need to be reviewed again. If the workload is installed in non-user-writable location then how does the build behave? How does the FROZEN_CACHE setting affect things? I have opened #83281 .

</ItemGroup>

<!-- warm up the cache -->
<Exec Command="$(_EmBuilder) build MINIMAL" EnvironmentVariables="@(EmscriptenEnvVars)" StandardOutputImportance="Low" StandardErrorImportance="Low" />
<Exec Command="$(_EmBuilder) build MINIMAL" EnvironmentVariables="@(EmscriptenMinimalBuildEnvVars)" StandardOutputImportance="Low" StandardErrorImportance="Low" />

<Message Text="Compiling native assets with emcc with $(EmccCompileOptimizationFlag). This may take a while ..." Importance="High" />
<ItemGroup>
Expand Down