## @file
#  SMM LockBox library instance.
#
#  Copyright (c) 2010 - 2018, Intel Corporation. All rights reserved.<BR>
#
#  SPDX-License-Identifier: BSD-2-Clause-Patent
#
##

[Defines]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = SmmLockBoxSmmLib
  MODULE_UNI_FILE                = SmmLockBoxSmmLib.uni
  FILE_GUID                      = E04894D6-290D-4171-A362-0ACFD939F3C8
  MODULE_TYPE                    = DXE_SMM_DRIVER
  VERSION_STRING                 = 1.0
  LIBRARY_CLASS                  = LockBoxLib|DXE_SMM_DRIVER
  CONSTRUCTOR                    = SmmLockBoxSmmConstructor
  DESTRUCTOR                     = SmmLockBoxSmmDestructor

#
# The following information is for reference only and not required by the build tools.
#
#  VALID_ARCHITECTURES           = IA32 X64
#

[Sources]
  SmmLockBoxSmmLib.c
  SmmLockBoxLibPrivate.h

[Packages]
  MdePkg/MdePkg.dec
  MdeModulePkg/MdeModulePkg.dec

[LibraryClasses]
  SmmServicesTableLib
  BaseLib
  DebugLib

[Protocols]
  gEfiSmmReadyToLockProtocolGuid    ## NOTIFY
  gEfiSmmEndOfDxeProtocolGuid       ## NOTIFY
  gEfiSmmSxDispatch2ProtocolGuid    ## NOTIFY

[Guids]
  ## SOMETIMES_CONSUMES   ## UNDEFINED # SmmSystemTable
  ## SOMETIMES_PRODUCES   ## UNDEFINED # SmmSystemTable
  gEfiSmmLockBoxCommunicationGuid
  ## CONSUMES             ## UNDEFINED # Protocol notify
  gEdkiiEndOfS3ResumeGuid

