blob: 5ad3372a82ca63ae3cc89981dac1b41d0267ccf0 [file] [log] [blame]
# Copyright 2019 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.
EAPI=7
CROS_WORKON_COMMIT="7e56fbcc6f3c9e9ba98bf43a52940100e5fbc918"
CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "2bd42cf4f2f41e68c177dfdba095d8d3412fd76c" "1e9ca239fab09ba22b58e4a22d63e2ede865b159" "d8da1275feb26afab354f35df7316b3840f8330b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
CROS_WORKON_INCREMENTAL_BUILD=1
CROS_WORKON_LOCALNAME="platform2"
CROS_WORKON_PROJECT="chromiumos/platform2"
CROS_WORKON_OUTOFTREE_BUILD=1
CROS_WORKON_SUBTREE="common-mk libhwsec libhwsec-foundation trunks .gn"
PLATFORM_SUBDIR="libhwsec"
inherit cros-workon platform
DESCRIPTION="Crypto and utility functions used in TPM related daemons."
HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/libhwsec/"
LICENSE="BSD-Google"
KEYWORDS="*"
IUSE="test fuzzer tpm tpm2 tpm_dynamic"
COMMON_DEPEND="
chromeos-base/libhwsec-foundation
dev-libs/openssl:0=
tpm2? ( chromeos-base/trunks:= )
tpm? ( app-crypt/trousers:= )
fuzzer? (
app-crypt/trousers:=
chromeos-base/trunks:=
)
"
RDEPEND="${COMMON_DEPEND}"
DEPEND="${COMMON_DEPEND}"
src_install() {
insinto /usr/include/chromeos/libhwsec
doins ./*.h
insinto /usr/include/chromeos/libhwsec/overalls
doins ./overalls/overalls.h
doins ./overalls/overalls_api.h
insinto /usr/include/chromeos/libhwsec/error
doins ./error/tpm_error.h
if use tpm || use fuzzer; then
insinto /usr/include/chromeos/libhwsec/test_utils/tpm1
doins ./test_utils/tpm1/*.h
insinto /usr/include/chromeos/libhwsec/error
doins ./error/tpm1_error.h
fi
if use tpm2 || use fuzzer; then
insinto /usr/include/chromeos/libhwsec/error
doins ./error/tpm2_error.h
fi
dolib.so "${OUT}"/lib/libhwsec.so
dolib.a "${OUT}"/libhwsec_test.a
}
platform_pkg_test() {
local tests=(
hwsec_testrunner
)
local test_bin
for test_bin in "${tests[@]}"; do
platform_test "run" "${OUT}/${test_bin}"
done
}