On 2015-08-18 03:57:51, Ard Biesheuvel wrote: > On 17 August 2015 at 20:53, Jordan Justen <jordan.l.jus...@intel.com> wrote: > > On 2015-08-17 11:25:56, Ard Biesheuvel wrote: > >> MinGW generates PE/COFF not ELF, so much of the linker command line is > >> different, and it really deserves a toolchain of its own > > > > Why does it deserve a toolchain of its own if the other toolchain > > produces better code? Why should EDK II care about using the different > > linker path if it isn't the best recommended way to build images? > > > > By the same logic, why on earth do we insist on retaining support for > GCC44 and GCC45?
Last time I checked, GCC44 ~ GCC49 all produced images roughly in the same ball park size-wise. UNIXGCC produced much larger images because it could not strip unused functions/data. Personally, I would not mind deprecating GCC44, but the biggest question I would have is what toolchains do the latest UDK releases claim to support. We also have the issue that every time I ask about deprecating a toolchain, Larry looks at me like I'm crazy. :) > Note that it is not about the linker path, but about the options that > we pass, for instance to get 4 KB section alignment. MinGW does not > need a linker script for this, you can simply set --section-alignment > and --file-alignment on the command line. > > As for the PE/COFF support: if you are incorporating PE/COFF binary > static libraries into your build, you need a native PE/COFF toolchain. Is this something we want to support? > But in general, I think the ELF to PE/COFF conversion is not the most > elegant step in the build, and I would prefer to avoid it if possible > (only, there is no PE/COFF support in the GNU tools for ARM or > AARCH64) It is doing a better job than any other GCC based option we have. Certainly LTO will be a big change for our GCC based builds. If somehow LTO support is finally integrated into EDK II and manages to directly produce a PE/COFF image easily on Linux, then I don't think ELF is needed. -Jordan _______________________________________________ edk2-devel mailing list email@example.com https://lists.01.org/mailman/listinfo/edk2-devel