## @file
#  Sec Core for FSP
#
#  Copyright (c) 2016 - 2022, Intel Corporation. All rights reserved.<BR>
#
#  SPDX-License-Identifier: BSD-2-Clause-Patent
#
##

[Defines]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = FspSecCoreS
  FILE_GUID                      = 53AB1ACD-EDB1-4E3A-A2C7-978D721D179D
  MODULE_TYPE                    = SEC
  VERSION_STRING                 = 1.0

#
# The following information is for reference only and not required by the build tools.
#
#  VALID_ARCHITECTURES           = IA32 X64
#

[Sources]
  SecFspApiChk.c
  SecFsp.h

[Sources.IA32]
  Ia32/Stack.nasm
  Ia32/FspApiEntryS.nasm
  Ia32/FspApiEntryCommon.nasm
  Ia32/FspHelper.nasm

[Sources.X64]
  X64/Stack.nasm
  X64/FspApiEntryS.nasm
  X64/FspApiEntryCommon.nasm
  X64/FspHelper.nasm

[Binaries.Ia32]
  RAW|Vtf0/Bin/ResetVec.ia32.raw |GCC

[Packages]
  MdePkg/MdePkg.dec
  IntelFsp2Pkg/IntelFsp2Pkg.dec

[LibraryClasses]
  BaseMemoryLib
  DebugLib
  BaseLib
  PciCf8Lib
  SerialPortLib
  FspSwitchStackLib
  FspCommonLib
  FspSecPlatformLib

[Ppis]
  gEfiTemporaryRamSupportPpiGuid                              ## PRODUCES

