Prior to this change, `libc.a` was being found in rustc's self-contained
musl target folder instead of the `libc.a` that we've built or
downloaded. This doesn't seem to have caused any noticeable issues as the
versions of musl we built/installed and the version shipped in rustc's
target matched exactly.
To resolve this, we pass the path to our version of musl's lib folder
directly as a `RUSTFLAG` which causes it to be found first.
Update to the latest version of wasi-libc which corresponds to the
version in the wasi-sdk 14.0 release.
And, add declarations for `getcwd` and `chdir`, which are now provided
by wasi-libc.
add definitions for s390x musl targets
Add support for s390x musl targets to libc.
I haven't added CI because I am not familiar with the pipelines, but would be glad to do so if somebody outlines what needs to be done.
Update to the latest WASI libc, define `AT_FDCWD`, update the signature
for __wasilibc_find_relpath, and add declarations for various
`__wasilibc_` utility functions.
This commit performs a number of updates for libc with the `wasm32-wasi`
target:
* Updates the `wasi-libc` repository commit used (previously known as
`wasi-sysroot`)
* Updates the container to Ubuntu 19.10 which has Clang 9 packaged which
is all we need.
* Avoids building `wasmtime` and instead downloads a precompiled binary.
* Updates bindings in `src/wasi.rs` to match the current upstream state.
We recently added a CDN in front of our CI mirrors as it's faster and
cheaper for us. This switches libc's CI to use it instead of accessing
the underlying bucket directly.
Update Emscripten system types
These changes bring the types up to parity with recent Emscripten
versions using the upstream LLVM wasm backend. These changes should be
coordinated with the upgrade of rustc's Emscripten support. See
https://internals.rust-lang.org/t/upgrading-rust-s-emscripten-support/10684
Previously mirrors were stored in the rust-lang-ci2 bucket, which is
meant to store temporary data (the CI artifacts). This switches the code
to fetch from the new mirrors bucket.
The old files won't be removed, but they won't be backed up either.