-
Couldn't load subscription status.
- Fork 5.2k
[wasm] Incremental build improvements #90194
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
Conversation
|
Tagging subscribers to 'arch-wasm': @lewing Issue Details
|
0eee015 to
22f2daa
Compare
|
/azp run runtime-wasm |
|
Azure Pipelines successfully started running 1 pipeline(s). |
- Check emcc versions *if* `EMSDK_PATH` was explicitly set, IOW, workloads are not in use
Convert the assemblies only if needed.
- If the inputs are older than the outputs, then no work needs to be
done
- The inputs consist of the assemblies to scan, and a list of pinvoke
modules.
- Timestamps are used for the assemblies
- And for the pinvoke modules list, we save that in a cache file, and
use that to determine if any work needs to be done.
`EmccCompile` task build compiles some `.c` files, but skips them if the output files are already up-to-date. But the build always emits a `Compiling native assets with emcc with ..` message, which suggests that there is some native build being run. Instead, emit this message only if `EmccCompile` actually did any work.
34390f4 to
dda5b20
Compare
|
/azp run runtime-wasm |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
Failures are unrelated. |
# Conflicts: # src/mono/wasm/Makefile
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't see anything wrong in here, though I'm not an expert on the table generators or msbuild
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me 👍
This improves build times ~30% for no-op rebuilds.
dotnetprocess running*webassembly.packwhich is the relevant package here.factorial.cfrom WebAssembly native dependency builds incrementalism is still slow #60245Fixes #60245 .