Skip to content

Commit c4b34ee

Browse files
authored
Rollup merge of #80240 - yshui:master, r=Mark-Simulacrum
make sure installer only creates directories in DESTDIR Fixes #80238 Signed-off-by: Yuxuan Shui <[email protected]>
2 parents ce93f5a + fbc9d50 commit c4b34ee

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

src/bootstrap/install.rs

+8-6
Original file line numberDiff line numberDiff line change
@@ -73,12 +73,7 @@ fn install_sh(
7373
let docdir_default = datadir_default.join("doc/rust");
7474
let libdir_default = PathBuf::from("lib");
7575
let mandir_default = datadir_default.join("man");
76-
let prefix = builder.config.prefix.as_ref().map_or(prefix_default, |p| {
77-
fs::create_dir_all(p)
78-
.unwrap_or_else(|err| panic!("could not create {}: {}", p.display(), err));
79-
fs::canonicalize(p)
80-
.unwrap_or_else(|err| panic!("could not canonicalize {}: {}", p.display(), err))
81-
});
76+
let prefix = builder.config.prefix.as_ref().unwrap_or(&prefix_default);
8277
let sysconfdir = builder.config.sysconfdir.as_ref().unwrap_or(&sysconfdir_default);
8378
let datadir = builder.config.datadir.as_ref().unwrap_or(&datadir_default);
8479
let docdir = builder.config.docdir.as_ref().unwrap_or(&docdir_default);
@@ -103,6 +98,13 @@ fn install_sh(
10398
let libdir = add_destdir(&libdir, &destdir);
10499
let mandir = add_destdir(&mandir, &destdir);
105100

101+
let prefix = {
102+
fs::create_dir_all(&prefix)
103+
.unwrap_or_else(|err| panic!("could not create {}: {}", prefix.display(), err));
104+
fs::canonicalize(&prefix)
105+
.unwrap_or_else(|err| panic!("could not canonicalize {}: {}", prefix.display(), err))
106+
};
107+
106108
let empty_dir = builder.out.join("tmp/empty_dir");
107109

108110
t!(fs::create_dir_all(&empty_dir));

0 commit comments

Comments
 (0)