@@ -28,7 +28,7 @@ use std::ffi::{OsStr, OsString};
28
28
use std:: fs:: { self , File } ;
29
29
use std:: io:: { BufRead , Write } ;
30
30
use std:: path:: { Path , PathBuf } ;
31
- use std:: sync:: { Arc , Mutex } ;
31
+ use std:: sync:: Arc ;
32
32
33
33
use anyhow:: { Context as _, Error } ;
34
34
use lazycell:: LazyCell ;
@@ -263,7 +263,6 @@ fn rustc(cx: &mut Context<'_, '_>, unit: &Unit, exec: &Arc<dyn Executor>) -> Car
263
263
let script_metadata = cx. find_build_script_metadata ( unit) ;
264
264
let is_local = unit. is_local ( ) ;
265
265
let artifact = unit. artifact ;
266
- let completed_units = Arc :: clone ( & cx. completed_units ) ;
267
266
268
267
return Ok ( Work :: new ( move |state| {
269
268
// Artifacts are in a different location than typical units,
@@ -293,13 +292,7 @@ fn rustc(cx: &mut Context<'_, '_>, unit: &Unit, exec: &Arc<dyn Executor>) -> Car
293
292
) ?;
294
293
add_plugin_deps ( & mut rustc, & script_outputs, & build_scripts, & root_output) ?;
295
294
}
296
- add_custom_flags (
297
- & mut rustc,
298
- & script_outputs,
299
- script_metadata,
300
- completed_units,
301
- None ,
302
- ) ?;
295
+ add_custom_flags ( & mut rustc, & script_outputs, script_metadata) ?;
303
296
}
304
297
305
298
for output in outputs. iter ( ) {
@@ -712,9 +705,18 @@ fn rustdoc(cx: &mut Context<'_, '_>, unit: &Unit) -> CargoResult<Work> {
712
705
& mut rustdoc,
713
706
& build_script_outputs. lock ( ) . unwrap ( ) ,
714
707
script_metadata,
715
- completed_units,
716
- scrape_units,
717
708
) ?;
709
+
710
+ if let Some ( scrape_units) = scrape_units {
711
+ let completed_units = completed_units. lock ( ) . unwrap ( ) ;
712
+ for ( _, output_path) in scrape_units
713
+ . iter ( )
714
+ . filter ( |( buildkey, _) | completed_units[ * buildkey] )
715
+ {
716
+ rustdoc. arg ( "--with-examples" ) . arg ( output_path) ;
717
+ }
718
+ }
719
+
718
720
let crate_dir = doc_dir. join ( & crate_name) ;
719
721
if crate_dir. exists ( ) {
720
722
// Remove output from a previous build. This ensures that stale
@@ -1182,8 +1184,6 @@ fn add_custom_flags(
1182
1184
cmd : & mut ProcessBuilder ,
1183
1185
build_script_outputs : & BuildScriptOutputs ,
1184
1186
metadata : Option < Metadata > ,
1185
- completed_units : Arc < Mutex < HashMap < Metadata , bool > > > ,
1186
- scrape_units : Option < HashMap < Metadata , PathBuf > > ,
1187
1187
) -> CargoResult < ( ) > {
1188
1188
if let Some ( metadata) = metadata {
1189
1189
if let Some ( output) = build_script_outputs. get ( metadata) {
@@ -1202,16 +1202,6 @@ fn add_custom_flags(
1202
1202
}
1203
1203
}
1204
1204
1205
- if let Some ( scrape_units) = scrape_units {
1206
- let completed_units = completed_units. lock ( ) . unwrap ( ) ;
1207
- for ( _, output_path) in scrape_units
1208
- . iter ( )
1209
- . filter ( |( buildkey, _) | completed_units[ * buildkey] )
1210
- {
1211
- cmd. arg ( "--with-examples" ) . arg ( output_path) ;
1212
- }
1213
- }
1214
-
1215
1205
Ok ( ( ) )
1216
1206
}
1217
1207
0 commit comments