@@ -373,8 +373,7 @@ impl ProjectWorkspace {
373
373
project_json. sysroot_src . clone ( ) ,
374
374
& config. sysroot_query_metadata ,
375
375
) ;
376
- let cfg_config = QueryConfig :: Rustc ( & sysroot) ;
377
- let data_layout_config = QueryConfig :: Rustc ( & sysroot) ;
376
+ let query_config = QueryConfig :: Rustc ( & sysroot, project_json. path ( ) . as_ref ( ) ) ;
378
377
let toolchain = match get_toolchain_version (
379
378
project_json. path ( ) ,
380
379
& sysroot,
@@ -390,8 +389,8 @@ impl ProjectWorkspace {
390
389
} ;
391
390
392
391
let target = config. target . as_deref ( ) ;
393
- let rustc_cfg = rustc_cfg:: get ( cfg_config , target, & config. extra_env ) ;
394
- let data_layout = target_data_layout:: get ( data_layout_config , target, & config. extra_env ) ;
392
+ let rustc_cfg = rustc_cfg:: get ( query_config , target, & config. extra_env ) ;
393
+ let data_layout = target_data_layout:: get ( query_config , target, & config. extra_env ) ;
395
394
ProjectWorkspace {
396
395
kind : ProjectWorkspaceKind :: Json ( project_json) ,
397
396
sysroot,
@@ -432,9 +431,9 @@ impl ProjectWorkspace {
432
431
& config. extra_env ,
433
432
)
434
433
. unwrap_or_default ( ) ;
435
- let rustc_cfg = rustc_cfg :: get ( QueryConfig :: Rustc ( & sysroot) , None , & config . extra_env ) ;
436
- let data_layout =
437
- target_data_layout:: get ( QueryConfig :: Rustc ( & sysroot ) , None , & config. extra_env ) ;
434
+ let query_config = QueryConfig :: Rustc ( & sysroot, dir . as_ref ( ) ) ;
435
+ let rustc_cfg = rustc_cfg :: get ( query_config , None , & config . extra_env ) ;
436
+ let data_layout = target_data_layout:: get ( query_config , None , & config. extra_env ) ;
438
437
439
438
let cargo_script = CargoWorkspace :: fetch_metadata (
440
439
detached_file,
@@ -946,7 +945,11 @@ fn project_json_to_crate_graph(
946
945
947
946
let target_cfgs = match target. as_deref ( ) {
948
947
Some ( target) => cfg_cache. entry ( target) . or_insert_with ( || {
949
- rustc_cfg:: get ( QueryConfig :: Rustc ( sysroot) , Some ( target) , extra_env)
948
+ rustc_cfg:: get (
949
+ QueryConfig :: Rustc ( sysroot, project. project_root ( ) . as_ref ( ) ) ,
950
+ Some ( target) ,
951
+ extra_env,
952
+ )
950
953
} ) ,
951
954
None => & rustc_cfg,
952
955
} ;
0 commit comments