Here's a fix for this issue, though fixing it has just unblocked
another FTBFS issue. I'll file a new bug for that shortly.
Description: Update linker script for gcc-4.9 which uses 64 byte alignment
 When the Facp.dll file is built w/ gcc-4.9, it uses a 64-byte alignment for
 the data section - but the EDK2 uses a linker script that only requires 32-
 byte alignment. This results in a binary that violates the ELF spec. GenFw
 has an assertion to catch this when doing a binary conversion - this trips,
 and the build fails.
 .
 This was resolved upstream by adding a new toolchain config for GCC49, which
 includes a new linker script that uses 64-byte alignment. This is a more
 surgical fix that just adjusts the existing GCC44 toolchain config (which is
 what we're using in Debian, even with gcc-4.9) to allow for 64-byte alignment.
Origin: http://sourceforge.net/p/edk2/code/15697/
Bug-Debian: http://bugs.debian.org/771114
Author: dann frazier <da...@debian.org>
Last-Update: 2014-12-18
Applied-Upstream: commit:r15697

Index: edk2-0~20131112.2590861a/BaseTools/Scripts/gcc4.4-ld-script
===================================================================
--- edk2-0~20131112.2590861a.orig/BaseTools/Scripts/gcc4.4-ld-script
+++ edk2-0~20131112.2590861a/BaseTools/Scripts/gcc4.4-ld-script
@@ -8,7 +8,7 @@ SECTIONS
     *(.text .stub .text.* .gnu.linkonce.t.*)
     . = ALIGN(0x20);
   } =0x90909090
-  .data ALIGN(0x20) :
+  .data ALIGN(0x40) :
   {
     *(
       .rodata .rodata.* .gnu.linkonce.r.*

Reply via email to