## @file\r
# EFI/Framework Open Virtual Machine Firmware (OVMF) platform\r
#\r
-# Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>\r
+# Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>\r
# (C) Copyright 2016 Hewlett Packard Enterprise Development LP<BR>\r
#\r
# This program and the accompanying materials\r
DSC_SPECIFICATION = 0x00010005\r
OUTPUT_DIRECTORY = Build/OvmfX64\r
SUPPORTED_ARCHITECTURES = X64\r
- BUILD_TARGETS = DEBUG|RELEASE\r
+ BUILD_TARGETS = NOOPT|DEBUG|RELEASE\r
SKUID_IDENTIFIER = DEFAULT\r
FLASH_DEFINITION = OvmfPkg/OvmfPkgX64.fdf\r
\r
DEFINE NETWORK_IP6_ENABLE = FALSE\r
DEFINE HTTP_BOOT_ENABLE = FALSE\r
DEFINE SMM_REQUIRE = FALSE\r
+ DEFINE TLS_ENABLE = FALSE\r
\r
[BuildOptions]\r
GCC:*_UNIXGCC_*_CC_FLAGS = -DMDEPKG_NDEBUG\r
INTEL:*_*_X64_GENFW_FLAGS = --keepexceptiontable\r
!endif\r
\r
+ #\r
+ # Disable deprecated APIs.\r
+ #\r
+ MSFT:*_*_*_CC_FLAGS = /D DISABLE_NEW_DEPRECATED_INTERFACES\r
+ INTEL:*_*_*_CC_FLAGS = /D DISABLE_NEW_DEPRECATED_INTERFACES\r
+ GCC:*_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES\r
+\r
[BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]\r
GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000\r
\r
+# Force PE/COFF sections to be aligned at 4KB boundaries to support page level\r
+# protection of DXE_SMM_DRIVER/SMM_CORE modules\r
+[BuildOptions.common.EDKII.DXE_SMM_DRIVER, BuildOptions.common.EDKII.SMM_CORE]\r
+ GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000\r
+\r
################################################################################\r
#\r
# SKU Identification section - list of all SKU IDs supported by this Platform.\r
LockBoxLib|OvmfPkg/Library/LockBoxLib/LockBoxBaseLib.inf\r
!endif\r
CustomizedDisplayLib|MdeModulePkg/Library/CustomizedDisplayLib/CustomizedDisplayLib.inf\r
+ FrameBufferBltLib|MdeModulePkg/Library/FrameBufferBltLib/FrameBufferBltLib.inf\r
\r
!ifdef $(SOURCE_DEBUG_ENABLE)\r
PeCoffExtraActionLib|SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf\r
LocalApicLib|UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf\r
DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf\r
\r
-!if $(SECURE_BOOT_ENABLE) == TRUE\r
- PlatformSecureLib|OvmfPkg/Library/PlatformSecureLib/PlatformSecureLib.inf\r
IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf\r
+!if $(TLS_ENABLE) == TRUE\r
OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf\r
+!else\r
+ OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf\r
+!endif\r
+\r
+!if $(SECURE_BOOT_ENABLE) == TRUE\r
+ PlatformSecureLib|OvmfPkg/Library/PlatformSecureLib/PlatformSecureLib.inf\r
TpmMeasurementLib|SecurityPkg/Library/DxeTpmMeasurementLib/DxeTpmMeasurementLib.inf\r
AuthVariableLib|SecurityPkg/Library/AuthVariableLib/AuthVariableLib.inf\r
-!if $(NETWORK_IP6_ENABLE) == TRUE\r
- TcpIoLib|MdeModulePkg/Library/DxeTcpIoLib/DxeTcpIoLib.inf\r
-!endif\r
!else\r
TpmMeasurementLib|MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurementLibNull.inf\r
AuthVariableLib|MdeModulePkg/Library/AuthVariableLibNull/AuthVariableLibNull.inf\r
!endif\r
VarCheckLib|MdeModulePkg/Library/VarCheckLib/VarCheckLib.inf\r
\r
+!if $(NETWORK_IP6_ENABLE) == TRUE\r
+ TcpIoLib|MdeModulePkg/Library/DxeTcpIoLib/DxeTcpIoLib.inf\r
+!endif\r
+\r
!if $(HTTP_BOOT_ENABLE) == TRUE\r
HttpLib|MdeModulePkg/Library/DxeHttpLib/DxeHttpLib.inf\r
!endif\r
\r
+!if $(TLS_ENABLE) == TRUE\r
+ TlsLib|CryptoPkg/Library/TlsLib/TlsLib.inf\r
+!endif\r
+\r
S3BootScriptLib|MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf\r
SmbusLib|MdePkg/Library/BaseSmbusLibNull/BaseSmbusLibNull.inf\r
OrderedCollectionLib|MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrderedCollectionRedBlackTreeLib.inf\r
XenHypercallLib|OvmfPkg/Library/XenHypercallLib/XenHypercallLib.inf\r
\r
[LibraryClasses.common]\r
-!if $(SECURE_BOOT_ENABLE) == TRUE\r
BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf\r
-!endif\r
\r
[LibraryClasses.common.SEC]\r
TimerLib|OvmfPkg/Library/AcpiTimerLib/BaseRomAcpiTimerLib.inf\r
DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf\r
!endif\r
UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf\r
-!if $(SECURE_BOOT_ENABLE) == TRUE\r
BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf\r
-!endif\r
PciLib|OvmfPkg/Library/DxePciLibI440FxQ35/DxePciLibI440FxQ35.inf\r
\r
[LibraryClasses.common.UEFI_DRIVER]\r
gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdDebugLoadImageMethod|0x2\r
!endif\r
\r
+!if $(HTTP_BOOT_ENABLE) == TRUE\r
+ gEfiNetworkPkgTokenSpaceGuid.PcdAllowHttpConnections|TRUE\r
+!endif\r
+\r
!ifndef $(USE_OLD_SHELL)\r
gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile|{ 0x83, 0xA5, 0x04, 0x7C, 0x3E, 0x9E, 0x1C, 0x4F, 0xAD, 0x65, 0xE0, 0x52, 0x68, 0xD0, 0xB4, 0xD1 }\r
!endif\r
\r
!if $(SMM_REQUIRE) == TRUE\r
- gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmSyncMode|0x01\r
- gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmApSyncTimeout|100000\r
gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmStackSize|0x4000\r
!endif\r
\r
gEfiMdeModulePkgTokenSpaceGuid.PcdSetNxForStack|FALSE\r
gEfiMdeModulePkgTokenSpaceGuid.PcdPropertiesTableEnable|FALSE\r
\r
+ # UefiCpuPkg PCDs related to initial AP bringup and general AP management.\r
+ gUefiCpuPkgTokenSpaceGuid.PcdCpuMaxLogicalProcessorNumber|64\r
+ gUefiCpuPkgTokenSpaceGuid.PcdCpuApInitTimeOutInMicroSeconds|50000\r
+\r
+!if $(SMM_REQUIRE) == TRUE\r
+ gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmSyncMode|0x01\r
+ gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmApSyncTimeout|100000\r
+!endif\r
+\r
################################################################################\r
#\r
# Components Section - list of all EDK II Modules needed by this Platform.\r
#\r
OvmfPkg/Sec/SecMain.inf {\r
<LibraryClasses>\r
- NULL|IntelFrameworkModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf\r
+ NULL|MdeModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf\r
}\r
\r
#\r
#\r
MdeModulePkg/Core/Dxe/DxeMain.inf {\r
<LibraryClasses>\r
- NULL|IntelFrameworkModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf\r
+ NULL|MdeModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf\r
DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf\r
}\r
\r
MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf\r
MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf\r
\r
- OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf {\r
- <LibraryClasses>\r
- BltLib|OptionRomPkg/Library/FrameBufferBltLib/FrameBufferBltLib.inf\r
- }\r
+ OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf\r
OvmfPkg/VirtioGpuDxe/VirtioGpu.inf\r
\r
#\r
OvmfPkg/AcpiTables/AcpiTables.inf\r
MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveStateDxe.inf\r
MdeModulePkg/Universal/Acpi/BootScriptExecutorDxe/BootScriptExecutorDxe.inf\r
+ MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf\r
\r
#\r
# Network Support\r
NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf\r
NetworkPkg/Mtftp6Dxe/Mtftp6Dxe.inf\r
NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf\r
-!if $(SECURE_BOOT_ENABLE) == TRUE\r
NetworkPkg/IScsiDxe/IScsiDxe.inf\r
-!else\r
- MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.inf\r
-!endif\r
!else\r
MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf\r
MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf\r
NetworkPkg/HttpUtilitiesDxe/HttpUtilitiesDxe.inf\r
NetworkPkg/HttpDxe/HttpDxe.inf\r
NetworkPkg/HttpBootDxe/HttpBootDxe.inf\r
+!endif\r
+!if $(TLS_ENABLE) == TRUE\r
+ NetworkPkg/TlsDxe/TlsDxe.inf\r
+ NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigDxe.inf\r
!endif\r
OvmfPkg/VirtioNetDxe/VirtioNet.inf\r
\r