summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Crichton <alex@alexcrichton.com>2017-01-19 11:13:42 -0800
committerGitHub <noreply@github.com>2017-01-19 11:13:42 -0800
commit10893a9a349cdd423f2490a6984acb5b3b7c8046 (patch)
tree106134ecd115ef74c6d4994e50fb34e60eed083c
parentad78c04a9a0abd5b2332b5046060f16edef2b05b (diff)
parent5466c1bc80ad7cf08d71e77e7af3d17a24b50f36 (diff)
Merge pull request #39189 from brson/beta-next1.15.0
Beta next
-rw-r--r--mk/main.mk2
-rw-r--r--src/bootstrap/check.rs4
-rw-r--r--src/build_helper/lib.rs12
-rw-r--r--src/liballoc_jemalloc/build.rs2
-rw-r--r--src/librustc_llvm/build.rs11
-rw-r--r--src/libstd/build.rs2
-rw-r--r--src/test/run-pass/backtrace.rs1
-rw-r--r--src/tools/compiletest/src/runtest.rs11
8 files changed, 38 insertions, 7 deletions
diff --git a/mk/main.mk b/mk/main.mk
index fe333dae08a..e77182ae399 100644
--- a/mk/main.mk
+++ b/mk/main.mk
@@ -18,7 +18,7 @@ CFG_RELEASE_NUM=1.15.0
# An optional number to put after the label, e.g. '.2' -> '-beta.2'
# NB Make sure it starts with a dot to conform to semver pre-release
# versions (section 9)
-CFG_PRERELEASE_VERSION=.4
+CFG_PRERELEASE_VERSION=.5
ifeq ($(CFG_RELEASE_CHANNEL),stable)
# This is the normal semver version string, e.g. "0.12.0", "0.12.0-nightly"
diff --git a/src/bootstrap/check.rs b/src/bootstrap/check.rs
index 712c4c52baa..aa15825d829 100644
--- a/src/bootstrap/check.rs
+++ b/src/bootstrap/check.rs
@@ -13,6 +13,8 @@
//! This file implements the various regression test suites that we execute on
//! our CI.
+extern crate build_helper;
+
use std::collections::HashSet;
use std::env;
use std::fmt;
@@ -543,7 +545,7 @@ pub fn distcheck(build: &Build) {
build.run(&mut cmd);
build.run(Command::new("./configure")
.current_dir(&dir));
- build.run(Command::new("make")
+ build.run(Command::new(build_helper::make(&build.config.build))
.arg("check")
.current_dir(&dir));
}
diff --git a/src/build_helper/lib.rs b/src/build_helper/lib.rs
index 07f9c91d3c7..d0d588f46a7 100644
--- a/src/build_helper/lib.rs
+++ b/src/build_helper/lib.rs
@@ -47,6 +47,8 @@ pub fn cc2ar(cc: &Path, target: &str) -> Option<PathBuf> {
None
} else if target.contains("musl") {
Some(PathBuf::from("ar"))
+ } else if target.contains("openbsd") {
+ Some(PathBuf::from("ar"))
} else {
let parent = cc.parent().unwrap();
let file = cc.file_name().unwrap().to_str().unwrap();
@@ -61,6 +63,16 @@ pub fn cc2ar(cc: &Path, target: &str) -> Option<PathBuf> {
}
}
+pub fn make(host: &str) -> PathBuf {
+ if host.contains("bitrig") || host.contains("dragonfly") ||
+ host.contains("freebsd") || host.contains("netbsd") ||
+ host.contains("openbsd") {
+ PathBuf::from("gmake")
+ } else {
+ PathBuf::from("make")
+ }
+}
+
pub fn output(cmd: &mut Command) -> String {
let output = match cmd.stderr(Stdio::inherit()).output() {
Ok(status) => status,
diff --git a/src/liballoc_jemalloc/build.rs b/src/liballoc_jemalloc/build.rs
index fc849e7a50c..60b7875a97c 100644
--- a/src/liballoc_jemalloc/build.rs
+++ b/src/liballoc_jemalloc/build.rs
@@ -151,7 +151,7 @@ fn main() {
cmd.arg(format!("--build={}", build_helper::gnu_target(&host)));
run(&mut cmd);
- let mut make = Command::new("make");
+ let mut make = Command::new(build_helper::make(&host));
make.current_dir(&build_dir)
.arg("build_lib_static");
diff --git a/src/librustc_llvm/build.rs b/src/librustc_llvm/build.rs
index 50bc3e7b624..86c40a0208a 100644
--- a/src/librustc_llvm/build.rs
+++ b/src/librustc_llvm/build.rs
@@ -230,6 +230,13 @@ fn main() {
}
}
+ // OpenBSD has a particular C++ runtime library name
+ let stdcppname = if target.contains("openbsd") {
+ "estdc++"
+ } else {
+ "stdc++"
+ };
+
// C++ runtime library
if !target.contains("msvc") {
if let Some(s) = env::var_os("LLVM_STATIC_STDCPP") {
@@ -237,11 +244,11 @@ fn main() {
let path = PathBuf::from(s);
println!("cargo:rustc-link-search=native={}",
path.parent().unwrap().display());
- println!("cargo:rustc-link-lib=static=stdc++");
+ println!("cargo:rustc-link-lib=static={}", stdcppname);
} else if cxxflags.contains("stdlib=libc++") {
println!("cargo:rustc-link-lib=c++");
} else {
- println!("cargo:rustc-link-lib=stdc++");
+ println!("cargo:rustc-link-lib={}", stdcppname);
}
}
}
diff --git a/src/libstd/build.rs b/src/libstd/build.rs
index 1087d1f2447..b3eba508316 100644
--- a/src/libstd/build.rs
+++ b/src/libstd/build.rs
@@ -104,7 +104,7 @@ fn build_libbacktrace(host: &str, target: &str) {
.env("AR", &ar)
.env("RANLIB", format!("{} s", ar.display()))
.env("CFLAGS", cflags));
- run(Command::new("make")
+ run(Command::new(build_helper::make(host))
.current_dir(&build_dir)
.arg(format!("INCDIR={}", src_dir.display()))
.arg("-j").arg(env::var("NUM_JOBS").expect("NUM_JOBS was not set")));
diff --git a/src/test/run-pass/backtrace.rs b/src/test/run-pass/backtrace.rs
index c438c17f51e..75c665b04a1 100644
--- a/src/test/run-pass/backtrace.rs
+++ b/src/test/run-pass/backtrace.rs
@@ -10,6 +10,7 @@
// ignore-android FIXME #17520
// ignore-emscripten spawning processes is not supported
+// ignore-openbsd no support for libbacktrace without filename
// compile-flags:-g
use std::env;
diff --git a/src/tools/compiletest/src/runtest.rs b/src/tools/compiletest/src/runtest.rs
index 3cc14541fcd..94461cd8e07 100644
--- a/src/tools/compiletest/src/runtest.rs
+++ b/src/tools/compiletest/src/runtest.rs
@@ -2108,7 +2108,16 @@ actual:\n\
}
self.create_dir_racy(&tmpdir);
- let mut cmd = Command::new("make");
+ let host = &self.config.host;
+ let make = if host.contains("bitrig") || host.contains("dragonfly") ||
+ host.contains("freebsd") || host.contains("netbsd") ||
+ host.contains("openbsd") {
+ "gmake"
+ } else {
+ "make"
+ };
+
+ let mut cmd = Command::new(make);
cmd.current_dir(&self.testpaths.file)
.env("TARGET", &self.config.target)
.env("PYTHON", &self.config.docck_python)