gecko-dev/taskcluster/ci/toolchain/linux.yml

410 строки
12 KiB
YAML
Исходник Обычный вид История

# 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
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
linux64-clang-3.9:
description: "Clang 3.9 toolchain build"
treeherder:
kind: build
platform: toolchains/opt
symbol: TL(clang3.9)
tier: 1
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
docker-image: {in-tree: desktop-build}
max-run-time: 36000
run:
using: toolchain-script
script: build-clang-3.9-linux.sh
resources:
- 'build/build-clang/build-clang.py'
- 'build/build-clang/clang-3.9-linux64.json'
- 'taskcluster/scripts/misc/tooltool-download.sh'
toolchain-alias: linux64-clang
toolchain-artifact: public/build/clang.tar.xz
toolchains:
- linux64-gcc-4.9
linux64-clang-4:
description: "Clang 4 toolchain build"
treeherder:
kind: build
platform: toolchains/opt
symbol: TL(clang4)
tier: 1
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
docker-image: {in-tree: desktop-build}
max-run-time: 36000
run:
using: toolchain-script
script: build-clang-4-linux.sh
resources:
- 'build/build-clang/build-clang.py'
- 'build/build-clang/clang-4-linux64.json'
- 'taskcluster/scripts/misc/tooltool-download.sh'
toolchain-artifact: public/build/clang.tar.xz
toolchains:
- linux64-gcc-4.9
linux64-clang-tidy:
description: "Clang-tidy build"
index:
product: static-analysis
job-name: linux64-clang-tidy
treeherder:
kind: build
platform: toolchains/opt
symbol: TL(clang-tidy)
tier: 1
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
docker-image: {in-tree: desktop-build}
max-run-time: 36000
run:
using: toolchain-script
script: build-clang-tidy-linux.sh
resources:
- 'build/clang-plugin/**'
- 'build/build-clang/build-clang.py'
- 'build/build-clang/clang-tidy-linux64.json'
- 'taskcluster/scripts/misc/tooltool-download.sh'
toolchain-artifact: public/build/clang-tidy.tar.xz
toolchains:
- linux64-gcc-4.9
linux64-gcc-4.9:
description: "GCC 4.9 toolchain build"
treeherder:
kind: build
platform: toolchains/opt
symbol: TL(gcc4.9)
tier: 1
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
docker-image: {in-tree: desktop-build}
max-run-time: 36000
run:
using: toolchain-script
script: build-gcc-4.9-linux.sh
resources:
- 'build/unix/build-gcc/build-gcc.sh'
toolchain-artifact: public/build/gcc.tar.xz
linux64-gcc-6:
description: "GCC 6 toolchain build"
treeherder:
kind: build
platform: toolchains/opt
symbol: TL(gcc6)
tier: 1
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
docker-image: {in-tree: desktop-build}
max-run-time: 36000
run:
using: toolchain-script
script: build-gcc-6-linux.sh
resources:
- 'build/unix/build-gcc/build-gcc.sh'
toolchain-alias: linux64-gcc
toolchain-artifact: public/build/gcc.tar.xz
linux64-binutils:
description: "Binutils toolchain build"
treeherder:
kind: build
platform: toolchains/opt
symbol: TL(binutil)
tier: 1
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
docker-image: {in-tree: desktop-build}
max-run-time: 36000
run:
using: toolchain-script
script: build-binutils-linux.sh
resources:
- 'build/unix/build-binutils/build-binutils.sh'
toolchain-artifact: public/build/binutils.tar.xz
linux64-cctools-port:
description: "cctools-port toolchain build"
treeherder:
kind: build
platform: toolchains/opt
symbol: TL(cctools)
tier: 1
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
docker-image: {in-tree: desktop-build}
max-run-time: 36000
run:
using: toolchain-script
script: build-cctools-port.sh
resources:
- 'taskcluster/scripts/misc/tooltool-download.sh'
toolchain-artifact: public/build/cctools.tar.xz
toolchains:
- linux64-clang-3.9
linux64-hfsplus:
description: "hfsplus toolchain build"
treeherder:
kind: build
platform: toolchains/opt
symbol: TL(hfs+)
tier: 1
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
docker-image: {in-tree: desktop-build}
max-run-time: 36000
run:
using: toolchain-script
script: build-hfsplus-linux.sh
resources:
- 'build/unix/build-hfsplus/build-hfsplus.sh'
- 'taskcluster/scripts/misc/tooltool-download.sh'
toolchain-artifact: public/build/hfsplus-tools.tar.xz
toolchains:
- linux64-clang-3.9
linux64-libdmg:
description: "libdmg-hfsplus toolchain build"
treeherder:
kind: build
platform: toolchains/opt
symbol: TL(libdmg-hfs+)
tier: 1
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
docker-image: {in-tree: desktop-build}
max-run-time: 36000
run:
using: toolchain-script
script: build-libdmg-hfsplus.sh
toolchain-artifact: public/build/dmg.tar.xz
linux64-proguard-jar-repack:
description: "proguard.jar repack toolchain build"
treeherder:
kind: build
platform: toolchains/opt
symbol: TL(proguard-jar)
tier: 1
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
docker-image: {in-tree: desktop-build}
max-run-time: 36000
run:
using: toolchain-script
script: repack-proguard-jar.sh
toolchain-artifact: public/build/proguard-jar.tar.xz
toolchain-alias: proguard-jar
Bug 1391427 - Package upstream rust in taskcluster. r=glandium Add a toolchain job description which calls the repack_rust.py script to package the requested upstream build of Rust and its standard libraries for use in gecko builds. Links are added to these new toolchains for various build and analysis tasks as appropriate. The base-toolchain tasks use an explicitly-versioned toolchain since those can be different from the current release used for most builds. The corresponding tooltool manifest entries are removed now that taskcluster artifact versions are available. This simplifies the update process since new toolchains can be packaged and used automatically by just updating the versions in the task descriptions. A 'linux64-rust' toolchain can be added to other tasks as a dependency and artifact. It supports linux64- hosted builds of Rust code targeting linux64 or linux32. A 'linux64-rust-macos' toolchain targets linux64-hosted builds of Rust code targeting macOS on x86_64. A 'linux64-rust-android' toolchain targets linux64-hosted builds of Rust code targeting various Android architectures. Two 'win64-rust' and 'win32-rust' toolchain tasks create similar entries for Windows-hosted builds. All our automation builds are hosted on win64, so we could use one artifact with support for both targets, but currently this doesn't work because of cross-compilation issues in some crates. This patch maintains the previous separation between win32 and win64 rust toolchains until that can be addressed. MozReview-Commit-ID: GRiJml8CtzO --HG-- extra : rebase_source : 09a3698ce7f9a8b5f2b5d9b5a1fde9c05dc6b540
2017-09-13 02:30:19 +03:00
linux64-rust-1.19:
description: "rust repack"
treeherder:
kind: build
platform: toolchains/opt
symbol: TL(rust)
tier: 1
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
docker-image: {in-tree: desktop-build}
max-run-time: 7200
env:
UPLOAD_DIR: artifacts
run:
using: toolchain-script
script: repack_rust.py
arguments: [
'--channel', '1.19.0',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'i686-unknown-linux-gnu',
]
toolchain-alias: linux64-rust
toolchain-artifact: public/build/rustc.tar.xz
linux64-rust-macos-1.19:
description: "rust repack with macos-cross support"
treeherder:
kind: build
platform: toolchains/opt
symbol: TL(rust-macos)
tier: 1
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
docker-image: {in-tree: desktop-build}
max-run-time: 7200
env:
UPLOAD_DIR: artifacts
run:
using: toolchain-script
script: repack_rust.py
arguments: [
'--channel', '1.19.0',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-apple-darwin',
]
toolchain-alias: linux64-rust-macos
toolchain-artifact: public/build/rustc.tar.xz
linux64-rust-android-1.19:
description: "rust repack with android-cross support"
treeherder:
kind: build
platform: toolchains/opt
symbol: TL(rust-android)
tier: 1
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
docker-image: {in-tree: desktop-build}
max-run-time: 7200
env:
UPLOAD_DIR: artifacts
run:
using: toolchain-script
script: repack_rust.py
arguments: [
'--channel', '1.19.0',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'armv7-linux-androideabi',
'--target', 'aarch64-linux-android',
'--target', 'i686-linux-android',
]
toolchain-alias: linux64-rust-android
toolchain-artifact: public/build/rustc.tar.xz
linux64-sccache:
description: "sccache toolchain build"
treeherder:
kind: build
platform: toolchains/opt
symbol: TL(sccache)
tier: 1
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
docker-image: {in-tree: desktop-build}
max-run-time: 36000
run:
using: toolchain-script
script: build-sccache.sh
resources:
- 'taskcluster/scripts/misc/tooltool-download.sh'
toolchain-artifact: public/build/sccache2.tar.xz
toolchains:
- linux64-gcc-4.9
Bug 1391427 - Package upstream rust in taskcluster. r=glandium Add a toolchain job description which calls the repack_rust.py script to package the requested upstream build of Rust and its standard libraries for use in gecko builds. Links are added to these new toolchains for various build and analysis tasks as appropriate. The base-toolchain tasks use an explicitly-versioned toolchain since those can be different from the current release used for most builds. The corresponding tooltool manifest entries are removed now that taskcluster artifact versions are available. This simplifies the update process since new toolchains can be packaged and used automatically by just updating the versions in the task descriptions. A 'linux64-rust' toolchain can be added to other tasks as a dependency and artifact. It supports linux64- hosted builds of Rust code targeting linux64 or linux32. A 'linux64-rust-macos' toolchain targets linux64-hosted builds of Rust code targeting macOS on x86_64. A 'linux64-rust-android' toolchain targets linux64-hosted builds of Rust code targeting various Android architectures. Two 'win64-rust' and 'win32-rust' toolchain tasks create similar entries for Windows-hosted builds. All our automation builds are hosted on win64, so we could use one artifact with support for both targets, but currently this doesn't work because of cross-compilation issues in some crates. This patch maintains the previous separation between win32 and win64 rust toolchains until that can be addressed. MozReview-Commit-ID: GRiJml8CtzO --HG-- extra : rebase_source : 09a3698ce7f9a8b5f2b5d9b5a1fde9c05dc6b540
2017-09-13 02:30:19 +03:00
- linux64-rust-1.19
linux64-gn:
description: "gn toolchain build"
treeherder:
kind: build
platform: toolchains/opt
symbol: TL(gn)
tier: 1
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
docker-image: {in-tree: desktop-build}
max-run-time: 36000
run:
using: toolchain-script
script: build-gn-linux.sh
tooltool-downloads: public
resources:
- 'taskcluster/scripts/misc/tooltool-download.sh'
- 'taskcluster/scripts/misc/build-gn-common.sh'
toolchain-artifact: public/build/gn.tar.xz
toolchains:
- linux64-gcc-4.9
linux64-upx:
description: "UPX build for MinGW32 Cross Compile"
treeherder:
kind: build
platform: toolchains/opt
symbol: TMW(upx)
tier: 2
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
docker-image: {in-tree: desktop-build}
max-run-time: 3600
run:
using: toolchain-script
script: build-upx.sh
toolchain-artifact: public/build/upx.tar.xz
linux64-wine:
description: "Wine build for MinGW32 Cross Compile"
treeherder:
kind: build
platform: toolchains/opt
symbol: TMW(wine)
tier: 2
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
docker-image: {in-tree: desktop-build}
max-run-time: 10800
run:
using: toolchain-script
script: build-wine.sh
toolchain-artifact: public/build/wine.tar.xz
linux64-mingw32-gcc:
description: "GCC toolchain build for MinGW32 Cross Compile"
treeherder:
kind: build
platform: toolchains/opt
symbol: TMW(mingw32-gcc)
tier: 2
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
docker-image: {in-tree: desktop-build}
max-run-time: 10800
run:
using: toolchain-script
script: build-gcc-mingw32.sh
resources:
- 'build/unix/build-gcc/build-gcc.sh'
toolchain-artifact: public/build/mingw32.tar.xz
linux64-mingw32-nsis:
description: "NSIS build for MinGW32 Cross Compile"
treeherder:
kind: build
platform: toolchains/opt
symbol: TMW(mingw32-nsis)
tier: 2
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
docker-image: {in-tree: desktop-build}
max-run-time: 3600
run:
using: toolchain-script
script: build-mingw32-nsis.sh
toolchain-artifact: public/build/nsis.tar.xz
toolchains:
- linux64-mingw32-gcc
linux64-mingw32-fxc2:
description: "fxc2.exe build for MinGW32 Cross Compile"
treeherder:
kind: build
platform: toolchains/opt
symbol: TMW(mingw32-fxc2)
tier: 2
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
docker-image: {in-tree: desktop-build}
max-run-time: 1800
run:
using: toolchain-script
script: build-mingw32-fxc2.sh
toolchain-artifact: public/build/fxc2.tar.xz
toolchains:
- linux64-mingw32-gcc