diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.template index 94874135c2..601497dcf1 100755 --- a/BaseTools/Conf/tools_def.template +++ b/BaseTools/Conf/tools_def.template @@ -1858,7 +1858,7 @@ DEFINE GCC_ARM_CC_XIPFLAGS = -mno-unaligned-access DEFINE GCC_AARCH64_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) -mlittle-endian -fno-short-enums -fverbose-asm -funsigned-char -ffunction-sections -fdata-sections -Wno-address -fno-asynchronous-unwind-tables -fno-unwind-tables -fno-pic -fno-pie -ffixed-x18 DEFINE GCC_AARCH64_CC_XIPFLAGS = -mstrict-align -mgeneral-regs-only DEFINE GCC_DLINK_FLAGS_COMMON = -nostdlib --pie -DEFINE GCC_DLINK2_FLAGS_COMMON = -Wl,--script=$(EDK_TOOLS_PATH)/Scripts/Base.lds +DEFINE GCC_DLINK2_FLAGS_COMMON = -Wl,--default-script=$(EDK_TOOLS_PATH)/Scripts/Base.lds DEFINE GCC_IA32_X64_DLINK_COMMON = DEF(GCC_DLINK_FLAGS_COMMON) --gc-sections DEFINE GCC_ARM_AARCH64_DLINK_COMMON= -Wl,--emit-relocs -nostdlib -Wl,--gc-sections -u $(IMAGE_ENTRY_POINT) -Wl,-e,$(IMAGE_ENTRY_POINT),-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map DEFINE GCC_LOONGARCH64_DLINK_COMMON= -Wl,--emit-relocs -nostdlib -Wl,--gc-sections -u $(IMAGE_ENTRY_POINT) -Wl,-e,$(IMAGE_ENTRY_POINT),-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map @@ -1961,7 +1961,7 @@ DEFINE GCC5_ASLCC_FLAGS = DEF(GCC49_ASLCC_FLAGS) -fno-lto DEFINE GCC5_RISCV_ALL_CC_FLAGS = -g -fshort-wchar -fno-strict-aliasing -Wall -Werror -Wno-array-bounds -ffunction-sections -fdata-sections -include AutoGen.h -fno-common -DSTRING_ARRAY_NAME=$(BASE_NAME)Strings -msmall-data-limit=0 DEFINE GCC5_RISCV_ALL_DLINK_COMMON = -nostdlib -Wl,-n,-q,--gc-sections -z max-page-size=0x1000 DEFINE GCC5_RISCV_ALL_DLINK_FLAGS = DEF(GCC5_RISCV_ALL_DLINK_COMMON) -Wl,--entry,$(IMAGE_ENTRY_POINT) -u $(IMAGE_ENTRY_POINT) -Wl,-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map -DEFINE GCC5_RISCV_ALL_DLINK2_FLAGS =,--script=$(EDK_TOOLS_PATH)/Scripts/Base.lds +DEFINE GCC5_RISCV_ALL_DLINK2_FLAGS =,--default-script=$(EDK_TOOLS_PATH)/Scripts/Base.lds DEFINE GCC5_RISCV_ALL_ASM_FLAGS = -c -x assembler -imacros $(DEST_DIR_DEBUG)/AutoGen.h DEFINE GCC5_RISCV_ALL_CC_FLAGS_WARNING_DISABLE = -Wno-tautological-compare -Wno-pointer-compare @@ -2876,11 +2876,9 @@ DEFINE CLANGDWARF_X64_PREFIX = ENV(CLANG_BIN) # LLVM/CLANG doesn't support -n link option. So, it can't share the same IA32_X64_DLINK_COMMON flag. DEFINE CLANGDWARF_IA32_X64_DLINK_COMMON = -nostdlib -Wl,-q,--gc-sections -z max-page-size=0x1000 -Wl,-z,notext -DEFINE CLANGDWARF_DLINK2_FLAGS_COMMON = -Wl,--script=$(EDK_TOOLS_PATH)/Scripts/Base.lds -DEFINE CLANGDWARF_IA32_X64_ASLDLINK_FLAGS = DEF(CLANGDWARF_IA32_X64_DLINK_COMMON) DEF(CLANGDWARF_DLINK2_FLAGS_COMMON) -Wl,--entry,ReferenceAcpiTable -u ReferenceAcpiTable +DEFINE CLANGDWARF_IA32_X64_ASLDLINK_FLAGS = DEF(CLANGDWARF_IA32_X64_DLINK_COMMON) -Wl,--entry,ReferenceAcpiTable -u ReferenceAcpiTable DEFINE CLANGDWARF_IA32_X64_DLINK_FLAGS = DEF(CLANGDWARF_IA32_X64_DLINK_COMMON) -Wl,--entry,$(IMAGE_ENTRY_POINT) -u $(IMAGE_ENTRY_POINT) -Wl,-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map,--whole-archive -DEFINE CLANGDWARF_IA32_DLINK2_FLAGS = DEF(CLANGDWARF_DLINK2_FLAGS_COMMON) -no-pie -DEFINE CLANGDWARF_X64_DLINK2_FLAGS = DEF(CLANGDWARF_DLINK2_FLAGS_COMMON) +DEFINE CLANGDWARF_IA32_DLINK2_FLAGS = -no-pie ########################### # CLANGDWARF IA32 definitions @@ -2946,15 +2944,15 @@ NOOPT_CLANGDWARF_IA32_DLINK2_FLAGS = DEF(CLANGDWARF_IA32_DLINK2_FLAGS) -O0 - DEBUG_CLANGDWARF_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -Oz -flto DEF(CLANG38_X64_TARGET) -g DEBUG_CLANGDWARF_X64_DLINK_FLAGS = DEF(CLANGDWARF_IA32_X64_DLINK_FLAGS) -flto -Wl,-O3 -Wl,-melf_x86_64 -Wl,--oformat,elf64-x86-64 -Wl,-pie -mcmodel=small -Wl,--apply-dynamic-relocs -DEBUG_CLANGDWARF_X64_DLINK2_FLAGS = DEF(CLANGDWARF_X64_DLINK2_FLAGS) -O3 -fuse-ld=lld +DEBUG_CLANGDWARF_X64_DLINK2_FLAGS = -O3 -fuse-ld=lld RELEASE_CLANGDWARF_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -Oz -flto DEF(CLANG38_X64_TARGET) RELEASE_CLANGDWARF_X64_DLINK_FLAGS = DEF(CLANGDWARF_IA32_X64_DLINK_FLAGS) -flto -Wl,-O3 -Wl,-melf_x86_64 -Wl,--oformat,elf64-x86-64 -Wl,-pie -mcmodel=small -Wl,--apply-dynamic-relocs -RELEASE_CLANGDWARF_X64_DLINK2_FLAGS = DEF(CLANGDWARF_X64_DLINK2_FLAGS) -O3 -fuse-ld=lld +RELEASE_CLANGDWARF_X64_DLINK2_FLAGS = -O3 -fuse-ld=lld NOOPT_CLANGDWARF_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -O0 DEF(CLANG38_X64_TARGET) -g NOOPT_CLANGDWARF_X64_DLINK_FLAGS = DEF(CLANGDWARF_IA32_X64_DLINK_FLAGS) -Wl,-O0 -Wl,-melf_x86_64 -Wl,--oformat,elf64-x86-64 -Wl,-pie -mcmodel=small -Wl,--apply-dynamic-relocs -NOOPT_CLANGDWARF_X64_DLINK2_FLAGS = DEF(CLANGDWARF_X64_DLINK2_FLAGS) -O0 -fuse-ld=lld +NOOPT_CLANGDWARF_X64_DLINK2_FLAGS = -O0 -fuse-ld=lld # # diff --git a/BaseTools/Scripts/Merge.lds b/BaseTools/Scripts/Merge.lds new file mode 100644 index 0000000000..7bb9ea44ff --- /dev/null +++ b/BaseTools/Scripts/Merge.lds @@ -0,0 +1,62 @@ +/** @file + + Unified linker script for GCC, CLANG based builds + + Copyright (c) 2023, Mikhail Krichanov. All rights reserved.
+ Copyright (c) 2010 - 2021, Intel Corporation. All rights reserved.
+ Copyright (c) 2015, Linaro Ltd. All rights reserved.
+ (C) Copyright 2016 Hewlett Packard Enterprise Development LP
+ + SPDX-License-Identifier: BSD-2-Clause-Patent + +**/ + +SECTIONS { + + .text CONSTANT(MAXPAGESIZE) : ALIGN(CONSTANT(MAXPAGESIZE)) { + *(.text .text.* .stub .gnu.linkonce.t.*) + *(.rodata .rodata.* .data.rel.ro .data.rel.ro.* .gnu.linkonce.r.*) + *(.got .got.*) + + /* + * The contents of AutoGen.c files are mostly constant from the POV of the + * program, but most of it ends up in .data or .bss by default since few of + * the variable definitions that get emitted are declared as CONST. + * Unfortunately, we cannot pull it into the .text section entirely, since + * patchable PCDs are also emitted here, but we can at least move all of the + * emitted GUIDs here. + */ + *:AutoGen.obj(.data.g*Guid) + } + + .data : ALIGN(CONSTANT(MAXPAGESIZE)) { + *(.data .data.* .gnu.linkonce.d.*) + *(.bss .bss.*) + } + + .hii : ALIGN(CONSTANT(MAXPAGESIZE)) { + KEEP (*(.hii)) + } + + .eh_frame : ALIGN(CONSTANT(MAXPAGESIZE)) { + KEEP (*(.eh_frame)) + } + + .rela (INFO) : { + *(.rela .rela.*) + } + + .build-id (INFO) : { *(.note.gnu.build-id) } + + /DISCARD/ : { + *(.note.GNU-stack) + *(.gnu_debuglink) + *(.interp) + *(.dynsym) + *(.dynstr) + *(.hash .gnu.hash) + *(.comment) + *(COMMON) + *(.dynamic) + } +} diff --git a/Ext4Pkg/Ext4Pkg.dsc b/Ext4Pkg/Ext4Pkg.dsc index 18cfc102b8..8b72de289d 100644 --- a/Ext4Pkg/Ext4Pkg.dsc +++ b/Ext4Pkg/Ext4Pkg.dsc @@ -20,11 +20,13 @@ BUILD_TARGETS = DEBUG|RELEASE|NOOPT SKUID_IDENTIFIER = DEFAULT -!include MdePkg/MdeLibs.dsc.inc +!include MdePkg/MdeBuildOptions.dsc.inc [BuildOptions] *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES +!include MdePkg/MdeLibs.dsc.inc + [LibraryClasses] # # Entry Point Libraries diff --git a/FatPkg/FatPkg.dsc b/FatPkg/FatPkg.dsc index e377c25ea1..00f89e7229 100644 --- a/FatPkg/FatPkg.dsc +++ b/FatPkg/FatPkg.dsc @@ -21,6 +21,8 @@ BUILD_TARGETS = DEBUG|RELEASE|NOOPT SKUID_IDENTIFIER = DEFAULT +!include MdePkg/MdeBuildOptions.dsc.inc + [BuildOptions] GCC:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG INTEL:RELEASE_*_*_CC_FLAGS = /D MDEPKG_NDEBUG diff --git a/IntelFsp2Pkg/IntelFsp2Pkg.dsc b/IntelFsp2Pkg/IntelFsp2Pkg.dsc index 0713f0028d..8988f89c06 100644 --- a/IntelFsp2Pkg/IntelFsp2Pkg.dsc +++ b/IntelFsp2Pkg/IntelFsp2Pkg.dsc @@ -81,5 +81,7 @@ gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80080046 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x07 +!include MdePkg/MdeBuildOptions.dsc.inc + [BuildOptions] *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES diff --git a/IntelFsp2WrapperPkg/IntelFsp2WrapperPkg.dsc b/IntelFsp2WrapperPkg/IntelFsp2WrapperPkg.dsc index db5da76660..33ccde7f05 100644 --- a/IntelFsp2WrapperPkg/IntelFsp2WrapperPkg.dsc +++ b/IntelFsp2WrapperPkg/IntelFsp2WrapperPkg.dsc @@ -101,5 +101,7 @@ gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80080046 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x07 +!include MdePkg/MdeBuildOptions.dsc.inc + [BuildOptions] *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES diff --git a/MdeModulePkg/MdeModulePkg.dsc b/MdeModulePkg/MdeModulePkg.dsc index 7e35f2c422..643fda1ee4 100644 --- a/MdeModulePkg/MdeModulePkg.dsc +++ b/MdeModulePkg/MdeModulePkg.dsc @@ -516,5 +516,4 @@ [Components.X64] MdeModulePkg/Universal/CapsulePei/CapsuleX64.inf -[BuildOptions] - +!include MdePkg/MdeBuildOptions.dsc.inc diff --git a/MdePkg/MdeBuildOptions.dsc.inc b/MdePkg/MdeBuildOptions.dsc.inc new file mode 100644 index 0000000000..18be6875d6 --- /dev/null +++ b/MdePkg/MdeBuildOptions.dsc.inc @@ -0,0 +1,44 @@ +## @file +# Mde DSC include file for [BuildOptions*] section of all Architectures. +# +# This file can be included to a platform DSC file by using +# "!include MdePkg/MdeBuildOptions.dsc.inc" to specify common build options. +# +# Copyright (c) 2021, Marvin Häuser. All rights reserved.
+# Copyright (c) 2023, Mikhail Krichanov. All rights reserved.
+# +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## + +# +# MDEPKG_REDUCE_FW_SIZE: +# Align boot-time images at a 1024 bytes boundary to reduce firmware size. +# + +!if $(MDEPKG_REDUCE_FW_SIZE) == TRUE + [BuildOptions] + MSFT:*_*_*_DLINK_FLAGS = /ALIGN:1024 + INTEL:*_*_*_DLINK_FLAGS = /ALIGN:1024 + CLANGPDB:*_*_*_DLINK_FLAGS = /ALIGN:1024 /FILEALIGN:1024 + GCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x400 + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x400 + XCODE:*_*_*_DLINK_FLAGS = -segalign 0x400 -seg1addr 0x400 + XCODE:*_*_*_ASLDLINK_FLAGS = -segalign 0x400 -seg1addr 0x400 + XCODE:*_*_*_MTOC_FLAGS = -align 0x400 +!endif + +!if $(MDEPKG_MERGE_RODATA_INTO_TEXT) == TRUE + [BuildOptions] + MSFT:*_*_*_DLINK_FLAGS = /MERGE:.rdata=.text + CLANGPDB:*_*_*_DLINK_FLAGS = /MERGE:.rdata=.text + GCC:*_*_*_DLINK2_FLAGS = -Wl,--script=$(EDK_TOOLS_PATH)/Scripts/Merge.lds + GCC:*_*_*_ASLDLINK_FLAGS = -Wl,--script=$(EDK_TOOLS_PATH)/Scripts/Merge.lds + CLANGGCC:*_*_*_DLINK2_FLAGS = -Wl,--script=$(EDK_TOOLS_PATH)/Scripts/Merge.lds + CLANGGCC:*_*_*_ASLDLINK_FLAGS = -Wl,--script=$(EDK_TOOLS_PATH)/Scripts/Merge.lds + XCODE:*_*_*_DLINK_FLAGS = -rename_section __DATA_CONST __text_const __TEXT __const -rename_section __DATA_CONST __cstring __TEXT __cstring -rename_section __DATA_CONST __ustring __TEXT __ustring -rename_section __DATA_CONST __const __TEXT __data_const +!else + [BuildOptions] + CLANGGCC:*_*_*_DLINK2_FLAGS = -Wl,--script=$(EDK_TOOLS_PATH)/Scripts/Base.lds + CLANGGCC:*_*_*_ASLDLINK_FLAGS = -Wl,--script=$(EDK_TOOLS_PATH)/Scripts/Base.lds +!endif diff --git a/MdePkg/MdePkg.dsc b/MdePkg/MdePkg.dsc index e9635c86d6..8d5a43b9ee 100644 --- a/MdePkg/MdePkg.dsc +++ b/MdePkg/MdePkg.dsc @@ -193,4 +193,4 @@ MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsicArmVirt.inf MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf -[BuildOptions] +!include MdePkg/MdeBuildOptions.dsc.inc diff --git a/NetworkPkg/NetworkPkg.dsc b/NetworkPkg/NetworkPkg.dsc index ce856c8df0..e26b3e5c35 100644 --- a/NetworkPkg/NetworkPkg.dsc +++ b/NetworkPkg/NetworkPkg.dsc @@ -131,7 +131,8 @@ NetworkPkg/Library/DxeTcpIoLib/DxeTcpIoLib.inf NetworkPkg/Library/DxeUdpIoLib/DxeUdpIoLib.inf - !include NetworkPkg/Network.dsc.inc +!include NetworkPkg/Network.dsc.inc +!include MdePkg/MdeBuildOptions.dsc.inc [BuildOptions] *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES diff --git a/OvmfPkg/OvmfPkgIa32.dsc b/OvmfPkg/OvmfPkgIa32.dsc index 0dcbf18b1c..7f8c1cc450 100644 --- a/OvmfPkg/OvmfPkgIa32.dsc +++ b/OvmfPkg/OvmfPkgIa32.dsc @@ -56,6 +56,9 @@ DEFINE LINUX_LOADER = FALSE DEFINE WINDOWS_10_IA32 = FALSE + DEFINE MDEPKG_REDUCE_FW_SIZE = FALSE + DEFINE MDEPKG_MERGE_RODATA_INTO_TEXT = FALSE + # # Device drivers # @@ -108,20 +111,7 @@ !endif !include NetworkPkg/NetworkBuildOptions.dsc.inc - -[BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER] - GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 - XCODE:*_*_*_DLINK_FLAGS = -seg1addr 0x1000 -segalign 0x1000 - XCODE:*_*_*_MTOC_FLAGS = -align 0x1000 - CLANGPDB:*_*_*_DLINK_FLAGS = /ALIGN:4096 - -# Force PE/COFF sections to be aligned at 4KB boundaries to support page level -# protection of DXE_SMM_DRIVER/SMM_CORE modules -[BuildOptions.common.EDKII.DXE_SMM_DRIVER, BuildOptions.common.EDKII.SMM_CORE] - GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 - XCODE:*_*_*_DLINK_FLAGS = -seg1addr 0x1000 -segalign 0x1000 - XCODE:*_*_*_MTOC_FLAGS = -align 0x1000 - CLANGPDB:*_*_*_DLINK_FLAGS = /ALIGN:4096 +!include MdePkg/MdeBuildOptions.dsc.inc ################################################################################ # diff --git a/OvmfPkg/OvmfPkgIa32X64.dsc b/OvmfPkg/OvmfPkgIa32X64.dsc index bcfa7e3b1b..ce5753edc1 100644 --- a/OvmfPkg/OvmfPkgIa32X64.dsc +++ b/OvmfPkg/OvmfPkgIa32X64.dsc @@ -55,6 +55,9 @@ DEFINE LINUX_LOADER = FALSE DEFINE WINDOWS_10_IA32 = FALSE + DEFINE MDEPKG_REDUCE_FW_SIZE = FALSE + DEFINE MDEPKG_MERGE_RODATA_INTO_TEXT = FALSE + # # Device drivers # @@ -112,11 +115,7 @@ !endif !include NetworkPkg/NetworkBuildOptions.dsc.inc - - GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 - XCODE:*_*_*_DLINK_FLAGS = -seg1addr 0x1000 -segalign 0x1000 - XCODE:*_*_*_MTOC_FLAGS = -align 0x1000 - CLANGPDB:*_*_*_DLINK_FLAGS = /FILEALIGN:4096 /ALIGN:4096 +!include MdePkg/MdeBuildOptions.dsc.inc ################################################################################ # diff --git a/OvmfPkg/OvmfPkgX64.dsc b/OvmfPkg/OvmfPkgX64.dsc index 5f2a3c6448..1e11c14f81 100644 --- a/OvmfPkg/OvmfPkgX64.dsc +++ b/OvmfPkg/OvmfPkgX64.dsc @@ -54,6 +54,9 @@ DEFINE LEGACY_WINDOWS_LOADER = FALSE DEFINE LINUX_LOADER = FALSE + DEFINE MDEPKG_REDUCE_FW_SIZE = FALSE + DEFINE MDEPKG_MERGE_RODATA_INTO_TEXT = FALSE + # # Device drivers # @@ -124,20 +127,7 @@ !endif !include NetworkPkg/NetworkBuildOptions.dsc.inc - -[BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER] - GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 - XCODE:*_*_*_DLINK_FLAGS = -seg1addr 0x1000 -segalign 0x1000 - XCODE:*_*_*_MTOC_FLAGS = -align 0x1000 - CLANGPDB:*_*_*_DLINK_FLAGS = /ALIGN:4096 - -# Force PE/COFF sections to be aligned at 4KB boundaries to support page level -# protection of DXE_SMM_DRIVER/SMM_CORE modules -[BuildOptions.common.EDKII.DXE_SMM_DRIVER, BuildOptions.common.EDKII.SMM_CORE] - GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 - XCODE:*_*_*_DLINK_FLAGS = -seg1addr 0x1000 -segalign 0x1000 - XCODE:*_*_*_MTOC_FLAGS = -align 0x1000 - CLANGPDB:*_*_*_DLINK_FLAGS = /ALIGN:4096 +!include MdePkg/MdeBuildOptions.dsc.inc ################################################################################ # diff --git a/UefiCpuPkg/UefiCpuPkg.dsc b/UefiCpuPkg/UefiCpuPkg.dsc index 70d37c12e8..904f8f0bde 100644 --- a/UefiCpuPkg/UefiCpuPkg.dsc +++ b/UefiCpuPkg/UefiCpuPkg.dsc @@ -185,5 +185,7 @@ [Components.X64] UefiCpuPkg/Library/CpuExceptionHandlerLib/UnitTest/DxeCpuExceptionHandlerLibUnitTest.inf +!include MdePkg/MdeBuildOptions.dsc.inc + [BuildOptions] *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES diff --git a/UefiPayloadPkg/UefiPayloadPkg.dsc b/UefiPayloadPkg/UefiPayloadPkg.dsc index 07623310d4..c284b7a49f 100644 --- a/UefiPayloadPkg/UefiPayloadPkg.dsc +++ b/UefiPayloadPkg/UefiPayloadPkg.dsc @@ -134,6 +134,8 @@ DEFINE MULTIPLE_DEBUG_PORT_SUPPORT = FALSE +!include MdePkg/MdeBuildOptions.dsc.inc + [BuildOptions] *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES !if $(USE_CBMEM_FOR_CONSOLE) == FALSE @@ -142,13 +144,6 @@ MSFT:RELEASE_*_*_CC_FLAGS = /D MDEPKG_NDEBUG !endif -[BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER] - GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 - XCODE:*_*_*_DLINK_FLAGS = -seg1addr 0x1000 -segalign 0x1000 - XCODE:*_*_*_MTOC_FLAGS = -align 0x1000 - CLANGPDB:*_*_*_DLINK_FLAGS = /ALIGN:4096 - MSFT:*_*_*_DLINK_FLAGS = /ALIGN:4096 - ################################################################################ # # SKU Identification section - list of all SKU IDs supported by this Platform. diff --git a/UnitTestFrameworkPkg/UnitTestFrameworkPkgTarget.dsc.inc b/UnitTestFrameworkPkg/UnitTestFrameworkPkgTarget.dsc.inc index 8adf690098..23f706d1aa 100644 --- a/UnitTestFrameworkPkg/UnitTestFrameworkPkgTarget.dsc.inc +++ b/UnitTestFrameworkPkg/UnitTestFrameworkPkgTarget.dsc.inc @@ -56,6 +56,8 @@ [PcdsFixedAtBuild] gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x17 +!include MdePkg/MdeBuildOptions.dsc.inc + [BuildOptions] MSFT:*_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES -D EDKII_UNIT_TEST_FRAMEWORK_ENABLED GCC:*_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES -D EDKII_UNIT_TEST_FRAMEWORK_ENABLED