xref: /aosp_15_r20/external/cronet/build/config/siso/clang_all.star (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1*6777b538SAndroid Build Coastguard Worker# -*- bazel-starlark -*-
2*6777b538SAndroid Build Coastguard Worker# Copyright 2023 The Chromium Authors
3*6777b538SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be
4*6777b538SAndroid Build Coastguard Worker# found in the LICENSE file.
5*6777b538SAndroid Build Coastguard Worker"""Siso configuration for clang."""
6*6777b538SAndroid Build Coastguard Worker
7*6777b538SAndroid Build Coastguard Workerload("@builtin//struct.star", "module")
8*6777b538SAndroid Build Coastguard Worker
9*6777b538SAndroid Build Coastguard Workerdef __filegroups(ctx):
10*6777b538SAndroid Build Coastguard Worker    return {
11*6777b538SAndroid Build Coastguard Worker        "third_party/libc++/src/include:headers": {
12*6777b538SAndroid Build Coastguard Worker            "type": "glob",
13*6777b538SAndroid Build Coastguard Worker            "includes": ["*"],
14*6777b538SAndroid Build Coastguard Worker            # can't use "*.h", because c++ headers have no extension.
15*6777b538SAndroid Build Coastguard Worker        },
16*6777b538SAndroid Build Coastguard Worker        "third_party/libc++abi/src/include:headers": {
17*6777b538SAndroid Build Coastguard Worker            "type": "glob",
18*6777b538SAndroid Build Coastguard Worker            "includes": ["*.h"],
19*6777b538SAndroid Build Coastguard Worker        },
20*6777b538SAndroid Build Coastguard Worker        # vendor provided headers for libc++.
21*6777b538SAndroid Build Coastguard Worker        "buildtools/third_party/libc++:headers": {
22*6777b538SAndroid Build Coastguard Worker            "type": "glob",
23*6777b538SAndroid Build Coastguard Worker            "includes": ["__*"],
24*6777b538SAndroid Build Coastguard Worker        },
25*6777b538SAndroid Build Coastguard Worker
26*6777b538SAndroid Build Coastguard Worker        # toolchain root
27*6777b538SAndroid Build Coastguard Worker        # :headers for compiling
28*6777b538SAndroid Build Coastguard Worker        "third_party/llvm-build/Release+Asserts:headers": {
29*6777b538SAndroid Build Coastguard Worker            "type": "glob",
30*6777b538SAndroid Build Coastguard Worker            "includes": [
31*6777b538SAndroid Build Coastguard Worker                "*.h",
32*6777b538SAndroid Build Coastguard Worker                "bin/clang",
33*6777b538SAndroid Build Coastguard Worker                "bin/clang++",
34*6777b538SAndroid Build Coastguard Worker                "bin/clang-cl.exe",
35*6777b538SAndroid Build Coastguard Worker                "*_ignorelist.txt",
36*6777b538SAndroid Build Coastguard Worker            ],
37*6777b538SAndroid Build Coastguard Worker        },
38*6777b538SAndroid Build Coastguard Worker    }
39*6777b538SAndroid Build Coastguard Worker
40*6777b538SAndroid Build Coastguard Worker__input_deps = {
41*6777b538SAndroid Build Coastguard Worker    # need this because we use
42*6777b538SAndroid Build Coastguard Worker    # third_party/libc++/src/include:headers,
43*6777b538SAndroid Build Coastguard Worker    # but scandeps doesn't scan `__config` file, which uses
44*6777b538SAndroid Build Coastguard Worker    # `#include <__config_site>`
45*6777b538SAndroid Build Coastguard Worker    # also need `__assertion_handler`. b/321171148
46*6777b538SAndroid Build Coastguard Worker    "third_party/libc++/src/include": [
47*6777b538SAndroid Build Coastguard Worker        "buildtools/third_party/libc++:headers",
48*6777b538SAndroid Build Coastguard Worker    ],
49*6777b538SAndroid Build Coastguard Worker    "third_party/llvm-build/Release+Asserts/bin/clang": [
50*6777b538SAndroid Build Coastguard Worker        "build/config/unsafe_buffers_paths.txt",
51*6777b538SAndroid Build Coastguard Worker    ],
52*6777b538SAndroid Build Coastguard Worker    "third_party/llvm-build/Release+Asserts/bin/clang++": [
53*6777b538SAndroid Build Coastguard Worker        "build/config/unsafe_buffers_paths.txt",
54*6777b538SAndroid Build Coastguard Worker    ],
55*6777b538SAndroid Build Coastguard Worker    "third_party/llvm-build/Release+Asserts/bin/clang-cl": [
56*6777b538SAndroid Build Coastguard Worker        "build/config/unsafe_buffers_paths.txt",
57*6777b538SAndroid Build Coastguard Worker    ],
58*6777b538SAndroid Build Coastguard Worker    "third_party/llvm-build/Release+Asserts/bin/clang-cl.exe": [
59*6777b538SAndroid Build Coastguard Worker        "build/config/unsafe_buffers_paths.txt",
60*6777b538SAndroid Build Coastguard Worker    ],
61*6777b538SAndroid Build Coastguard Worker}
62*6777b538SAndroid Build Coastguard Worker
63*6777b538SAndroid Build Coastguard Workerclang_all = module(
64*6777b538SAndroid Build Coastguard Worker    "clang_all",
65*6777b538SAndroid Build Coastguard Worker    filegroups = __filegroups,
66*6777b538SAndroid Build Coastguard Worker    input_deps = __input_deps,
67*6777b538SAndroid Build Coastguard Worker)
68