Bug 1790918 - Set the default compiler to clang-trunk on the toolchains repository. r=taskgraph-reviewers,aki

Differential Revision: https://phabricator.services.mozilla.com/D157379
This commit is contained in:
Mike Hommey 2022-09-15 20:27:55 +00:00
Родитель ef80532ec8
Коммит dd3d1bd73e
3 изменённых файлов: 86 добавлений и 13 удалений

Просмотреть файл

@ -41,7 +41,10 @@ linux64-clang-14-mingw-x86:
script: build-clang-mingw.sh
arguments:
- 'x86'
toolchain-alias: linux64-clang-mingw-x86
toolchain-alias:
by-project:
toolchains: null
default: linux64-clang-mingw-x86
toolchain-artifact: public/build/clangmingw.tar.zst
fetches:
fetch:
@ -62,7 +65,10 @@ linux64-clang-14-mingw-x64:
script: build-clang-mingw.sh
arguments:
- 'x64'
toolchain-alias: linux64-clang-mingw-x64
toolchain-alias:
by-project:
toolchains: null
default: linux64-clang-mingw-x64
toolchain-artifact: public/build/clangmingw.tar.zst
fetches:
fetch:
@ -89,7 +95,9 @@ linux64-clang-14-stage1:
- 'build/build-clang/clang-14.json'
- 'build/build-clang/1stage.json'
toolchain-alias:
- linux64-clang-toolchain
by-project:
toolchains: null
default: linux64-clang-toolchain
toolchain-artifact: public/build/clang.tar.zst
fetches:
fetch:
@ -160,7 +168,9 @@ linux64-clang-14:
run:
script: repack-clang.sh
toolchain-alias:
- linux64-clang
by-project:
toolchains: null
default: linux64-clang
toolchain-artifact: public/build/clang.tar.zst
fetches:
toolchain:
@ -221,8 +231,11 @@ macosx64-clang-14:
run:
script: repack-clang.sh
toolchain-alias:
- macosx64-clang
- macosx64-clang-toolchain
by-project:
toolchains: null
default:
- macosx64-clang
- macosx64-clang-toolchain
toolchain-artifact: public/build/clang.tar.zst
fetches:
toolchain:
@ -284,7 +297,10 @@ macosx64-aarch64-clang-14:
max-run-time: 600
run:
script: repack-clang.sh
toolchain-alias: macosx64-aarch64-clang
toolchain-alias:
by-project:
toolchains: null
default: macosx64-aarch64-clang
toolchain-artifact: public/build/clang.tar.zst
fetches:
toolchain:
@ -318,7 +334,10 @@ win64-clang-14-stage1:
- 'build/build-clang/win64.json'
- 'build/build-clang/clang-14.json'
- 'build/build-clang/1stage.json'
toolchain-alias: win64-clang-toolchain
toolchain-alias:
by-project:
toolchains: null
default: win64-clang-toolchain
toolchain-artifact: public/build/clang.tar.zst
fetches:
fetch:
@ -369,7 +388,10 @@ win64-clang-14:
max-run-time: 600
run:
script: repack-clang.sh
toolchain-alias: win64-clang
toolchain-alias:
by-project:
toolchains: null
default: win64-clang
toolchain-artifact: public/build/clang.tar.zst
fetches:
toolchain:
@ -399,6 +421,10 @@ linux64-clang-trunk-mingw-x86:
script: build-clang-mingw.sh
arguments:
- 'x86'
toolchain-alias:
by-project:
toolchains: linux64-clang-mingw-x86
default: null
toolchain-artifact: public/build/clangmingw.tar.zst
fetches:
fetch:
@ -421,6 +447,10 @@ linux64-clang-trunk-mingw-x64:
script: build-clang-mingw.sh
arguments:
- 'x64'
toolchain-alias:
by-project:
toolchains: linux64-clang-mingw-x64
default: null
toolchain-artifact: public/build/clangmingw.tar.zst
fetches:
fetch:
@ -448,6 +478,10 @@ linux64-clang-trunk-stage1:
- 'build/build-clang/linux64.json'
- 'build/build-clang/clang-trunk.json'
- 'build/build-clang/1stage.json'
toolchain-alias:
by-project:
toolchains: linux64-clang-toolchain
default: null
toolchain-artifact: public/build/clang.tar.zst
fetches:
fetch:
@ -521,6 +555,10 @@ linux64-clang-trunk:
max-run-time: 600
run:
script: repack-clang.sh
toolchain-alias:
by-project:
toolchains: linux64-clang
default: null
toolchain-artifact: public/build/clang.tar.zst
fetches:
toolchain:
@ -582,6 +620,12 @@ macosx64-clang-trunk:
max-run-time: 600
run:
script: repack-clang.sh
toolchain-alias:
by-project:
toolchains:
- macosx64-clang
- macosx64-clang-toolchain
default: null
toolchain-artifact: public/build/clang.tar.zst
fetches:
toolchain:
@ -645,6 +689,10 @@ macosx64-aarch64-clang-trunk:
max-run-time: 600
run:
script: repack-clang.sh
toolchain-alias:
by-project:
toolchains: macosx64-aarch64-clang
default: null
toolchain-artifact: public/build/clang.tar.zst
fetches:
toolchain:
@ -680,6 +728,10 @@ win64-clang-trunk-stage1:
- 'build/build-clang/win64.json'
- 'build/build-clang/clang-trunk.json'
- 'build/build-clang/1stage.json'
toolchain-alias:
by-project:
toolchains: win64-clang-toolchain
default: null
toolchain-artifact: public/build/clang.tar.zst
fetches:
fetch:
@ -732,6 +784,10 @@ win64-clang-trunk:
max-run-time: 600
run:
script: repack-clang.sh
toolchain-alias:
by-project:
toolchains: win64-clang
default: null
toolchain-artifact: public/build/clang.tar.zst
fetches:
toolchain:

Просмотреть файл

@ -72,12 +72,22 @@ def cache_task(config, tasks):
for p in task.get("dependencies", {}).values():
if p in digests:
dependency_digests.append(digests[p])
elif config.params["project"] == "toolchains":
# The toolchains repository uses non-cached toolchain artifacts. Allow
# tasks to use them.
cache = None
break
else:
raise Exception(
"Cached task {} has uncached parent task: {}".format(
task["label"], p
)
)
if cache is None:
yield task
continue
digest_data = cache["digest-data"] + sorted(dependency_digests)
add_optimization(
config,

Просмотреть файл

@ -9,7 +9,7 @@ Support for running toolchain-building jobs via dedicated scripts
import taskgraph
from mozbuild.shellutil import quote as shell_quote
from taskgraph.util.schema import Schema
from taskgraph.util.schema import Schema, optionally_keyed_by, resolve_keyed_by
from voluptuous import Optional, Required, Any
from gecko_taskgraph.transforms.job import (
@ -61,7 +61,7 @@ toolchain_run_schema = Schema(
"toolchain-alias",
description="An alias that can be used instead of the real toolchain job name in "
"fetch stanzas for jobs.",
): Any(str, [str]),
): optionally_keyed_by("project", Any(None, str, [str])),
Optional(
"toolchain-env",
description="Additional env variables to add to the worker when using this toolchain",
@ -149,8 +149,15 @@ def common_toolchain(config, job, taskdesc, is_docker):
attributes = taskdesc.setdefault("attributes", {})
attributes["toolchain-artifact"] = run.pop("toolchain-artifact")
if "toolchain-alias" in run:
attributes["toolchain-alias"] = run.pop("toolchain-alias")
resolve_keyed_by(
run,
"toolchain-alias",
item_name=taskdesc["label"],
project=config.params["project"],
)
alias = run.pop("toolchain-alias", None)
if alias:
attributes["toolchain-alias"] = alias
if "toolchain-env" in run:
attributes["toolchain-env"] = run.pop("toolchain-env")