
# Copyright 2015 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.

obj ?= ./build
CROSS_COMPILE ?=
AR ?= $(CROSS_COMPILE)ar
CC ?= $(CROSS_COMPILE)gcc
OBJCOPY ?= $(CROSS_COMPILE)objcopy

HOST_SOURCES =
SOURCES  = ActivateCredential.c
SOURCES += AlgorithmCap.c
SOURCES += Attest_spt.c
SOURCES += Bits.c
SOURCES += Cancel.c
SOURCES += Certify.c
SOURCES += CertifyCreation.c
SOURCES += ChangeEPS.c
SOURCES += ChangePPS.c
SOURCES += Clear.c
SOURCES += ClearControl.c
SOURCES += Clock.c
SOURCES += ClockRateAdjust.c
SOURCES += ClockSet.c
SOURCES += CommandAudit.c
SOURCES += CommandCodeAttributes.c
SOURCES += CommandDispatcher.c
SOURCES += Commit.c
SOURCES += ContextLoad.c
SOURCES += ContextSave.c
SOURCES += Context_spt.c
HOST_SOURCES += CpriCryptPri.c
HOST_SOURCES += CpriECC.c
HOST_SOURCES += CpriHash.c
HOST_SOURCES += CpriMisc.c
HOST_SOURCES += CpriRNG.c
HOST_SOURCES += CpriRSA.c
HOST_SOURCES += CpriSym.c
SOURCES += Create.c
SOURCES += CreatePrimary.c
SOURCES += CryptSelfTest.c
SOURCES += CryptUtil.c
SOURCES += DA.c
SOURCES += DRTM.c
SOURCES += DictionaryAttackLockReset.c
SOURCES += DictionaryAttackParameters.c
SOURCES += Duplicate.c
SOURCES += ECC_Parameters.c
SOURCES += ECDH_KeyGen.c
SOURCES += ECDH_ZGen.c
SOURCES += EC_Ephemeral.c
SOURCES += EncryptDecrypt.c
HOST_SOURCES += endorsement.c
SOURCES += Entity.c
HOST_SOURCES += Entropy.c
SOURCES += EventSequenceComplete.c
SOURCES += EvictControl.c
SOURCES += ExecCommand.c
SOURCES += FieldUpgradeData.c
SOURCES += FieldUpgradeStart.c
SOURCES += FirmwareRead.c
SOURCES += FlushContext.c
SOURCES += GetCapability.c
SOURCES += GetCommandAuditDigest.c
SOURCES += GetCommandCodeString.c
SOURCES += GetRandom.c
SOURCES += GetSessionAuditDigest.c
SOURCES += GetTestResult.c
SOURCES += GetTime.c
SOURCES += Global.c
SOURCES += GlobalStateCleanup.c
SOURCES += HMAC.c
SOURCES += HMAC_Start.c
SOURCES += Handle.c
SOURCES += HandleProcess.c
SOURCES += Hash.c
SOURCES += HashSequenceStart.c
SOURCES += Hierarchy.c
SOURCES += HierarchyChangeAuth.c
SOURCES += HierarchyControl.c
SOURCES += Import.c
SOURCES += IncrementalSelfTest.c
SOURCES += Load.c
SOURCES += LoadExternal.c
SOURCES += Locality.c
SOURCES += LocalityPlat.c
SOURCES += MakeCredential.c
SOURCES += Marshal_ActivateCredential.c
SOURCES += Marshal_Certify.c
SOURCES += Marshal_CertifyCreation.c
SOURCES += Marshal_ChangeEPS.c
SOURCES += Marshal_ChangePPS.c
SOURCES += Marshal_Clear.c
SOURCES += Marshal_ClearControl.c
SOURCES += Marshal_ClockRateAdjust.c
SOURCES += Marshal_ClockSet.c
SOURCES += Marshal_Commit.c
SOURCES += Marshal_ContextLoad.c
SOURCES += Marshal_ContextSave.c
SOURCES += Marshal_Create.c
SOURCES += Marshal_CreatePrimary.c
SOURCES += Marshal_DictionaryAttackLockReset.c
SOURCES += Marshal_DictionaryAttackParameters.c
SOURCES += Marshal_Duplicate.c
SOURCES += Marshal_ECC_Parameters.c
SOURCES += Marshal_ECDH_KeyGen.c
SOURCES += Marshal_ECDH_ZGen.c
SOURCES += Marshal_EC_Ephemeral.c
SOURCES += Marshal_EncryptDecrypt.c
SOURCES += Marshal_EventSequenceComplete.c
SOURCES += Marshal_EvictControl.c
SOURCES += Marshal_FieldUpgradeData.c
SOURCES += Marshal_FieldUpgradeStart.c
SOURCES += Marshal_FirmwareRead.c
SOURCES += Marshal_FlushContext.c
SOURCES += Marshal_GetCapability.c
SOURCES += Marshal_GetCommandAuditDigest.c
SOURCES += Marshal_GetRandom.c
SOURCES += Marshal_GetSessionAuditDigest.c
SOURCES += Marshal_GetTestResult.c
SOURCES += Marshal_GetTime.c
SOURCES += Marshal_HMAC.c
SOURCES += Marshal_HMAC_Start.c
SOURCES += Marshal_Hash.c
SOURCES += Marshal_HashSequenceStart.c
SOURCES += Marshal_HierarchyChangeAuth.c
SOURCES += Marshal_HierarchyControl.c
SOURCES += Marshal_Import.c
SOURCES += Marshal_IncrementalSelfTest.c
SOURCES += Marshal_Load.c
SOURCES += Marshal_LoadExternal.c
SOURCES += Marshal_MakeCredential.c
SOURCES += Marshal_NV_Certify.c
SOURCES += Marshal_NV_ChangeAuth.c
SOURCES += Marshal_NV_DefineSpace.c
SOURCES += Marshal_NV_Extend.c
SOURCES += Marshal_NV_GlobalWriteLock.c
SOURCES += Marshal_NV_Increment.c
SOURCES += Marshal_NV_Read.c
SOURCES += Marshal_NV_ReadLock.c
SOURCES += Marshal_NV_ReadPublic.c
SOURCES += Marshal_NV_SetBits.c
SOURCES += Marshal_NV_UndefineSpace.c
SOURCES += Marshal_NV_UndefineSpaceSpecial.c
SOURCES += Marshal_NV_Write.c
SOURCES += Marshal_NV_WriteLock.c
SOURCES += Marshal_ObjectChangeAuth.c
SOURCES += Marshal_PCR_Allocate.c
SOURCES += Marshal_PCR_Event.c
SOURCES += Marshal_PCR_Extend.c
SOURCES += Marshal_PCR_Read.c
SOURCES += Marshal_PCR_Reset.c
SOURCES += Marshal_PCR_SetAuthPolicy.c
SOURCES += Marshal_PCR_SetAuthValue.c
SOURCES += Marshal_PP_Commands.c
SOURCES += Marshal_PolicyAuthValue.c
SOURCES += Marshal_PolicyAuthorize.c
SOURCES += Marshal_PolicyCommandCode.c
SOURCES += Marshal_PolicyCounterTimer.c
SOURCES += Marshal_PolicyCpHash.c
SOURCES += Marshal_PolicyDuplicationSelect.c
SOURCES += Marshal_PolicyFidoSigned.c
SOURCES += Marshal_PolicyGetDigest.c
SOURCES += Marshal_PolicyLocality.c
SOURCES += Marshal_PolicyNV.c
SOURCES += Marshal_PolicyNameHash.c
SOURCES += Marshal_PolicyNvWritten.c
SOURCES += Marshal_PolicyOR.c
SOURCES += Marshal_PolicyPCR.c
SOURCES += Marshal_PolicyPassword.c
SOURCES += Marshal_PolicyPhysicalPresence.c
SOURCES += Marshal_PolicyRestart.c
SOURCES += Marshal_PolicySecret.c
SOURCES += Marshal_PolicySigned.c
SOURCES += Marshal_PolicyTicket.c
SOURCES += Marshal_Quote.c
SOURCES += Marshal_RSA_Decrypt.c
SOURCES += Marshal_RSA_Encrypt.c
SOURCES += Marshal_ReadClock.c
SOURCES += Marshal_ReadPublic.c
SOURCES += Marshal_Rewrap.c
SOURCES += Marshal_SelfTest.c
SOURCES += Marshal_SequenceComplete.c
SOURCES += Marshal_SequenceUpdate.c
SOURCES += Marshal_SetAlgorithmSet.c
SOURCES += Marshal_SetCommandCodeAuditStatus.c
SOURCES += Marshal_SetPrimaryPolicy.c
SOURCES += Marshal_Shutdown.c
SOURCES += Marshal_Sign.c
SOURCES += Marshal_StartAuthSession.c
SOURCES += Marshal_Startup.c
SOURCES += Marshal_StirRandom.c
SOURCES += Marshal_TestParms.c
SOURCES += Marshal_Unseal.c
SOURCES += Marshal_VerifySignature.c
SOURCES += Marshal_ZGen_2Phase.c
SOURCES += Manufacture.c
SOURCES += MathFunctions.c
SOURCES += MemoryLib.c
SOURCES += NV.c
HOST_SOURCES += NVMem.c
SOURCES += NV_Certify.c
SOURCES += NV_ChangeAuth.c
SOURCES += NV_DefineSpace.c
SOURCES += NV_Extend.c
SOURCES += NV_GlobalWriteLock.c
SOURCES += NV_Increment.c
SOURCES += NV_Read.c
SOURCES += NV_ReadLock.c
SOURCES += NV_ReadPublic.c
SOURCES += NV_SetBits.c
SOURCES += NV_UndefineSpace.c
SOURCES += NV_UndefineSpaceSpecial.c
SOURCES += NV_Write.c
SOURCES += NV_WriteLock.c
SOURCES += NV_spt.c
SOURCES += Object.c
SOURCES += ObjectChangeAuth.c
SOURCES += Object_spt.c
SOURCES += PCR.c
SOURCES += PCR_Allocate.c
SOURCES += PCR_Event.c
SOURCES += PCR_Extend.c
SOURCES += PCR_Read.c
SOURCES += PCR_Reset.c
SOURCES += PCR_SetAuthPolicy.c
SOURCES += PCR_SetAuthValue.c
SOURCES += PP.c
SOURCES += PPPlat.c
SOURCES += PP_Commands.c
SOURCES += PlatformData.c
SOURCES += PolicyAuthValue.c
SOURCES += PolicyAuthorize.c
SOURCES += PolicyCommandCode.c
SOURCES += PolicyCounterTimer.c
SOURCES += PolicyCpHash.c
SOURCES += PolicyDuplicationSelect.c
SOURCES += PolicyFidoSigned.c
SOURCES += PolicyGetDigest.c
SOURCES += PolicyLocality.c
SOURCES += PolicyNV.c
SOURCES += PolicyNameHash.c
SOURCES += PolicyNvWritten.c
SOURCES += PolicyOR.c
SOURCES += PolicyPCR.c
SOURCES += PolicyPassword.c
SOURCES += PolicyPhysicalPresence.c
SOURCES += PolicyRestart.c
SOURCES += PolicySecret.c
SOURCES += PolicySigned.c
SOURCES += PolicyTicket.c
SOURCES += Policy_spt.c
SOURCES += Power.c
SOURCES += PowerPlat.c
SOURCES += PropertyCap.c
SOURCES += Quote.c
HOST_SOURCES += RSAData.c
HOST_SOURCES += RSAKeySieve.c
SOURCES += RSA_Decrypt.c
SOURCES += RSA_Encrypt.c
SOURCES += ReadClock.c
SOURCES += ReadPublic.c
SOURCES += Rewrap.c
SOURCES += SelfTest.c
SOURCES += SequenceComplete.c
SOURCES += SequenceUpdate.c
SOURCES += Session.c
SOURCES += SessionProcess.c
SOURCES += SetAlgorithmSet.c
SOURCES += SetCommandCodeAuditStatus.c
SOURCES += SetPrimaryPolicy.c
SOURCES += Shutdown.c
SOURCES += Sign.c
SOURCES += StartAuthSession.c
SOURCES += Startup.c
SOURCES += StirRandom.c
#SOURCES += TPMCmdp.c
#SOURCES += TPMCmds.c
#SOURCES += TcpServer.c
SOURCES += TestParms.c
SOURCES += Ticket.c
SOURCES += Time.c
HOST_SOURCES += tpm_manufacture.c
SOURCES += TpmFail.c
SOURCES += Unique.c
SOURCES += Unseal.c
SOURCES += VerifySignature.c
SOURCES += ZGen_2Phase.c
SOURCES += _TPM_Hash_Data.c
SOURCES += _TPM_Hash_End.c
SOURCES += _TPM_Hash_Start.c
SOURCES += _TPM_Init.c
SOURCES += tpm_generated.c

# Use V=1 for verbose output
ifeq ($(V),)
Q := @
else
Q :=
endif


ifneq ($(TPM2_SIMULATOR_MANUFACTURER),)
CFLAGS += -DTPM2_SIMULATOR_MANUFACTURER
endif
ifneq ($(TCG_EK_CERT_INDICES),)
CFLAGS += -DTCG_EK_CERT_INDICES
endif
ifeq ($(EMBEDDED_MODE),)
SOURCES += $(HOST_SOURCES)
CFLAGS += -Wall -Werror -fPIC
else
SOURCES += stubs_ecc.c
SOURCES += stubs_hash.c
SOURCES += stubs_sym.c
CFLAGS += -DEMBEDDED_MODE
# Configure system headers appropriately.
CFLAGS += -DTHIRD_PARTY
ifneq ($(ROOTDIR),)
CFLAGS += -I$(ROOTDIR)
endif
# Suppress LTO compilation unless explicitly requested.
ifneq ($(LTO),1)
CFLAGS := $(subst -flto,,$(CFLAGS))
endif
endif

# Caller may specify OBJ_PREFIX to prefix all object filenames in the
# archive with a common string.  This allows the caller's linker
# script to group the data and bss sections for this library in one
# place.  For example, if OBJ_PREFIX=Tpm2_, the caller's linker script
# can have something like
#
#	__bss_libtpm2_start = .;
#	Tpm2_*(.bss)
#	__bss_libtpm2_end = .;
#
# Using a unique prefix is necessary in this case because files in
# archives only have a filename, not a full path.
OBJS := $(patsubst %.c,$(obj)/$(OBJ_PREFIX)%.o,$(SOURCES))
DEPS := $(patsubst %.c,$(obj)/$(OBJ_PREFIX)%.d,$(SOURCES))
COPIED_OBJS := $(patsubst %.o,%.cp.o,$(OBJS))

# This is the default target
$(obj)/libtpm2.a: $(OBJS)
	@echo "  AR      $(notdir $@)"
	$(Q)$(AR) scr $@ $^

$(obj)/linkedtpm2.o: $(OBJS)
	@echo "  LTO     $(notdir $@)"
	$(Q)$(CC) $(CFLAGS) $(CFLAGS_LTO_PARTIAL_LINK)\
		  --static -Wl,--relocatable $^ -o $@

# A helper target allowing the Cr50 Makefile to determine the exact list of
# the updated object files to link in.
list_copied_objs:
	@echo $(COPIED_OBJS)

# To keep things simple lets use a dummy file as a target depending on the
# updated object files. This will allow to invoke this Makefile with a single
# target to rebuild all updated object files.
$(obj)/.copied_objs: $(COPIED_OBJS)
	@touch $@

$(obj):
	@echo "  MKDIR   $(obj)"
	$(Q)mkdir -p $(obj)

$(obj)/$(OBJ_PREFIX)%.o: %.c | $(obj)
	@echo "  CC      $(notdir $<)"
	$(Q)$(CC) $(CFLAGS) -c -MMD -MF $(basename $@).d -MT $(basename $@).o \
		-MP -o $(basename $@).o $<

%.cp.o: %.o
	@echo '  TPM2.CP $(notdir $@)'
	$(Q)cp $< $@

.PHONY: clean
clean:
	@echo "  RM      $(obj)"
	$(Q)rm -rf $(obj)

.PHONY: $(DEPS)

# Do not provide an explicit rule for *.d targets, otherwise this include
# could trigger an unnecessary build for various reasons:
#
# - some compilers generate .d files with timestamps more recent than the
#   corresponding .o files;
#
# - when make is invoked with -q, it rebuilds the required includes before
#   deciding if anything else is needed.
-include $(DEPS)
