| # Copyright 2019 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. |
| |
| import("//third_party/fuchsia-sdk/build/component.gni") |
| import("//third_party/fuchsia-sdk/build/package.gni") |
| |
| # A FIDL client that can connect to a Calculator engine. |
| source_set("client_lib") { |
| sources = [ |
| "client.cc", |
| "client.h", |
| ] |
| |
| deps = [ |
| "//src/calculator/fidl:fuchsia.examples.calculator", |
| "//third_party/fuchsia-sdk/pkg/async-loop-cpp", |
| ] |
| |
| public_deps = [ |
| "//third_party/fuchsia-sdk/pkg/sys_cpp", |
| ] |
| } |
| |
| # The binary that executes when the component is launched. |
| executable("client_bin") { |
| sources = [ |
| "main.cc", |
| ] |
| |
| deps = [ |
| ":client_lib", |
| "//src/calculator/fidl:fuchsia.examples.calculator", |
| "//third_party/fuchsia-sdk/pkg/async-loop-cpp", |
| "//third_party/fuchsia-sdk/pkg/async-loop-default", |
| ] |
| } |
| |
| # A Fuchsia component. This contains the executable that runs and a manifest |
| # that provides metadata about how the component should work. |
| fuchsia_component("component") { |
| manifest = "meta/client.cml" |
| data_deps = [ |
| ":client_bin", |
| ] |
| } |
| |
| # The complete Fuchsia package containing all the pieces needed for the client |
| # to run. |
| fuchsia_package("client") { |
| package_name = "calculator_client" |
| |
| deps = [ |
| ":component", |
| ] |
| } |