@@ -1334,9 +1334,10 @@ impl Step for Cargo {
1334
1334
}
1335
1335
}
1336
1336
1337
+ /// Distribute the rust-analyzer component, which is used as a LSP by various IDEs.
1337
1338
#[ derive( Debug , Clone , Hash , PartialEq , Eq ) ]
1338
1339
pub struct RustAnalyzer {
1339
- pub build_compiler : Compiler ,
1340
+ pub compilers : RustcPrivateCompilers ,
1340
1341
pub target : TargetSelection ,
1341
1342
}
1342
1343
@@ -1352,21 +1353,14 @@ impl Step for RustAnalyzer {
1352
1353
1353
1354
fn make_run ( run : RunConfig < ' _ > ) {
1354
1355
run. builder . ensure ( RustAnalyzer {
1355
- build_compiler : run. builder . compiler_for (
1356
- run. builder . top_stage ,
1357
- run. builder . config . host_target ,
1358
- run. target ,
1359
- ) ,
1356
+ compilers : RustcPrivateCompilers :: new ( run. builder , run. builder . top_stage , run. target ) ,
1360
1357
target : run. target ,
1361
1358
} ) ;
1362
1359
}
1363
1360
1364
1361
fn run ( self , builder : & Builder < ' _ > ) -> Option < GeneratedTarball > {
1365
1362
let target = self . target ;
1366
- let compilers =
1367
- RustcPrivateCompilers :: from_build_compiler ( builder, self . build_compiler , self . target ) ;
1368
-
1369
- let rust_analyzer = builder. ensure ( tool:: RustAnalyzer :: from_compilers ( compilers) ) ;
1363
+ let rust_analyzer = builder. ensure ( tool:: RustAnalyzer :: from_compilers ( self . compilers ) ) ;
1370
1364
1371
1365
let mut tarball = Tarball :: new ( builder, "rust-analyzer" , & target. triple ) ;
1372
1366
tarball. set_overlay ( OverlayKind :: RustAnalyzer ) ;
@@ -1375,6 +1369,13 @@ impl Step for RustAnalyzer {
1375
1369
tarball. add_legal_and_readme_to ( "share/doc/rust-analyzer" ) ;
1376
1370
Some ( tarball. generate ( ) )
1377
1371
}
1372
+
1373
+ fn metadata ( & self ) -> Option < StepMetadata > {
1374
+ Some (
1375
+ StepMetadata :: dist ( "rust-analyzer" , self . target )
1376
+ . built_by ( self . compilers . build_compiler ( ) ) ,
1377
+ )
1378
+ }
1378
1379
}
1379
1380
1380
1381
#[ derive( Debug , Clone , Hash , PartialEq , Eq ) ]
@@ -1672,7 +1673,7 @@ impl Step for Extended {
1672
1673
add_component ! ( "rust-json-docs" => JsonDocs { build_compiler: target_compiler, target } ) ;
1673
1674
add_component ! ( "cargo" => Cargo { build_compiler: compiler, target } ) ;
1674
1675
add_component ! ( "rustfmt" => Rustfmt { build_compiler: compiler, target } ) ;
1675
- add_component ! ( "rust-analyzer" => RustAnalyzer { build_compiler : compiler, target } ) ;
1676
+ add_component ! ( "rust-analyzer" => RustAnalyzer { compilers : RustcPrivateCompilers :: from_build_compiler ( builder , compiler, target ) , target } ) ;
1676
1677
add_component ! ( "llvm-components" => LlvmTools { target } ) ;
1677
1678
add_component ! ( "clippy" => Clippy { build_compiler: compiler, target } ) ;
1678
1679
add_component ! ( "miri" => Miri { build_compiler: compiler, target } ) ;
0 commit comments