## @file
#  Sample PRM Driver
#
#  A sample PRM Module implementation. This PRM Module includes a PRM Module configuration library instance
#  that applies the configuration for an ACPI parameter buffer in the boot environment. A PRM handler
#  is provided that checks for a specific value in the parameter buffer that should be provided by ACPI
#  code at OS runtime.
#
#  Copyright (c) Microsoft Corporation
#  Copyright (c) 2022, Arm Limited. All rights reserved.<BR>
#
#  SPDX-License-Identifier: BSD-2-Clause-Patent
#
##

[Defines]
  INF_VERSION         = 0x00010005
  BASE_NAME           = PrmSampleAcpiParameterBufferModule
  FILE_GUID           = DC2A58A6-5927-4776-B995-D118A27335A2
  MODULE_TYPE         = DXE_RUNTIME_DRIVER
  VERSION_STRING      = 1.0
  ENTRY_POINT         = PrmSampleAcpiParameterBufferModuleInit

[Sources]
  PrmSampleAcpiParameterBufferModule.c

[Packages]
  MdePkg/MdePkg.dec
  PrmPkg/PrmPkg.dec

[LibraryClasses]
  BaseLib
  DebugLib
  UefiDriverEntryPoint
  UefiLib

[Depex]
  TRUE

[BuildOptions.common]
  MSFT:*_*_*_DLINK_FLAGS  = /DLL /SUBSYSTEM:CONSOLE /VERSION:1.0
  MSFT:*_*_*_GENFW_FLAGS = --keepoptionalheader

  GCC:*_*_AARCH64_GENFW_FLAGS = --prm
  GCC:*_*_AARCH64_DLINK_FLAGS = -Wl,--no-gc-sections -Wl,--require-defined=PrmModuleExportDescriptor -Wl,--require-defined=CheckParamBufferPrmHandler
