## @file
#  Shell application to dump UEFI memory and SMRAM profile information.
#
#  Note that if the feature is not enabled by setting PcdMemoryProfilePropertyMask,
#  the application will not display memory profile information.
#
#  Copyright (c) 2014 - 2018, Intel Corporation. All rights reserved.<BR>
#  SPDX-License-Identifier: BSD-2-Clause-Patent
#
##

[Defines]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = MemoryProfileInfo
  MODULE_UNI_FILE                = MemoryProfileInfo.uni
  FILE_GUID                      = 21429B90-5F67-4e93-AF55-1D314D646E12
  MODULE_TYPE                    = UEFI_APPLICATION
  VERSION_STRING                 = 1.0
  ENTRY_POINT                    = UefiMain

#
# The following information is for reference only and not required by the build tools.
#
#  VALID_ARCHITECTURES           = IA32 X64 EBC
#

[Sources]
  MemoryProfileInfo.c

[Packages]
  MdePkg/MdePkg.dec
  MdeModulePkg/MdeModulePkg.dec

[LibraryClasses]
  UefiApplicationEntryPoint
  BaseLib
  BaseMemoryLib
  UefiBootServicesTableLib
  UefiRuntimeServicesTableLib
  DebugLib
  UefiLib
  MemoryAllocationLib
  DxeServicesLib
  PrintLib

[Guids]
  ## SOMETIMES_CONSUMES   ## GUID # Locate protocol
  ## SOMETIMES_CONSUMES   ## GUID # SmiHandlerRegister
  gEdkiiMemoryProfileGuid
  gEdkiiPiSmmCommunicationRegionTableGuid    ## SOMETIMES_CONSUMES ## SystemTable

[Protocols]
  gEfiSmmCommunicationProtocolGuid     ## SOMETIMES_CONSUMES

[UserExtensions.TianoCore."ExtraFiles"]
  MemoryProfileInfoExtra.uni
