load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_cross_binary", "go_library") go_library( name = "cli_lib", srcs = ["main.go"], importpath = "github.com/edgelesssys/constellation/v2/cli", visibility = ["//visibility:private"], deps = ["//cli/cmd"], ) # keep go_binary( name = "cli_oss", embed = [":cli_lib"], pure = "on", visibility = ["//visibility:public"], ) # keep go_binary( name = "cli_enterprise", embed = [":cli_lib"], gotags = ["enterprise"], pure = "on", visibility = ["//visibility:public"], ) [ go_cross_binary( name = "cli_%s_%s" % (edition, platform), platform = "@io_bazel_rules_go//go/toolchain:" + platform, target = ":cli_%s" % edition, visibility = ["//visibility:public"], ) for platform in [ "darwin_amd64", "darwin_arm64", "linux_amd64", "linux_arm64", "windows_amd64", ] for edition in [ "oss", "enterprise", ] ] [ go_cross_binary( name = "cli_%s_host" % edition, platform = "@local_config_platform//:host", target = ":cli_%s" % edition, visibility = ["//visibility:public"], ) for edition in [ "oss", "enterprise", ] ] alias( name = "cli_edition_host", actual = select( { "//bazel/settings:cli_edition_enterprise": ":cli_enterprise_host", "//bazel/settings:cli_edition_oss": ":cli_oss_host", "//conditions:default": ":cli_oss_host", }, ), visibility = ["//visibility:public"], )