| # 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. |
| |
| import("//build/components.gni") |
| import("//build/fidl/fidl.gni") |
| import("//build/rust/rustc_binary.gni") |
| import("//build/rust/rustc_library.gni") |
| |
| source_set("controller") { |
| testonly = true |
| sources = [ |
| "src/controller.cc", |
| "src/controller.h", |
| ] |
| deps = [ |
| ":guest", |
| "//sdk/lib/fdio", |
| "//sdk/lib/syslog/cpp", |
| "//src/connectivity/network/testing/netemul/network-context/fidl:network_cpp", |
| "//src/lib/fxl:fxl", |
| "//src/virtualization/tests/lib:guest_console", |
| "//zircon/system/ulib/async-loop:async-loop-cpp", |
| "//zircon/system/ulib/fbl", |
| ] |
| |
| public_deps = [ |
| "//sdk/fidl/fuchsia.virtualization:fuchsia.virtualization_cpp", |
| "//src/connectivity/network/testing/netemul/guest:fuchsia.netemul.guest_cpp", |
| ] |
| } |
| |
| source_set("guest") { |
| testonly = true |
| sources = [ |
| "src/guest.cc", |
| "src/guest.h", |
| ] |
| deps = [ |
| "//sdk/lib/fdio", |
| "//sdk/lib/syslog/cpp", |
| "//src/connectivity/network/testing/netemul/network-context/fidl:network_cpp", |
| "//src/lib/fxl:fxl", |
| "//src/virtualization/lib/guest_interaction:common", |
| "//src/virtualization/lib/guest_interaction:guest_interaction_client", |
| "//src/virtualization/lib/guest_interaction:platform_interface_posix", |
| "//zircon/system/ulib/async-loop:async-loop-cpp", |
| "//zircon/system/ulib/fbl", |
| ] |
| |
| public_deps = [ |
| "//sdk/fidl/fuchsia.virtualization:fuchsia.virtualization_cpp", |
| "//src/connectivity/network/testing/netemul/guest:fuchsia.netemul.guest_cpp", |
| "//src/virtualization/lib/guest_interaction:common", |
| "//src/virtualization/lib/guest_interaction:fuchsia.virtualization.guest.interaction_hlcpp", |
| ] |
| |
| # Enables thrd_create_with_name in <threads.h>. |
| configs += [ "//build/config:all_source" ] |
| } |
| |
| executable("bin") { |
| testonly = true |
| output_name = "netemul_guest_cpp" |
| sources = [ "src/main.cc" ] |
| deps = [ |
| ":controller", |
| ":guest", |
| "//sdk/fidl/fuchsia.virtualization:fuchsia.virtualization_cpp", |
| "//sdk/lib/component/incoming/cpp", |
| "//sdk/lib/component/outgoing/cpp", |
| "//sdk/lib/syslog/cpp", |
| "//zircon/system/ulib/async-loop:async-loop-cpp", |
| "//zircon/system/ulib/fbl", |
| ] |
| } |
| |
| fidl("fuchsia.netemul.guest") { |
| testonly = true |
| sources = [ "fidl/guest.fidl" ] |
| |
| public_deps = [ |
| "//sdk/fidl/fuchsia.io", |
| "//sdk/fidl/fuchsia.net", |
| "//src/connectivity/network/testing/netemul/network-context/fidl:network", |
| "//src/virtualization/lib/guest_interaction:fuchsia.virtualization.guest.interaction", |
| ] |
| } |
| |
| fuchsia_test_component("netemul-guest") { |
| manifest = "meta/netemul-guest.cml" |
| deps = [ ":bin" ] |
| } |
| |
| group("tests") { |
| testonly = true |
| deps = [ "test:netemul-guest-self-tests" ] |
| } |