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
This commit is contained in:
Josh Stone 2019-03-29 17:59:07 -07:00
parent e782d790f1
commit b222b6fa7f

View File

@ -522,12 +522,18 @@ impl Builder {
pkgname: &str, pkgname: &str,
dst: &mut BTreeMap<String, Package>, dst: &mut BTreeMap<String, Package>,
targets: &[&str]) { targets: &[&str]) {
let (version, is_present) = self.cached_version(pkgname) let (version, mut is_present) = self.cached_version(pkgname)
.as_ref() .as_ref()
.cloned() .cloned()
.map(|version| (version, true)) .map(|version| (version, true))
.unwrap_or_default(); .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| { let targets = targets.iter().map(|name| {
if is_present { if is_present {
let filename = self.filename(pkgname, name); let filename = self.filename(pkgname, name);