Re: [edk2-devel] [Patch 7/7] OvmfPkg: Update DSC/FDF to support CLANG8ELF tool chain
On 04/26/19 16:42, Liming Gao wrote: > Signed-off-by: Liming Gao > --- > OvmfPkg/OvmfPkgIa32.dsc| 4 +++- > OvmfPkg/OvmfPkgIa32.fdf| 2 +- > OvmfPkg/OvmfPkgIa32X64.dsc | 4 +++- > OvmfPkg/OvmfPkgIa32X64.fdf | 2 +- > OvmfPkg/OvmfPkgX64.dsc | 4 +++- > OvmfPkg/OvmfPkgX64.fdf | 2 +- > 6 files changed, 12 insertions(+), 6 deletions(-) > > diff --git a/OvmfPkg/OvmfPkgIa32.dsc b/OvmfPkg/OvmfPkgIa32.dsc > index 98a8467e86..7972b25112 100644 > --- a/OvmfPkg/OvmfPkgIa32.dsc > +++ b/OvmfPkg/OvmfPkgIa32.dsc > @@ -73,12 +73,14 @@ > > [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER] >GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 > + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 >XCODE:*_*_*_DLINK_FLAGS = > > # 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 > + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 >XCODE:*_*_*_DLINK_FLAGS = > > > > @@ -832,7 +834,7 @@ >OvmfPkg/Csm/Csm16/Csm16.inf > !endif > > -!if $(TOOL_CHAIN_TAG) != "XCODE5" > +!if $(TOOL_CHAIN_TAG) != "XCODE5" AND $(TOOL_CHAIN_TAG) != "CLANG8ELF" >ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf { > >gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE > diff --git a/OvmfPkg/OvmfPkgIa32.fdf b/OvmfPkg/OvmfPkgIa32.fdf > index bc08bf2243..2894cfe8d6 100644 > --- a/OvmfPkg/OvmfPkgIa32.fdf > +++ b/OvmfPkg/OvmfPkgIa32.fdf > @@ -287,7 +287,7 @@ INF > MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResour > INF FatPkg/EnhancedFatDxe/Fat.inf > INF MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf > > -!if $(TOOL_CHAIN_TAG) != "XCODE5" > +!if $(TOOL_CHAIN_TAG) != "XCODE5" AND $(TOOL_CHAIN_TAG) != "CLANG8ELF" > INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf > !endif > INF ShellPkg/Application/Shell/Shell.inf > diff --git a/OvmfPkg/OvmfPkgIa32X64.dsc b/OvmfPkg/OvmfPkgIa32X64.dsc > index 1f722fc987..c9feeafaae 100644 > --- a/OvmfPkg/OvmfPkgIa32X64.dsc > +++ b/OvmfPkg/OvmfPkgIa32X64.dsc > @@ -78,12 +78,14 @@ > > [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER] >GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 > + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 >XCODE:*_*_*_DLINK_FLAGS = > > # 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 > + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 >XCODE:*_*_*_DLINK_FLAGS = > > > > @@ -841,7 +843,7 @@ >OvmfPkg/Csm/Csm16/Csm16.inf > !endif > > -!if $(TOOL_CHAIN_TAG) != "XCODE5" > +!if $(TOOL_CHAIN_TAG) != "XCODE5" AND $(TOOL_CHAIN_TAG) != "CLANG8ELF" >ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf { > >gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE > diff --git a/OvmfPkg/OvmfPkgIa32X64.fdf b/OvmfPkg/OvmfPkgIa32X64.fdf > index ccf36c5dd9..affce983f9 100644 > --- a/OvmfPkg/OvmfPkgIa32X64.fdf > +++ b/OvmfPkg/OvmfPkgIa32X64.fdf > @@ -288,7 +288,7 @@ INF > MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResour > INF FatPkg/EnhancedFatDxe/Fat.inf > INF MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf > > -!if $(TOOL_CHAIN_TAG) != "XCODE5" > +!if $(TOOL_CHAIN_TAG) != "XCODE5" AND $(TOOL_CHAIN_TAG) != "CLANG8ELF" > INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf > !endif > INF ShellPkg/Application/Shell/Shell.inf > diff --git a/OvmfPkg/OvmfPkgX64.dsc b/OvmfPkg/OvmfPkgX64.dsc > index 2927ee07b8..f28ec13c0c 100644 > --- a/OvmfPkg/OvmfPkgX64.dsc > +++ b/OvmfPkg/OvmfPkgX64.dsc > @@ -78,12 +78,14 @@ > > [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER] >GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 > + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 >XCODE:*_*_*_DLINK_FLAGS = > > # 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 > + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 >XCODE:*_*_*_DLINK_FLAGS = > > > > @@ -839,7 +841,7 @@ >OvmfPkg/Csm/Csm16/Csm16.inf > !endif > > -!if $(TOOL_CHAIN_TAG) != "XCODE5" > +!if $(TOOL_CHAIN_TAG) != "XCODE5" AND $(TOOL_CHAIN_TAG) != "CLANG8ELF" >
Re: [edk2-devel] [Patch 7/7] OvmfPkg: Update DSC/FDF to support CLANG8ELF tool chain
Ard: > -Original Message- > From: Ard Biesheuvel [mailto:ard.biesheu...@linaro.org] > Sent: Sunday, May 19, 2019 9:24 PM > To: edk2-devel-groups-io ; Gao, Liming > > Subject: Re: [edk2-devel] [Patch 7/7] OvmfPkg: Update DSC/FDF to support > CLANG8ELF tool chain > > On Fri, 26 Apr 2019 at 16:43, Liming Gao wrote: > > > > Signed-off-by: Liming Gao > > --- > > OvmfPkg/OvmfPkgIa32.dsc| 4 +++- > > OvmfPkg/OvmfPkgIa32.fdf| 2 +- > > OvmfPkg/OvmfPkgIa32X64.dsc | 4 +++- > > OvmfPkg/OvmfPkgIa32X64.fdf | 2 +- > > OvmfPkg/OvmfPkgX64.dsc | 4 +++- > > OvmfPkg/OvmfPkgX64.fdf | 2 +- > > 6 files changed, 12 insertions(+), 6 deletions(-) > > > > diff --git a/OvmfPkg/OvmfPkgIa32.dsc b/OvmfPkg/OvmfPkgIa32.dsc > > index 98a8467e86..7972b25112 100644 > > --- a/OvmfPkg/OvmfPkgIa32.dsc > > +++ b/OvmfPkg/OvmfPkgIa32.dsc > > @@ -73,12 +73,14 @@ > > > > [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER] > >GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 > > + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 > > So are we introducing a new toolchain family just for the linker > flags? In that case, it would be better to call the toolchain family > CLANGLLD or LLVMLLD. This is the tool chain BUILDRULEFAMILY, not tool chain family. It is for the build rule customization. I agree CLANGLLD is better. > > We could also consider switching all GNU ld toolchains to use > max-page-size instead of common-page-size, given that binutils > supports both. > Yes. Binutils supports max-page-size option also. But, I don't investigate more on common-page-size and max-page-size in Binutils. To not impact GCC tool chain, I enable max-page-size option first in CLANGLLD tool chain, because CLANG LLD only supports it. > >XCODE:*_*_*_DLINK_FLAGS = > > > > # 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 > > + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 > >XCODE:*_*_*_DLINK_FLAGS = > > > > > > > > @@ -832,7 +834,7 @@ > >OvmfPkg/Csm/Csm16/Csm16.inf > > !endif > > > > -!if $(TOOL_CHAIN_TAG) != "XCODE5" > > +!if $(TOOL_CHAIN_TAG) != "XCODE5" AND $(TOOL_CHAIN_TAG) != "CLANG8ELF" > >ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf { > > > >gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE > > diff --git a/OvmfPkg/OvmfPkgIa32.fdf b/OvmfPkg/OvmfPkgIa32.fdf > > index bc08bf2243..2894cfe8d6 100644 > > --- a/OvmfPkg/OvmfPkgIa32.fdf > > +++ b/OvmfPkg/OvmfPkgIa32.fdf > > @@ -287,7 +287,7 @@ INF > > MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResour > > INF FatPkg/EnhancedFatDxe/Fat.inf > > INF MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf > > > > -!if $(TOOL_CHAIN_TAG) != "XCODE5" > > +!if $(TOOL_CHAIN_TAG) != "XCODE5" AND $(TOOL_CHAIN_TAG) != "CLANG8ELF" > > INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf > > !endif > > INF ShellPkg/Application/Shell/Shell.inf > > diff --git a/OvmfPkg/OvmfPkgIa32X64.dsc b/OvmfPkg/OvmfPkgIa32X64.dsc > > index 1f722fc987..c9feeafaae 100644 > > --- a/OvmfPkg/OvmfPkgIa32X64.dsc > > +++ b/OvmfPkg/OvmfPkgIa32X64.dsc > > @@ -78,12 +78,14 @@ > > > > [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER] > >GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 > > + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 > >XCODE:*_*_*_DLINK_FLAGS = > > > > # 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 > > + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 > >XCODE:*_*_*_DLINK_FLAGS = > > > > > > > > @@ -841,7 +843,7 @@ > >OvmfPkg/Csm/Csm16/Csm16.inf > > !endif > > > > -!if $(TOOL_CHAIN_TAG) != "XCODE5" > > +!if $(TOOL_CHAIN_TAG) != "XCODE5" AND $(TOOL_CHAIN_TAG) != "CLANG8ELF" &g
Re: [edk2-devel] [Patch 7/7] OvmfPkg: Update DSC/FDF to support CLANG8ELF tool chain
On Fri, 26 Apr 2019 at 16:43, Liming Gao wrote: > > Signed-off-by: Liming Gao > --- > OvmfPkg/OvmfPkgIa32.dsc| 4 +++- > OvmfPkg/OvmfPkgIa32.fdf| 2 +- > OvmfPkg/OvmfPkgIa32X64.dsc | 4 +++- > OvmfPkg/OvmfPkgIa32X64.fdf | 2 +- > OvmfPkg/OvmfPkgX64.dsc | 4 +++- > OvmfPkg/OvmfPkgX64.fdf | 2 +- > 6 files changed, 12 insertions(+), 6 deletions(-) > > diff --git a/OvmfPkg/OvmfPkgIa32.dsc b/OvmfPkg/OvmfPkgIa32.dsc > index 98a8467e86..7972b25112 100644 > --- a/OvmfPkg/OvmfPkgIa32.dsc > +++ b/OvmfPkg/OvmfPkgIa32.dsc > @@ -73,12 +73,14 @@ > > [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER] >GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 > + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 So are we introducing a new toolchain family just for the linker flags? In that case, it would be better to call the toolchain family CLANGLLD or LLVMLLD. We could also consider switching all GNU ld toolchains to use max-page-size instead of common-page-size, given that binutils supports both. >XCODE:*_*_*_DLINK_FLAGS = > > # 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 > + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 >XCODE:*_*_*_DLINK_FLAGS = > > > > @@ -832,7 +834,7 @@ >OvmfPkg/Csm/Csm16/Csm16.inf > !endif > > -!if $(TOOL_CHAIN_TAG) != "XCODE5" > +!if $(TOOL_CHAIN_TAG) != "XCODE5" AND $(TOOL_CHAIN_TAG) != "CLANG8ELF" >ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf { > >gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE > diff --git a/OvmfPkg/OvmfPkgIa32.fdf b/OvmfPkg/OvmfPkgIa32.fdf > index bc08bf2243..2894cfe8d6 100644 > --- a/OvmfPkg/OvmfPkgIa32.fdf > +++ b/OvmfPkg/OvmfPkgIa32.fdf > @@ -287,7 +287,7 @@ INF > MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResour > INF FatPkg/EnhancedFatDxe/Fat.inf > INF MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf > > -!if $(TOOL_CHAIN_TAG) != "XCODE5" > +!if $(TOOL_CHAIN_TAG) != "XCODE5" AND $(TOOL_CHAIN_TAG) != "CLANG8ELF" > INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf > !endif > INF ShellPkg/Application/Shell/Shell.inf > diff --git a/OvmfPkg/OvmfPkgIa32X64.dsc b/OvmfPkg/OvmfPkgIa32X64.dsc > index 1f722fc987..c9feeafaae 100644 > --- a/OvmfPkg/OvmfPkgIa32X64.dsc > +++ b/OvmfPkg/OvmfPkgIa32X64.dsc > @@ -78,12 +78,14 @@ > > [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER] >GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 > + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 >XCODE:*_*_*_DLINK_FLAGS = > > # 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 > + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 >XCODE:*_*_*_DLINK_FLAGS = > > > > @@ -841,7 +843,7 @@ >OvmfPkg/Csm/Csm16/Csm16.inf > !endif > > -!if $(TOOL_CHAIN_TAG) != "XCODE5" > +!if $(TOOL_CHAIN_TAG) != "XCODE5" AND $(TOOL_CHAIN_TAG) != "CLANG8ELF" >ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf { > >gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE > diff --git a/OvmfPkg/OvmfPkgIa32X64.fdf b/OvmfPkg/OvmfPkgIa32X64.fdf > index ccf36c5dd9..affce983f9 100644 > --- a/OvmfPkg/OvmfPkgIa32X64.fdf > +++ b/OvmfPkg/OvmfPkgIa32X64.fdf > @@ -288,7 +288,7 @@ INF > MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResour > INF FatPkg/EnhancedFatDxe/Fat.inf > INF MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf > > -!if $(TOOL_CHAIN_TAG) != "XCODE5" > +!if $(TOOL_CHAIN_TAG) != "XCODE5" AND $(TOOL_CHAIN_TAG) != "CLANG8ELF" > INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf > !endif > INF ShellPkg/Application/Shell/Shell.inf > diff --git a/OvmfPkg/OvmfPkgX64.dsc b/OvmfPkg/OvmfPkgX64.dsc > index 2927ee07b8..f28ec13c0c 100644 > --- a/OvmfPkg/OvmfPkgX64.dsc > +++ b/OvmfPkg/OvmfPkgX64.dsc > @@ -78,12 +78,14 @@ > > [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER] >GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 > + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 >XCODE:*_*_*_DLINK_FLAGS = > > # 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 > + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 >XCODE:*_*_*_DLINK_FLAGS = > >
Re: [edk2-devel] [Patch 7/7] OvmfPkg: Update DSC/FDF to support CLANG8ELF tool chain
Cc to OvmfPkg maintainers. Please help review this change. Thanks Liming > -Original Message- > From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of Liming > Gao > Sent: Friday, April 26, 2019 10:43 PM > To: devel@edk2.groups.io > Subject: [edk2-devel] [Patch 7/7] OvmfPkg: Update DSC/FDF to support > CLANG8ELF tool chain > > Signed-off-by: Liming Gao > --- > OvmfPkg/OvmfPkgIa32.dsc| 4 +++- > OvmfPkg/OvmfPkgIa32.fdf| 2 +- > OvmfPkg/OvmfPkgIa32X64.dsc | 4 +++- > OvmfPkg/OvmfPkgIa32X64.fdf | 2 +- > OvmfPkg/OvmfPkgX64.dsc | 4 +++- > OvmfPkg/OvmfPkgX64.fdf | 2 +- > 6 files changed, 12 insertions(+), 6 deletions(-) > > diff --git a/OvmfPkg/OvmfPkgIa32.dsc b/OvmfPkg/OvmfPkgIa32.dsc > index 98a8467e86..7972b25112 100644 > --- a/OvmfPkg/OvmfPkgIa32.dsc > +++ b/OvmfPkg/OvmfPkgIa32.dsc > @@ -73,12 +73,14 @@ > > [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER] >GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 > + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 >XCODE:*_*_*_DLINK_FLAGS = > > # 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 > + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 >XCODE:*_*_*_DLINK_FLAGS = > > > > @@ -832,7 +834,7 @@ >OvmfPkg/Csm/Csm16/Csm16.inf > !endif > > -!if $(TOOL_CHAIN_TAG) != "XCODE5" > +!if $(TOOL_CHAIN_TAG) != "XCODE5" AND $(TOOL_CHAIN_TAG) != "CLANG8ELF" >ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf { > >gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE > diff --git a/OvmfPkg/OvmfPkgIa32.fdf b/OvmfPkg/OvmfPkgIa32.fdf > index bc08bf2243..2894cfe8d6 100644 > --- a/OvmfPkg/OvmfPkgIa32.fdf > +++ b/OvmfPkg/OvmfPkgIa32.fdf > @@ -287,7 +287,7 @@ INF > MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResour > INF FatPkg/EnhancedFatDxe/Fat.inf > INF MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf > > -!if $(TOOL_CHAIN_TAG) != "XCODE5" > +!if $(TOOL_CHAIN_TAG) != "XCODE5" AND $(TOOL_CHAIN_TAG) != "CLANG8ELF" > INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf > !endif > INF ShellPkg/Application/Shell/Shell.inf > diff --git a/OvmfPkg/OvmfPkgIa32X64.dsc b/OvmfPkg/OvmfPkgIa32X64.dsc > index 1f722fc987..c9feeafaae 100644 > --- a/OvmfPkg/OvmfPkgIa32X64.dsc > +++ b/OvmfPkg/OvmfPkgIa32X64.dsc > @@ -78,12 +78,14 @@ > > [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER] >GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 > + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 >XCODE:*_*_*_DLINK_FLAGS = > > # 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 > + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 >XCODE:*_*_*_DLINK_FLAGS = > > > > @@ -841,7 +843,7 @@ >OvmfPkg/Csm/Csm16/Csm16.inf > !endif > > -!if $(TOOL_CHAIN_TAG) != "XCODE5" > +!if $(TOOL_CHAIN_TAG) != "XCODE5" AND $(TOOL_CHAIN_TAG) != "CLANG8ELF" >ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf { > >gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE > diff --git a/OvmfPkg/OvmfPkgIa32X64.fdf b/OvmfPkg/OvmfPkgIa32X64.fdf > index ccf36c5dd9..affce983f9 100644 > --- a/OvmfPkg/OvmfPkgIa32X64.fdf > +++ b/OvmfPkg/OvmfPkgIa32X64.fdf > @@ -288,7 +288,7 @@ INF > MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResour > INF FatPkg/EnhancedFatDxe/Fat.inf > INF MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf > > -!if $(TOOL_CHAIN_TAG) != "XCODE5" > +!if $(TOOL_CHAIN_TAG) != "XCODE5" AND $(TOOL_CHAIN_TAG) != "CLANG8ELF" > INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf > !endif > INF ShellPkg/Application/Shell/Shell.inf > diff --git a/OvmfPkg/OvmfPkgX64.dsc b/OvmfPkg/OvmfPkgX64.dsc > index 2927ee07b8..f28ec13c0c 100644 > --- a/OvmfPkg/OvmfPkgX64.dsc > +++ b/OvmfPkg/OvmfPkgX64.dsc > @@ -78,12 +78,14 @@ > > [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER] >GCC:*_*_*_DLINK_FLAG
[edk2-devel] [Patch 7/7] OvmfPkg: Update DSC/FDF to support CLANG8ELF tool chain
Signed-off-by: Liming Gao --- OvmfPkg/OvmfPkgIa32.dsc| 4 +++- OvmfPkg/OvmfPkgIa32.fdf| 2 +- OvmfPkg/OvmfPkgIa32X64.dsc | 4 +++- OvmfPkg/OvmfPkgIa32X64.fdf | 2 +- OvmfPkg/OvmfPkgX64.dsc | 4 +++- OvmfPkg/OvmfPkgX64.fdf | 2 +- 6 files changed, 12 insertions(+), 6 deletions(-) diff --git a/OvmfPkg/OvmfPkgIa32.dsc b/OvmfPkg/OvmfPkgIa32.dsc index 98a8467e86..7972b25112 100644 --- a/OvmfPkg/OvmfPkgIa32.dsc +++ b/OvmfPkg/OvmfPkgIa32.dsc @@ -73,12 +73,14 @@ [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER] GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 XCODE:*_*_*_DLINK_FLAGS = # 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 + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 XCODE:*_*_*_DLINK_FLAGS = @@ -832,7 +834,7 @@ OvmfPkg/Csm/Csm16/Csm16.inf !endif -!if $(TOOL_CHAIN_TAG) != "XCODE5" +!if $(TOOL_CHAIN_TAG) != "XCODE5" AND $(TOOL_CHAIN_TAG) != "CLANG8ELF" ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf { gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE diff --git a/OvmfPkg/OvmfPkgIa32.fdf b/OvmfPkg/OvmfPkgIa32.fdf index bc08bf2243..2894cfe8d6 100644 --- a/OvmfPkg/OvmfPkgIa32.fdf +++ b/OvmfPkg/OvmfPkgIa32.fdf @@ -287,7 +287,7 @@ INF MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResour INF FatPkg/EnhancedFatDxe/Fat.inf INF MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf -!if $(TOOL_CHAIN_TAG) != "XCODE5" +!if $(TOOL_CHAIN_TAG) != "XCODE5" AND $(TOOL_CHAIN_TAG) != "CLANG8ELF" INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf !endif INF ShellPkg/Application/Shell/Shell.inf diff --git a/OvmfPkg/OvmfPkgIa32X64.dsc b/OvmfPkg/OvmfPkgIa32X64.dsc index 1f722fc987..c9feeafaae 100644 --- a/OvmfPkg/OvmfPkgIa32X64.dsc +++ b/OvmfPkg/OvmfPkgIa32X64.dsc @@ -78,12 +78,14 @@ [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER] GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 XCODE:*_*_*_DLINK_FLAGS = # 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 + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 XCODE:*_*_*_DLINK_FLAGS = @@ -841,7 +843,7 @@ OvmfPkg/Csm/Csm16/Csm16.inf !endif -!if $(TOOL_CHAIN_TAG) != "XCODE5" +!if $(TOOL_CHAIN_TAG) != "XCODE5" AND $(TOOL_CHAIN_TAG) != "CLANG8ELF" ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf { gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE diff --git a/OvmfPkg/OvmfPkgIa32X64.fdf b/OvmfPkg/OvmfPkgIa32X64.fdf index ccf36c5dd9..affce983f9 100644 --- a/OvmfPkg/OvmfPkgIa32X64.fdf +++ b/OvmfPkg/OvmfPkgIa32X64.fdf @@ -288,7 +288,7 @@ INF MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResour INF FatPkg/EnhancedFatDxe/Fat.inf INF MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf -!if $(TOOL_CHAIN_TAG) != "XCODE5" +!if $(TOOL_CHAIN_TAG) != "XCODE5" AND $(TOOL_CHAIN_TAG) != "CLANG8ELF" INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf !endif INF ShellPkg/Application/Shell/Shell.inf diff --git a/OvmfPkg/OvmfPkgX64.dsc b/OvmfPkg/OvmfPkgX64.dsc index 2927ee07b8..f28ec13c0c 100644 --- a/OvmfPkg/OvmfPkgX64.dsc +++ b/OvmfPkg/OvmfPkgX64.dsc @@ -78,12 +78,14 @@ [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER] GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 XCODE:*_*_*_DLINK_FLAGS = # 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 + CLANGGCC:*_*_*_DLINK_FLAGS = -z max-page-size=0x1000 XCODE:*_*_*_DLINK_FLAGS = @@ -839,7 +841,7 @@ OvmfPkg/Csm/Csm16/Csm16.inf !endif -!if $(TOOL_CHAIN_TAG) != "XCODE5" +!if $(TOOL_CHAIN_TAG) != "XCODE5" AND $(TOOL_CHAIN_TAG) != "CLANG8ELF" ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf { gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE diff --git a/OvmfPkg/OvmfPkgX64.fdf b/OvmfPkg/OvmfPkgX64.fdf index ccf36c5dd9..affce983f9 100644 --- a/OvmfPkg/OvmfPkgX64.fdf +++ b/OvmfPkg/OvmfPkgX64.fdf @@ -288,7 +288,7 @@