rustbuild: Fix submodules for out of tree builds
Be sure to put the git command into the right directory when we run the submodule management information. Closes #31619
This commit is contained in:
parent
680bdbc2a7
commit
5aef0e8fac
1 changed files with 15 additions and 14 deletions
|
|
@ -155,24 +155,25 @@ impl Build {
|
|||
if fs::metadata(self.src.join(".git")).is_err() {
|
||||
return
|
||||
}
|
||||
let out = output(Command::new("git").arg("submodule").arg("status"));
|
||||
let git_submodule = || {
|
||||
let mut cmd = Command::new("git");
|
||||
cmd.current_dir(&self.src).arg("submodule");
|
||||
return cmd
|
||||
};
|
||||
let out = output(git_submodule().arg("status"));
|
||||
if !out.lines().any(|l| l.starts_with("+") || l.starts_with("-")) {
|
||||
return
|
||||
}
|
||||
|
||||
self.run(Command::new("git").arg("submodule").arg("sync"));
|
||||
self.run(Command::new("git").arg("submodule").arg("init"));
|
||||
self.run(Command::new("git").arg("submodule").arg("update"));
|
||||
self.run(Command::new("git").arg("submodule").arg("update")
|
||||
.arg("--recursive"));
|
||||
self.run(Command::new("git").arg("submodule").arg("status")
|
||||
.arg("--recursive"));
|
||||
self.run(Command::new("git").arg("submodule").arg("foreach")
|
||||
.arg("--recursive")
|
||||
.arg("git").arg("clean").arg("-fdx"));
|
||||
self.run(Command::new("git").arg("submodule").arg("foreach")
|
||||
.arg("--recursive")
|
||||
.arg("git").arg("checkout").arg("."));
|
||||
self.run(git_submodule().arg("sync"));
|
||||
self.run(git_submodule().arg("init"));
|
||||
self.run(git_submodule().arg("update"));
|
||||
self.run(git_submodule().arg("update").arg("--recursive"));
|
||||
self.run(git_submodule().arg("status").arg("--recursive"));
|
||||
self.run(git_submodule().arg("foreach").arg("--recursive")
|
||||
.arg("git").arg("clean").arg("-fdx"));
|
||||
self.run(git_submodule().arg("foreach").arg("--recursive")
|
||||
.arg("git").arg("checkout").arg("."));
|
||||
}
|
||||
|
||||
/// Clear out `dir` if our build has been flagged as dirty, and also set
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue