## @file
#  Provides services to display completion progress of a firmware update on a
#  text console.
#
#  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       = DisplayUpdateProgressLibText
  MODULE_UNI_FILE = DisplayUpdateProgressLibText.uni
  FILE_GUID       = CDEF83AE-1900-4B41-BF47-AAE9BD729CA5
  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]
  DisplayUpdateProgressLibText.c

[Packages]
  MdePkg/MdePkg.dec
  MdeModulePkg/MdeModulePkg.dec

[LibraryClasses]
  DebugLib
  UefiBootServicesTableLib
  UefiLib
