Vlv2TbltDevicePkg/AcpiPlatform: Amend the declaration of mGlobalNvsArea

mGlobalNvsArea wasn't declared as extern in AcpiPlatform.h and the header
was included in AcpiPlatform.c and AcpiPlatformHooks.c. Although it's
declared as extern in AcpiPlatformHooks.c, gcc still created an instance
of mGlobalNvsArea in AcpiPlatformHooks.c since the header was expanded
first and then the linker complained "multiple definition". This commit
rearrange the delaration of mGlobalNvsArea to satisfy gcc.

Cc: David Wei <david.wei@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Gary Lin <glin@suse.com>
Reviewed-by: David Wei <david.wei@intel.com>
This commit is contained in:
Gary Lin 2016-07-29 11:25:28 +08:00 committed by david wei
parent fe6e53b5ba
commit e7643ce70c
3 changed files with 2 additions and 2 deletions

View File

@ -67,6 +67,7 @@ CHAR16 gACPIOSFRRefDataBlockVariableName[] = ACPI_OSFR_REF_DATA_BLOCK_VARIABL
CHAR16 gACPIOSFRMfgStringVariableName[] = ACPI_OSFR_MFG_STRING_VARIABLE_NAME; CHAR16 gACPIOSFRMfgStringVariableName[] = ACPI_OSFR_MFG_STRING_VARIABLE_NAME;
EFI_CPU_IO_PROTOCOL *mCpuIo; EFI_CPU_IO_PROTOCOL *mCpuIo;
EFI_GLOBAL_NVS_AREA_PROTOCOL mGlobalNvsArea;
#ifndef __GNUC__ #ifndef __GNUC__
#pragma optimize("", off) #pragma optimize("", off)
#endif #endif

View File

@ -59,7 +59,7 @@ Abstract:
// //
// Global variables. // Global variables.
// //
EFI_GLOBAL_NVS_AREA_PROTOCOL mGlobalNvsArea; extern EFI_GLOBAL_NVS_AREA_PROTOCOL mGlobalNvsArea;
// //
// ACPI table information used to initialize tables. // ACPI table information used to initialize tables.

View File

@ -33,7 +33,6 @@ Abstract:
// //
#include "AcpiPlatformHooksLib.h" #include "AcpiPlatformHooksLib.h"
extern EFI_GLOBAL_NVS_AREA_PROTOCOL mGlobalNvsArea;
extern SYSTEM_CONFIGURATION mSystemConfiguration; extern SYSTEM_CONFIGURATION mSystemConfiguration;
ENHANCED_SPEEDSTEP_PROTOCOL *mEistProtocol = NULL; ENHANCED_SPEEDSTEP_PROTOCOL *mEistProtocol = NULL;