xref: /aosp_15_r20/external/bazelbuild-rules_cc/cc/toolchains/features/legacy/BUILD (revision eed53cd41c5909d05eedc7ad9720bb158fd93452)
1load("//cc/toolchains:feature_set.bzl", "cc_feature_set")
2load("//cc/toolchains/impl:external_feature.bzl", "cc_external_feature")
3
4package(default_visibility = ["//visibility:public"])
5
6# See https://bazel.build/docs/cc-toolchain-config-reference#wellknown-features.
7
8cc_external_feature(
9    name = "legacy_compile_flags",
10    feature_name = "legacy_compile_flags",
11    overridable = True,
12)
13
14cc_external_feature(
15    name = "default_compile_flags",
16    feature_name = "default_compile_flags",
17    overridable = True,
18)
19
20cc_external_feature(
21    name = "dependency_file",
22    feature_name = "dependency_file",
23    overridable = True,
24)
25
26cc_external_feature(
27    name = "pic",
28    feature_name = "pic",
29    overridable = True,
30)
31
32cc_external_feature(
33    name = "preprocessor_defines",
34    feature_name = "preprocessor_defines",
35    overridable = True,
36)
37
38cc_external_feature(
39    name = "includes",
40    feature_name = "includes",
41    overridable = True,
42)
43
44cc_external_feature(
45    name = "include_paths",
46    feature_name = "include_paths",
47    overridable = True,
48)
49
50cc_external_feature(
51    name = "fdo_instrument",
52    feature_name = "fdo_instrument",
53    overridable = True,
54)
55
56cc_external_feature(
57    name = "fdo_optimize",
58    feature_name = "fdo_optimize",
59    overridable = True,
60)
61
62cc_external_feature(
63    name = "cs_fdo_instrument",
64    feature_name = "cs_fdo_instrument",
65    overridable = True,
66)
67
68cc_external_feature(
69    name = "cs_fdo_optimize",
70    feature_name = "cs_fdo_optimize",
71    overridable = True,
72)
73
74cc_external_feature(
75    name = "fdo_prefetch_hints",
76    feature_name = "fdo_prefetch_hints",
77    overridable = True,
78)
79
80cc_external_feature(
81    name = "autofdo",
82    feature_name = "autofdo",
83    overridable = True,
84)
85
86cc_external_feature(
87    name = "build_interface_libraries",
88    feature_name = "build_interface_libraries",
89    overridable = True,
90)
91
92cc_external_feature(
93    name = "dynamic_library_linker_tool",
94    feature_name = "dynamic_library_linker_tool",
95    overridable = True,
96)
97
98cc_external_feature(
99    name = "shared_flag",
100    feature_name = "shared_flag",
101    overridable = True,
102)
103
104cc_external_feature(
105    name = "linkstamps",
106    feature_name = "linkstamps",
107    overridable = True,
108)
109
110cc_external_feature(
111    name = "output_execpath_flags",
112    feature_name = "output_execpath_flags",
113    overridable = True,
114)
115
116cc_external_feature(
117    name = "runtime_library_search_directories",
118    feature_name = "runtime_library_search_directories",
119    overridable = True,
120)
121
122cc_external_feature(
123    name = "library_search_directories",
124    feature_name = "library_search_directories",
125    overridable = True,
126)
127
128cc_external_feature(
129    name = "archiver_flags",
130    feature_name = "archiver_flags",
131    overridable = True,
132)
133
134cc_external_feature(
135    name = "libraries_to_link",
136    feature_name = "libraries_to_link",
137    overridable = True,
138)
139
140cc_external_feature(
141    name = "force_pic_flags",
142    feature_name = "force_pic_flags",
143    overridable = True,
144)
145
146cc_external_feature(
147    name = "user_link_flags",
148    feature_name = "user_link_flags",
149    overridable = True,
150)
151
152cc_external_feature(
153    name = "legacy_link_flags",
154    feature_name = "legacy_link_flags",
155    overridable = True,
156)
157
158cc_external_feature(
159    name = "static_libgcc",
160    feature_name = "static_libgcc",
161    overridable = True,
162)
163
164cc_external_feature(
165    name = "fission_support",
166    feature_name = "fission_support",
167    overridable = True,
168)
169
170cc_external_feature(
171    name = "strip_debug_symbols",
172    feature_name = "strip_debug_symbols",
173    overridable = True,
174)
175
176cc_external_feature(
177    name = "coverage",
178    feature_name = "coverage",
179    overridable = True,
180)
181
182cc_external_feature(
183    name = "llvm_coverage_map_format",
184    feature_name = "llvm_coverage_map_format",
185    overridable = True,
186)
187
188cc_external_feature(
189    name = "gcc_coverage_map_format",
190    feature_name = "gcc_coverage_map_format",
191    overridable = True,
192)
193
194cc_external_feature(
195    name = "fully_static_link",
196    feature_name = "fully_static_link",
197    overridable = True,
198)
199
200cc_external_feature(
201    name = "user_compile_flags",
202    feature_name = "user_compile_flags",
203    overridable = True,
204)
205
206cc_external_feature(
207    name = "sysroot",
208    feature_name = "sysroot",
209    overridable = True,
210)
211
212cc_external_feature(
213    name = "unfiltered_compile_flags",
214    feature_name = "unfiltered_compile_flags",
215    overridable = True,
216)
217
218cc_external_feature(
219    name = "linker_param_file",
220    feature_name = "linker_param_file",
221    overridable = True,
222)
223
224cc_external_feature(
225    name = "compiler_input_flags",
226    feature_name = "compiler_input_flags",
227    overridable = True,
228)
229
230cc_external_feature(
231    name = "compiler_output_flags",
232    feature_name = "compiler_output_flags",
233    overridable = True,
234)
235
236cc_feature_set(
237    name = "all_legacy_builtin_features",
238    all_of = [
239        ":legacy_compile_flags",
240        ":default_compile_flags",
241        ":dependency_file",
242        ":pic",
243        ":preprocessor_defines",
244        ":includes",
245        ":include_paths",
246        ":fdo_instrument",
247        ":fdo_optimize",
248        ":cs_fdo_instrument",
249        ":cs_fdo_optimize",
250        ":fdo_prefetch_hints",
251        ":autofdo",
252        ":build_interface_libraries",
253        ":dynamic_library_linker_tool",
254        ":shared_flag",
255        ":linkstamps",
256        ":output_execpath_flags",
257        ":runtime_library_search_directories",
258        ":library_search_directories",
259        ":archiver_flags",
260        ":libraries_to_link",
261        ":force_pic_flags",
262        ":user_link_flags",
263        ":legacy_link_flags",
264        ":static_libgcc",
265        ":fission_support",
266        ":strip_debug_symbols",
267        ":coverage",
268        ":llvm_coverage_map_format",
269        ":gcc_coverage_map_format",
270        ":fully_static_link",
271        ":user_compile_flags",
272        ":sysroot",
273        ":unfiltered_compile_flags",
274        ":linker_param_file",
275        ":compiler_input_flags",
276        ":compiler_output_flags",
277    ],
278    visibility = ["//cc/toolchains/features:__pkg__"],
279)
280