diff --git a/src/rust-installer b/src/rust-installer index 4f994850808a..4cf7397fb056 160000 --- a/src/rust-installer +++ b/src/rust-installer @@ -1 +1 @@ -Subproject commit 4f994850808a572e2cc8d43f968893c8e942e9bf +Subproject commit 4cf7397fb0566e745f0bce4c5b009cfeb5d12c53 diff --git a/src/tools/build-manifest/src/main.rs b/src/tools/build-manifest/src/main.rs index 574af1246361..ba37863b1f62 100644 --- a/src/tools/build-manifest/src/main.rs +++ b/src/tools/build-manifest/src/main.rs @@ -116,6 +116,8 @@ struct Target { available: bool, url: Option, hash: Option, + xz_url: Option, + xz_hash: Option, components: Option>, extensions: Option>, } @@ -126,6 +128,8 @@ impl Target { available: false, url: None, hash: None, + xz_url: None, + xz_hash: None, components: None, extensions: None, } @@ -258,6 +262,8 @@ impl Builder { continue } }; + let xz_filename = filename.replace(".tar.gz", ".tar.xz"); + let xz_digest = self.digests.remove(&xz_filename); let mut components = Vec::new(); let mut extensions = Vec::new(); @@ -301,6 +307,8 @@ impl Builder { available: true, url: Some(self.url(&filename)), hash: Some(digest), + xz_url: xz_digest.as_ref().map(|_| self.url(&xz_filename)), + xz_hash: xz_digest, components: Some(components), extensions: Some(extensions), }); @@ -320,11 +328,15 @@ impl Builder { Some(digest) => digest, None => return (name.to_string(), Target::unavailable()), }; + let xz_filename = filename.replace(".tar.gz", ".tar.xz"); + let xz_digest = self.digests.remove(&xz_filename); (name.to_string(), Target { available: true, url: Some(self.url(&filename)), hash: Some(digest), + xz_url: xz_digest.as_ref().map(|_| self.url(&xz_filename)), + xz_hash: xz_digest, components: None, extensions: None, })