@@ -63,71 +63,101 @@ pub(crate) struct WorkspaceInfo<'a> {
63
63
pub ( crate ) submodules : & ' a [ & ' a str ] ,
64
64
}
65
65
66
- impl < ' a > WorkspaceInfo < ' a > {
67
- const fn new (
68
- path : & ' a str ,
69
- exceptions : ExceptionList ,
70
- crates_and_deps : Option < ( & ' a [ & str ] , & ' a [ & str ] , ListLocation ) > ,
71
- submodules : & ' a [ & str ] ,
72
- ) -> Self {
73
- Self { path, exceptions, crates_and_deps, submodules }
74
- }
75
- }
76
-
77
66
/// The workspaces to check for licensing and optionally permitted dependencies.
78
67
// FIXME auto detect all cargo workspaces
79
68
pub ( crate ) const WORKSPACES : & [ WorkspaceInfo < ' static > ] = & [
80
69
// The root workspace has to be first for check_rustfix to work.
81
- WorkspaceInfo :: new (
82
- "." ,
83
- EXCEPTIONS ,
84
- Some ( ( & [ "rustc-main" ] , PERMITTED_RUSTC_DEPENDENCIES , PERMITTED_RUSTC_DEPS_LOCATION ) ) ,
85
- & [ ] ,
86
- ) ,
87
- WorkspaceInfo :: new (
88
- "library" ,
89
- EXCEPTIONS_STDLIB ,
90
- Some ( ( & [ "sysroot" ] , PERMITTED_STDLIB_DEPENDENCIES , PERMITTED_STDLIB_DEPS_LOCATION ) ) ,
91
- & [ ] ,
92
- ) ,
93
- // Outside of the alphabetical section because rustfmt formats it using multiple lines.
94
- WorkspaceInfo :: new (
95
- "compiler/rustc_codegen_cranelift" ,
96
- EXCEPTIONS_CRANELIFT ,
97
- Some ( (
98
- & [ "rustc_codegen_cranelift" ] ,
99
- PERMITTED_CRANELIFT_DEPENDENCIES ,
100
- PERMITTED_CRANELIFT_DEPS_LOCATION ,
70
+ WorkspaceInfo {
71
+ path : "." ,
72
+ exceptions : EXCEPTIONS ,
73
+ crates_and_deps : Some ( (
74
+ & [ "rustc-main" ] ,
75
+ PERMITTED_RUSTC_DEPENDENCIES ,
76
+ PERMITTED_RUSTC_DEPS_LOCATION ,
101
77
) ) ,
102
- & [ ] ,
103
- ) ,
104
- // tidy-alphabetical-start
105
- WorkspaceInfo :: new ( "compiler/rustc_codegen_gcc" , EXCEPTIONS_GCC , None , & [ ] ) ,
106
- WorkspaceInfo :: new ( "src/bootstrap" , EXCEPTIONS_BOOTSTRAP , None , & [ ] ) ,
107
- WorkspaceInfo :: new ( "src/tools/cargo" , EXCEPTIONS_CARGO , None , & [ "src/tools/cargo" ] ) ,
108
- //WorkspaceInfo::new("src/tools/miri/test-cargo-miri", &[], None), // FIXME uncomment once all deps are vendored
109
- //WorkspaceInfo::new("src/tools/miri/test_dependencies", &[], None), // FIXME uncomment once all deps are vendored
110
- WorkspaceInfo :: new ( "src/tools/rust-analyzer" , EXCEPTIONS_RUST_ANALYZER , None , & [ ] ) ,
111
- WorkspaceInfo :: new (
112
- "src/tools/rustbook" ,
113
- EXCEPTIONS_RUSTBOOK ,
114
- None ,
115
- & [ "src/doc/book" , "src/doc/reference" ] ,
116
- ) ,
117
- WorkspaceInfo :: new (
118
- "src/tools/rustc-perf" ,
119
- EXCEPTIONS_RUSTC_PERF ,
120
- None ,
121
- & [ "src/tools/rustc-perf" ] ,
122
- ) ,
123
- WorkspaceInfo :: new ( "src/tools/test-float-parse" , EXCEPTIONS , None , & [ ] ) ,
124
- WorkspaceInfo :: new (
125
- "tests/run-make-cargo/uefi-qemu/uefi_qemu_test" ,
126
- EXCEPTIONS_UEFI_QEMU_TEST ,
127
- None ,
128
- & [ ] ,
129
- ) ,
130
- // tidy-alphabetical-end
78
+ submodules : & [ ] ,
79
+ } ,
80
+ WorkspaceInfo {
81
+ path : "library" ,
82
+ exceptions : EXCEPTIONS_STDLIB ,
83
+ crates_and_deps : Some ( (
84
+ & [ "sysroot" ] ,
85
+ PERMITTED_STDLIB_DEPENDENCIES ,
86
+ PERMITTED_STDLIB_DEPS_LOCATION ,
87
+ ) ) ,
88
+ submodules : & [ ] ,
89
+ } ,
90
+ {
91
+ WorkspaceInfo {
92
+ path : "compiler/rustc_codegen_cranelift" ,
93
+ exceptions : EXCEPTIONS_CRANELIFT ,
94
+ crates_and_deps : Some ( (
95
+ & [ "rustc_codegen_cranelift" ] ,
96
+ PERMITTED_CRANELIFT_DEPENDENCIES ,
97
+ PERMITTED_CRANELIFT_DEPS_LOCATION ,
98
+ ) ) ,
99
+ submodules : & [ ] ,
100
+ }
101
+ } ,
102
+ WorkspaceInfo {
103
+ path : "compiler/rustc_codegen_gcc" ,
104
+ exceptions : EXCEPTIONS_GCC ,
105
+ crates_and_deps : None ,
106
+ submodules : & [ ] ,
107
+ } ,
108
+ WorkspaceInfo {
109
+ path : "src/bootstrap" ,
110
+ exceptions : EXCEPTIONS_BOOTSTRAP ,
111
+ crates_and_deps : None ,
112
+ submodules : & [ ] ,
113
+ } ,
114
+ WorkspaceInfo {
115
+ path : "src/tools/cargo" ,
116
+ exceptions : EXCEPTIONS_CARGO ,
117
+ crates_and_deps : None ,
118
+ submodules : & [ "src/tools/cargo" ] ,
119
+ } ,
120
+ // FIXME uncomment once all deps are vendored
121
+ // WorkspaceInfo {
122
+ // path: "src/tools/miri/test-cargo-miri",
123
+ // crates_and_deps: None
124
+ // submodules: &[],
125
+ // },
126
+ // WorkspaceInfo {
127
+ // path: "src/tools/miri/test_dependencies",
128
+ // crates_and_deps: None,
129
+ // submodules: &[],
130
+ // }
131
+ WorkspaceInfo {
132
+ path : "src/tools/rust-analyzer" ,
133
+ exceptions : EXCEPTIONS_RUST_ANALYZER ,
134
+ crates_and_deps : None ,
135
+ submodules : & [ ] ,
136
+ } ,
137
+ WorkspaceInfo {
138
+ path : "src/tools/rustbook" ,
139
+ exceptions : EXCEPTIONS_RUSTBOOK ,
140
+ crates_and_deps : None ,
141
+ submodules : & [ "src/doc/book" , "src/doc/reference" ] ,
142
+ } ,
143
+ WorkspaceInfo {
144
+ path : "src/tools/rustc-perf" ,
145
+ exceptions : EXCEPTIONS_RUSTC_PERF ,
146
+ crates_and_deps : None ,
147
+ submodules : & [ "src/tools/rustc-perf" ] ,
148
+ } ,
149
+ WorkspaceInfo {
150
+ path : "src/tools/test-float-parse" ,
151
+ exceptions : EXCEPTIONS ,
152
+ crates_and_deps : None ,
153
+ submodules : & [ ] ,
154
+ } ,
155
+ WorkspaceInfo {
156
+ path : "tests/run-make-cargo/uefi-qemu/uefi_qemu_test" ,
157
+ exceptions : EXCEPTIONS_UEFI_QEMU_TEST ,
158
+ crates_and_deps : None ,
159
+ submodules : & [ ] ,
160
+ } ,
131
161
] ;
132
162
133
163
/// These are exceptions to Rust's permissive licensing policy, and
0 commit comments