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 = "opt", 10 feature_name = "opt", 11 overridable = True, 12) 13 14cc_external_feature( 15 name = "dbg", 16 feature_name = "dbg", 17 overridable = True, 18) 19 20cc_external_feature( 21 name = "fastbuild", 22 feature_name = "fastbuild", 23 overridable = True, 24) 25 26cc_external_feature( 27 name = "static_linking_mode", 28 feature_name = "static_linking_mode", 29 overridable = True, 30) 31 32cc_external_feature( 33 name = "dynamic_linking_mode", 34 feature_name = "dynamic_linking_mode", 35 overridable = True, 36) 37 38cc_external_feature( 39 name = "per_object_debug_info", 40 feature_name = "per_object_debug_info", 41 overridable = True, 42) 43 44cc_external_feature( 45 name = "static_link_cpp_runtimes", 46 feature_name = "static_link_cpp_runtimes", 47 overridable = True, 48) 49 50cc_feature_set( 51 name = "all_non_legacy_builtin_features", 52 all_of = [ 53 ":opt", 54 ":dbg", 55 ":fastbuild", 56 ":static_linking_mode", 57 ":dynamic_linking_mode", 58 ":per_object_debug_info", 59 ":static_link_cpp_runtimes", 60 ], 61 visibility = ["//visibility:private"], 62) 63 64cc_feature_set( 65 name = "all_builtin_features", 66 all_of = [ 67 ":all_non_legacy_builtin_features", 68 "//cc/toolchains/features/legacy:all_legacy_builtin_features", 69 ], 70) 71