• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# -*- bazel-starlark -*-
2# Copyright 2023 The Chromium Authors
3# Use of this source code is governed by a BSD-style license that can be
4# found in the LICENSE file.
5"""Siso configuration for linux."""
6
7load("@builtin//struct.star", "module")
8load("./android.star", "android")
9load("./clang_linux.star", "clang")
10load("./config.star", "config")
11load("./cros.star", "cros")
12load("./devtools_frontend.star", "devtools_frontend")
13load("./nacl_linux.star", "nacl")
14load("./nasm_linux.star", "nasm")
15load("./proto_linux.star", "proto")
16load("./reproxy.star", "reproxy")
17load("./rust_linux.star", "rust")
18load("./typescript_unix.star", "typescript")
19
20def __filegroups(ctx):
21    fg = {}
22    fg.update(android.filegroups(ctx))
23    fg.update(clang.filegroups(ctx))
24    fg.update(cros.filegroups(ctx))
25    fg.update(devtools_frontend.filegroups(ctx))
26    fg.update(nacl.filegroups(ctx))
27    fg.update(nasm.filegroups(ctx))
28    fg.update(proto.filegroups(ctx))
29    fg.update(rust.filegroups(ctx))
30    fg.update(typescript.filegroups(ctx))
31    return fg
32
33__handlers = {}
34__handlers.update(android.handlers)
35__handlers.update(clang.handlers)
36__handlers.update(cros.handlers)
37__handlers.update(devtools_frontend.handlers)
38__handlers.update(nacl.handlers)
39__handlers.update(nasm.handlers)
40__handlers.update(proto.handlers)
41__handlers.update(rust.handlers)
42__handlers.update(typescript.handlers)
43
44def __step_config(ctx, step_config):
45    config.check(ctx)
46
47    if android.enabled(ctx):
48        step_config = android.step_config(ctx, step_config)
49
50    step_config = clang.step_config(ctx, step_config)
51    step_config = cros.step_config(ctx, step_config)
52    step_config = devtools_frontend.step_config(ctx, step_config)
53    step_config = nacl.step_config(ctx, step_config)
54    step_config = nasm.step_config(ctx, step_config)
55    step_config = proto.step_config(ctx, step_config)
56    step_config = rust.step_config(ctx, step_config)
57    step_config = typescript.step_config(ctx, step_config)
58
59    return step_config
60
61chromium = module(
62    "chromium",
63    step_config = __step_config,
64    filegroups = __filegroups,
65    handlers = __handlers,
66)
67