]> git.lizzy.rs Git - rust.git/commitdiff
Use package name for top-level directory in bare tarballs
authorMark Rousskov <mark.simulacrum@gmail.com>
Sat, 26 Dec 2020 22:15:20 +0000 (17:15 -0500)
committerMark Rousskov <mark.simulacrum@gmail.com>
Sat, 26 Dec 2020 22:15:20 +0000 (17:15 -0500)
This fixes a bug introduced by #79788.

src/bootstrap/tarball.rs

index 5d73a655427b20fa3049080bf7339eb488fb6c0b..32c8e791bfc6bfdaf7cf880884e0b290de1aa5ba 100644 (file)
@@ -241,10 +241,16 @@ pub(crate) fn combine(self, tarballs: &[PathBuf]) {
     }
 
     pub(crate) fn bare(self) -> PathBuf {
+        // Bare tarballs should have the top level directory match the package
+        // name, not "image". We rename the image directory just before passing
+        // into rust-installer.
+        let dest = self.temp_dir.join(self.package_name());
+        t!(std::fs::rename(&self.image_dir, &dest));
+
         self.run(|this, cmd| {
             cmd.arg("tarball")
                 .arg("--input")
-                .arg(&this.image_dir)
+                .arg(&dest)
                 .arg("--output")
                 .arg(crate::dist::distdir(this.builder).join(this.package_name()));
         })