blob: bfab820f9ddc2ba5bf088f561150c2552059789a [file] [log] [blame]
# Copyright 2021 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 = [ ":rmad" ]
if (use.test) {
deps += [ ":rmad_test" ]
}
}
pkg_config("target_defaults") {
# Manually add the include path so that the generated hardware_verifier.pb.h
# can include runtime_probe.pb.h properly.
cflags = [ "-I${sysroot}/usr/include/runtime_probe/proto_bindings" ]
# NOSORT
pkg_deps = [
"libbrillo",
"libchrome",
"libcros_config",
"libmems",
"libminijail",
"libshill-client",
"libtpm_manager-client",
"libuser_data_auth-client",
"re2",
"vboot_host",
# system_api depends on protobuf (or protobuf-lite). It must appear
# before protobuf here or the linker flags won't be in the right
# order.
"system_api",
"openssl",
"protobuf",
]
}
static_library("libsystem") {
sources = [
"system/cros_disks_client_impl.cc",
"system/cryptohome_client_impl.cc",
"system/fake_cryptohome_client.cc",
"system/fake_hardware_verifier_client.cc",
"system/fake_power_manager_client.cc",
"system/fake_runtime_probe_client.cc",
"system/fake_tpm_manager_client.cc",
"system/hardware_verifier_client_impl.cc",
"system/power_manager_client_impl.cc",
"system/runtime_probe_client_impl.cc",
"system/shill_client_impl.cc",
"system/tpm_manager_client_impl.cc",
]
configs += [ ":target_defaults" ]
}
static_library("libutils") {
sources = [
"utils/accelerometer_calibration_utils_impl.cc",
"utils/calibration_utils.cc",
"utils/cbi_utils_impl.cc",
"utils/cmd_utils_impl.cc",
"utils/component_utils.cc",
"utils/cr50_utils_impl.cc",
"utils/cros_config_utils_impl.cc",
"utils/crossystem_utils_impl.cc",
"utils/dbus_utils.cc",
"utils/fake_cbi_utils.cc",
"utils/fake_cr50_utils.cc",
"utils/fake_cros_config_utils.cc",
"utils/fake_crossystem_utils.cc",
"utils/fake_iio_sensor_probe_utils.cc",
"utils/fake_regions_utils.cc",
"utils/fake_sys_utils.cc",
"utils/fake_vpd_utils.cc",
"utils/flashrom_utils_impl.cc",
"utils/gyroscope_calibration_utils_impl.cc",
"utils/iio_ec_sensor_utils_impl.cc",
"utils/iio_sensor_probe_utils_impl.cc",
"utils/json_store.cc",
"utils/regions_utils_impl.cc",
"utils/sys_utils_impl.cc",
"utils/vpd_utils_impl.cc",
"utils/vpd_utils_impl_thread_safe.cc",
]
configs += [ ":target_defaults" ]
deps = [ "//hardware_verifier/proto:hardware_verifier-protos" ]
}
static_library("libmetrics") {
sources = [
"metrics/fake_metrics_utils.cc",
"metrics/metrics_utils_impl.cc",
]
configs += [ ":target_defaults" ]
deps = [ "//metrics/structured:libstructuredmetrics" ]
}
static_library("libstate_handler") {
sources = [
"state_handler/base_state_handler.cc",
"state_handler/check_calibration_state_handler.cc",
"state_handler/components_repair_state_handler.cc",
"state_handler/device_destination_state_handler.cc",
"state_handler/finalize_state_handler.cc",
"state_handler/provision_device_state_handler.cc",
"state_handler/repair_complete_state_handler.cc",
"state_handler/restock_state_handler.cc",
"state_handler/run_calibration_state_handler.cc",
"state_handler/setup_calibration_state_handler.cc",
"state_handler/state_handler_manager.cc",
"state_handler/update_device_info_state_handler.cc",
"state_handler/update_ro_firmware_state_handler.cc",
"state_handler/welcome_screen_state_handler.cc",
"state_handler/write_protect_disable_complete_state_handler.cc",
"state_handler/write_protect_disable_method_state_handler.cc",
"state_handler/write_protect_disable_physical_state_handler.cc",
"state_handler/write_protect_disable_rsu_state_handler.cc",
"state_handler/write_protect_enable_physical_state_handler.cc",
]
configs += [ ":target_defaults" ]
deps = [
":libmetrics",
":libsystem",
":libutils",
]
}
static_library("librmad") {
sources = [
"dbus_service.cc",
"rmad_interface_impl.cc",
]
configs += [ ":target_defaults" ]
deps = [
":libmetrics",
":libstate_handler",
":libutils",
]
}
executable("rmad") {
sources = [ "main.cc" ]
configs += [ ":target_defaults" ]
deps = [ ":librmad" ]
}
if (use.test) {
pkg_config("rmad_test_config") {
pkg_deps = [
"libmems_test_support",
"libshill-client-test",
"libtpm_manager-client-test",
"libuser_data_auth-client-test",
]
}
executable("rmad_test") {
sources = [
"dbus_service_test.cc",
"metrics/metrics_utils_impl_test.cc",
"rmad_interface_test.cc",
"state_handler/base_state_handler_test.cc",
"state_handler/check_calibration_state_handler_test.cc",
"state_handler/components_repair_state_handler_test.cc",
"state_handler/device_destination_state_handler_test.cc",
"state_handler/finalize_state_handler_test.cc",
"state_handler/provision_device_state_handler_test.cc",
"state_handler/repair_complete_state_handler_test.cc",
"state_handler/restock_state_handler_test.cc",
"state_handler/run_calibration_state_handler_test.cc",
"state_handler/setup_calibration_state_handler_test.cc",
"state_handler/state_handler_manager_test.cc",
"state_handler/state_handler_test_common.cc",
"state_handler/update_device_info_state_handler_test.cc",
"state_handler/update_ro_firmware_state_handler_test.cc",
"state_handler/welcome_screen_state_handler_test.cc",
"state_handler/write_protect_disable_complete_state_handler_test.cc",
"state_handler/write_protect_disable_method_state_handler_test.cc",
"state_handler/write_protect_disable_physical_state_handler_test.cc",
"state_handler/write_protect_disable_rsu_state_handler_test.cc",
"state_handler/write_protect_enable_physical_state_handler_test.cc",
"system/cros_disks_client_test.cc",
"system/cryptohome_client_test.cc",
"system/hardware_verifier_client_test.cc",
"system/power_manager_client_test.cc",
"system/runtime_probe_client_test.cc",
"system/shill_client_test.cc",
"system/tpm_manager_client_test.cc",
"utils/cbi_utils_test.cc",
"utils/cmd_utils_test.cc",
"utils/component_utils_test.cc",
"utils/cr50_utils_test.cc",
"utils/cros_config_utils_test.cc",
"utils/crossystem_utils_test.cc",
"utils/dbus_utils_test.cc",
"utils/flashrom_utils_test.cc",
"utils/iio_sensor_probe_utils_test.cc",
"utils/json_store_test.cc",
"utils/regions_utils_test.cc",
"utils/sys_utils_test.cc",
"utils/vpd_utils_test.cc",
]
configs += [
"//common-mk:test",
":target_defaults",
":rmad_test_config",
]
deps = [
":librmad",
"//common-mk/testrunner",
]
}
}