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.*