## @file
# Boot Script Executor Module
#
# This is a standalone Boot Script Executor. Standalone means it does not
# depends on any PEI or DXE service.
#
# Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.
# Copyright (c) 2017, AMD Incorporated. All rights reserved.
#
# SPDX-License-Identifier: BSD-2-Clause-Patent
#
##
[Defines]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = BootScriptExecutorDxe
  MODULE_UNI_FILE                = BootScriptExecutorDxe.uni
  FILE_GUID                      = FA20568B-548B-4b2b-81EF-1BA08D4A3CEC
  MODULE_TYPE                    = DXE_DRIVER
  VERSION_STRING                 = 1.0
  ENTRY_POINT                    = BootScriptExecutorEntryPoint
#
# The following information is for reference only and not required by the build tools.
#
#  VALID_ARCHITECTURES           = IA32 X64
#
[Sources]
  ScriptExecute.h
  ScriptExecute.c
[Sources.X64]
  X64/SetIdtEntry.c
  X64/S3Asm.nasm
[Sources.Ia32]
  IA32/SetIdtEntry.c
  IA32/S3Asm.nasm
[Packages]
  MdePkg/MdePkg.dec
  MdeModulePkg/MdeModulePkg.dec
[LibraryClasses]
  PcdLib
  BaseMemoryLib
  UefiDriverEntryPoint
  BaseLib
  S3BootScriptLib
  PeCoffLib
  DxeServicesLib
  UefiBootServicesTableLib
  CacheMaintenanceLib
  UefiLib
  DebugAgentLib
  LockBoxLib
  CpuExceptionHandlerLib
  DevicePathLib
  DxeServicesTableLib
[Guids]
  gEfiBootScriptExecutorVariableGuid    ## PRODUCES ## UNDEFINED # SaveLockBox
  gEfiBootScriptExecutorContextGuid     ## PRODUCES ## UNDEFINED # SaveLockBox
  gEdkiiMemoryProfileGuid               ## SOMETIMES_CONSUMES ## GUID # Locate protocol
[Protocols]
  ## NOTIFY
  ## CONSUMES
  gEfiDxeSmmReadyToLockProtocolGuid
[FeaturePcd]
  gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode  ## CONSUMES
[Pcd]
  gEfiMdeModulePkgTokenSpaceGuid.PcdUse1GPageTable              ## SOMETIMES_CONSUMES
  gEfiMdeModulePkgTokenSpaceGuid.PcdMemoryProfilePropertyMask   ## CONSUMES
  gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiS3Enable                ## CONSUMES
  gEfiMdeModulePkgTokenSpaceGuid.PcdPteMemoryEncryptionAddressOrMask    ## CONSUMES
[Depex]
  gEfiLockBoxProtocolGuid
[UserExtensions.TianoCore."ExtraFiles"]
  BootScriptExecutorDxeExtra.uni