@@ -3695,20 +3695,37 @@ impl<'test> TestCx<'test> {
3695
3695
3696
3696
// FIXME(jieyouxu): explain what the hecc we are doing here.
3697
3697
// FIXME(jieyouxu): audit these env vars. some of them only makes sense for make, not rustc!
3698
+ // FIXME(jieyouxu): please rename `TARGET_RPATH_ENV`, `HOST_RPATH_DIR` and
3699
+ // `TARGET_RPATH_DIR`, it is **extremely** confusing!
3698
3700
let mut cmd = Command :: new ( & recipe_bin) ;
3699
3701
cmd. current_dir ( & rmake_out_dir)
3700
3702
. stdout ( Stdio :: piped ( ) )
3701
3703
. stderr ( Stdio :: piped ( ) )
3704
+ // Provide the target-specific env var that is used to record dylib search paths. For
3705
+ // example, this could be `LD_LIBRARY_PATH` on some linux distros but `PATH` on Windows.
3702
3706
. env ( "LD_LIB_PATH_ENVVAR" , dylib_env_var ( ) )
3703
- . env ( "TARGET_RPATH_ENV" , & env :: join_paths ( target_runtime_dylib_search_paths ) . unwrap ( ) )
3707
+ // Provide the dylib search paths.
3704
3708
. env ( dylib_env_var ( ) , & env:: join_paths ( recipe_dylib_search_paths) . unwrap ( ) )
3709
+ // Provide runtime dylib search paths.
3710
+ . env ( "TARGET_RPATH_ENV" , & env:: join_paths ( target_runtime_dylib_search_paths) . unwrap ( ) )
3711
+ // Provide the target.
3705
3712
. env ( "TARGET" , & self . config . target )
3713
+ // Some tests unfortunately still need Python, so provide path to a Python interpreter.
3706
3714
. env ( "PYTHON" , & self . config . python )
3715
+ // Provide path to checkout root. This is the top-level directory containing
3716
+ // rust-lang/rust checkout.
3707
3717
. env ( "SOURCE_ROOT" , & source_root)
3708
- . env ( "RUST_BUILD_STAGE" , & self . config . stage_id )
3718
+ // Provide path to stage-corresponding rustc.
3709
3719
. env ( "RUSTC" , & self . config . rustc_path )
3720
+ // Provide the directory to libraries that are needed to run the *compiler*. This is not
3721
+ // to be confused with `TARGET_RPATH_ENV` or `TARGET_RPATH_DIR`. This is needed if the
3722
+ // recipe wants to invoke rustc.
3710
3723
. env ( "HOST_RPATH_DIR" , & self . config . compile_lib_path )
3724
+ // Provide the directory to libraries that might be needed to run compiled binaries
3725
+ // (further compiled by the recipe!).
3711
3726
. env ( "TARGET_RPATH_DIR" , & self . config . run_lib_path )
3727
+ // Provide which LLVM components are available (e.g. which LLVM components are provided
3728
+ // through a specific CI runner).
3712
3729
. env ( "LLVM_COMPONENTS" , & self . config . llvm_components ) ;
3713
3730
3714
3731
if let Some ( ref rustdoc) = self . config . rustdoc_path {
0 commit comments