## @file
#  Base Synchronization Library implementation.
#
#  Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>
#  Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
#  Copyright (c) 2020, Hewlett Packard Enterprise Development LP. All rights reserved.<BR>
#  Copyright (c) 2022, Loongson Technology Corporation Limited. All rights reserved.<BR>
#
#  SPDX-License-Identifier: BSD-2-Clause-Patent
#
#
##

[Defines]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = BaseSynchronizationLib
  MODULE_UNI_FILE                = BaseSynchronizationLib.uni
  FILE_GUID                      = FC9990DF-C5FF-44cf-8799-CBB45B577F87
  MODULE_TYPE                    = BASE
  VERSION_STRING                 = 1.0
  LIBRARY_CLASS                  = SynchronizationLib

#
#  VALID_ARCHITECTURES           = IA32 X64 EBC AARCH64
#
[Sources]
  BaseSynchronizationLibInternals.h

[Sources.IA32]
  Ia32/InternalGetSpinLockProperties.c | MSFT
  Ia32/InterlockedCompareExchange64.c | MSFT
  Ia32/InterlockedCompareExchange32.c | MSFT
  Ia32/InterlockedCompareExchange16.c | MSFT
  InterlockedIncrementMsc.c | MSFT
  InterlockedDecrementMsc.c | MSFT
  SynchronizationMsc.c | MSFT

  Ia32/InterlockedCompareExchange64.nasm| INTEL
  Ia32/InterlockedCompareExchange32.nasm| INTEL
  Ia32/InterlockedCompareExchange16.nasm| INTEL
  Ia32/InterlockedDecrement.nasm| INTEL
  Ia32/InterlockedIncrement.nasm| INTEL
  Synchronization.c | INTEL

  Ia32/InternalGetSpinLockProperties.c | GCC
  Ia32/GccInline.c | GCC
  SynchronizationGcc.c  | GCC

[Sources.X64]
  Ia32/InternalGetSpinLockProperties.c | MSFT
  X64/InterlockedCompareExchange64.c | MSFT
  X64/InterlockedCompareExchange32.c | MSFT
  X64/InterlockedCompareExchange16.c | MSFT
  InterlockedIncrementMsc.c | MSFT
  InterlockedDecrementMsc.c | MSFT
  SynchronizationMsc.c | MSFT

  X64/InterlockedCompareExchange64.nasm| INTEL
  X64/InterlockedCompareExchange32.nasm| INTEL
  X64/InterlockedCompareExchange16.nasm| INTEL
  X64/InterlockedDecrement.nasm | INTEL
  X64/InterlockedIncrement.nasm | INTEL
  Synchronization.c | INTEL

  Ia32/InternalGetSpinLockProperties.c | GCC
  X64/GccInline.c | GCC
  SynchronizationGcc.c  | GCC

[Sources.EBC]
  Synchronization.c
  Ebc/Synchronization.c

[Sources.AARCH64]
  Synchronization.c
  AArch64/Synchronization.S     | GCC
  AArch64/Synchronization.asm   | MSFT

[Sources.RISCV64]
  Synchronization.c
  RiscV64/Synchronization.S     | GCC

[Sources.LOONGARCH64]
  Synchronization.c
  LoongArch64/Synchronization.c    | GCC
  LoongArch64/AsmSynchronization.S | GCC

[Packages]
  MdePkg/MdePkg.dec

[LibraryClasses]
  PcdLib
  TimerLib
  DebugLib
  BaseMemoryLib

[Pcd]
  gEfiMdePkgTokenSpaceGuid.PcdSpinLockTimeout  ## SOMETIMES_CONSUMES

