about summary refs log tree commit diff
path: root/src/bootstrap/config.rs
diff options
context:
space:
mode:
authorThomas Lively <tlively@google.com>2017-06-16 15:43:43 -0700
committerThomas Lively <tlively@google.com>2017-06-16 15:43:43 -0700
commita1981a64a22024bbda98cf1b76b7c751fb1dcddb (patch)
tree922379caaab0ff3e96392f4197f42e0c2746043f /src/bootstrap/config.rs
parentfe7227f6c8704f0186091085a14fd1027920e4bb (diff)
downloadrust-a1981a64a22024bbda98cf1b76b7c751fb1dcddb.tar.gz
rust-a1981a64a22024bbda98cf1b76b7c751fb1dcddb.zip
Add target to use LLVM wasm backend
The new target is wasm32-experimental-emscripten. Adds a new
configuration option to opt in to building experimental LLVM backends
such as the WebAssembly backend. The target name was chosen to be
similar to the existing wasm32-unknown-emscripten target so that the
build and tests would work with minimal other code changes. When/if the
new target replaces the old target, simply renaming it should just work.
Diffstat (limited to 'src/bootstrap/config.rs')
-rw-r--r--src/bootstrap/config.rs3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/bootstrap/config.rs b/src/bootstrap/config.rs
index 64b2a665e25..fd8aa320fb3 100644
--- a/src/bootstrap/config.rs
+++ b/src/bootstrap/config.rs
@@ -60,6 +60,7 @@ pub struct Config {
     pub llvm_static_stdcpp: bool,
     pub llvm_link_shared: bool,
     pub llvm_targets: Option<String>,
+    pub llvm_experimental_targets: Option<String>,
     pub llvm_link_jobs: Option<u32>,
     pub llvm_clean_rebuild: bool,
 
@@ -189,6 +190,7 @@ struct Llvm {
     version_check: Option<bool>,
     static_libstdcpp: Option<bool>,
     targets: Option<String>,
+    experimental_targets: Option<String>,
     link_jobs: Option<u32>,
     clean_rebuild: Option<bool>,
 }
@@ -350,6 +352,7 @@ impl Config {
             set(&mut config.llvm_static_stdcpp, llvm.static_libstdcpp);
             set(&mut config.llvm_clean_rebuild, llvm.clean_rebuild);
             config.llvm_targets = llvm.targets.clone();
+            config.llvm_experimental_targets = llvm.experimental_targets.clone();
             config.llvm_link_jobs = llvm.link_jobs;
         }