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