xref: /aosp_15_r20/external/pigweed/BUILD.bazel (revision 61c4878ac05f98d0ceed94b57d316916de578985)
1*61c4878aSAndroid Build Coastguard Worker# Copyright 2019 The Pigweed Authors
2*61c4878aSAndroid Build Coastguard Worker#
3*61c4878aSAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License"); you may not
4*61c4878aSAndroid Build Coastguard Worker# use this file except in compliance with the License. You may obtain a copy of
5*61c4878aSAndroid Build Coastguard Worker# the License at
6*61c4878aSAndroid Build Coastguard Worker#
7*61c4878aSAndroid Build Coastguard Worker#     https://www.apache.org/licenses/LICENSE-2.0
8*61c4878aSAndroid Build Coastguard Worker#
9*61c4878aSAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software
10*61c4878aSAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11*61c4878aSAndroid Build Coastguard Worker# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12*61c4878aSAndroid Build Coastguard Worker# License for the specific language governing permissions and limitations under
13*61c4878aSAndroid Build Coastguard Worker# the License.
14*61c4878aSAndroid Build Coastguard Workerload("@bazel_skylib//rules:copy_file.bzl", "copy_file")
15*61c4878aSAndroid Build Coastguard Workerload("@hedron_compile_commands//:refresh_compile_commands.bzl", "refresh_compile_commands")
16*61c4878aSAndroid Build Coastguard Worker
17*61c4878aSAndroid Build Coastguard Workerlicenses(["notice"])
18*61c4878aSAndroid Build Coastguard Worker
19*61c4878aSAndroid Build Coastguard Worker# Needed for releasing //pw_bluetooth_sapphire/fuchsia/bt_host.
20*61c4878aSAndroid Build Coastguard Workerexports_files(
21*61c4878aSAndroid Build Coastguard Worker    ["LICENSE"],
22*61c4878aSAndroid Build Coastguard Worker    visibility = [":__subpackages__"],
23*61c4878aSAndroid Build Coastguard Worker)
24*61c4878aSAndroid Build Coastguard Worker
25*61c4878aSAndroid Build Coastguard Workerexports_files(
26*61c4878aSAndroid Build Coastguard Worker    [
27*61c4878aSAndroid Build Coastguard Worker        "pigweed.json",
28*61c4878aSAndroid Build Coastguard Worker        "PIGWEED_MODULES",
29*61c4878aSAndroid Build Coastguard Worker        "tsconfig.json",
30*61c4878aSAndroid Build Coastguard Worker    ],
31*61c4878aSAndroid Build Coastguard Worker    visibility = [":__subpackages__"],
32*61c4878aSAndroid Build Coastguard Worker)
33*61c4878aSAndroid Build Coastguard Worker
34*61c4878aSAndroid Build Coastguard Worker# Symlink to clangd, for user convenience.
35*61c4878aSAndroid Build Coastguard Workercopy_file(
36*61c4878aSAndroid Build Coastguard Worker    name = "copy_clangd",
37*61c4878aSAndroid Build Coastguard Worker    src = "@llvm_toolchain//:bin/clangd",
38*61c4878aSAndroid Build Coastguard Worker    out = "clangd",
39*61c4878aSAndroid Build Coastguard Worker    allow_symlink = True,
40*61c4878aSAndroid Build Coastguard Worker)
41*61c4878aSAndroid Build Coastguard Worker
42*61c4878aSAndroid Build Coastguard Worker# The Fuchsia SDK is only supported on Linux hosts, so the target that
43*61c4878aSAndroid Build Coastguard Worker# generates compile commands for targets built for Fuchsia is separate from
44*61c4878aSAndroid Build Coastguard Worker# the more general-purpose `refresh_compile_commands` target.
45*61c4878aSAndroid Build Coastguard Workerrefresh_compile_commands(
46*61c4878aSAndroid Build Coastguard Worker    name = "refresh_compile_commands_for_fuchsia_sdk",
47*61c4878aSAndroid Build Coastguard Worker    out_dir = ".compile_commands",
48*61c4878aSAndroid Build Coastguard Worker    target_compatible_with = select({
49*61c4878aSAndroid Build Coastguard Worker        "@platforms//os:linux": [],
50*61c4878aSAndroid Build Coastguard Worker        "//conditions:default": ["@platforms//:incompatible"],
51*61c4878aSAndroid Build Coastguard Worker    }),
52*61c4878aSAndroid Build Coastguard Worker    target_groups = {
53*61c4878aSAndroid Build Coastguard Worker        "fuchsia": [
54*61c4878aSAndroid Build Coastguard Worker            [
55*61c4878aSAndroid Build Coastguard Worker                "//pw_bluetooth_sapphire/fuchsia/bt_host:pkg.arm64",
56*61c4878aSAndroid Build Coastguard Worker                "--config=fuchsia",
57*61c4878aSAndroid Build Coastguard Worker            ],
58*61c4878aSAndroid Build Coastguard Worker        ],
59*61c4878aSAndroid Build Coastguard Worker    },
60*61c4878aSAndroid Build Coastguard Worker)
61