Skip to content

Remove support for the PNaCl target (le32-unknown-nacl) - #45041

Merged
bors merged 5 commits into
rust-lang:masterfrom
est31:master
Oct 9, 2017
Merged

Remove support for the PNaCl target (le32-unknown-nacl)#45041
bors merged 5 commits into
rust-lang:masterfrom
est31:master

Conversation

@est31

@est31est31 commented Oct 5, 2017

Copy link
Copy Markdown
Member

This removes support for the le32-unknown-nacl target which is currently supported by rustc on tier 3. Despite the "nacl" in the name, the target doesn't output native code (x86, ARM, MIPS), instead it outputs binaries in the PNaCl format.

There are two reasons for the removal:

  • Google has announced deprecation of the PNaCl format. The suggestion is to migrate to wasm. Happens we already have a wasm backend!
  • Our PNaCl LLVM backend is provided by the fastcomp patch set that the LLVM fork used by rustc contains in addition to vanilla LLVM (src/llvm/lib/Target/JSBackend/NaCl). Upstream LLVM doesn't have PNaCl support. Removing PNaCl support will enable us to move away from fastcomp (Tracking issue for supporting asm.js and WebAssembly without Fastcomp #44006) and have a lighter set of patches on top of upstream LLVM inside our LLVM fork. This will help distribution packagers of Rust.

Fixes#42420

@rust-highfive

Copy link
Copy Markdown
Contributor

r? @BurntSushi

(rust_highfive has picked a reviewer for you, use r? to override)

@est31

est31 commented Oct 5, 2017

Copy link
Copy Markdown
MemberAuthor

r? @eddyb

@rust-highfiverust-highfive assigned eddyb and unassigned BurntSushiOct 5, 2017
@est31

est31 commented Oct 5, 2017

Copy link
Copy Markdown
MemberAuthor

cc @tlively@eholk

@eddyb

eddyb commented Oct 5, 2017

Copy link
Copy Markdown
Contributor

r? @alexcrichton

@alexcrichton

Copy link
Copy Markdown
Member

@bors: r+

@bors

bors commented Oct 5, 2017

Copy link
Copy Markdown
Collaborator

📌 Commit 327116a has been approved by alexcrichton

@shepmastershepmaster added the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Oct 6, 2017
@bors

bors commented Oct 9, 2017

Copy link
Copy Markdown
Collaborator

⌛ Testing commit 327116a with merge b2f67c8...

bors added a commit that referenced this pull request Oct 9, 2017
Remove support for the PNaCl target (le32-unknown-nacl)
This removes support for the `le32-unknown-nacl` target which is currently supported by rustc on tier 3. Despite the "nacl" in the name, the target doesn't output native code (x86, ARM, MIPS), instead it outputs binaries in the PNaCl format.
There are two reasons for the removal:
* Google [has announced](https://blog.chromium.org/2017/05/goodbye-pnacl-hello-webassembly.html) deprecation of the PNaCl format. The suggestion is to migrate to wasm. Happens we already have a wasm backend!
* Our PNaCl LLVM backend is provided by the fastcomp patch set that the LLVM fork used by rustc contains in addition to vanilla LLVM (`src/llvm/lib/Target/JSBackend/NaCl`). Upstream LLVM doesn't have PNaCl support. Removing PNaCl support will enable us to move away from fastcomp (#44006) and have a lighter set of patches on top of upstream LLVM inside our LLVM fork. This will help distribution packagers of Rust.
Fixes#42420
@bors

bors commented Oct 9, 2017

Copy link
Copy Markdown
Collaborator

☀️ Test successful - status-appveyor, status-travis
Approved by: alexcrichton
Pushing b2f67c8 to master...

@bors
bors merged commit 327116a into rust-lang:masterOct 9, 2017
rtzoeller added a commit to rtzoeller/nix that referenced this pull request Jun 6, 2022
Remove obsolete references to target_env = wasi, target_os = nacl,
target_os = osx, and a typo'd target_os = fushsia that didn't compile
when fixed.
- target_env = wasi is dead: rust-lang/rust#60117
- target_os = nacl is dead: rust-lang/rust#45041
- target_os = osx is dead, but I can't find a link.
borsBot added a commit to nix-rust/nix that referenced this pull request Jun 9, 2022
1735: Cleanup cfg blocks r=asomers a=rtzoeller
Remove obsolete references to target_env = wasi, target_os = nacl, target_os = osx, and a typo'd target_os = fushsia that didn't compile when fixed.
- target_env = wasi is dead: rust-lang/rust#60117
- target_os = nacl is dead: rust-lang/rust#45041
- target_os = osx is dead, but I can't find a link.
Found while exploring `--check-cfg`, as mentioned in #1734.
Co-authored-by: Ryan Zoeller <rtzoeller@rtzoeller.com>
Urgau added a commit to Urgau/rust that referenced this pull request Jan 19, 2023
See rust-lang#45041 for the removal of the
target (le32-unknown-nacl).
Urgau added a commit to Urgau/rust that referenced this pull request Jan 19, 2023
 - `target_os=watchos`: no longer relevant because there are now proper
targets `*-apple-watchos`
- `target_arch=nvptx64`: `nvptx64-nvidia-cuda`
- `target_arch=le32`: target was removed
(rust-lang#45041)
- `dont_compile_me`: was removed from stdarch
(rust-lang/stdarch#1308)
Also made some external cfg exception mode clear and only activated for
rustc and rustc tools (as to not have the Standard Library
unintentionally depend on them).
compiler-errors added a commit to compiler-errors/rust that referenced this pull request Jan 22, 2023
…k-cfgs, r=Mark-Simulacrum
bootstrap: cleanup the list of extra check cfgs
This PR performs some cleanups on the `EXTRA_CHECK_CFGS` list in bootstrap.
- `target_os=watchos`: no longer relevant because there are now proper targets `*-apple-watchos`
- `target_arch=nvptx64`: target `nvptx64-nvidia-cuda` makes it useless
- `target_arch=le32`: target was removed (rust-lang#45041)
- ~~`release`: was removed from rustfmt (rust-lang/rustfmt#5375 and rust-lang/rustfmt#5449 (despite the changes being done more than 6 months ago there hasn't been any rustfmt subtree sync)
- `dont_compile_me`: was removed from stdarch (rust-lang/stdarch#1308)
Also made some external cfg exception mode clear and only activated for rustc and rustc tools (as to not have the Standard Library unintentionally depend on them).
Urgau added a commit to Urgau/rust that referenced this pull request Jan 25, 2023
See rust-lang#45041 for the removal of the
target (le32-unknown-nacl).
Urgau added a commit to Urgau/rust that referenced this pull request Jan 25, 2023
 - `target_os=watchos`: no longer relevant because there are now proper
targets `*-apple-watchos`
- `target_arch=nvptx64`: `nvptx64-nvidia-cuda`
- `target_arch=le32`: target was removed
(rust-lang#45041)
- `release`: was removed from rustfmt
(rust-lang/rustfmt#5375 and
rust-lang/rustfmt#5449)
- `dont_compile_me`: was removed from stdarch
(rust-lang/stdarch#1308)
Also made some external cfg exception mode clear and only activated for
rustc and rustc tools (as to not have the Standard Library
unintentionally depend on them).
compiler-errors added a commit to compiler-errors/rust that referenced this pull request Jan 29, 2023
…k-cfgs, r=Mark-Simulacrum
bootstrap: cleanup the list of extra check cfgs
This PR performs some cleanups on the `EXTRA_CHECK_CFGS` list in bootstrap.
- `target_os=watchos`: no longer relevant because there are now proper targets `*-apple-watchos`
- `target_arch=nvptx64`: target `nvptx64-nvidia-cuda` makes it useless
- `target_arch=le32`: target was removed (rust-lang#45041)
- `release`: was removed from rustfmt (rust-lang/rustfmt#5375 and rust-lang/rustfmt#5449)
- `dont_compile_me`: was removed from stdarch (rust-lang/stdarch#1308)
Also made some external cfg exception mode clear and only activated for rustc and rustc tools (as to not have the Standard Library unintentionally depend on them).
bors added a commit to rust-lang-ci/rust that referenced this pull request Jan 30, 2023
…cfgs, r=Mark-Simulacrum
bootstrap: cleanup the list of extra check cfgs
This PR performs some cleanups on the `EXTRA_CHECK_CFGS` list in bootstrap.
- `target_os=watchos`: no longer relevant because there are now proper targets `*-apple-watchos`
- `target_arch=nvptx64`: target `nvptx64-nvidia-cuda` makes it useless
- `target_arch=le32`: target was removed (rust-lang#45041)
- `release`: was removed from rustfmt (rust-lang/rustfmt#5375 and rust-lang/rustfmt#5449)
- `dont_compile_me`: was removed from stdarch (rust-lang/stdarch#1308)
Also made some external cfg exception mode clear and only activated for rustc and rustc tools (as to not have the Standard Library unintentionally depend on them).
bors added a commit to rust-lang/miri that referenced this pull request Jan 31, 2023
…ark-Simulacrum
bootstrap: cleanup the list of extra check cfgs
This PR performs some cleanups on the `EXTRA_CHECK_CFGS` list in bootstrap.
- `target_os=watchos`: no longer relevant because there are now proper targets `*-apple-watchos`
- `target_arch=nvptx64`: target `nvptx64-nvidia-cuda` makes it useless
- `target_arch=le32`: target was removed (rust-lang/rust#45041)
- `release`: was removed from rustfmt (rust-lang/rustfmt#5375 and rust-lang/rustfmt#5449)
- `dont_compile_me`: was removed from stdarch (rust-lang/stdarch#1308)
Also made some external cfg exception mode clear and only activated for rustc and rustc tools (as to not have the Standard Library unintentionally depend on them).
thomcc pushed a commit to pgcentralfoundation/postgrestd that referenced this pull request May 31, 2023
See rust-lang/rust#45041 for the removal of the
target (le32-unknown-nacl).
thomcc pushed a commit to pgcentralfoundation/postgrestd that referenced this pull request May 31, 2023
…ark-Simulacrum
bootstrap: cleanup the list of extra check cfgs
This PR performs some cleanups on the `EXTRA_CHECK_CFGS` list in bootstrap.
- `target_os=watchos`: no longer relevant because there are now proper targets `*-apple-watchos`
- `target_arch=nvptx64`: target `nvptx64-nvidia-cuda` makes it useless
- `target_arch=le32`: target was removed (rust-lang/rust#45041)
- `release`: was removed from rustfmt (rust-lang/rustfmt#5375 and rust-lang/rustfmt#5449)
- `dont_compile_me`: was removed from stdarch (rust-lang/stdarch#1308)
Also made some external cfg exception mode clear and only activated for rustc and rustc tools (as to not have the Standard Library unintentionally depend on them).
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-waiting-on-borsStatus: Waiting on bors to run and complete tests. Bors will change the label on completion.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants

@est31@rust-highfive@eddyb@alexcrichton@bors@shepmaster@BurntSushi