#/** @file
# Component description file for UnixAutoScan module
#
# This module abstracts memory auto-scan 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                      = UnixAutoScan
  FILE_GUID                      = f3f36cb0-8985-11db-b195-0040d02b1835
  MODULE_TYPE                    = PEIM
  VERSION_STRING                 = 1.0
  EDK_RELEASE_VERSION            = 0x00020000
  EFI_SPECIFICATION_VERSION      = 0x00020000

  ENTRY_POINT                    = PeimInitializeUnixAutoScan

#
# The following information is for reference only and not required by the build tools.
#
#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC
#

[Sources.common]
  UnixAutoScan.c

[Packages]
  MdePkg/MdePkg.dec
  MdeModulePkg/MdeModulePkg.dec
  UnixPkg/UnixPkg.dec

[LibraryClasses]
  PeiServicesTablePointerLib
  PeiServicesLib
  HobLib
  BaseMemoryLib
  BaseLib
  PeimEntryPoint
  DebugLib


[Ppis]
  gEfiPeiMemoryDiscoveredPpiGuid                # PPI ALWAYS_PRODUCED
  gPeiUnixAutoScanPpiGuid                       # PPI ALWAYS_CONSUMED


[Depex]
  gPeiUnixAutoScanPpiGuid AND gEfiPeiMasterBootModePpiGuid

