xref: /aosp_15_r20/external/pigweed/pw_toolchain_bazel/cc_toolchain/defs.bzl (revision 61c4878ac05f98d0ceed94b57d316916de578985)
1# Copyright 2023 The Pigweed Authors
2#
3# Licensed under the Apache License, Version 2.0 (the "License"); you may not
4# use this file except in compliance with the License. You may obtain a copy of
5# the License at
6#
7#     https://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12# License for the specific language governing permissions and limitations under
13# the License.
14"""Toolchain configuration for Bazel."""
15
16load("//actions:defs.bzl", _pw_cc_action_name_set = "pw_cc_action_name_set")
17load(
18    "//cc_toolchain/private:action_config.bzl",
19    _pw_cc_action_config = "pw_cc_action_config",
20    _pw_cc_tool = "pw_cc_tool",
21)
22load(
23    "//cc_toolchain/private:action_files.bzl",
24    _pw_cc_action_files = "pw_cc_action_files",
25    _pw_cc_action_files_set = "pw_cc_action_files_set",
26)
27load(
28    "//cc_toolchain/private:cc_toolchain.bzl",
29    _pw_cc_toolchain = "pw_cc_toolchain",
30)
31load(
32    "//cc_toolchain/private:feature.bzl",
33    _pw_cc_feature = "pw_cc_feature",
34    _pw_cc_feature_set = "pw_cc_feature_set",
35    _pw_cc_mutually_exclusive_category = "pw_cc_mutually_exclusive_category",
36)
37load(
38    "//cc_toolchain/private:feature_constraint.bzl",
39    _pw_cc_feature_constraint = "pw_cc_feature_constraint",
40)
41load(
42    "//cc_toolchain/private:flag_set.bzl",
43    _pw_cc_flag_group = "pw_cc_flag_group",
44    _pw_cc_flag_set = "pw_cc_flag_set",
45)
46load(
47    "//cc_toolchain/private:unsafe_feature.bzl",
48    _pw_cc_unsafe_feature = "pw_cc_unsafe_feature",
49)
50
51pw_cc_action_name_set = _pw_cc_action_name_set
52
53pw_cc_action_files = _pw_cc_action_files
54pw_cc_action_files_set = _pw_cc_action_files_set
55pw_cc_action_config = _pw_cc_action_config
56pw_cc_tool = _pw_cc_tool
57
58pw_cc_feature = _pw_cc_feature
59pw_cc_unsafe_feature = _pw_cc_unsafe_feature
60pw_cc_feature_constraint = _pw_cc_feature_constraint
61pw_cc_mutually_exclusive_category = _pw_cc_mutually_exclusive_category
62pw_cc_feature_set = _pw_cc_feature_set
63
64pw_cc_flag_group = _pw_cc_flag_group
65pw_cc_flag_set = _pw_cc_flag_set
66
67pw_cc_toolchain = _pw_cc_toolchain
68
69# TODO(b/322872628): Remove this.
70# DO NOT USE. This is a temporary variable to allow users to migrate to
71# action_config implies labels without breaking their build.
72ARCHIVER_FLAGS = "@pw_toolchain//features/legacy:archiver_flags"
73LINKER_PARAM_FILE = "@pw_toolchain//features/legacy:linker_param_file"
74