1*7594170eSAndroid Build Coastguard Worker# Copyright (C) 2023 The Android Open Source Project 2*7594170eSAndroid Build Coastguard Worker# 3*7594170eSAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License"); 4*7594170eSAndroid Build Coastguard Worker# you may not use this file except in compliance with the License. 5*7594170eSAndroid Build Coastguard Worker# You 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 Worker# Unless required by applicable law or agreed to in writing, software 10*7594170eSAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS, 11*7594170eSAndroid Build Coastguard Worker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*7594170eSAndroid Build Coastguard Worker# See the License for the specific language governing permissions and 13*7594170eSAndroid Build Coastguard Worker# limitations under the License. 14*7594170eSAndroid Build Coastguard Worker 15*7594170eSAndroid Build Coastguard Workerload("@bazel_skylib//rules:common_settings.bzl", "bool_flag", "string_flag") 16*7594170eSAndroid Build Coastguard Workerload("@env//:env.bzl", "env") 17*7594170eSAndroid Build Coastguard Workerload("//build/bazel/flags:common.bzl", "is_env_true") 18*7594170eSAndroid Build Coastguard Workerload(":cc_toolchain_clang_version_test.bzl", "cc_toolchain_clang_version_test_suite") 19*7594170eSAndroid Build Coastguard Workerload(":cc_toolchain_features_arm_isa_test.bzl", "cc_toolchain_features_arm_isa_test_suite") 20*7594170eSAndroid Build Coastguard Workerload(":cc_toolchain_features_cfi_test.bzl", "cc_toolchain_features_cfi_test_suite") 21*7594170eSAndroid Build Coastguard Workerload(":cc_toolchain_features_env_based_flags_test.bzl", "cc_toolchain_features_env_based_flags_test_suite") 22*7594170eSAndroid Build Coastguard Workerload(":cc_toolchain_features_flag_order_test.bzl", "cc_toolchain_features_flag_order_test_suite") 23*7594170eSAndroid Build Coastguard Workerload(":cc_toolchain_features_linker_alignment_test.bzl", "cc_toolchain_features_linker_alignment_test_suite") 24*7594170eSAndroid Build Coastguard Workerload(":cc_toolchain_features_memtag_test.bzl", "cc_toolchain_features_memtag_test_suite") 25*7594170eSAndroid Build Coastguard Workerload(":cc_toolchain_features_misc_test.bzl", "cc_toolchain_features_test_suite") 26*7594170eSAndroid Build Coastguard Workerload(":cc_toolchain_features_pack_relocation_test.bzl", "cc_toolchain_features_pack_relocation_test_suite") 27*7594170eSAndroid Build Coastguard Workerload(":cc_toolchain_features_thinlto_test.bzl", "cc_toolchain_features_lto_test_suite") 28*7594170eSAndroid Build Coastguard Workerload(":cc_toolchain_features_ubsan_test.bzl", "cc_toolchain_features_ubsan_test_suite") 29*7594170eSAndroid Build Coastguard Worker 30*7594170eSAndroid Build Coastguard Workerpackage(default_visibility = ["//build/bazel:__subpackages__"]) 31*7594170eSAndroid Build Coastguard Worker 32*7594170eSAndroid Build Coastguard Workerbool_flag( 33*7594170eSAndroid Build Coastguard Worker name = "auto_zero_initialize_env", 34*7594170eSAndroid Build Coastguard Worker build_setting_default = is_env_true(env.get("AUTO_ZERO_INITIALIZE")), 35*7594170eSAndroid Build Coastguard Worker) 36*7594170eSAndroid Build Coastguard Worker 37*7594170eSAndroid Build Coastguard Workerbool_flag( 38*7594170eSAndroid Build Coastguard Worker name = "auto_pattern_initialize_env", 39*7594170eSAndroid Build Coastguard Worker build_setting_default = is_env_true(env.get("AUTO_PATTERN_INITIALIZE")), 40*7594170eSAndroid Build Coastguard Worker) 41*7594170eSAndroid Build Coastguard Worker 42*7594170eSAndroid Build Coastguard Workerbool_flag( 43*7594170eSAndroid Build Coastguard Worker name = "auto_uninitialize_env", 44*7594170eSAndroid Build Coastguard Worker build_setting_default = is_env_true(env.get("AUTO_UNINITIALIZE")), 45*7594170eSAndroid Build Coastguard Worker) 46*7594170eSAndroid Build Coastguard Worker 47*7594170eSAndroid Build Coastguard Workerbool_flag( 48*7594170eSAndroid Build Coastguard Worker name = "use_ccache_env", 49*7594170eSAndroid Build Coastguard Worker build_setting_default = is_env_true(env.get("USE_CCACHE")), 50*7594170eSAndroid Build Coastguard Worker) 51*7594170eSAndroid Build Coastguard Worker 52*7594170eSAndroid Build Coastguard Workerbool_flag( 53*7594170eSAndroid Build Coastguard Worker name = "llvm_next_env", 54*7594170eSAndroid Build Coastguard Worker build_setting_default = is_env_true(env.get("LLVM_NEXT")), 55*7594170eSAndroid Build Coastguard Worker) 56*7594170eSAndroid Build Coastguard Worker 57*7594170eSAndroid Build Coastguard Workerbool_flag( 58*7594170eSAndroid Build Coastguard Worker name = "allow_unknown_warning_option_env", 59*7594170eSAndroid Build Coastguard Worker build_setting_default = is_env_true(env.get("ALLOW_UNKNOWN_WARNING_OPTION")), 60*7594170eSAndroid Build Coastguard Worker) 61*7594170eSAndroid Build Coastguard Worker 62*7594170eSAndroid Build Coastguard Workerstring_flag( 63*7594170eSAndroid Build Coastguard Worker name = "clang_default_debug_level", 64*7594170eSAndroid Build Coastguard Worker build_setting_default = env.get("CLANG_DEFAULT_DEBUG_LEVEL") or "", 65*7594170eSAndroid Build Coastguard Worker values = [ 66*7594170eSAndroid Build Coastguard Worker "debug_level_g", 67*7594170eSAndroid Build Coastguard Worker "debug_level_0", 68*7594170eSAndroid Build Coastguard Worker "debug_level_1", 69*7594170eSAndroid Build Coastguard Worker "debug_level_2", 70*7594170eSAndroid Build Coastguard Worker "debug_level_3", 71*7594170eSAndroid Build Coastguard Worker "", 72*7594170eSAndroid Build Coastguard Worker ], 73*7594170eSAndroid Build Coastguard Worker) 74*7594170eSAndroid Build Coastguard Worker 75*7594170eSAndroid Build Coastguard Workercc_toolchain_features_arm_isa_test_suite( 76*7594170eSAndroid Build Coastguard Worker name = "cc_toolchain_features_arm_isa_test", 77*7594170eSAndroid Build Coastguard Worker) 78*7594170eSAndroid Build Coastguard Worker 79*7594170eSAndroid Build Coastguard Workercc_toolchain_clang_version_test_suite( 80*7594170eSAndroid Build Coastguard Worker name = "cc_toolchain_clang_version_tests", 81*7594170eSAndroid Build Coastguard Worker) 82*7594170eSAndroid Build Coastguard Worker 83*7594170eSAndroid Build Coastguard Workercc_toolchain_features_test_suite( 84*7594170eSAndroid Build Coastguard Worker name = "cc_toolchain_features_tests", 85*7594170eSAndroid Build Coastguard Worker) 86*7594170eSAndroid Build Coastguard Worker 87*7594170eSAndroid Build Coastguard Workercc_toolchain_features_cfi_test_suite( 88*7594170eSAndroid Build Coastguard Worker name = "cc_toolchain_features_cfi_tests", 89*7594170eSAndroid Build Coastguard Worker) 90*7594170eSAndroid Build Coastguard Worker 91*7594170eSAndroid Build Coastguard Workercc_toolchain_features_pack_relocation_test_suite( 92*7594170eSAndroid Build Coastguard Worker name = "cc_toolchain_features_pack_relocation_tests", 93*7594170eSAndroid Build Coastguard Worker) 94*7594170eSAndroid Build Coastguard Worker 95*7594170eSAndroid Build Coastguard Workercc_toolchain_features_lto_test_suite( 96*7594170eSAndroid Build Coastguard Worker name = "cc_toolchain_features_thinlto_tests", 97*7594170eSAndroid Build Coastguard Worker) 98*7594170eSAndroid Build Coastguard Worker 99*7594170eSAndroid Build Coastguard Workercc_toolchain_features_ubsan_test_suite( 100*7594170eSAndroid Build Coastguard Worker name = "cc_toolchain_features_ubsan_tests", 101*7594170eSAndroid Build Coastguard Worker) 102*7594170eSAndroid Build Coastguard Worker 103*7594170eSAndroid Build Coastguard Workercc_toolchain_features_env_based_flags_test_suite( 104*7594170eSAndroid Build Coastguard Worker name = "cc_toolchain_features_env_based_flags_tests", 105*7594170eSAndroid Build Coastguard Worker) 106*7594170eSAndroid Build Coastguard Worker 107*7594170eSAndroid Build Coastguard Workercc_toolchain_features_flag_order_test_suite( 108*7594170eSAndroid Build Coastguard Worker name = "cc_toolchain_features_flag_order_tests", 109*7594170eSAndroid Build Coastguard Worker) 110*7594170eSAndroid Build Coastguard Worker 111*7594170eSAndroid Build Coastguard Workercc_toolchain_features_linker_alignment_test_suite( 112*7594170eSAndroid Build Coastguard Worker name = "cc_toolchain_features_linker_alignment_tests", 113*7594170eSAndroid Build Coastguard Worker) 114*7594170eSAndroid Build Coastguard Worker 115*7594170eSAndroid Build Coastguard Workercc_toolchain_features_memtag_test_suite( 116*7594170eSAndroid Build Coastguard Worker name = "cc_toolchain_features_memtag_tests", 117*7594170eSAndroid Build Coastguard Worker) 118