## @file\r
# This file is used to define common static strings used by INF/DEC/DSC files\r
#\r
-# Copyright (c) 2007 - 2012, Intel Corporation. All rights reserved.<BR>\r
+# Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>\r
# Portions copyright (c) 2011 - 2013, ARM Ltd. All rights reserved.<BR>\r
# This program and the accompanying materials\r
# are licensed and made available under the terms and conditions of the BSD License\r
TAB_UINT64 = 'UINT64'\r
TAB_VOID = 'VOID*'\r
\r
+TAB_PCD_CLEAN_NUMERIC_TYPES = {TAB_UINT8, TAB_UINT16, TAB_UINT32, TAB_UINT64}\r
+TAB_PCD_NUMERIC_TYPES = {TAB_UINT8, TAB_UINT16, TAB_UINT32, TAB_UINT64, 'BOOLEAN'}\r
+TAB_PCD_NUMERIC_TYPES_VOID = {TAB_UINT8, TAB_UINT16, TAB_UINT32, TAB_UINT64, 'BOOLEAN', TAB_VOID}\r
+\r
TAB_EDK_SOURCE = '$(EDK_SOURCE)'\r
TAB_EFI_SOURCE = '$(EFI_SOURCE)'\r
TAB_WORKSPACE = '$(WORKSPACE)'\r
SUP_MODULE_UEFI_APPLICATION = 'UEFI_APPLICATION'\r
SUP_MODULE_USER_DEFINED = 'USER_DEFINED'\r
SUP_MODULE_SMM_CORE = 'SMM_CORE'\r
+SUP_MODULE_MM_STANDALONE = 'MM_STANDALONE'\r
+SUP_MODULE_MM_CORE_STANDALONE = 'MM_CORE_STANDALONE'\r
\r
SUP_MODULE_LIST = [SUP_MODULE_BASE, SUP_MODULE_SEC, SUP_MODULE_PEI_CORE, SUP_MODULE_PEIM, SUP_MODULE_DXE_CORE, SUP_MODULE_DXE_DRIVER, \\r
SUP_MODULE_DXE_RUNTIME_DRIVER, SUP_MODULE_DXE_SAL_DRIVER, SUP_MODULE_DXE_SMM_DRIVER, SUP_MODULE_UEFI_DRIVER, \\r
- SUP_MODULE_UEFI_APPLICATION, SUP_MODULE_USER_DEFINED, SUP_MODULE_SMM_CORE]\r
-SUP_MODULE_LIST_STRING = TAB_VALUE_SPLIT.join(l for l in SUP_MODULE_LIST)\r
+ SUP_MODULE_UEFI_APPLICATION, SUP_MODULE_USER_DEFINED, SUP_MODULE_SMM_CORE, SUP_MODULE_MM_STANDALONE, SUP_MODULE_MM_CORE_STANDALONE]\r
+SUP_MODULE_LIST_STRING = TAB_VALUE_SPLIT.join(SUP_MODULE_LIST)\r
\r
EDK_COMPONENT_TYPE_LIBRARY = 'LIBRARY'\r
EDK_COMPONENT_TYPE_SECUARITY_CORE = 'SECUARITY_CORE'\r
TAB_PCDS_PATCHABLE_LOAD_FIX_ADDRESS_RUNTIME_PAGE_SIZE, \\r
TAB_PCDS_PATCHABLE_LOAD_FIX_ADDRESS_SMM_PAGE_SIZE]\r
\r
+## The mapping dictionary from datum type to its maximum number.\r
+MAX_VAL_TYPE = {"BOOLEAN":0x01, TAB_UINT8:0xFF, TAB_UINT16:0xFFFF, TAB_UINT32:0xFFFFFFFF, TAB_UINT64:0xFFFFFFFFFFFFFFFF}\r
+## The mapping dictionary from datum type to size string.\r
+MAX_SIZE_TYPE = {"BOOLEAN":"1", TAB_UINT8:"1", TAB_UINT16:"2", TAB_UINT32:"4", TAB_UINT64:"8"}\r
+\r
TAB_DEPEX = 'Depex'\r
TAB_DEPEX_COMMON = TAB_DEPEX + TAB_SPLIT + TAB_ARCH_COMMON\r
TAB_DEPEX_IA32 = TAB_DEPEX + TAB_SPLIT + TAB_ARCH_IA32\r
TAB_DEPEX_AARCH64 = TAB_DEPEX + TAB_SPLIT + TAB_ARCH_AARCH64\r
\r
TAB_SKUIDS = 'SkuIds'\r
+TAB_DEFAULT_STORES = 'DefaultStores'\r
+TAB_DEFAULT_STORES_DEFAULT = 'STANDARD'\r
\r
TAB_LIBRARIES = 'Libraries'\r
TAB_LIBRARIES_COMMON = TAB_LIBRARIES + TAB_SPLIT + TAB_ARCH_COMMON\r
TAB_NMAKE = 'Nmake'\r
TAB_USER_EXTENSIONS = 'UserExtensions'\r
TAB_INCLUDE = '!include'\r
+TAB_DEFAULT = 'DEFAULT'\r
+TAB_COMMON = 'COMMON'\r
\r
#\r
# Common Define\r
TAB_INF_GUIDTYPE_VAR = 'Variable'\r
TAB_INF_GUIDTYPE_PROTOCOL = 'PROTOCOL'\r
TAB_INF_GUIDTYPE_PPI = 'PPI'\r
-TAB_INF_GUIDTYPE_UNDEFINED = 'UNDEFINED'\r
+TAB_INF_USAGE_UNDEFINED = 'UNDEFINED'\r
\r
#\r
# Dec Definitions\r
TAB_DSC_DEFINES_BUILD_TARGETS = 'BUILD_TARGETS'\r
TAB_DSC_DEFINES_SKUID_IDENTIFIER = 'SKUID_IDENTIFIER'\r
TAB_DSC_DEFINES_PCD_INFO_GENERATION = 'PCD_INFO_GENERATION'\r
+TAB_DSC_DEFINES_PCD_VAR_CHECK_GENERATION = 'PCD_VAR_CHECK_GENERATION'\r
TAB_DSC_DEFINES_FLASH_DEFINITION = 'FLASH_DEFINITION'\r
TAB_DSC_DEFINES_BUILD_NUMBER = 'BUILD_NUMBER'\r
TAB_DSC_DEFINES_MAKEFILE_NAME = 'MAKEFILE_NAME'\r
TAB_DSC_DEFINES_VPD_TOOL_GUID = 'VPD_TOOL_GUID'\r
TAB_FIX_LOAD_TOP_MEMORY_ADDRESS = 'FIX_LOAD_TOP_MEMORY_ADDRESS'\r
TAB_DSC_DEFINES_EDKGLOBAL = 'EDK_GLOBAL'\r
-\r
+TAB_DSC_PREBUILD = 'PREBUILD'\r
+TAB_DSC_POSTBUILD = 'POSTBUILD'\r
#\r
# TargetTxt Definitions\r
#\r
TAB_TOD_DEFINES_COMMAND_TYPE = 'COMMAND_TYPE'\r
TAB_TOD_DEFINES_FAMILY = 'FAMILY'\r
TAB_TOD_DEFINES_BUILDRULEFAMILY = 'BUILDRULEFAMILY'\r
+TAB_TOD_DEFINES_BUILDRULEORDER = 'BUILDRULEORDER'\r
\r
#\r
# Conditional Statements\r
TAB_IF_DEF = '!ifdef'\r
TAB_IF_N_DEF = '!ifndef'\r
TAB_IF_EXIST = '!if exist'\r
+TAB_ERROR = '!ERROR'\r
\r
#\r
# Unknown section\r
TAB_C_CODE_FILE = "C-CODE-FILE"\r
TAB_C_HEADER_FILE = "C-HEADER-FILE"\r
TAB_UNICODE_FILE = "UNICODE-TEXT-FILE"\r
+TAB_IMAGE_FILE = "IMAGE-DEFINITION-FILE"\r
TAB_DEPENDENCY_EXPRESSION_FILE = "DEPENDENCY-EXPRESSION-FILE"\r
TAB_UNKNOWN_FILE = "UNKNOWN-TYPE-FILE"\r
TAB_DEFAULT_BINARY_FILE = "_BINARY_FILE_"\r
TAB_OBJECT_FILE = "OBJECT-FILE"\r
+TAB_VFR_FILE = 'VISUAL-FORM-REPRESENTATION-FILE'\r
\r
# used by BRG\r
TAB_BRG_PCD = 'PCD'\r