@@ -59,7 +59,7 @@ pub struct Docs {
59
59
}
60
60
61
61
impl Step for Docs {
62
- type Output = GeneratedTarball ;
62
+ type Output = Option < GeneratedTarball > ;
63
63
const DEFAULT : bool = true ;
64
64
65
65
fn should_run ( run : ShouldRun < ' _ > ) -> ShouldRun < ' _ > {
@@ -72,7 +72,7 @@ impl Step for Docs {
72
72
}
73
73
74
74
/// Builds the `rust-docs` installer component.
75
- fn run ( self , builder : & Builder < ' _ > ) -> GeneratedTarball {
75
+ fn run ( self , builder : & Builder < ' _ > ) -> Option < GeneratedTarball > {
76
76
let host = self . host ;
77
77
builder. default_doc ( & [ ] ) ;
78
78
@@ -82,7 +82,7 @@ impl Step for Docs {
82
82
tarball. set_product_name ( "Rust Documentation" ) ;
83
83
tarball. add_bulk_dir ( & builder. doc_out ( host) , dest) ;
84
84
tarball. add_file ( & builder. src . join ( "src/doc/robots.txt" ) , dest, 0o644 ) ;
85
- tarball. generate ( )
85
+ Some ( tarball. generate ( ) )
86
86
}
87
87
}
88
88
@@ -1359,13 +1359,11 @@ impl Step for Extended {
1359
1359
1360
1360
let mut tarballs = Vec :: new ( ) ;
1361
1361
let mut built_tools = HashSet :: new ( ) ;
1362
- macro_rules! add_tool {
1362
+ macro_rules! add_component {
1363
1363
( $name: expr => $step: expr) => {
1364
- if should_build_extended_tool( builder, $name) {
1365
- if let Some ( tarball) = builder. ensure( $step) {
1366
- tarballs. push( tarball) ;
1367
- built_tools. insert( $name) ;
1368
- }
1364
+ if let Some ( tarball) = builder. ensure_if_default( $step) {
1365
+ tarballs. push( tarball) ;
1366
+ built_tools. insert( $name) ;
1369
1367
}
1370
1368
} ;
1371
1369
}
@@ -1377,31 +1375,20 @@ impl Step for Extended {
1377
1375
tarballs. push ( builder. ensure ( Rustc { compiler : builder. compiler ( stage, target) } ) ) ;
1378
1376
tarballs. push ( builder. ensure ( Std { compiler, target } ) . expect ( "missing std" ) ) ;
1379
1377
1380
- if builder. config . docs {
1381
- tarballs. push ( builder. ensure ( Docs { host : target } ) ) ;
1382
- }
1383
-
1384
1378
if target. contains ( "windows-gnu" ) {
1385
1379
tarballs. push ( builder. ensure ( Mingw { host : target } ) . expect ( "missing mingw" ) ) ;
1386
1380
}
1387
1381
1388
- if builder. config . profiler_enabled ( target)
1389
- || should_build_extended_tool ( builder, "rust-demangler" )
1390
- {
1391
- if let Some ( tarball) = builder. ensure ( RustDemangler { compiler, target } ) {
1392
- tarballs. push ( tarball) ;
1393
- built_tools. insert ( "rust-demangler" ) ;
1394
- }
1395
- }
1396
-
1397
- add_tool ! ( "cargo" => Cargo { compiler, target } ) ;
1398
- add_tool ! ( "rustfmt" => Rustfmt { compiler, target } ) ;
1399
- add_tool ! ( "rls" => Rls { compiler, target } ) ;
1400
- add_tool ! ( "rust-analyzer" => RustAnalyzer { compiler, target } ) ;
1401
- add_tool ! ( "llvm-tools" => LlvmTools { target } ) ;
1402
- add_tool ! ( "clippy" => Clippy { compiler, target } ) ;
1403
- add_tool ! ( "miri" => Miri { compiler, target } ) ;
1404
- add_tool ! ( "analysis" => Analysis { compiler, target } ) ;
1382
+ add_component ! ( "rust-docs" => Docs { host: target } ) ;
1383
+ add_component ! ( "rust-demangler" => RustDemangler { compiler, target } ) ;
1384
+ add_component ! ( "cargo" => Cargo { compiler, target } ) ;
1385
+ add_component ! ( "rustfmt" => Rustfmt { compiler, target } ) ;
1386
+ add_component ! ( "rls" => Rls { compiler, target } ) ;
1387
+ add_component ! ( "rust-analyzer" => RustAnalyzer { compiler, target } ) ;
1388
+ add_component ! ( "llvm-components" => LlvmTools { target } ) ;
1389
+ add_component ! ( "clippy" => Clippy { compiler, target } ) ;
1390
+ add_component ! ( "miri" => Miri { compiler, target } ) ;
1391
+ add_component ! ( "analysis" => Analysis { compiler, target } ) ;
1405
1392
1406
1393
let etc = builder. src . join ( "src/etc/installer" ) ;
1407
1394
0 commit comments