@@ -276,26 +276,27 @@ impl flags::Lsif {
276276 eprintln ! ( "Generating LSIF started..." ) ;
277277 let now = Instant :: now ( ) ;
278278 let cargo_config =
279- CargoConfig { sysroot : Some ( RustLibSource :: Discover ) , ..Default :: default ( ) } ;
279+ & CargoConfig { sysroot : Some ( RustLibSource :: Discover ) , ..Default :: default ( ) } ;
280280 let no_progress = & |_| ( ) ;
281281 let load_cargo_config = LoadCargoConfig {
282282 load_out_dirs_from_check : true ,
283283 with_proc_macro_server : ProcMacroServerChoice :: Sysroot ,
284284 prefill_caches : false ,
285285 } ;
286286 let path = AbsPathBuf :: assert_utf8 ( env:: current_dir ( ) ?. join ( self . path ) ) ;
287- let manifest = ProjectManifest :: discover_single ( & path) ?;
287+ let root = ProjectManifest :: discover_single ( & path) ?;
288+ let mut workspace = ProjectWorkspace :: load ( root, cargo_config, no_progress) ?;
288289
289- let workspace = ProjectWorkspace :: load ( manifest , & cargo_config, no_progress) ?;
290- let root = workspace. workspace_root ( ) . to_owned ( ) ;
290+ let build_scripts = workspace . run_build_scripts ( cargo_config, no_progress) ?;
291+ workspace. set_build_scripts ( build_scripts ) ;
291292
292293 let ( db, vfs, _proc_macro) =
293294 load_workspace ( workspace, & cargo_config. extra_env , & load_cargo_config) ?;
294295 let host = AnalysisHost :: with_database ( db) ;
295296 let db = host. raw_database ( ) ;
296297 let analysis = host. analysis ( ) ;
297298
298- let si = StaticIndex :: compute ( & analysis, & root . into ( ) ) ;
299+ let si = StaticIndex :: compute ( & analysis, & path . clone ( ) . into ( ) ) ;
299300
300301 let mut lsif = LsifManager :: new ( & analysis, db, & vfs) ;
301302 lsif. add_vertex ( lsif:: Vertex :: MetaData ( lsif:: MetaData {
0 commit comments