Skip to content

Updating the Rust compiler used by Servo

Lars Bergstrom edited this page Jun 11, 2014 · 22 revisions

The Rust compiler is prebuilt for Servo, targeting our main host platforms (OSX and Linux), each targeting both the native host platform and Android.

Prebuilding a Rust compiler

A special TravisCI integration is connected to our fork of Rust, in the travis branch. It will automatically build on OSX and Linux and then deploy that build to an S3 bucket corresponding to the git SHA of the head commit.

To create a new cached Rust compiler:

  1. Fetch the latest upstream changes
git fetch upstream
  1. Create a branch with the hash of the Rust commit you are interested in:
git checkout -b travis 0935beba717bf6d3b54ad1b2eace359dea5dfca0
  1. Cherry-pick the commit containing the .travis.yml changes (held in the mozilla-servo/rust CI branch):
git cherry-pick 78aa1af4b90968cc0df81b57377937fb7e4370ef
  1. Update the travis branch on mozilla-servo/rust to generate a new build:
git push -f origin travis

The TravisCI infrastructure should now automatically start building the Rust compiler in all appropriate configurations. You can track it at: https://travis-ci.org/mozilla-servo/rust

Updating the Rust compiler version used in Servo

Once a build has been uploaded, the SHA of the head commit from our Rust fork needs to be entered into the file src/compiler/rust/compiler-version. A subsequent run of the configure script will pull down the new compiler from our S3 bucket and use that instead of the old one.

Clone this wiki locally