## @file
#  Xen Hypercall abstraction lib for Intel and ARM architectures
#
#  Copyright (c) 2014, Linaro Ltd. All rights reserved.<BR>
#  SPDX-License-Identifier: BSD-2-Clause-Patent
#
##

[Defines]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = XenHypercallLib
  FILE_GUID                      = B5EE9A32-CA5A-49A8-82E3-ADA4CCB77C7C
  MODULE_TYPE                    = BASE
  VERSION_STRING                 = 1.0
  CONSTRUCTOR                    = XenHypercallLibConstruct

[Defines.IA32, Defines.X64]
  LIBRARY_CLASS                  = XenHypercallLib|PEIM DXE_DRIVER UEFI_DRIVER

[Defines.ARM, Defines.AARCH64]
  LIBRARY_CLASS                  = XenHypercallLib

#
# The following information is for reference only and not required by the build tools.
#
#  VALID_ARCHITECTURES           = IA32 X64 ARM AARCH64
#

[Sources.IA32, Sources.X64]
  X86XenHypercall.c

[Sources.IA32]
  Ia32/hypercall.nasm

[Sources.X64]
  X64/hypercall.nasm

[Sources.ARM, Sources.AARCH64]
  ArmXenHypercall.c

[Sources.ARM]
  Arm/Hypercall.S

[Sources.AARCH64]
  Aarch64/Hypercall.S

[Sources]
  XenHypercall.c

[Packages]
  MdePkg/MdePkg.dec
  QemuPkg/QemuPkg.dec
  QemuQ35Pkg/QemuQ35Pkg.dec

[LibraryClasses.IA32, LibraryClasses.X64]
  BaseLib
  HobLib
  DebugLib

[Guids.IA32, Guids.X64]
  gEfiXenInfoGuid

[BuildOptions.ARM]
  RVCT:*_*_ARM_PLATFORM_FLAGS == --cpu Cortex-A15
