blob: 0d30098a351c3cc2355a11d97b9030f5d601cd2c [file] [log] [blame]
# Copyright 2022 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
#[START imports]
load(
"@rules_fuchsia//fuchsia:defs.bzl",
"fuchsia_cc_binary",
"fuchsia_cc_test",
"fuchsia_component",
"fuchsia_component_manifest",
"fuchsia_package",
"fuchsia_select",
"fuchsia_unittest_package",
)
#[END imports]
#[START echo]
fuchsia_cc_binary(
name = "echo_example",
srcs = [
"echo_component.cc",
"echo_component.h",
"main.cc",
],
deps = [] + fuchsia_select({
"@platforms//os:fuchsia": [
"@fuchsia_sdk//pkg/fdio",
"@fuchsia_sdk//pkg/syslog",
],
}),
)
fuchsia_component_manifest(
name = "manifest",
src = "meta/echo.cml",
component_name = "echo",
includes = [
"@fuchsia_sdk//pkg/syslog:client",
],
)
fuchsia_component(
name = "component",
component_name = "echo",
manifest = ":manifest",
visibility = ["//visibility:public"],
deps = [":echo_example"],
)
fuchsia_package(
name = "pkg",
package_name = "echo-example",
components = [
":component",
],
visibility = ["//visibility:public"],
)
#[END echo]
#[START unittest]
fuchsia_cc_test(
name = "echo_unittests",
size = "small",
srcs = [
"echo_component.cc",
"echo_component.h",
"echo_unittest.cc",
],
visibility = ["//visibility:public"],
deps = ["@com_google_googletest//:gtest_main"] + fuchsia_select({
"@platforms//os:fuchsia": [
"@fuchsia_sdk//pkg/fdio",
"@fuchsia_sdk//pkg/syslog",
],
}),
)
fuchsia_unittest_package(
name = "test_pkg",
package_name = "echo_unittests",
unit_tests = [
":echo_unittests",
],
visibility = ["//visibility:public"],
)
#[END unittest]