## @file
#  This library defines some routines that are generic for IA32 family CPU.
#
#  The library routines are UEFI specification compliant.
#
#  Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved.<BR>
#  Copyright (c) 2020, AMD Inc. All rights reserved.<BR>
#  SPDX-License-Identifier: BSD-2-Clause-Patent
#
##

[Defines]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = BaseUefiCpuLib
  MODULE_UNI_FILE                = BaseUefiCpuLib.uni
  FILE_GUID                      = 34C24FD7-7A90-45c2-89FD-946473D9CE98
  MODULE_TYPE                    = BASE
  VERSION_STRING                 = 1.0
  LIBRARY_CLASS                  = UefiCpuLib

#
# The following information is for reference only and not required by the build tools.
#
#  VALID_ARCHITECTURES           = IA32 X64
#

[Sources.IA32]
  Ia32/InitializeFpu.nasm

[Sources.X64]
  X64/InitializeFpu.nasm

[Sources]
  BaseUefiCpuLib.c

[Packages]
  MdePkg/MdePkg.dec
  UefiCpuPkg/UefiCpuPkg.dec

[LibraryClasses]
  BaseLib
