## @file
# BootScriptLib instance that always produces NOP operation.
#
# This library is primarily used by platform that does not support ACPI S3
# resume.  All the library interfaces simply return EFI_SUCCESS without
# performing any operation.
#
# Copyright (c) 2007 - 2014, 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                      = BaseS3BootScriptLibNull
  MODULE_UNI_FILE                = BaseS3BootScriptLibNull.uni
  FILE_GUID                      = 9A6DC1AC-94C0-43b1-8714-4C70FD58A815
  MODULE_TYPE                    = BASE
  VERSION_STRING                 = 1.0
  LIBRARY_CLASS                  = S3BootScriptLib



#
# The following information is for reference only and not required by the build tools.
#
#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC
#

[Sources]
  BootScriptLib.c


[Packages]
  MdePkg/MdePkg.dec

