#/** @file
# Stuff driver
#
# Tiano PEIM to abstract construction of firmware volume in a Unix environment.
# Copyright (c) 2006, Intel Corporation
#
#  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                      = UnixThunkPpiToProtocol
  FILE_GUID                      = f4239aa2-8985-11db-af82-0040d02b1835
  MODULE_TYPE                    = PEIM
  VERSION_STRING                 = 1.0
  EDK_RELEASE_VERSION            = 0x00020000
  EFI_SPECIFICATION_VERSION      = 0x00020000

  ENTRY_POINT                    = PeimInitializeUnixStuff

#
# The following information is for reference only and not required by the build tools.
#
#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC
#

[Sources.common]
  UnixThunkPpiToProtocol.c


[Packages]
#  MdeModulePkg/MdeModulePkg.dec
  MdePkg/MdePkg.dec
#  IntelFrameworkPkg/IntelFrameworkPkg.dec
  UnixPkg/UnixPkg.dec


[LibraryClasses]
  PeiServicesTablePointerLib
  PeiServicesLib
  HobLib
  PeimEntryPoint
  DebugLib


[Protocols]
  gEfiUnixThunkProtocolGuid                     # PROTOCOL ALWAYS_CONSUMED


[Ppis]
  gPeiUnixThunkPpiGuid                          # PPI ALWAYS_CONSUMED


[Depex]
  gPeiUnixThunkPpiGuid AND gEfiPeiMemoryDiscoveredPpiGuid

