Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow disabling LLVM assertions in rustc (fixes #15548) #15559

Merged
merged 2 commits into from Feb 15, 2017
Merged
Changes from 1 commit
Commits
File filter...
Filter file types
Jump to…
Jump to file
Failed to load files.

Always

Just for now

Prev

Allow disabling LLVM assertions in rustc (fixes #15548)

  • Loading branch information
nox authored and SimonSapin committed Feb 15, 2017
commit 57fd45a5c28e71e56c1f4c72260c80c92d4418dc
@@ -70,6 +70,8 @@ def bootstrap_rustc(self, force=False, target=[], stable=False):
rust_path = self.rust_path()
rust_dir = path.join(self.context.sharedir, "rust", rust_path)
install_dir = path.join(self.context.sharedir, "rust", version)
if not self.config["build"]["llvm-assertions"]:
install_dir += "-alt"

if not force and path.exists(path.join(rust_dir, "rustc", "bin", "rustc" + BIN_SUFFIX)):
print("Rust compiler already downloaded.", end=" ")
@@ -89,7 +91,10 @@ def bootstrap_rustc(self, force=False, target=[], stable=False):
rustc_url = "https://static-rust-lang-org.s3.amazonaws.com/dist/" + tarball
else:
tarball = "%s/rustc-nightly-%s.tar.gz" % (version, host_triple())
rustc_url = "https://s3.amazonaws.com/rust-lang-ci/rustc-builds/" + tarball
base_url = "https://s3.amazonaws.com/rust-lang-ci/rustc-builds"
if not self.config["build"]["llvm-assertions"]:
base_url += "-alt"
rustc_url = base_url + "/" + tarball
tgz_file = rust_dir + '-rustc.tar.gz'

download_file("Rust compiler", rustc_url, tgz_file)
@@ -258,7 +258,6 @@ def resolverelative(category, key):
self.config["tools"].setdefault("system-cargo", False)
self.config["tools"].setdefault("rust-root", "")
self.config["tools"].setdefault("cargo-root", "")
self.set_use_stable_rust(False)
if not self.config["tools"]["system-cargo"]:
self.config["tools"]["cargo-root"] = path.join(
context.sharedir, "cargo", self.cargo_build_id())
@@ -267,6 +266,7 @@ def resolverelative(category, key):
self.config.setdefault("build", {})
self.config["build"].setdefault("android", False)
self.config["build"].setdefault("mode", "")
self.config["build"].setdefault("llvm-assertions", True)
self.config["build"].setdefault("debug-mozjs", False)
self.config["build"].setdefault("ccache", "")
self.config["build"].setdefault("rustflags", "")
@@ -279,6 +279,8 @@ def resolverelative(category, key):
self.config["android"].setdefault("platform", "android-18")
self.config["android"].setdefault("target", "arm-linux-androideabi")

self.set_use_stable_rust(False)

_use_stable_rust = False
_rust_version = None
_rust_version_is_stable = False
@@ -297,8 +299,9 @@ def rust_path(self):
version = self.rust_version()
if self._use_stable_rust:
return os.path.join(version, "rustc-%s-%s" % (version, host_triple()))
else:
return os.path.join(version, "rustc-nightly-%s" % (host_triple()))
if not self.config["build"]["llvm-assertions"]:
version += "-alt"
return os.path.join(version, "rustc-nightly-%s" % (host_triple()))

def rust_version(self):
if self._rust_version is None or self._use_stable_rust != self._rust_version_is_stable:
@@ -39,6 +39,9 @@ rustc-with-gold = true
# Defaults to prompting before building
#mode = "dev"

# Whether to enable LLVM assertions in rustc.
#llvm-assertions = true

# Set "android = true" or use `mach build --android` to build the Android app.
android = false

ProTip! Use n and p to navigate between commits in a pull request.
You can’t perform that action at this time.