about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--src/bootstrap/install.rs7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/bootstrap/install.rs b/src/bootstrap/install.rs
index 68e7dc80067..13ee909afd5 100644
--- a/src/bootstrap/install.rs
+++ b/src/bootstrap/install.rs
@@ -17,6 +17,11 @@ use crate::Compiler;
 use crate::builder::{Builder, RunConfig, ShouldRun, Step};
 use crate::config::{Config, TargetSelection};
 
+#[cfg(target_os = "illumos")]
+const SHELL: &str = "bash";
+#[cfg(not(target_os = "illumos"))]
+const SHELL: &str = "sh";
+
 fn install_sh(
     builder: &Builder<'_>,
     package: &str,
@@ -37,7 +42,7 @@ fn install_sh(
     let empty_dir = builder.out.join("tmp/empty_dir");
     t!(fs::create_dir_all(&empty_dir));
 
-    let mut cmd = Command::new("sh");
+    let mut cmd = Command::new(SHELL);
     cmd.current_dir(&empty_dir)
         .arg(sanitize_sh(&tarball.decompressed_output().join("install.sh")))
         .arg(format!("--prefix={}", prepare_dir(prefix)))