blob: d11784b6bcc4305fa98e1e884d3b82c8b2b94cef [file] [log] [blame]
# Copyright 2018 The Chromium OS 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("//common-mk/pkg_config.gni")
group("all") {
deps = [
":clobber-state",
":cros_sysrq_init",
":file_attrs_cleaner_tool",
":net_poll_tool",
":periodic_scheduler",
":static_node_tool",
":usermode-helper",
]
if (use.test) {
deps += [
":clobber_state_test",
":file_attrs_cleaner_test",
":periodic_scheduler_test",
":usermode-helper_test",
":utils_test",
]
}
}
pkg_config("target_defaults") {
defines = [
"USE_LVM_STATEFUL_PARTITION=${use.lvm_stateful_partition}",
"USE_ENCRYPTED_STATEFUL=${use.encrypted_stateful}",
]
pkg_deps = [
"libbrillo",
"libchrome",
"libcrypto",
"libmetrics",
"vboot_host",
]
libs = [
"rootdev",
"secure_erase_file",
]
}
static_library("libcrossystem") {
sources = [
"crossystem.cc",
"crossystem_fake.cc",
"crossystem_impl.cc",
]
configs += [ ":target_defaults" ]
}
static_library("utils") {
sources = [ "utils.cc" ]
configs += [ ":target_defaults" ]
}
static_library("libclobber") {
sources = [
"clobber_state.cc",
"clobber_ui.cc",
]
configs += [ ":target_defaults" ]
deps = [ ":utils" ]
}
executable("clobber-state") {
sources = [ "clobber_state_main.cc" ]
configs += [ ":target_defaults" ]
deps = [
":libclobber",
":libcrossystem",
":utils",
]
}
static_library("file_attrs_cleaner_lib") {
sources = [ "file_attrs_cleaner_lib.cc" ]
configs += [ ":target_defaults" ]
}
executable("file_attrs_cleaner_tool") {
sources = [ "file_attrs_cleaner_tool.cc" ]
configs += [ ":target_defaults" ]
deps = [ ":file_attrs_cleaner_lib" ]
}
executable("periodic_scheduler") {
sources = [
"periodic_scheduler.cc",
"periodic_scheduler_main.cc",
]
configs += [ ":target_defaults" ]
}
executable("cros_sysrq_init") {
sources = [ "cros_sysrq_init.cc" ]
pkg_deps = [ "vboot_host" ]
configs += [ ":target_defaults" ]
}
executable("net_poll_tool") {
sources = [ "net_poll_tool.cc" ]
configs += [ ":target_defaults" ]
}
executable("static_node_tool") {
sources = [ "static_node_tool.cc" ]
configs += [ ":target_defaults" ]
}
static_library("usermode-helper_lib") {
sources = [ "usermode-helper_lib.cc" ]
configs += [ ":target_defaults" ]
}
executable("usermode-helper") {
sources = [ "usermode-helper.cc" ]
configs += [ ":target_defaults" ]
deps = [ ":usermode-helper_lib" ]
}
if (use.test) {
pkg_config("test_config") {
pkg_deps = [ "libchrome-test" ]
}
executable("clobber_state_test") {
sources = [
"clobber_state_test.cc",
"clobber_ui_test.cc",
]
configs += [
"//common-mk:test",
":target_defaults",
":test_config",
]
deps = [
":libclobber",
":libcrossystem",
":utils",
"//common-mk/testrunner",
]
}
executable("file_attrs_cleaner_test") {
sources = [ "file_attrs_cleaner_test.cc" ]
configs += [
"//common-mk:test",
":target_defaults",
":test_config",
]
deps = [
":file_attrs_cleaner_lib",
"//common-mk/testrunner",
]
}
executable("periodic_scheduler_test") {
sources = [
"periodic_scheduler.cc",
"periodic_scheduler_test.cc",
]
configs += [
"//common-mk:test",
":target_defaults",
":test_config",
]
deps = [ "//common-mk/testrunner" ]
}
executable("usermode-helper_test") {
sources = [ "usermode-helper_test.cc" ]
configs += [
"//common-mk:test",
":target_defaults",
":test_config",
]
deps = [
":usermode-helper_lib",
"//common-mk/testrunner",
]
}
executable("utils_test") {
sources = [ "utils_test.cc" ]
configs += [
"//common-mk:test",
":target_defaults",
":test_config",
]
deps = [
":utils",
"//common-mk/testrunner",
]
}
}