]> git.proxmox.com Git - mirror_edk2.git/blobdiff - PrmPkg/Include/Prm.h
PrmPkg: Enable external visibility on PRM symbols
[mirror_edk2.git] / PrmPkg / Include / Prm.h
index 0e3ccfffa333b81300449624c0e7610f78287f01..007f73416aac84139782b7cdd1125a6ba85aef9d 100644 (file)
@@ -3,6 +3,7 @@
   Common Platform Runtime Mechanism (PRM) definitions.\r
 \r
   Copyright (c) Microsoft Corporation\r
+  Copyright (c) 2022, Arm Limited. All rights reserved.<BR>\r
   SPDX-License-Identifier: BSD-2-Clause-Patent\r
 \r
 **/\r
 #include <Uefi.h>\r
 #include <PrmContextBuffer.h>\r
 \r
-#if defined(_MSC_VER)\r
-  #define PRM_EXPORT_API                          __declspec(dllexport)\r
+#if defined (_MSC_VER)\r
+#define PRM_EXPORT_API  __declspec(dllexport)\r
+#elif defined (__GNUC__)\r
+#define PRM_EXPORT_API  __attribute__ ((visibility ("default")))\r
 #else\r
-  #define PRM_EXPORT_API\r
+#define PRM_EXPORT_API\r
 #endif\r
 \r
-#define PRM_HANDLER_NAME_MAXIMUM_LENGTH           128\r
+#define PRM_HANDLER_NAME_MAXIMUM_LENGTH  128\r
 \r
-#define PRM_STRING_(x)                            #x\r
-#define PRM_STRING(x)                             PRM_STRING_(x)\r
+#define PRM_STRING_(x)  #x\r
+#define PRM_STRING(x)   PRM_STRING_(x)\r
 \r
 /**\r
   A Platform Runtime Mechanism (PRM) handler function.\r
@@ -38,7 +41,7 @@
 **/\r
 typedef\r
 EFI_STATUS\r
-(EFIAPI PRM_HANDLER) (\r
+(EFIAPI PRM_HANDLER)(\r
   IN VOID                 *ParameterBuffer  OPTIONAL,\r
   IN PRM_CONTEXT_BUFFER   *ContextBuffer  OPTIONAL\r
   );\r