mirror of
https://github.com/servo/servo.git
synced 2025-06-06 16:45:39 +00:00
Allow disabling LLVM assertions in rustc (fixes #15548)
This commit is contained in:
parent
336e6c8f28
commit
57fd45a5c2
3 changed files with 15 additions and 4 deletions
|
@ -70,6 +70,8 @@ class MachCommands(CommandBase):
|
|||
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 @@ class MachCommands(CommandBase):
|
|||
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 @@ class CommandBase(object):
|
|||
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 @@ class CommandBase(object):
|
|||
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 @@ class CommandBase(object):
|
|||
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 @@ class CommandBase(object):
|
|||
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
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue