## @file # # Copyright (c) 2018, Intel Corporation. All rights reserved.
# Copyright (c) 2021, American Megatrends International LLC.
# SPDX-License-Identifier: BSD-2-Clause-Patent # ## [BuildOptions.Common.EDKII] # Append build options for EDK and EDKII drivers (= is Append, == is Replace) DEFINE CRB_EDKII_BUILD_OPTIONS = -D CRB_FLAG DEFINE EDKII_CPU_BUILD_OPTIONS = -D PURLEY_FLAG DEFINE TRAD_BUILD_OPTION = -D TRAD_FLAG=1 DEFINE SUS_WELL_RESTORE_BUILD_OPTION = -D SUS_WELL_RESTORE=1 DEFINE PCH_BUILD_OPTION = -D PCH_SERVER_BIOS_FLAG=1 DEFINE SERVER_BUILD_OPTION = -D SERVER_BIOS_FLAG=1 DEFINE PCH_PKG_OPTIONS = -D PCH_SPT DEFINE MAX_SOCKET_OPTIONS = -D MAX_SOCKET=2 DEFINE EDKII_ALL_PPO_OPTIONS = $(EDKII_CPU_BUILD_OPTIONS) DEFINE PCH_BIOS_BUILD_OPTIONS = $(TRAD_BUILD_OPTION) $(ULT_BUILD_OPTION) $(PCH_BUILD_OPTION) $(SUS_WELL_RESTORE_BUILD_OPTION) $(SERVER_BUILD_OPTION) DEFINE EDKII_DSC_FEATURE_BUILD_OPTIONS = $(CRB_EDKII_BUILD_OPTIONS) $(PCH_BIOS_BUILD_OPTIONS) $(PCH_PKG_OPTIONS) $(EDKII_ALL_PPO_OPTIONS) $(SPARING_SCRATCHPAD_OPTION) $(TRACE_HUB_DEBUG_BUILD_OPTIONS) $(TRACE_HUB_INIT_BUILD_OPTIONS) $(MAX_SOCKET_OPTIONS) -D EFI_PCI_IOV_SUPPORT -D WHEA_SUPPORT -D SKX_HOST -D CLX_HOST !if $(TARGET) == "DEBUG" DEFINE DEBUG_BUILD_FLAG = -D SERIAL_DBG_MSG=1 !else DEFINE DEBUG_BUILD_FLAG = -D MDEPKG_NDEBUG -D SILENT_MODE !endif DEFINE EDKII_DSC_FEATURE_BUILD_OPTIONS = $(EDKII_DSC_FEATURE_BUILD_OPTIONS) $(DEBUG_BUILD_FLAG) # # PC_BUILD_END # DEFINE EDKII_DSC_FEATURE_BUILD_OPTIONS = $(EDKII_DSC_FEATURE_BUILD_OPTIONS) *_*_*_CC_FLAGS = $(EDKII_DSC_FEATURE_BUILD_OPTIONS) *_*_*_VFRPP_FLAGS = $(EDKII_DSC_FEATURE_BUILD_OPTIONS) *_*_*_APP_FLAGS = $(EDKII_DSC_FEATURE_BUILD_OPTIONS) *_*_*_PP_FLAGS = $(EDKII_DSC_FEATURE_BUILD_OPTIONS) *_*_*_ASLPP_FLAGS = $(EDKII_DSC_FEATURE_BUILD_OPTIONS) *_*_*_ASLCC_FLAGS = $(EDKII_DSC_FEATURE_BUILD_OPTIONS) # # Enable source level debugging for RELEASE build # !if $(TARGET) == "RELEASE" DEFINE EDKII_RELEASE_SRCDBG_ASM_BUILD_OPTIONS = /Zi DEFINE EDKII_RELEASE_SRCDBG_CC_BUILD_OPTIONS = /Zi /Gm DEFINE EDKII_RELEASE_SRCDBG_DLINK_BUILD_OPTIONS = /DEBUG MSFT:*_*_*_ASM_FLAGS = $(EDKII_RELEASE_SRCDBG_ASM_BUILD_OPTIONS) MSFT:*_*_*_CC_FLAGS = $(EDKII_RELEASE_SRCDBG_CC_BUILD_OPTIONS) MSFT:*_*_*_DLINK_FLAGS = $(EDKII_RELEASE_SRCDBG_DLINK_BUILD_OPTIONS) !endif # # Override the existing iasl path in tools_def.template # # MSFT:*_*_*_ASL_PATH == c:/Iasl/iasl.exe # # Override the VFR compile flags to speed the build time # *_*_*_VFR_FLAGS == -n # Force PE/COFF sections to be aligned at 4KB boundaries to support page level protection [BuildOptions.common.EDKII.DXE_SMM_DRIVER, BuildOptions.common.EDKII.SMM_CORE] MSFT:*_*_*_DLINK_FLAGS = /ALIGN:4096 GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 # Force PE/COFF sections to be aligned at 4KB boundaries to support MemoryAttribute table [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER] MSFT:*_*_*_DLINK_FLAGS = /ALIGN:4096 GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 [BuildOptions] !include NetworkPkg/NetworkBuildOptions.dsc.inc