Skip to content

Commit

Permalink
rustc: Allow the cdylib crate type with wasm32-wasi
Browse files Browse the repository at this point in the history
The wasm32-wasi target respects configuration around `crt-static` in
general, but is defaulted to being static. This interacted badly with
code which validated the `cdylib` crate type for `wasm32-wasi`,
erroneously saying that the `cdylib` crate type wasn't supported on
`wasm32-wasi` by default. This commit sets the appropriate flag in
`wasm32_wasi`'s target specification to indicate that the `cdylib` crate
type is supported regardless of `crt-static`

Closes #64187
  • Loading branch information
alexcrichton committed Sep 5, 2019
1 parent 6187684 commit bb9d3be
Showing 1 changed file with 4 additions and 0 deletions.
4 changes: 4 additions & 0 deletions src/librustc_target/spec/wasm32_wasi.rs
Expand Up @@ -97,6 +97,10 @@ pub fn target() -> Result<Target, String> {
options.crt_static_default = true;
options.crt_static_respected = true;

// Allow `+crt-static` to create a "cdylib" output which is just a wasm file
// without a main function.
options.crt_static_allows_dylibs = true;

Ok(Target {
llvm_target: "wasm32-wasi".to_string(),
target_endian: "little".to_string(),
Expand Down

0 comments on commit bb9d3be

Please sign in to comment.