## @file
#  Provides some TPM 1.2 commands
#
#  This library is used by other modules to send TPM 1.2 command.
#
# Copyright (c) 2013 - 2016, Intel Corporation. All rights reserved.<BR>
# This program and the accompanying materials
# are licensed and made available under the terms and conditions of the BSD License
# which accompanies this distribution. The full text of the license may be found at
# http://opensource.org/licenses/bsd-license.php
# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#
##

[Defines]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = Tpm12CommandLib
  MODULE_UNI_FILE                = Tpm12CommandLib.uni
  FILE_GUID                      = C595047C-70B3-4731-99CC-A014E956D7A7
  MODULE_TYPE                    = BASE
  VERSION_STRING                 = 1.0
  LIBRARY_CLASS                  = Tpm12CommandLib

#
# The following information is for reference only and not required by the build tools.
#
#  VALID_ARCHITECTURES           = IA32 X64 IPF
#

[Sources]
  Tpm12Startup.c
  Tpm12Ownership.c
  Tpm12NvStorage.c
  Tpm12GetCapability.c
  Tpm12Pcr.c
  Tpm12PhysicalPresence.c
  Tpm12SelfTest.c

[Packages]
  MdePkg/MdePkg.dec
  SecurityPkg/SecurityPkg.dec

[LibraryClasses]
  BaseLib
  BaseMemoryLib
  IoLib
  TimerLib
  DebugLib
  Tpm12DeviceLib
