## @file
#  Produces the UEFI HASH2 protocol
#
#  This module will use EDKII crypto libary to HASH2 protocol.
#
#  (C) Copyright 2015 Hewlett-Packard Development Company, L.P.<BR>
#  Copyright (c) 2015, 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                      = Hash2DxeCrypto
  FILE_GUID                      = 63E3BDCF-2AC7-4ac0-9B92-03A7541422FF
  MODULE_TYPE                    = UEFI_DRIVER
  VERSION_STRING                 = 1.0
  ENTRY_POINT                    = Hash2DriverEntryPoint
  MODULE_UNI_FILE                = Hash2DxeCrypto.uni

#
# The following information is for reference only and not required by the build tools.
#
#  VALID_ARCHITECTURES           = IA32 X64 IPF
#

[Sources.common]
  Hash2DxeCrypto.c
  Driver.h
  Driver.c

[Packages]
  MdePkg/MdePkg.dec
  CryptoPkg/CryptoPkg.dec

[LibraryClasses]
  UefiBootServicesTableLib
  BaseLib
  BaseMemoryLib
  BaseCryptLib
  MemoryAllocationLib
  UefiDriverEntryPoint
  DebugLib
  UefiLib

[Guids]
  gEfiHashAlgorithmMD5Guid              ## CONSUMES               ## GUID
  gEfiHashAlgorithmSha1Guid             ## CONSUMES               ## GUID
  gEfiHashAlgorithmSha256Guid           ## CONSUMES               ## GUID
  gEfiHashAlgorithmSha384Guid           ## CONSUMES               ## GUID
  gEfiHashAlgorithmSha512Guid           ## CONSUMES               ## GUID

[Protocols]
  gEfiHash2ProtocolGuid                 ## PRODUCES
  gEfiHash2ServiceBindingProtocolGuid   ## PRODUCES

[UserExtensions.TianoCore."ExtraFiles"]
  Hash2DxeCryptoExtra.uni