load("@bazel_skylib//rules:common_settings.bzl", "bool_flag") load("@rules_zig//zig:defs.bzl", "zig_library") RUNTIMES = { "cpu": True, "cuda": False, "rocm": False, "tpu": False, } [ bool_flag( name = runtime, build_setting_default = default, ) for runtime, default in RUNTIMES.items() ] [ config_setting( name = "{}.enabled".format(runtime), flag_values = {":{}".format(runtime): "True"}, visibility = ["//runtimes:__subpackages__"], ) for runtime in RUNTIMES.keys() ] zig_library( name = "runtimes", main = "runtimes.zig", visibility = ["//visibility:public"], deps = [ "//pjrt", ] + [ "//runtimes/{}".format(runtime) for runtime in RUNTIMES.keys() ], )