blob: dfbe7b1793450c97d038c6b03f932591c3169c80 [file]
load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test")
load("@io_bazel_rules_go//proto:def.bzl", "go_proto_library")
# Common rules
proto_library(
name = "foo_proto",
srcs = ["foo.proto"],
)
go_proto_library(
name = "foo_go_proto",
importpath = "github.com/bazelbuild/rules_go/tests/core/go_proto_library/foo",
proto = ":foo_proto",
)
proto_library(
name = "bar_proto",
srcs = ["bar.proto"],
deps = [":foo_proto"],
)
go_proto_library(
name = "bar_go_proto",
importpath = "github.com/bazelbuild/rules_go/tests/core/go_proto_library/bar",
proto = ":bar_proto",
deps = [":foo_go_proto"],
)
# embed_test
go_proto_library(
name = "embed_go_proto",
embed = [":extra_lib"],
importpath = "github.com/bazelbuild/rules_go/tests/core/go_proto_library/foo",
proto = ":foo_proto",
)
go_library(
name = "extra_lib",
srcs = ["extra.go"],
importpath = "github.com/bazelbuild/rules_go/tests/core/go_proto_library/foo",
)
go_test(
name = "embed_test",
srcs = ["embed_test.go"],
deps = [
":embed_go_proto",
"@com_github_golang_protobuf//proto:go_default_library",
],
)
# transitive_test
go_proto_library(
name = "transitive_go_proto",
importpath = "github.com/bazelbuild/rules_go/tests/core/go_proto_library/bar",
proto = ":bar_proto",
deps = [":wrap_lib"],
)
go_library(
name = "wrap_lib",
srcs = ["extra.go"],
embed = [":foo_go_proto"],
importpath = "github.com/bazelbuild/rules_go/tests/core/go_proto_library/foo",
)
go_test(
name = "transitive_test",
srcs = ["transitive_test.go"],
deps = [
":transitive_go_proto",
":wrap_lib",
],
)
# adjusted_import_test
# TODO(#1851): uncomment when Bazel 0.22.0 is the minimum version.
# go_test(
# name = "adjusted_import_test",
# srcs = ["adjusted_import_test.go"],
# deps = [
# ":adjusted_a_go_proto",
# ":adjusted_b_go_library",
# ":adjusted_c_go_proto",
# ],
# )
# go_proto_library(
# name = "adjusted_a_go_proto",
# importpath = "adjusted/a",
# proto = "adjusted_a_proto",
# deps = [
# ":adjusted_b_go_library",
# ":adjusted_c_go_proto",
# ],
# )
# proto_library(
# name = "adjusted_a_proto",
# srcs = ["adjusted_a.proto"],
# import_prefix = "adjusted",
# strip_import_prefix = "",
# deps = [
# ":adjusted_b_proto",
# ":adjusted_c_proto",
# ],
# )
# go_library(
# name = "adjusted_b_go_library",
# embed = [":adjusted_b_go_proto"],
# importpath = "adjusted/b",
# )
# go_proto_library(
# name = "adjusted_b_go_proto",
# importpath = "adjusted/b",
# proto = "adjusted_b_proto",
# deps = [":adjusted_c_go_proto"],
# )
# proto_library(
# name = "adjusted_b_proto",
# srcs = ["adjusted_b.proto"],
# import_prefix = "adjusted",
# strip_import_prefix = "",
# deps = [":adjusted_c_proto"],
# )
# go_proto_library(
# name = "adjusted_c_go_proto",
# importpath = "adjusted/c",
# proto = ":adjusted_c_proto",
# )
# proto_library(
# name = "adjusted_c_proto",
# srcs = ["adjusted_c.proto"],
# import_prefix = "adjusted",
# strip_import_prefix = "",
# )