Commit graph

32 commits

Author SHA1 Message Date
Martin Robinson
16445983ec
Remove gold config option and use lld on Linux (#30100)
There are a few motivations for this change:

 1. lld is demonstrably faster than gold, but is really only stable on
    Linux at the moment. There's a good chance that it will be ready for
    all platforms soon though.
 2. Most people do not have gold installed on MacOS and Windows. You'd
    have to do this manually through homebrew. I think it's a safe
    assumption that this probably won't be slowing things down much on
    those platforms.
 3. We need to remove all configuration of the build that happens while
    running `./mach build` if we ever hope to make `cargo build`
    equivalent to the mach build. This unlocks static configuration of
    the rustflags. One of the big blockers for proper `cargo build`
    support.
2023-08-15 13:53:05 +00:00
Martin Robinson
fef332f385
Make rustup a requirement and switch to rust-toolchain.toml (#30056)
This change makes rustup a requirement for building Servo with `./mach`
and switches to the newer `rust-toolchain.toml` format. The goal here is
to make mach builds more similar to non-mach builds.

- The new format allows listing the required components, removing some of
  the complexity from our mach scripts.
- This means we must raise the required version of rustup to 1.23. The
  current version is 1.26.
- We no longer wrap every call to cargo and rustc in "rustup run" calls
  as both cargo and rustc will take care of installing and using all
  necessary components specified in `rust-toolchain.toml` when run
  inside the project directory.
2023-08-01 14:44:57 +00:00
Mukilan Thiyagarajan
8a46a4ee05 Use layout 2020 by default
Signed-off-by: Mukilan Thiyagarajan <me@mukilan.in>
2023-06-08 23:13:53 +05:30
Simon Sapin
1a8c5fed6f Add .servobuild configuration for the choice of media stack 2020-07-06 17:34:17 +02:00
Simon Sapin
d670b4420a Add layout-2020 option to the .servobuild file
… and `--with-layout-2013` command-line option to disable it.
2019-12-16 15:36:18 +01:00
Simon Sapin
c156bf2dd9 Add a .servobuild option for --with-debug-assertions 2019-11-26 16:36:24 +01:00
Josh Matthews
06bca43aee script: Optionally store backtraces when throwing DOM exceptions. 2018-10-01 16:04:56 +02:00
Simon Sapin
e790ee976e servobuild: remove obsolete comment 2018-01-16 14:39:30 +01:00
Simon Sapin
9ec53344f5 servobuild: comment some more on the default value 2018-01-16 14:39:01 +01:00
Simon Sapin
fe0d2866f1 Restore the ability to disable incremental compilation
It became the default in debug mode in the last Rust/Cargo update.
2018-01-14 01:38:37 +01:00
Simon Sapin
365a139716 Use rustup.rs instead of custom bootstrap
Fixes #11361, closes #18874
2018-01-10 18:05:44 +01:00
Simon Sapin
3264453284 Stop using "alternate" rustc builds.
With https://github.com/rust-lang/rust/pull/45810,
normal Nightly now has LLVM assertions disabled.
2017-11-14 09:08:11 +01:00
Anthony Ramine
d4933148d4 Update Rust to 1.22.0-nightly (a47c9f870 2017-10-11)
This allows us to start experimenting with -Z thinlto
2017-10-12 14:16:04 +02:00
Simon Sapin
bd8ec03740 Disable LLVM assertions by default, on supported platforms.
But keep them on linux-dev CI.
2017-02-16 08:38:14 +01:00
Anthony Ramine
57fd45a5c2 Allow disabling LLVM assertions in rustc (fixes #15548) 2017-02-15 14:55:02 +01:00
Simon Sapin
e273ecce4c Option configuration to enable incremental compilation.
https://internals.rust-lang.org/t/incremental-compilation-beta/4721
2017-02-05 14:45:00 +01:00
Simon Sapin
16d8c35be4 Add config to do desktop notifications by running an abitrary command. 2017-01-13 20:47:54 +01:00
Vladimir Vukicevic
a82be9ffb4 Support build.rustflags in .servobuild 2016-11-21 09:25:31 -05:00
Lars Bergstrom
02c7e06d54 Remove the gonk port 2016-05-27 19:33:43 -05:00
Mitchell Hentges
619212abf3 Reduce 'android-18' duplication, as originally done by wenderen
Use android.platform (and $ANDROID_PLATFORM) for configuration, apply 'android-18' default
2016-05-20 22:23:28 +02:00
Simon Sapin
b2af8567fa Rename rust-snapshot-hash to rust-nightly-date
… and remove mentions of "snapshots".

We now use rust-lang.org nightly builds rather than our own snapshots.
2015-12-30 13:36:47 +00:00
Lars Bergstrom
5c5acc0249 Add CCACHE infra and turn it on in travis 2015-11-05 14:47:23 -06:00
Akos Kiss
9afa930728 Make the use of gold linker configurable
Currently, ld.gold is always used for linking if found on the
system. There are some cases however when one may want to opt out
from using it. This patch adds the boolean field `rustc-with-gold`
to the `[tools]` section of `.servobuild`, which if set false,
disables the use of ld.gold.
2015-09-08 17:10:46 +00:00
Kinder Sung
bdb2485807 Fix typos in servobuild.example 2015-08-23 12:21:43 +08:00
Sumith
0e657b2569 Entries in servobuild.example file
Entries in the servobuild.example file that are not defaults were
commented out, defaults were mentioned in comments
2015-06-13 03:34:54 +05:30
Jinank Jain
c98d55fe28 Add --dev option to mach build
Require either --dev or --release, unless a default build.mode is set
in .servobuild.  Fixes #5933.
2015-05-13 09:25:43 -07:00
Manish Goregaokar
cfdad335bd Add support for $CARGO_HOME in servobuild 2015-03-08 01:34:38 +05:30
Manish Goregaokar
5b3868089e Add ./mach build-gonk command 2015-02-21 09:42:47 +05:30
Matt Brubeck
53135b2566 Move snapshot dir inside the source dir by default
This avoids changing any directories outside the repo, which is better for
some automation scenarios.

The servobuild.example file has a "cache-dir" setting that restores the
previous default location of `~/.servo`, which is useful for developers
working with multiple clones on the same machine.
2015-01-28 10:33:04 -08:00
Fabrice Desré
8eb4844174 Issue #3804 : Allow enabling debug-mozjs from servobuild config 2014-11-06 22:47:02 -08:00
Matt Brubeck
b736256d53 Add Android build config to mach/servobuild 2014-10-03 14:29:54 -07:00
Jack Moffitt
c6ab60dbfc Cargoify servo 2014-09-08 20:21:42 -06:00