@@ -104,9 +104,10 @@ impl Step for ToolBuild {
104
104
let is_ext_tool = self . is_ext_tool ;
105
105
106
106
match self . mode {
107
- Mode :: ToolStd => builder. ensure ( compile:: Std { compiler, target } ) ,
108
- Mode :: ToolTest => builder. ensure ( compile:: Test { compiler, target } ) ,
109
- Mode :: ToolRustc => builder. ensure ( compile:: Rustc { compiler, target } ) ,
107
+ Mode :: ToolRustc => {
108
+ builder. ensure ( compile:: Rustc { compiler, target } )
109
+ }
110
+ Mode :: ToolBootstrap => { } // uses downloaded stage0 compiler libs
110
111
_ => panic ! ( "unexpected Mode for tool build" )
111
112
}
112
113
@@ -341,17 +342,17 @@ macro_rules! tool {
341
342
}
342
343
343
344
tool ! (
344
- Rustbook , "src/tools/rustbook" , "rustbook" , Mode :: ToolRustc ;
345
+ Rustbook , "src/tools/rustbook" , "rustbook" , Mode :: ToolBootstrap ;
345
346
ErrorIndex , "src/tools/error_index_generator" , "error_index_generator" , Mode :: ToolRustc ;
346
- UnstableBookGen , "src/tools/unstable-book-gen" , "unstable-book-gen" , Mode :: ToolStd ;
347
- Tidy , "src/tools/tidy" , "tidy" , Mode :: ToolStd ;
348
- Linkchecker , "src/tools/linkchecker" , "linkchecker" , Mode :: ToolStd ;
349
- CargoTest , "src/tools/cargotest" , "cargotest" , Mode :: ToolStd ;
350
- Compiletest , "src/tools/compiletest" , "compiletest" , Mode :: ToolTest , llvm_tools = true ;
351
- BuildManifest , "src/tools/build-manifest" , "build-manifest" , Mode :: ToolStd ;
352
- RemoteTestClient , "src/tools/remote-test-client" , "remote-test-client" , Mode :: ToolStd ;
353
- RustInstaller , "src/tools/rust-installer" , "fabricate" , Mode :: ToolStd ;
354
- RustdocTheme , "src/tools/rustdoc-themes" , "rustdoc-themes" , Mode :: ToolStd ;
347
+ UnstableBookGen , "src/tools/unstable-book-gen" , "unstable-book-gen" , Mode :: ToolBootstrap ;
348
+ Tidy , "src/tools/tidy" , "tidy" , Mode :: ToolBootstrap ;
349
+ Linkchecker , "src/tools/linkchecker" , "linkchecker" , Mode :: ToolBootstrap ;
350
+ CargoTest , "src/tools/cargotest" , "cargotest" , Mode :: ToolBootstrap ;
351
+ Compiletest , "src/tools/compiletest" , "compiletest" , Mode :: ToolBootstrap , llvm_tools = true ;
352
+ BuildManifest , "src/tools/build-manifest" , "build-manifest" , Mode :: ToolBootstrap ;
353
+ RemoteTestClient , "src/tools/remote-test-client" , "remote-test-client" , Mode :: ToolBootstrap ;
354
+ RustInstaller , "src/tools/rust-installer" , "fabricate" , Mode :: ToolBootstrap ;
355
+ RustdocTheme , "src/tools/rustdoc-themes" , "rustdoc-themes" , Mode :: ToolBootstrap ;
355
356
) ;
356
357
357
358
#[ derive( Debug , Copy , Clone , Hash , PartialEq , Eq ) ]
@@ -379,7 +380,7 @@ impl Step for RemoteTestServer {
379
380
compiler : self . compiler ,
380
381
target : self . target ,
381
382
tool : "remote-test-server" ,
382
- mode : Mode :: ToolStd ,
383
+ mode : Mode :: ToolBootstrap ,
383
384
path : "src/tools/remote-test-server" ,
384
385
is_ext_tool : false ,
385
386
extra_features : Vec :: new ( ) ,
@@ -604,7 +605,11 @@ impl<'a> Builder<'a> {
604
605
fn prepare_tool_cmd ( & self , compiler : Compiler , tool : Tool , cmd : & mut Command ) {
605
606
let host = & compiler. host ;
606
607
let mut lib_paths: Vec < PathBuf > = vec ! [
607
- PathBuf :: from( & self . sysroot_libdir( compiler, compiler. host) ) ,
608
+ if compiler. stage == 0 {
609
+ self . build. rustc_snapshot_libdir( )
610
+ } else {
611
+ PathBuf :: from( & self . sysroot_libdir( compiler, compiler. host) )
612
+ } ,
608
613
self . cargo_out( compiler, tool. get_mode( ) , * host) . join( "deps" ) ,
609
614
] ;
610
615
0 commit comments