xref: /aosp_15_r20/build/bazel/rules/cc/BUILD.bazel (revision 7594170e27e0732bc44b93d1440d87a54b6ffe7c)
1*7594170eSAndroid Build Coastguard Worker"""Copyright (C) 2022 The Android Open Source Project
2*7594170eSAndroid Build Coastguard Worker
3*7594170eSAndroid Build Coastguard WorkerLicensed under the Apache License, Version 2.0 (the "License");
4*7594170eSAndroid Build Coastguard Workeryou may not use this file except in compliance with the License.
5*7594170eSAndroid Build Coastguard WorkerYou may obtain a copy of the License at
6*7594170eSAndroid Build Coastguard Worker
7*7594170eSAndroid Build Coastguard Worker     http://www.apache.org/licenses/LICENSE-2.0
8*7594170eSAndroid Build Coastguard Worker
9*7594170eSAndroid Build Coastguard WorkerUnless required by applicable law or agreed to in writing, software
10*7594170eSAndroid Build Coastguard Workerdistributed under the License is distributed on an "AS IS" BASIS,
11*7594170eSAndroid Build Coastguard WorkerWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*7594170eSAndroid Build Coastguard WorkerSee the License for the specific language governing permissions and
13*7594170eSAndroid Build Coastguard Workerlimitations under the License.
14*7594170eSAndroid Build Coastguard Worker"""
15*7594170eSAndroid Build Coastguard Worker
16*7594170eSAndroid Build Coastguard Workerload("@bazel_skylib//lib:selects.bzl", "selects")
17*7594170eSAndroid Build Coastguard Workerload("@bazel_skylib//rules:common_settings.bzl", "bool_setting")
18*7594170eSAndroid Build Coastguard Workerload(":cc_aconfig_library_test.bzl", "cc_aconfig_library_test_suite")
19*7594170eSAndroid Build Coastguard Workerload(":cc_aidl_library_test.bzl", "cc_aidl_library_test_suite")
20*7594170eSAndroid Build Coastguard Workerload(":cc_binary_test.bzl", "cc_binary_test_suite")
21*7594170eSAndroid Build Coastguard Workerload(":cc_hidl_library_test.bzl", "cc_hidl_library_test_suite")
22*7594170eSAndroid Build Coastguard Workerload(":cc_library_common_test.bzl", "cc_library_common_test_suites")
23*7594170eSAndroid Build Coastguard Workerload(":cc_library_headers_test.bzl", "cc_library_headers_test_suite")
24*7594170eSAndroid Build Coastguard Workerload(":cc_library_shared_test.bzl", "cc_library_shared_test_suite")
25*7594170eSAndroid Build Coastguard Workerload(":cc_library_static_test.bzl", "cc_library_static_test_suite")
26*7594170eSAndroid Build Coastguard Workerload(":cc_object_test.bzl", "cc_object_test_suite")
27*7594170eSAndroid Build Coastguard Workerload(":cc_prebuilt_binary_test.bzl", "cc_prebuilt_binary_test_suite")
28*7594170eSAndroid Build Coastguard Workerload(":cc_prebuilt_library_shared_test.bzl", "cc_prebuilt_library_shared_test_suite")
29*7594170eSAndroid Build Coastguard Workerload(":cc_prebuilt_library_static_test.bzl", "cc_prebuilt_library_static_test_suite")
30*7594170eSAndroid Build Coastguard Workerload(":cc_proto_test.bzl", "cc_proto_test_suite")
31*7594170eSAndroid Build Coastguard Workerload(":cc_stub_library_test.bzl", "cc_stub_library_test_suite")
32*7594170eSAndroid Build Coastguard Workerload(":cc_sysprop_library_test.bzl", "cc_gen_sysprop_test_suite")
33*7594170eSAndroid Build Coastguard Workerload(":cc_test_test.bzl", "cc_test_test_suite")
34*7594170eSAndroid Build Coastguard Workerload(":cc_xsd_config_library_test.bzl", "cc_xsd_config_library_test_suite")
35*7594170eSAndroid Build Coastguard Workerload(":cc_yacc_library_test.bzl", "cc_yacc_static_library_test_suite")
36*7594170eSAndroid Build Coastguard Workerload(":cfi_transition_test.bzl", "cfi_transition_test_suite")
37*7594170eSAndroid Build Coastguard Workerload(":clang_tidy_test.bzl", "clang_tidy_test_suite")
38*7594170eSAndroid Build Coastguard Workerload(":flex_test.bzl", "flex_test_suite")
39*7594170eSAndroid Build Coastguard Workerload(":lto_transitions_test.bzl", "lto_transition_test_suite")
40*7594170eSAndroid Build Coastguard Workerload(":memtag_heap_transitions_test.bzl", "memtag_heap_transitions_test_suite")
41*7594170eSAndroid Build Coastguard Workerload(":ndk_headers_test.bzl", "ndk_headers_test_suite")
42*7594170eSAndroid Build Coastguard Workerload(":rscript_to_cpp_test.bzl", "rscript_to_cpp_test_suite")
43*7594170eSAndroid Build Coastguard Workerload(":sanitizer_blocklist_test.bzl", "sanitizer_blocklist_test_suite")
44*7594170eSAndroid Build Coastguard Workerload(":stl_test.bzl", "stl_test_suite")
45*7594170eSAndroid Build Coastguard Workerload(":yasm_test.bzl", "yasm_test_suite")
46*7594170eSAndroid Build Coastguard Worker
47*7594170eSAndroid Build Coastguard Workerconfig_setting(
48*7594170eSAndroid Build Coastguard Worker    name = "coverage_lib_flag",
49*7594170eSAndroid Build Coastguard Worker    values = {"collect_code_coverage": "True"},
50*7594170eSAndroid Build Coastguard Worker)
51*7594170eSAndroid Build Coastguard Worker
52*7594170eSAndroid Build Coastguard Workerbool_setting(
53*7594170eSAndroid Build Coastguard Worker    name = "cfi_assembly",
54*7594170eSAndroid Build Coastguard Worker    build_setting_default = False,
55*7594170eSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
56*7594170eSAndroid Build Coastguard Worker)
57*7594170eSAndroid Build Coastguard Worker
58*7594170eSAndroid Build Coastguard Workerconfig_setting(
59*7594170eSAndroid Build Coastguard Worker    name = "coverage_cfi_enabled",
60*7594170eSAndroid Build Coastguard Worker    flag_values = {":cfi_assembly": "True"},
61*7594170eSAndroid Build Coastguard Worker)
62*7594170eSAndroid Build Coastguard Worker
63*7594170eSAndroid Build Coastguard Workerconfig_setting(
64*7594170eSAndroid Build Coastguard Worker    name = "coverage_cfi_disabled",
65*7594170eSAndroid Build Coastguard Worker    flag_values = {":cfi_assembly": "False"},
66*7594170eSAndroid Build Coastguard Worker)
67*7594170eSAndroid Build Coastguard Worker
68*7594170eSAndroid Build Coastguard Worker# TODO: b/294868620 - This can be removed when completing the bug
69*7594170eSAndroid Build Coastguard Workerbool_setting(
70*7594170eSAndroid Build Coastguard Worker    name = "sanitizers_enabled_setting",
71*7594170eSAndroid Build Coastguard Worker    build_setting_default = False,
72*7594170eSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
73*7594170eSAndroid Build Coastguard Worker)
74*7594170eSAndroid Build Coastguard Worker
75*7594170eSAndroid Build Coastguard Worker# TODO: b/294868620 - This can be removed when completing the bug
76*7594170eSAndroid Build Coastguard Workerconfig_setting(
77*7594170eSAndroid Build Coastguard Worker    name = "sanitizers_enabled",
78*7594170eSAndroid Build Coastguard Worker    flag_values = {":sanitizers_enabled_setting": "True"},
79*7594170eSAndroid Build Coastguard Worker)
80*7594170eSAndroid Build Coastguard Worker
81*7594170eSAndroid Build Coastguard Workerselects.config_setting_group(
82*7594170eSAndroid Build Coastguard Worker    name = "android_coverage_lib_flag_cfi",
83*7594170eSAndroid Build Coastguard Worker    match_all = [
84*7594170eSAndroid Build Coastguard Worker        ":coverage_cfi_enabled",
85*7594170eSAndroid Build Coastguard Worker        ":coverage_lib_flag",
86*7594170eSAndroid Build Coastguard Worker        "//build/bazel_common_rules/platforms/os:android_config_setting",
87*7594170eSAndroid Build Coastguard Worker    ],
88*7594170eSAndroid Build Coastguard Worker)
89*7594170eSAndroid Build Coastguard Worker
90*7594170eSAndroid Build Coastguard Workerselects.config_setting_group(
91*7594170eSAndroid Build Coastguard Worker    name = "android_coverage_lib_flag",
92*7594170eSAndroid Build Coastguard Worker    match_all = [
93*7594170eSAndroid Build Coastguard Worker        ":coverage_cfi_disabled",
94*7594170eSAndroid Build Coastguard Worker        ":coverage_lib_flag",
95*7594170eSAndroid Build Coastguard Worker        "//build/bazel_common_rules/platforms/os:android_config_setting",
96*7594170eSAndroid Build Coastguard Worker    ],
97*7594170eSAndroid Build Coastguard Worker)
98*7594170eSAndroid Build Coastguard Worker
99*7594170eSAndroid Build Coastguard Workerplatform(
100*7594170eSAndroid Build Coastguard Worker    name = "windows_for_testing",
101*7594170eSAndroid Build Coastguard Worker    constraint_values = ["@//build/bazel_common_rules/platforms/os:windows"],
102*7594170eSAndroid Build Coastguard Worker)
103*7594170eSAndroid Build Coastguard Worker
104*7594170eSAndroid Build Coastguard Workerplatform(
105*7594170eSAndroid Build Coastguard Worker    name = "darwin_for_testing",
106*7594170eSAndroid Build Coastguard Worker    constraint_values = ["@//build/bazel_common_rules/platforms/os:darwin"],
107*7594170eSAndroid Build Coastguard Worker)
108*7594170eSAndroid Build Coastguard Worker
109*7594170eSAndroid Build Coastguard Workercc_aconfig_library_test_suite(name = "cc_aconfig_library_tests")
110*7594170eSAndroid Build Coastguard Worker
111*7594170eSAndroid Build Coastguard Workercc_aidl_library_test_suite(name = "cc_aidl_library_tests")
112*7594170eSAndroid Build Coastguard Worker
113*7594170eSAndroid Build Coastguard Workercc_binary_test_suite(name = "cc_binary_tests")
114*7594170eSAndroid Build Coastguard Worker
115*7594170eSAndroid Build Coastguard Workercc_test_test_suite(name = "cc_test_tests")
116*7594170eSAndroid Build Coastguard Worker
117*7594170eSAndroid Build Coastguard Workercc_hidl_library_test_suite(name = "cc_hidl_library_tests")
118*7594170eSAndroid Build Coastguard Worker
119*7594170eSAndroid Build Coastguard Workercc_library_common_test_suites(name = "cc_library_common_tests")
120*7594170eSAndroid Build Coastguard Worker
121*7594170eSAndroid Build Coastguard Workercc_library_headers_test_suite(name = "cc_library_headers_tests")
122*7594170eSAndroid Build Coastguard Worker
123*7594170eSAndroid Build Coastguard Workercc_library_shared_test_suite(name = "cc_library_shared_tests")
124*7594170eSAndroid Build Coastguard Worker
125*7594170eSAndroid Build Coastguard Workercc_library_static_test_suite(name = "cc_library_static_tests")
126*7594170eSAndroid Build Coastguard Worker
127*7594170eSAndroid Build Coastguard Workercc_gen_sysprop_test_suite(name = "cc_gen_sysprop_tests")
128*7594170eSAndroid Build Coastguard Worker
129*7594170eSAndroid Build Coastguard Workercc_object_test_suite(name = "cc_object_tests")
130*7594170eSAndroid Build Coastguard Worker
131*7594170eSAndroid Build Coastguard Workercc_prebuilt_binary_test_suite(name = "cc_prebuilt_binary_tests")
132*7594170eSAndroid Build Coastguard Worker
133*7594170eSAndroid Build Coastguard Workercc_prebuilt_library_shared_test_suite(name = "cc_prebuilt_library_shared_tests")
134*7594170eSAndroid Build Coastguard Worker
135*7594170eSAndroid Build Coastguard Workercc_prebuilt_library_static_test_suite(name = "cc_prebuilt_library_static_tests")
136*7594170eSAndroid Build Coastguard Worker
137*7594170eSAndroid Build Coastguard Workercc_proto_test_suite(name = "cc_proto_tests")
138*7594170eSAndroid Build Coastguard Worker
139*7594170eSAndroid Build Coastguard Workercc_stub_library_test_suite(name = "cc_stub_library_tests")
140*7594170eSAndroid Build Coastguard Worker
141*7594170eSAndroid Build Coastguard Workercc_xsd_config_library_test_suite(name = "cc_xsd_config_library_tests")
142*7594170eSAndroid Build Coastguard Worker
143*7594170eSAndroid Build Coastguard Workercc_yacc_static_library_test_suite(name = "cc_yacc_static_library_tests")
144*7594170eSAndroid Build Coastguard Worker
145*7594170eSAndroid Build Coastguard Workercfi_transition_test_suite(name = "cfi_transition_tests")
146*7594170eSAndroid Build Coastguard Worker
147*7594170eSAndroid Build Coastguard Workerclang_tidy_test_suite(name = "clang_tidy_tests")
148*7594170eSAndroid Build Coastguard Worker
149*7594170eSAndroid Build Coastguard Workerflex_test_suite(name = "flex_tests")
150*7594170eSAndroid Build Coastguard Worker
151*7594170eSAndroid Build Coastguard Workerlto_transition_test_suite(name = "lto_transition_tests")
152*7594170eSAndroid Build Coastguard Worker
153*7594170eSAndroid Build Coastguard Workermemtag_heap_transitions_test_suite(name = "memtag_heap_transitions_test")
154*7594170eSAndroid Build Coastguard Worker
155*7594170eSAndroid Build Coastguard Workersanitizer_blocklist_test_suite(name = "sanitizer_blocklist_tests")
156*7594170eSAndroid Build Coastguard Worker
157*7594170eSAndroid Build Coastguard Workerstl_test_suite(name = "stl_tests")
158*7594170eSAndroid Build Coastguard Worker
159*7594170eSAndroid Build Coastguard Workeryasm_test_suite(name = "yasm_tests")
160*7594170eSAndroid Build Coastguard Worker
161*7594170eSAndroid Build Coastguard Workerrscript_to_cpp_test_suite(name = "rscript_to_cpp_tests")
162*7594170eSAndroid Build Coastguard Worker
163*7594170eSAndroid Build Coastguard Workerndk_headers_test_suite(name = "ndk_headers_tests")
164