Source code
Revision control
Copy as Markdown
Other Tools
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
---
task-defaults:
description: "rust repack"
worker-type: b-linux-gcp
worker:
max-run-time: 7200
run:
script: repack_rust.py
toolchain-artifact: public/build/rustc.tar.zst
linux64-rust-1.76:
treeherder:
symbol: TL(rust-1.76)
run:
arguments: [
'--channel', '1.76.0',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'i686-unknown-linux-gnu',
'--target', 'wasm32-wasi',
]
toolchain-alias:
- linux64-rust-base
- linux64-rust-toolchain
linux64-rust-macos-1.76:
description: "rust repack with macos-cross support"
treeherder:
symbol: TL(rust-macos-1.76)
run:
arguments: [
'--channel', '1.76.0',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-apple-darwin',
'--target', 'aarch64-apple-darwin',
]
toolchain-alias: linux64-rust-macos-toolchain
linux64-rust-windows-1.76:
description: "rust repack with windows-cross support"
treeherder:
symbol: TL(rust-win-1.76)
run:
arguments: [
'--channel', '1.76.0',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-pc-windows-msvc',
'--target', 'i686-pc-windows-msvc',
]
toolchain-alias: linux64-rust-windows-toolchain
linux64-rust-1.81:
treeherder:
symbol: TL(rust)
run:
arguments: [
'--channel', '1.81.0',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'i686-unknown-linux-gnu',
'--target', 'aarch64-unknown-linux-gnu',
'--target', 'wasm32-wasi',
]
toolchain-alias:
by-project:
toolchains: null
default: linux64-rust
# A patched rust toolchain that allows us to use sanitizers in our vendored
# build environment. See the rust fetch's comments for more details.
linux64-rust-1.81-dev:
description: "build rust from source"
worker-type: b-linux-large-gcp
treeherder:
symbol: TL(rust-dev)
worker:
env:
RUSTFLAGS_BOOTSTRAP: '-Clink-arg=-Wl,--undefined-version'
RUSTFLAGS_NOT_BOOTSTRAP: '-Clink-arg=-Wl,--undefined-version'
run:
arguments: [
'--patch', 'rust-vendor-std.patch',
'--patch', 'src/tools/cargo:cargo-vendor-std-1.79.patch',
'--channel', 'dev',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
]
resources:
- build/build-rust/rust-vendor-std.patch
- build/build-rust/cargo-vendor-std-1.79.patch
toolchain-alias:
by-project:
toolchains: null
default: linux64-rust-dev
fetches:
fetch:
- rust-1.81.0
toolchain:
- linux64-clang-toolchain
- linux64-toolchain-sysroot
linux64-rust-cross-1.81:
description: "rust repack with macos and windows cross support"
treeherder:
symbol: TL(rust-cross)
run:
arguments: [
'--channel', '1.81.0',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'i686-unknown-linux-gnu',
'--target', 'x86_64-apple-darwin',
'--target', 'aarch64-apple-darwin',
'--target', 'x86_64-pc-windows-msvc',
'--target', 'i686-pc-windows-msvc',
'--target', 'aarch64-pc-windows-msvc',
'--target', 'armv7-linux-androideabi',
'--target', 'thumbv7neon-linux-androideabi',
'--target', 'aarch64-linux-android',
'--target', 'i686-linux-android',
'--target', 'x86_64-linux-android',
]
toolchain-alias:
by-project:
toolchains: null
default: linux64-rust-cross
linux64-rust-static-1.81:
description: "rust repack with static linking support"
treeherder:
symbol: TL(rust-static)
run:
arguments: [
'--channel', '1.81.0',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'aarch64-unknown-linux-musl',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-musl',
'--target', 'i686-unknown-linux-gnu',
'--target', 'i686-unknown-linux-musl',
]
toolchain-alias:
by-project:
toolchains: null
default: linux64-rust-static
linux64-rust-macos-1.81:
description: "rust repack with macos-cross support"
treeherder:
symbol: TL(rust-macos)
run:
arguments: [
'--channel', '1.81.0',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-apple-darwin',
'--target', 'aarch64-apple-darwin',
]
toolchain-alias:
by-project:
toolchains: null
default: linux64-rust-macos
linux64-rust-ios-1.81:
description: "rust repack with ios-cross support"
treeherder:
symbol: TL(rust-ios)
run:
arguments: [
'--channel', '1.81.0',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'aarch64-apple-ios',
'--target', 'aarch64-apple-ios-sim',
]
toolchain-alias:
by-project:
toolchains: null
default: linux64-rust-ios
linux64-rust-android-1.81:
description: "rust repack with android-cross support"
treeherder:
symbol: TL(rust-android)
run:
arguments: [
'--channel', '1.81.0',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'armv7-linux-androideabi',
'--target', 'thumbv7neon-linux-androideabi',
'--target', 'aarch64-linux-android',
'--target', 'i686-linux-android',
'--target', 'x86_64-linux-android',
]
toolchain-alias:
by-project:
toolchains: null
default: linux64-rust-android
linux64-rust-windows-1.81:
description: "rust repack with windows-cross support"
treeherder:
symbol: TL(rust-win)
run:
arguments: [
'--channel', '1.81.0',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-pc-windows-msvc',
'--target', 'i686-pc-windows-msvc',
'--target', 'aarch64-pc-windows-msvc',
]
toolchain-alias:
by-project:
toolchains: null
default: linux64-rust-windows
win64-rust-1.81:
treeherder:
symbol: TW64(rust)
run:
arguments: [
'--channel', '1.81.0',
'--host', 'x86_64-pc-windows-msvc',
'--target', 'x86_64-pc-windows-msvc',
'--target', 'i686-pc-windows-msvc',
'--target', 'aarch64-pc-windows-msvc',
]
toolchain-alias:
by-project:
toolchains: null
default: win64-rust
macosx64-rust-1.81:
treeherder:
symbol: TM(rust)
run:
arguments: [
'--channel', '1.81.0',
'--host', 'x86_64-apple-darwin',
'--target', 'x86_64-apple-darwin',
]
toolchain-alias:
by-project:
toolchains: null
default: macosx64-rust
mingw32-rust-1.81:
treeherder:
symbol: TMW(rust)
run:
arguments: [
'--channel', '1.81.0',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'i686-unknown-linux-gnu',
'--target', 'i686-pc-windows-gnu',
'--target', 'x86_64-pc-windows-gnu',
'--target', 'x86_64-unknown-linux-gnu',
]
toolchain-alias:
by-project:
toolchains: null
default: mingw32-rust
linux64-rust-nightly:
attributes:
cached_task: false
treeherder:
symbol: TL(rust-nightly)
run:
arguments: [
'--channel', 'nightly', '--allow-generic-channel',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'i686-unknown-linux-gnu',
'--target', 'aarch64-unknown-linux-gnu',
'--target', 'wasm32-wasi',
]
toolchain-alias:
by-project:
toolchains: linux64-rust
default: null
# A patched rust toolchain that allows us to use sanitizers in our vendored
# build environment. See the rust fetch's comments for more details.
linux64-rust-nightly-dev:
attributes:
cached_task: false
description: "build rust from source"
worker-type: b-linux-large-gcp
treeherder:
symbol: TL(rust-dev-nightly)
worker:
env:
RUSTFLAGS_BOOTSTRAP: '-Clink-arg=-Wl,--undefined-version'
RUSTFLAGS_NOT_BOOTSTRAP: '-Clink-arg=-Wl,--undefined-version'
run:
arguments: [
'--patch', 'rust-vendor-std.patch',
'--patch', 'src/tools/cargo:cargo-vendor-std-1.79.patch',
'--channel', 'dev',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
]
resources:
- build/build-rust/rust-vendor-std.patch
- build/build-rust/cargo-vendor-std-1.79.patch
toolchain-alias:
by-project:
toolchains: linux64-rust-dev
default: null
fetches:
fetch:
- rust-nightly
toolchain:
- linux64-clang-toolchain
- linux64-toolchain-sysroot
linux64-rust-cross-nightly:
attributes:
cached_task: false
description: "rust repack with macos and windows cross support"
treeherder:
symbol: TL(rust-cross-nightly)
run:
arguments: [
'--channel', 'nightly', '--allow-generic-channel',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'i686-unknown-linux-gnu',
'--target', 'x86_64-apple-darwin',
'--target', 'aarch64-apple-darwin',
'--target', 'x86_64-pc-windows-msvc',
'--target', 'i686-pc-windows-msvc',
'--target', 'aarch64-pc-windows-msvc',
'--target', 'armv7-linux-androideabi',
'--target', 'thumbv7neon-linux-androideabi',
'--target', 'aarch64-linux-android',
'--target', 'i686-linux-android',
'--target', 'x86_64-linux-android',
]
toolchain-alias:
by-project:
toolchains: linux64-rust-cross
default: null
linux64-rust-static-nightly:
attributes:
cached_task: false
description: "rust repack with static linking support"
treeherder:
symbol: TL(rust-static-nightly)
run:
arguments: [
'--channel', 'nightly', '--allow-generic-channel',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'aarch64-unknown-linux-musl',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-musl',
'--target', 'i686-unknown-linux-gnu',
'--target', 'i686-unknown-linux-musl',
]
toolchain-alias:
by-project:
toolchains: linux64-rust-static
default: null
linux64-rust-macos-nightly:
attributes:
cached_task: false
description: "rust repack with macos-cross support"
treeherder:
symbol: TL(rust-macos-nightly)
run:
arguments: [
'--channel', 'nightly', '--allow-generic-channel',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-apple-darwin',
'--target', 'aarch64-apple-darwin',
]
toolchain-alias:
by-project:
toolchains: linux64-rust-macos
default: null
linux64-rust-ios-nightly:
attributes:
cached_task: false
description: "rust repack with ios-cross support"
treeherder:
symbol: TL(rust-ios-nightly)
run:
arguments: [
'--channel', 'nightly', '--allow-generic-channel',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'aarch64-apple-ios',
'--target', 'aarch64-apple-ios-sim',
]
toolchain-alias:
by-project:
toolchains: linux64-rust-ios
default: null
linux64-rust-android-nightly:
attributes:
cached_task: false
description: "rust repack with android-cross support"
treeherder:
symbol: TL(rust-android-nightly)
run:
arguments: [
'--channel', 'nightly', '--allow-generic-channel',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'armv7-linux-androideabi',
'--target', 'thumbv7neon-linux-androideabi',
'--target', 'aarch64-linux-android',
'--target', 'i686-linux-android',
'--target', 'x86_64-linux-android',
]
toolchain-alias:
by-project:
toolchains: linux64-rust-android
default: null
linux64-rust-windows-nightly:
attributes:
cached_task: false
description: "rust repack with windows-cross support"
treeherder:
symbol: TL(rust-win-nightly)
run:
arguments: [
'--channel', 'nightly', '--allow-generic-channel',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-pc-windows-msvc',
'--target', 'i686-pc-windows-msvc',
'--target', 'aarch64-pc-windows-msvc',
]
toolchain-alias:
by-project:
toolchains: linux64-rust-windows
default: null
win64-rust-nightly:
attributes:
cached_task: false
treeherder:
symbol: TW64(rust-nightly)
run:
arguments: [
'--channel', 'nightly', '--allow-generic-channel',
'--host', 'x86_64-pc-windows-msvc',
'--target', 'x86_64-pc-windows-msvc',
'--target', 'i686-pc-windows-msvc',
'--target', 'aarch64-pc-windows-msvc',
]
toolchain-alias:
by-project:
toolchains: win64-rust
default: null
macosx64-rust-nightly:
attributes:
cached_task: false
treeherder:
symbol: TM(rust-nightly)
run:
arguments: [
'--channel', 'nightly', '--allow-generic-channel',
'--host', 'x86_64-apple-darwin',
'--target', 'x86_64-apple-darwin',
]
toolchain-alias:
by-project:
toolchains: macosx64-rust
default: null
mingw32-rust-nightly:
attributes:
cached_task: false
treeherder:
symbol: TMW(rust-nightly)
run:
arguments: [
'--channel', 'nightly', '--allow-generic-channel',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'i686-unknown-linux-gnu',
'--target', 'i686-pc-windows-gnu',
'--target', 'x86_64-pc-windows-gnu',
'--target', 'x86_64-unknown-linux-gnu',
]
toolchain-alias:
by-project:
toolchains: mingw32-rust
default: null
# Searchfox uses Rust 1.82.0-beta.5 to index all vendored crates.
# Revert this to use stable once 1.82.0 is released.
linux64-rust-searchfox:
treeherder:
symbol: TL(rust-searchfox)
run:
arguments: [
'--channel', '1.82.0-beta.5',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'aarch64-linux-android',
'--target', 'x86_64-apple-darwin',
'--target', 'aarch64-apple-darwin',
'--target', 'aarch64-apple-ios',
'--target', 'x86_64-pc-windows-msvc',
]