| # 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("//build/config/fuchsia/rules.gni") |
| import("//build/dist/component_manifest_resources.gni") |
| import("//build/test.gni") |
| import("//src/sys/build/fuchsia_test_package.gni") |
| import("//src/sys/build/fuchsia_unittest_component.gni") |
| |
| group("bootfs") { |
| deps = [ |
| ":meta", |
| ":virtual-console", |
| ] |
| } |
| |
| component_manifest_resources("meta") { |
| sources = [ "meta/virtual-console.cml" ] |
| } |
| |
| # This can't be a source_set() because the test compiles with a #define. |
| common_sources = [ |
| "args.cc", |
| "keyboard-vt100.cc", |
| "keyboard.cc", |
| "textcon.cc", |
| "vc-device.cc", |
| "vc-gfx.cc", |
| "vc-input.cc", |
| ] |
| |
| group("common") { |
| visibility = [ ":*" ] |
| |
| public_deps = [ |
| "//sdk/banjo/fuchsia.hardware.display.controller", |
| "//sdk/fidl/fuchsia.boot:fuchsia.boot_llcpp", |
| "//sdk/fidl/fuchsia.hardware.display:fuchsia.hardware.display_llcpp", |
| "//sdk/fidl/fuchsia.hardware.input:fuchsia.hardware.input_c", |
| "//sdk/fidl/fuchsia.hardware.power.statecontrol:fuchsia.hardware.power.statecontrol_llcpp", |
| "//sdk/fidl/fuchsia.hardware.pty:fuchsia.hardware.pty_llcpp", |
| "//sdk/fidl/fuchsia.input.report:fuchsia.input.report_llcpp", |
| "//sdk/fidl/fuchsia.io:fuchsia.io_llcpp", |
| "//sdk/fidl/fuchsia.sysmem:fuchsia.sysmem_llcpp", |
| "//sdk/fidl/fuchsia.virtualconsole:fuchsia.virtualconsole_llcpp", |
| "//sdk/lib/fdio", |
| "//sdk/lib/stdcompat", |
| "//sdk/lib/svc", |
| "//src/lib/fsl", |
| "//src/lib/listnode", |
| "//src/storage/deprecated-fs-fidl-handler", |
| "//src/ui/input/lib/hid-input-report", |
| "//src/ui/lib/key_util", |
| "//zircon/public/lib/fbl", |
| "//zircon/public/lib/fidl", |
| "//zircon/public/lib/gfx", |
| "//zircon/public/lib/gfx-font-data", |
| "//zircon/public/lib/zircon-internal", |
| "//zircon/public/lib/zx", |
| "//zircon/system/ulib/async-loop:async-loop-cpp", |
| "//zircon/system/ulib/fdio-caller", |
| "//zircon/system/ulib/fs", |
| "//zircon/system/ulib/fzl", |
| "//zircon/system/ulib/hid", |
| "//zircon/system/ulib/hid-parser", |
| "//zircon/system/ulib/image-format", |
| "//zircon/system/ulib/image-format:image-format-llcpp", |
| "//zircon/system/ulib/statusor", |
| "//zircon/system/ulib/svc", |
| ] |
| } |
| |
| executable("virtual-console") { |
| sources = common_sources + [ |
| "main.cc", |
| "vc-display.cc", |
| "vc-log.cc", |
| "session-manager.cc", |
| ] |
| deps = [ |
| ":common", |
| "//sdk/lib/syslog/cpp", |
| "//src/sys/lib/stdout-to-debuglog/cpp", |
| "//zircon/public/lib/zxc", |
| ] |
| } |
| |
| test("vc-display-test") { |
| defines = [ "BUILD_FOR_DISPLAY_TEST" ] |
| sources = [ |
| "vc-display-test.cc", |
| "vc-display.cc", |
| ] |
| deps = [ |
| ":common", |
| "//zircon/public/lib/zxtest", |
| "//zircon/system/ulib/async-loop:async-loop-cpp", |
| "//zircon/system/ulib/async-loop:async-loop-default", |
| ] |
| } |
| |
| fuchsia_unittest_component("virtual-console-display-test") { |
| deps = [ ":vc-display-test" ] |
| manifest = "meta/virtual-console-display-test.cmx" |
| } |
| |
| test("vc-text-test") { |
| defines = [ "BUILD_FOR_TEST" ] |
| |
| sources = common_sources + [ |
| "keyboard-test.cc", |
| "textcon-test.cc", |
| ] |
| |
| deps = [ |
| ":common", |
| "//zircon/public/lib/zxtest", |
| ] |
| } |
| |
| fuchsia_unittest_component("virtual-console-text-test") { |
| deps = [ ":vc-text-test" ] |
| } |
| |
| test("vc-session-manager-test") { |
| sources = [ |
| "keyboard-vt100.cc", |
| "session-manager-test.cc", |
| "session-manager.cc", |
| "textcon.cc", |
| "vc-device.cc", |
| "vc-input.cc", |
| "vc-log.cc", |
| ] |
| |
| deps = [ |
| ":common", |
| "//zircon/public/lib/zxc", |
| "//zircon/public/lib/zxtest", |
| ] |
| } |
| |
| fuchsia_unittest_component("virtual-console-session-manager-test") { |
| deps = [ ":vc-session-manager-test" ] |
| manifest = "meta/virtual-console-session-manager-test.cmx" |
| } |
| |
| test("vc-integration-test") { |
| sources = [ "vc-integration-test.cc" ] |
| |
| deps = [ |
| "//sdk/fidl/fuchsia.virtualconsole:fuchsia.virtualconsole_c", |
| "//sdk/lib/fdio", |
| "//zircon/public/lib/zx", |
| "//zircon/public/lib/zxtest", |
| ] |
| } |
| |
| fuchsia_unittest_component("virtual-console-integration-test") { |
| deps = [ ":vc-integration-test" ] |
| } |
| |
| test("vc-args-test") { |
| sources = [ |
| "args-test.cc", |
| "args.cc", |
| ] |
| |
| deps = [ |
| ":common", |
| "//sdk/fidl/fuchsia.hardware.pty:fuchsia.hardware.pty_llcpp", |
| "//zircon/public/lib/zxtest", |
| "//zircon/system/ulib/async-default", |
| "//zircon/system/ulib/async-loop:async-loop-cpp", |
| "//zircon/system/ulib/async-loop:async-loop-default", |
| "//zircon/system/ulib/fidl-async", |
| "//zircon/system/ulib/fidl-async:fidl-async-cpp", |
| "//zircon/system/ulib/mock-boot-arguments", |
| ] |
| } |
| |
| fuchsia_unittest_component("virtual-console-args-test") { |
| deps = [ ":vc-args-test" ] |
| } |
| |
| fuchsia_test_package("virtcon-tests") { |
| test_components = [ |
| ":virtual-console-args-test", |
| ":virtual-console-session-manager-test", |
| ":virtual-console-display-test", |
| ":virtual-console-integration-test", |
| ":virtual-console-text-test", |
| ] |
| } |
| |
| group("tests") { |
| testonly = true |
| deps = [ ":virtcon-tests" ] |
| } |