## @file
#  UDF/ECMA-167 file system driver.
#
#  Copyright (c) 2018, Intel Corporation. All rights reserved.<BR>
#  Copyright (C) 2014-2017 Paulo Alcantara <pcacjr@zytor.com>
#
#  SPDX-License-Identifier: BSD-2-Clause-Patent
##

[Defines]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = UdfDxe
  FILE_GUID                      = 905f13b0-8f91-4b0a-bd76-e1e78f9422e4
  MODULE_TYPE                    = UEFI_DRIVER
  VERSION_STRING                 = 1.0
  ENTRY_POINT                    = InitializeUdf

#
# The following information is for reference only and not required by the build tools.
#
#  VALID_ARCHITECTURES           = IA32 X64 EBC
#
#  DRIVER_BINDING                = gUdfDriverBinding
#  COMPONENT_NAME                = gUdfComponentName
#  COMPONENT_NAME2               = gUdfComponentName2
#

[Sources]
  ComponentName.c
  FileSystemOperations.c
  FileName.c
  File.c
  Udf.c
  Udf.h


[Packages]
  MdePkg/MdePkg.dec


[LibraryClasses]
  DevicePathLib
  UefiBootServicesTableLib
  MemoryAllocationLib
  BaseMemoryLib
  UefiLib
  BaseLib
  UefiDriverEntryPoint
  DebugLib


[Guids]
  gEfiFileInfoGuid                              ## SOMETIMES_CONSUMES ## Protocol
  gEfiFileSystemInfoGuid                        ## SOMETIMES_CONSUMES ## Protocol
  gEfiFileSystemVolumeLabelInfoIdGuid           ## SOMETIMES_CONSUMES ## Protocol


[Protocols]
  gEfiSimpleFileSystemProtocolGuid              ## BY_START
  gEfiDevicePathProtocolGuid                    ## BY_START
  gEfiBlockIoProtocolGuid                       ## TO_START
  gEfiDiskIoProtocolGuid                        ## TO_START
