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