## @file
# Instance of Device Path Library based on Device Path Protocol.
#
#  Device Path Library that layers on top of the UEFI 2.0 Device Path Protocol.
#  If the DevicePathFromText/DevicePathToText protocol doesn't exist, the library
#  uses its internal conversion logic.
#
# Copyright (c) 2013 - 2018, 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                      = UefiDevicePathLibOptionalDevicePathProtocol
  MODULE_UNI_FILE                = UefiDevicePathLibOptionalDevicePathProtocol.uni
  FILE_GUID                      = 3E1C696D-FCF0-45a7-85A7-E86C2A1C1080
  MODULE_TYPE                    = UEFI_DRIVER
  VERSION_STRING                 = 1.0
  LIBRARY_CLASS                  = DevicePathLib|DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER SMM_CORE

  CONSTRUCTOR                    = UefiDevicePathLibOptionalDevicePathProtocolConstructor

#
#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC
#

[Sources]
  DevicePathUtilities.c
  DevicePathToText.c
  DevicePathFromText.c
  UefiDevicePathLibOptionalDevicePathProtocol.c
  UefiDevicePathLib.h

[Packages]
  MdePkg/MdePkg.dec


[LibraryClasses]
  BaseLib
  UefiBootServicesTableLib
  MemoryAllocationLib
  DebugLib
  BaseMemoryLib
  PcdLib
  PrintLib

[Guids]
  ## SOMETIMES_CONSUMES  ## GUID
  gEfiVTUTF8Guid
  ## SOMETIMES_CONSUMES  ## GUID
  gEfiVT100Guid
  ## SOMETIMES_CONSUMES  ## GUID
  gEfiVT100PlusGuid
  ## SOMETIMES_CONSUMES  ## GUID
  gEfiPcAnsiGuid
  ## SOMETIMES_CONSUMES  ## GUID
  gEfiUartDevicePathGuid
  ## SOMETIMES_CONSUMES  ## GUID
  gEfiSasDevicePathGuid
  ## SOMETIMES_CONSUMES  ## GUID
  gEfiVirtualDiskGuid
  ## SOMETIMES_CONSUMES  ## GUID
  gEfiVirtualCdGuid
  ## SOMETIMES_CONSUMES  ## GUID
  gEfiPersistentVirtualDiskGuid
  ## SOMETIMES_CONSUMES  ## GUID
  gEfiPersistentVirtualCdGuid

[Protocols]
  gEfiDevicePathProtocolGuid                    ## SOMETIMES_CONSUMES
  gEfiDevicePathUtilitiesProtocolGuid           ## CONSUMES
  gEfiDevicePathToTextProtocolGuid              ## SOMETIMES_CONSUMES
  gEfiDevicePathFromTextProtocolGuid            ## SOMETIMES_CONSUMES
  gEfiDebugPortProtocolGuid                     ## UNDEFINED

[Pcd]
  gEfiMdePkgTokenSpaceGuid.PcdMaximumDevicePathNodeCount ## SOMETIMES_CONSUMES

[Depex.common.DXE_DRIVER, Depex.common.DXE_RUNTIME_DRIVER, Depex.common.DXE_SAL_DRIVER, Depex.common.DXE_SMM_DRIVER]
  gEfiDevicePathUtilitiesProtocolGuid

