@@ -907,27 +907,25 @@ impl Step for RustdocGUI {
907
907
// We remove existing folder to be sure there won't be artifacts remaining.
908
908
let _ = fs:: remove_dir_all ( & out_dir) ;
909
909
910
- let mut nb_generated = 0 ;
910
+ let src_path = "src/test/rustdoc-gui/src" ;
911
911
// We generate docs for the libraries present in the rustdoc-gui's src folder.
912
- let libs_dir = builder. build . src . join ( "src/test/rustdoc-gui/src" ) ;
913
- for entry in libs_dir. read_dir ( ) . expect ( "read_dir call failed" ) {
914
- let entry = entry. expect ( "invalid entry" ) ;
915
- let path = entry. path ( ) ;
916
- if path. extension ( ) . map ( |e| e == "rs" ) . unwrap_or ( false ) {
917
- let mut command = builder. rustdoc_cmd ( self . compiler ) ;
918
- command. arg ( path) . arg ( "-o" ) . arg ( & out_dir) ;
919
- builder. run ( & mut command) ;
920
- nb_generated += 1 ;
921
- }
922
- }
923
- assert ! ( nb_generated > 0 , "no documentation was generated..." ) ;
912
+ let mut cargo = Command :: new ( & builder. initial_cargo ) ;
913
+ cargo
914
+ . arg ( "doc" )
915
+ . arg ( "--workspace" )
916
+ . arg ( "--target-dir" )
917
+ . arg ( & out_dir)
918
+ . env ( "RUSTDOC" , builder. rustdoc ( self . compiler ) )
919
+ . env ( "RUSTC" , builder. rustc ( self . compiler ) )
920
+ . current_dir ( & builder. build . src . join ( src_path) ) ;
921
+ builder. run ( & mut cargo) ;
924
922
925
923
// We now run GUI tests.
926
924
let mut command = Command :: new ( & nodejs) ;
927
925
command
928
926
. arg ( builder. build . src . join ( "src/tools/rustdoc-gui/tester.js" ) )
929
927
. arg ( "--doc-folder" )
930
- . arg ( out_dir)
928
+ . arg ( out_dir. join ( "doc" ) )
931
929
. arg ( "--tests-folder" )
932
930
. arg ( builder. build . src . join ( "src/test/rustdoc-gui" ) ) ;
933
931
for path in & builder. paths {
0 commit comments