## @file
#  Provides services to display completion progress of a firmware update on a
#  graphical console that supports the Graphics Output Protocol.
#
#  Copyright (c) 2016, Microsoft Corporation, All rights reserved.<BR>
#  Copyright (c) 2018, Intel Corporation. All rights reserved.<BR>
#
#  SPDX-License-Identifier: BSD-2-Clause-Patent
##

[Defines]
  INF_VERSION     = 0x00010005
  BASE_NAME       = DisplayUpdateProgressLibGraphics
  MODULE_UNI_FILE = DisplayUpdateProgressLibGraphics.uni
  FILE_GUID       = 319E9E37-B2D6-4699-90F3-B8B72B6D4CBD
  MODULE_TYPE     = DXE_DRIVER
  VERSION_STRING  = 1.0
  LIBRARY_CLASS   = DisplayUpdateProgressLib|DXE_DRIVER UEFI_DRIVER UEFI_APPLICATION

#
# The following information is for reference only and not required by the build tools.
#
#  VALID_ARCHITECTURES           = IA32 X64 EBC
#

[Sources]
  DisplayUpdateProgressLibGraphics.c

[Packages]
  MdePkg/MdePkg.dec
  MdeModulePkg/MdeModulePkg.dec

[LibraryClasses]
  BaseMemoryLib
  DebugLib
  MemoryAllocationLib
  UefiBootServicesTableLib
  BaseLib
  UefiLib

[Protocols]
  gEfiGraphicsOutputProtocolGuid  # CONSUMES
  gEdkiiBootLogo2ProtocolGuid     # CONSUMES
