about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJosh Stone <jistone@redhat.com>2019-03-29 17:59:07 -0700
committerJosh Stone <jistone@redhat.com>2019-03-29 17:59:07 -0700
commitb222b6fa7f4607ef1b0e8e5a950295550b3b1db0 (patch)
tree79527fb05d5e4a2ec636a57107f1a03b6b19f6dd
parente782d790f1b63d82af39248bebe027f92d891bcc (diff)
manifest: only include miri on the nightly channel
miri needs to build std with xargo, which doesn't allow stable/beta:
<https://github.com/japaric/xargo/pull/204#issuecomment-374888868>

Therefore, at this time there's no point in making miri available on any
but the nightly channel.  If we get a stable way to build `std`, like
[RFC 2663], then we can re-evaluate whether to start including miri,
perhaps still as `miri-preview`.

[RFC 2663]: https://github.com/rust-lang/rfcs/pull/2663
-rw-r--r--src/tools/build-manifest/src/main.rs8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/tools/build-manifest/src/main.rs b/src/tools/build-manifest/src/main.rs
index 3c360a81ba5..65a7e6f2c39 100644
--- a/src/tools/build-manifest/src/main.rs
+++ b/src/tools/build-manifest/src/main.rs
@@ -522,12 +522,18 @@ impl Builder {
                pkgname: &str,
                dst: &mut BTreeMap<String, Package>,
                targets: &[&str]) {
-        let (version, is_present) = self.cached_version(pkgname)
+        let (version, mut is_present) = self.cached_version(pkgname)
             .as_ref()
             .cloned()
             .map(|version| (version, true))
             .unwrap_or_default();
 
+        // miri needs to build std with xargo, which doesn't allow stable/beta:
+        // <https://github.com/japaric/xargo/pull/204#issuecomment-374888868>
+        if pkgname == "miri-preview" && self.rust_release != "nightly" {
+            is_present = false; // ignore it
+        }
+
         let targets = targets.iter().map(|name| {
             if is_present {
                 let filename = self.filename(pkgname, name);