blob: 082bd59ed791015318ec952924899239bfd09584 [file] [log] [blame]
# 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/package.gni")
import("//build/test.gni")
import("//build/test/test_package.gni")
import("//build/unification/images/migrated_manifest.gni")
group("tests") {
testonly = true
public_deps = [ ":cmd_tests" ]
}
source_set("lib") {
sources = [
"app.cc",
"app.h",
"autocomplete.cc",
"autocomplete.h",
"command.cc",
"command.h",
"console.cc",
"console.h",
"executor.cc",
"executor.h",
"tasks/cd_task.cc",
"tasks/cd_task.h",
"tasks/getenv_task.cc",
"tasks/getenv_task.h",
"tasks/process_task.cc",
"tasks/process_task.h",
"tasks/quit_task.cc",
"tasks/quit_task.h",
"tasks/setenv_task.cc",
"tasks/setenv_task.h",
"tasks/synchronous_task.cc",
"tasks/synchronous_task.h",
"tasks/task.cc",
"tasks/task.h",
"tasks/unsetenv_task.cc",
"tasks/unsetenv_task.h",
]
public_deps = [
"//src/developer/cmd/legacy",
"//src/lib/fsl",
"//src/lib/line_input",
"//zircon/public/lib/async-cpp",
"//zircon/public/lib/cmdline",
"//zircon/public/lib/fit",
"//zircon/public/lib/zircon-internal",
"//zircon/public/lib/zx",
"//zircon/system/fidl/fuchsia-hardware-pty:c",
]
}
executable("bin") {
output_name = "cmd"
sources = [ "main.cc" ]
deps = [
":lib",
"//zircon/public/lib/async-loop-cpp",
]
}
executable("cmd_unittests") {
testonly = true
sources = [
"app_unittest.cc",
"autocomplete_unittest.cc",
"command_unittest.cc",
"console_unittest.cc",
"executor_unittest.cc",
"tasks/cd_task_unittest.cc",
"tasks/getenv_task_unittest.cc",
"tasks/process_task_unittest.cc",
"tasks/quit_task_unittest.cc",
"tasks/setenv_task_unittest.cc",
"tasks/synchronous_task_unittest.cc",
"tasks/unsetenv_task_unittest.cc",
]
deps = [
":lib",
"//src/lib/fxl/test:gtest_main",
"//src/lib/testing/loop_fixture",
"//third_party/googletest:gmock",
"//third_party/googletest:gtest",
"//zircon/public/lib/fbl",
"//zircon/public/lib/fdio",
"//zircon/public/lib/zx",
]
# TODO(46549): Fix the leaks and remove this.
deps += [ "//build/config/sanitizers:suppress-lsan.DO-NOT-USE-THIS" ]
}
package("cmd") {
deps = [ ":bin" ]
binaries = [
{
name = "cmd"
shell = true
},
]
}
test_package("cmd_tests") {
deps = [
":cmd_unittests",
"testing:trivial_success",
]
binaries = [
{
name = "trivial_success"
},
]
tests = [
{
name = "cmd_unittests"
environments = basic_envs
},
]
}
migrated_manifest("bin-manifest") {
deps = [ ":bin" ]
}