# Copyright (C) 2015 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
LOCAL_PATH := $(call my-dir)
# libtpm2
# ========================================================
include $(CLEAR_VARS)
LOCAL_MODULE := libtpm2
LOCAL_CFLAGS := -Wall -Wextra -Werror \
-Wno-typedef-redefinition \
-Wno-unused-parameter \
-Wno-missing-field-initializers \
-Wno-tautological-compare \
-Wno-sign-compare
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/tpm2
LOCAL_CLANG := true
LOCAL_SHARED_LIBRARIES := libcrypto
LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/include
LOCAL_SRC_FILES := \
ActivateCredential.c \
AlgorithmCap.c \
Attest_spt.c \
Bits.c \
Cancel.c \
Certify.c \
CertifyCreation.c \
ChangeEPS.c \
ChangePPS.c \
Clear.c \
ClearControl.c \
Clock.c \
ClockRateAdjust.c \
ClockSet.c \
CommandAudit.c \
CommandCodeAttributes.c \
CommandDispatcher.c \
Commit.c \
ContextLoad.c \
ContextSave.c \
Context_spt.c \
CpriCryptPri.c \
CpriECC.c \
CpriHash.c \
CpriMisc.c \
CpriRNG.c \
CpriRSA.c \
CpriSym.c \
Create.c \
CreatePrimary.c \
CryptSelfTest.c \
CryptUtil.c \
DA.c \
DRTM.c \
DictionaryAttackLockReset.c \
DictionaryAttackParameters.c \
Duplicate.c \
ECC_Parameters.c \
ECDH_KeyGen.c \
ECDH_ZGen.c \
EC_Ephemeral.c \
EncryptDecrypt.c \
Entity.c \
Entropy.c \
EventSequenceComplete.c \
EvictControl.c \
ExecCommand.c \
FieldUpgradeData.c \
FieldUpgradeStart.c \
FirmwareRead.c \
FlushContext.c \
GetCapability.c \
GetCommandAuditDigest.c \
GetCommandCodeString.c \
GetRandom.c \
GetSessionAuditDigest.c \
GetTestResult.c \
GetTime.c \
Global.c \
HMAC.c \
HMAC_Start.c \
Handle.c \
HandleProcess.c \
Hash.c \
HashSequenceStart.c \
Hierarchy.c \
HierarchyChangeAuth.c \
HierarchyControl.c \
Import.c \
IncrementalSelfTest.c \
Load.c \
LoadExternal.c \
Locality.c \
LocalityPlat.c \
MakeCredential.c \
Marshal_ActivateCredential.c \
Marshal_Certify.c \
Marshal_CertifyCreation.c \
Marshal_ChangeEPS.c \
Marshal_ChangePPS.c \
Marshal_Clear.c \
Marshal_ClearControl.c \
Marshal_ClockRateAdjust.c \
Marshal_ClockSet.c \
Marshal_Commit.c \
Marshal_ContextLoad.c \
Marshal_ContextSave.c \
Marshal_Create.c \
Marshal_CreatePrimary.c \
Marshal_DictionaryAttackLockReset.c \
Marshal_DictionaryAttackParameters.c \
Marshal_Duplicate.c \
Marshal_ECC_Parameters.c \
Marshal_ECDH_KeyGen.c \
Marshal_ECDH_ZGen.c \
Marshal_EC_Ephemeral.c \
Marshal_EncryptDecrypt.c \
Marshal_EventSequenceComplete.c \
Marshal_EvictControl.c \
Marshal_FirmwareRead.c \
Marshal_FlushContext.c \
Marshal_GetCapability.c \
Marshal_GetCommandAuditDigest.c \
Marshal_GetRandom.c \
Marshal_GetSessionAuditDigest.c \
Marshal_GetTestResult.c \
Marshal_GetTime.c \
Marshal_HMAC.c \
Marshal_HMAC_Start.c \
Marshal_Hash.c \
Marshal_HashSequenceStart.c \
Marshal_HierarchyChangeAuth.c \
Marshal_HierarchyControl.c \
Marshal_Import.c \
Marshal_IncrementalSelfTest.c \
Marshal_Load.c \
Marshal_LoadExternal.c \
Marshal_MakeCredential.c \
Marshal_NV_Certify.c \
Marshal_NV_ChangeAuth.c \
Marshal_NV_DefineSpace.c \
Marshal_NV_Extend.c \
Marshal_NV_GlobalWriteLock.c \
Marshal_NV_Increment.c \
Marshal_NV_Read.c \
Marshal_NV_ReadLock.c \
Marshal_NV_ReadPublic.c \
Marshal_NV_SetBits.c \
Marshal_NV_UndefineSpace.c \
Marshal_NV_UndefineSpaceSpecial.c \
Marshal_NV_Write.c \
Marshal_NV_WriteLock.c \
Marshal_ObjectChangeAuth.c \
Marshal_PCR_Allocate.c \
Marshal_PCR_Event.c \
Marshal_PCR_Extend.c \
Marshal_PCR_Read.c \
Marshal_PCR_Reset.c \
Marshal_PCR_SetAuthPolicy.c \
Marshal_PCR_SetAuthValue.c \
Marshal_PP_Commands.c \
Marshal_PolicyAuthValue.c \
Marshal_PolicyAuthorize.c \
Marshal_PolicyCommandCode.c \
Marshal_PolicyCounterTimer.c \
Marshal_PolicyCpHash.c \
Marshal_PolicyDuplicationSelect.c \
Marshal_PolicyGetDigest.c \
Marshal_PolicyLocality.c \
Marshal_PolicyNV.c \
Marshal_PolicyNameHash.c \
Marshal_PolicyNvWritten.c \
Marshal_PolicyOR.c \
Marshal_PolicyPCR.c \
Marshal_PolicyPassword.c \
Marshal_PolicyPhysicalPresence.c \
Marshal_PolicyRestart.c \
Marshal_PolicySecret.c \
Marshal_PolicySigned.c \
Marshal_PolicyTicket.c \
Marshal_Quote.c \
Marshal_RSA_Decrypt.c \
Marshal_RSA_Encrypt.c \
Marshal_ReadClock.c \
Marshal_ReadPublic.c \
Marshal_Rewrap.c \
Marshal_SelfTest.c \
Marshal_SequenceComplete.c \
Marshal_SequenceUpdate.c \
Marshal_SetAlgorithmSet.c \
Marshal_SetCommandCodeAuditStatus.c \
Marshal_SetPrimaryPolicy.c \
Marshal_Shutdown.c \
Marshal_Sign.c \
Marshal_StartAuthSession.c \
Marshal_Startup.c \
Marshal_StirRandom.c \
Marshal_TestParms.c \
Marshal_Unseal.c \
Marshal_VerifySignature.c \
Marshal_ZGen_2Phase.c \
Manufacture.c \
MathFunctions.c \
MemoryLib.c \
NV.c \
NVMem.c \
NV_Certify.c \
NV_ChangeAuth.c \
NV_DefineSpace.c \
NV_Extend.c \
NV_GlobalWriteLock.c \
NV_Increment.c \
NV_Read.c \
NV_ReadLock.c \
NV_ReadPublic.c \
NV_SetBits.c \
NV_UndefineSpace.c \
NV_UndefineSpaceSpecial.c \
NV_Write.c \
NV_WriteLock.c \
NV_spt.c \
Object.c \
ObjectChangeAuth.c \
Object_spt.c \
PCR.c \
PCR_Allocate.c \
PCR_Event.c \
PCR_Extend.c \
PCR_Read.c \
PCR_Reset.c \
PCR_SetAuthPolicy.c \
PCR_SetAuthValue.c \
PP.c \
PPPlat.c \
PP_Commands.c \
PlatformData.c \
PolicyAuthValue.c \
PolicyAuthorize.c \
PolicyCommandCode.c \
PolicyCounterTimer.c \
PolicyCpHash.c \
PolicyDuplicationSelect.c \
PolicyGetDigest.c \
PolicyLocality.c \
PolicyNV.c \
PolicyNameHash.c \
PolicyNvWritten.c \
PolicyOR.c \
PolicyPCR.c \
PolicyPassword.c \
PolicyPhysicalPresence.c \
PolicyRestart.c \
PolicySecret.c \
PolicySigned.c \
PolicyTicket.c \
Policy_spt.c \
Power.c \
PowerPlat.c \
PropertyCap.c \
Quote.c \
RSAData.c \
RSAKeySieve.c \
RSA_Decrypt.c \
RSA_Encrypt.c \
ReadClock.c \
ReadPublic.c \
Rewrap.c \
SelfTest.c \
SequenceComplete.c \
SequenceUpdate.c \
Session.c \
SessionProcess.c \
SetAlgorithmSet.c \
SetCommandCodeAuditStatus.c \
SetPrimaryPolicy.c \
Shutdown.c \
Sign.c \
StartAuthSession.c \
Startup.c \
StirRandom.c \
TestParms.c \
Ticket.c \
Time.c \
TpmFail.c \
Unique.c \
Unseal.c \
VerifySignature.c \
ZGen_2Phase.c \
_TPM_Hash_Data.c \
_TPM_Hash_End.c \
_TPM_Hash_Start.c \
_TPM_Init.c \
tpm_generated.c
include $(BUILD_SHARED_LIBRARY)