$OpenBSD: patch-src_librustdoc_test_rs,v 1.10 2017/09/03 14:08:36 danj Exp $
fallback to LOCALBASE as default sysroot.
Index: src/librustdoc/test.rs
--- src/librustdoc/test.rs.orig
+++ src/librustdoc/test.rs
@@ -67,7 +67,10 @@ pub fn run(input: &str,
 
     let sessopts = config::Options {
         maybe_sysroot: maybe_sysroot.clone().or_else(
-            || Some(env::current_exe().unwrap().parent().unwrap().parent().unwrap().to_path_buf())),
+            || match option_env!("LOCALBASE") {
+                Some(dir) => return Some(PathBuf::from(dir)),
+                None => panic!("can't determine value for sysroot"),
+            }),
         search_paths: libs.clone(),
         crate_types: vec![config::CrateTypeDylib],
         externs: externs.clone(),
@@ -183,7 +186,10 @@ fn run_test(test: &str, cratename: &str, filename: &st
 
     let sessopts = config::Options {
         maybe_sysroot: maybe_sysroot.or_else(
-            || Some(env::current_exe().unwrap().parent().unwrap().parent().unwrap().to_path_buf())),
+            || match option_env!("LOCALBASE") {
+                Some(dir) => return Some(PathBuf::from(dir)),
+                None => panic!("can't determine value for sysroot"),
+            }),
         search_paths: libs,
         crate_types: vec![config::CrateTypeExecutable],
         output_types: outputs,
