#/** @file
#  Device path driver that produces three UEFI device path protocols.
#
#  This driver produces Device Path Utilities protocol and optionally
#  DevicePahtToText and DevicePathFromText protocols based on feature flags
#  PcdDevicePathSupportDevicePathToText & PcdDevicePathSupportDevicePathFromText
#  respectively.
#
#  Copyright (c) 2006 - 2008, Intel Corporation. <BR>
#  All rights reserved. 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                      = DevicePathDxe
  FILE_GUID                      = 9B680FCE-AD6B-4F3A-B60B-F59899003443
  MODULE_TYPE                    = DXE_DRIVER
  VERSION_STRING                 = 1.0
  ENTRY_POINT                    = DevicePathEntryPoint

#
# The following information is for reference only and not required by the build tools.
#
#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC
#

[Sources.common]
  DevicePathUtilities.c
  DevicePathToText.c
  DevicePathFromText.c
  DevicePath.h
  DevicePath.c

[Packages]
  MdeModulePkg/MdeModulePkg.dec
  MdePkg/MdePkg.dec

[LibraryClasses]
  PcdLib
  DevicePathLib
  UefiBootServicesTableLib
  MemoryAllocationLib
  BaseMemoryLib
  BaseLib
  UefiDriverEntryPoint
  PrintLib
  DebugLib

[Guids]
  gEfiVTUTF8Guid                                # ALWAYS_CONSUMED
  gEfiVT100Guid                                 # ALWAYS_CONSUMED
  gEfiVT100PlusGuid                             # ALWAYS_CONSUMED
  gEfiPcAnsiGuid                                # ALWAYS_CONSUMED
  gEfiUartDevicePathGuid                        # ALWAYS_CONSUMED
  gEfiSasDevicePathGuid                         # ALWAYS_CONSUMED
  
[Protocols]
  gEfiDevicePathToTextProtocolGuid              # PROTOCOL ALWAYS_PRODUCED
  gEfiDevicePathFromTextProtocolGuid            # PROTOCOL ALWAYS_PRODUCED
  gEfiDevicePathUtilitiesProtocolGuid           # PROTOCOL ALWAYS_PRODUCED
  gEfiDebugPortProtocolGuid                     # PROTOCOL ALWAYS_CONSUMED

[FeaturePcd.common]
  gEfiMdeModulePkgTokenSpaceGuid.PcdDevicePathSupportDevicePathFromText
  gEfiMdeModulePkgTokenSpaceGuid.PcdDevicePathSupportDevicePathToText

[Depex]
  TRUE
