blob: 8bfcf7283eb6765dda374b6b6bd29e79c1f264c1 [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/pkg_config.gni")
group("all") {
deps = [
":attestation-injected-keys",
":fake_pca_agentd",
":hwsec-test-va",
]
if (use.test) {
deps += [ ":hwsec-test-utils_testrunner" ]
}
}
pkg_config("target_defaults") {
pkg_deps = [
"libbrillo",
"libchrome",
]
defines = [ "USE_TPM2=${use.tpm2}" ]
}
executable("attestation-injected-keys") {
configs += [ ":target_defaults" ]
sources = [
"attestation_injected_keys/main.cc",
"attestation_injected_keys/utility.cc",
]
# NOSORT
pkg_deps = [
# 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",
"protobuf",
]
}
executable("hwsec-test-va") {
configs += [ ":target_defaults" ]
sources = [ "verified_access/main.cc" ]
deps = [
":common_library",
":verified_access_library",
]
# NOSORT
pkg_deps = [
"openssl",
# 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",
"protobuf",
]
}
source_set("common_library") {
configs += [ ":target_defaults" ]
sources = [
"common/attestation_crypto.cc",
"common/openssl_utility.cc",
"well_known_key_pairs/well_known_key_pairs.cc",
]
}
source_set("verified_access_library") {
configs += [ ":target_defaults" ]
sources = [ "verified_access/verified_access.cc" ]
}
executable("fake_pca_agentd") {
configs += [ ":target_defaults" ]
sources = [ "fake_pca_agent/main.cc" ]
deps = [
":common_library",
":fake_pca_agent_library",
]
# NOSORT
pkg_deps = [
"openssl",
# 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",
"protobuf",
]
}
source_set("fake_pca_agent_library") {
configs += [ ":target_defaults" ]
sources = [
"fake_pca_agent/issue_certificate.cc",
"fake_pca_agent/pca_factory.cc",
"fake_pca_agent/service.cc",
]
if (use.tpm2) {
sources += [
"fake_pca_agent/kdf.cc",
"fake_pca_agent/pca_certify_v2.cc",
"fake_pca_agent/pca_enroll_v2.cc",
"fake_pca_agent/tpm2_struct_utils.cc",
]
libs = [ "trunks" ]
} else {
sources += [
"fake_pca_agent/pca_certify_v1.cc",
"fake_pca_agent/pca_enroll_v1.cc",
"fake_pca_agent/tpm1_struct_utils.cc",
]
libs = [ "tspi" ]
}
}
if (use.test) {
pkg_config("hwsec-test-utils_testrunner_config") {
pkg_deps = [ "libchrome-test" ]
}
executable("hwsec-test-utils_testrunner") {
configs += [
":target_defaults",
":hwsec-test-utils_testrunner_config",
"//common-mk:test",
]
sources = [ "verified_access/verified_access_test.cc" ]
deps = [
":common_library",
":fake_pca_agent_library",
":verified_access_library",
"//common-mk/testrunner",
]
if (use.tpm2) {
sources += [
"fake_pca_agent/pca_certify_v2_test.cc",
"fake_pca_agent/pca_enroll_v2_test.cc",
]
libs = [ "trunks" ]
} else {
sources += [
"fake_pca_agent/pca_certify_v1_test.cc",
"fake_pca_agent/pca_enroll_v1_test.cc",
]
libs = [ "tspi" ]
}
# NOSORT
pkg_deps = [
"openssl",
# 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",
"protobuf",
]
}
}