blob: 45121781d2be2a4e28d0da58733f7e2bfa7f13b7 [file] [log] [blame]
# Copyright 2020 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/deps.gni")
import("//common-mk/pkg_config.gni")
group("all") {
deps = [
":libec",
":libec_pc",
":libec_static",
]
if (use.test) {
deps += [ ":libec_tests" ]
}
}
default_pkg_deps = [
"libbrillo",
"libchrome",
]
pkg_config("target_defaults_pkg_deps") {
pkg_deps = default_pkg_deps
}
libec_sources = [
"ec_command_factory.cc",
"fingerprint/fp_context_command.cc",
"fingerprint/fp_context_command_factory.cc",
"fingerprint/fp_flashprotect_command.cc",
"fingerprint/fp_frame_command.cc",
"fingerprint/fp_info_command.cc",
"fingerprint/fp_mode.cc",
"fingerprint/fp_seed_command.cc",
"get_version_command.cc",
"versions_command.cc",
]
static_library("libec_static") {
sources = libec_sources
configs += [ ":target_defaults_pkg_deps" ]
}
shared_library("libec") {
sources = libec_sources
configs += [ ":target_defaults_pkg_deps" ]
}
if (use.test) {
executable("libec_tests") {
sources = [
"ec_command_async_test.cc",
"ec_command_test.cc",
"fingerprint/fp_context_command_factory_test.cc",
"fingerprint/fp_context_command_test.cc",
"fingerprint/fp_flashprotect_command_test.cc",
"fingerprint/fp_frame_command_test.cc",
"fingerprint/fp_info_command_test.cc",
"fingerprint/fp_mode_test.cc",
"fingerprint/fp_seed_command_test.cc",
"get_version_command_test.cc",
"versions_command_test.cc",
]
configs += [
"//common-mk:test",
":target_defaults_pkg_deps",
]
deps = [
":libec_static",
"//common-mk/testrunner",
]
pkg_deps = [ "libchrome-test" ]
}
}
generate_pkg_config("libec_pc") {
name = "libec"
output_name = "libec"
description = "Chromium OS Embedded Controller Library"
version = "0.1"
# ec_command.h uses base/logging.h (and is a header-only class), so we need
# a direct dependency on libchrome.
requires = [ "libchrome" ]
requires_private = default_pkg_deps
libs = [ "-lec" ]
}