| load("@bazel_skylib//:bzl_library.bzl", "bzl_library") | |
| load( | |
| "@bazel_skylib//rules:common_settings.bzl", | |
| "string_list_flag", | |
| ) | |
| load("//cc_bindings_from_rs/bazel_support:toolchain.bzl", "cc_bindings_from_rs_toolchain") | |
| package( | |
| default_applicable_licenses = ["//:license"], | |
| default_visibility = ["//common/bazel_support:__subpackages__"], | |
| ) | |
| bzl_library( | |
| name = "cc_info_util_bzl", | |
| srcs = ["cc_info_util.bzl"], | |
| visibility = ["//:__subpackages__"], | |
| ) | |
| # FLAGS | |
| # ===== | |
| # | |
| # The following flags can be used by either direction of interop to control behavior of the tool. | |
| string_list_flag( | |
| name = "globally_enabled_features", | |
| build_setting_default = [], | |
| visibility = ["//visibility:public"], | |
| ) | |
| # TOOLCHAINS | |
| # ========== | |
| # | |
| # The following are all of the Crubit toolchain implementations. | |
| # The actual registration happens in MODULE.bazel and toolchains/BUILD. | |
| # cc_bindings_from_rs | |
| # ------------------- | |
| cc_bindings_from_rs_toolchain( | |
| name = "cc_bindings_from_rs_on_demand_impl", | |
| binary = "//cc_bindings_from_rs:cc_bindings_from_rs", | |
| ) | |
| # rs_bindings_from_cc | |
| # ------------------- | |
| config_setting( | |
| name = "use_fake_rs_bindings_from_cc_setting", | |
| flag_values = { | |
| "//rs_bindings_from_cc/bazel_support:use_actual_bindings_generator": "False", | |
| }, | |
| ) | |
| config_setting( | |
| name = "use_actual_rs_bindings_from_cc_setting", | |
| flag_values = { | |
| "//rs_bindings_from_cc/bazel_support:use_actual_bindings_generator": "True", | |
| }, | |
| ) | |
| rs_bindings_from_cc_toolchain( | |
| name = "rs_bindings_from_cc_on_demand_impl", | |
| binary = "//rs_bindings_from_cc:rs_bindings_from_cc", | |
| builtin_headers = [ | |
| "//llvm/llvm-project/clang:builtin_headers_filegroup", | |
| "//llvm/llvm-project/compiler-rt:fuzzer_filegroup", | |
| "//llvm/llvm-project/compiler-rt:sanitizer_filegroup", | |
| ], | |
| stl_headers = ["//nowhere/llvm:cc-std-headers"], | |
| ) | |
| rs_bindings_from_cc_toolchain( | |
| name = "rs_bindings_from_cc_fake_impl", | |
| binary = "//rs_bindings_from_cc/bazel_support:fake_rust_bindings_from_cc", | |
| builtin_headers = [], | |
| stl_headers = [], | |
| ) | |
| config_setting( | |
| name = "cpu_arm", | |
| constraint_values = [ | |
| "@platforms//cpu:aarch64", | |
| ], | |
| visibility = [ | |
| ], | |
| ) | |
| config_setting( | |
| name = "cpu_x86", | |
| constraint_values = [ | |
| "@platforms//cpu:x86_64", | |
| ], | |
| visibility = [ | |
| ], | |
| ) |