From b1e3967b16087c4e376e44f346b07f6887daa07f Mon Sep 17 00:00:00 2001 From: Ard Biesheuvel Date: Tue, 11 Aug 2015 12:32:45 +0000 Subject: [PATCH] ArmVirtPkg: use global section alignment in custom linker script The ArmVirtPrePiUniCoreRelocatable module comes with its own GNU linker script to create a PIE executable that can relocate itself at runtime. In order to be able to build this module using CLANG, we need to adhere to the section alignment passed via to the linker using -z commmon-page-size, so add this to the linker script. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel Acked-by: Laszlo Ersek git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18203 6f19259b-4bc3-4df7-8a09-765794883524 --- ArmVirtPkg/PrePi/Scripts/PrePi-PIE.lds | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ArmVirtPkg/PrePi/Scripts/PrePi-PIE.lds b/ArmVirtPkg/PrePi/Scripts/PrePi-PIE.lds index 32af0696aa..3c89722dca 100644 --- a/ArmVirtPkg/PrePi/Scripts/PrePi-PIE.lds +++ b/ArmVirtPkg/PrePi/Scripts/PrePi-PIE.lds @@ -14,20 +14,20 @@ SECTIONS { - .text 0x0 : { + .text 0x0 : ALIGN(CONSTANT(COMMONPAGESIZE)) { PROVIDE(__reloc_base = .); *(.text .text*) *(.got .got*) *(.rodata .rodata*) *(.data .data*) + *(.bss .bss*) . = ALIGN(0x20); PROVIDE(__reloc_start = .); *(.rela .rela*) PROVIDE(__reloc_end = .); } - .bss ALIGN(0x20) : { *(.bss .bss*) } /DISCARD/ : { *(.note.GNU-stack) -- 2.39.2