about summary refs log tree commit diff
diff options
context:
space:
mode:
authorCorey Farwell <coreyf@rwell.org>2017-09-14 22:32:31 -0400
committerGitHub <noreply@github.com>2017-09-14 22:32:31 -0400
commit76799d1ea3e849e0551a1fa8b02d5c0d361f2145 (patch)
tree3905cb596eee5720aaf1af41c2fe3847aa32eb2f
parent2d288a5ae5e2e72b1c40611db80f94bbec75639b (diff)
parentadfebed9db8d280487a8056f5b56331e3af7a33a (diff)
Rollup merge of #44131 - smaeul:openssl-perl, r=Mark-Simulacrum
Explicitly run perl for OpenSSL Configure

OpenSSL's Configure script is missing a shebang. On some platforms,
execve falls back to execution with the shell. Some other platforms,
like musl, will fail with an exec format error. Avoid this by calling
perl explicitly (since it's a perl script).
-rw-r--r--src/bootstrap/native.rs3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/bootstrap/native.rs b/src/bootstrap/native.rs
index 2cbae083fc4..a2c436627f6 100644
--- a/src/bootstrap/native.rs
+++ b/src/bootstrap/native.rs
@@ -389,7 +389,8 @@ impl Step for Openssl {
         drop(fs::remove_dir_all(&dst));
         build.run(Command::new("tar").arg("xf").arg(&tarball).current_dir(&out));
 
-        let mut configure = Command::new(obj.join("Configure"));
+        let mut configure = Command::new("perl");
+        configure.arg(obj.join("Configure"));
         configure.arg(format!("--prefix={}", dst.display()));
         configure.arg("no-dso");
         configure.arg("no-ssl2");