blob: d62e3c146a0f4b325d4efdabe7af5b9c431f3b9a [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 = [
":libhwsec-foundation",
":tpm_version_client",
]
if (use.test) {
deps += [ ":hwsec-foundation_testrunner" ]
}
}
pkg_config("target_defaults") {
defines = [
"USE_TPM1=${use.tpm}",
"USE_TPM2=${use.tpm2}",
"USE_TPM_DYNAMIC=${use.tpm_dynamic}",
]
pkg_deps = [
"libbrillo",
"libchrome",
"openssl",
"re2",
]
}
shared_library("libhwsec-foundation") {
sources = [
"da_reset/da_resetter.cc",
"syscaller/syscaller_impl.cc",
"tpm/tpm_version.cc",
"tpm_error/auth_failure_analysis.cc",
"tpm_error/handle_auth_failure.cc",
"tpm_error/tpm_error_data.cc",
"tpm_error/tpm_error_uma_reporter.cc",
"utility/crypto.cc",
]
pkg_deps = [
"libmetrics",
"libtpm_manager-client",
"system_api",
]
configs += [ ":target_defaults" ]
if (use.fuzzer && use.tpm) {
sources += [ "fuzzed_trousers_utils.cc" ]
configs += [ "//common-mk/common_fuzzer:common_fuzzer" ]
}
}
executable("tpm_version_client") {
sources = [ "tool/tpm_version_client.cc" ]
configs += [ ":target_defaults" ]
deps = [ ":libhwsec-foundation" ]
}
if (use.test) {
pkg_config("test_config") {
pkg_deps = [
"libchrome-test",
"libmetrics",
"libtpm_manager-client",
"libtpm_manager-client-test",
"system_api",
]
}
executable("hwsec-foundation_testrunner") {
sources = [
"da_reset/da_resetter_test.cc",
"error/error_test.cc",
"tpm_error/auth_failure_analysis_test.cc",
"tpm_error/handle_auth_failure_test.cc",
"tpm_error/tpm_error_uma_reporter_test.cc",
"utility/crypto_test.cc",
]
sources += [
"tpm_error/tpm_error_data.cc",
"tpm_error/tpm_error_uma_reporter.cc",
]
configs += [
"//common-mk:test",
":target_defaults",
":test_config",
]
deps = [
":libhwsec-foundation",
"//common-mk/testrunner",
]
}
}