@@ -4,6 +4,26 @@ use crate::core::build_steps::tool::SUBMODULES_FOR_RUSTBOOK;
4
4
use crate :: core:: builder:: { Builder , RunConfig , ShouldRun , Step } ;
5
5
use crate :: utils:: exec:: command;
6
6
7
+ /// List of default paths used for vendoring for `x vendor` and dist tarballs.
8
+ pub fn default_paths_to_vendor ( builder : & Builder < ' _ > ) -> Vec < PathBuf > {
9
+ let mut paths = vec ! [ ] ;
10
+ for p in [
11
+ "src/tools/cargo/Cargo.toml" ,
12
+ "src/tools/rust-analyzer/Cargo.toml" ,
13
+ "compiler/rustc_codegen_cranelift/Cargo.toml" ,
14
+ "compiler/rustc_codegen_gcc/Cargo.toml" ,
15
+ "library/Cargo.toml" ,
16
+ "src/bootstrap/Cargo.toml" ,
17
+ "src/tools/rustbook/Cargo.toml" ,
18
+ "src/tools/rustc-perf/Cargo.toml" ,
19
+ "src/tools/opt-dist/Cargo.toml" ,
20
+ ] {
21
+ paths. push ( builder. src . join ( p) ) ;
22
+ }
23
+
24
+ paths
25
+ }
26
+
7
27
#[ derive( Debug , Clone , Hash , PartialEq , Eq ) ]
8
28
pub ( crate ) struct Vendor {
9
29
sync_args : Vec < PathBuf > ,
@@ -42,16 +62,8 @@ impl Step for Vendor {
42
62
}
43
63
44
64
// Sync these paths by default.
45
- for p in [
46
- "src/tools/cargo/Cargo.toml" ,
47
- "src/tools/rust-analyzer/Cargo.toml" ,
48
- "compiler/rustc_codegen_cranelift/Cargo.toml" ,
49
- "compiler/rustc_codegen_gcc/Cargo.toml" ,
50
- "library/Cargo.toml" ,
51
- "src/bootstrap/Cargo.toml" ,
52
- "src/tools/rustbook/Cargo.toml" ,
53
- ] {
54
- cmd. arg ( "--sync" ) . arg ( builder. src . join ( p) ) ;
65
+ for p in default_paths_to_vendor ( builder) {
66
+ cmd. arg ( "--sync" ) . arg ( p) ;
55
67
}
56
68
57
69
// Also sync explicitly requested paths.
0 commit comments