[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] Two linkers - EFI one (mingw64) and normal GNU one [Fedora]



>>> On 12.02.16 at 18:19, <konrad.wilk@xxxxxxxxxx> wrote:
> Fedora for the longest time seems to have two linkers - one normal for GNU
> applications and then another - mingw64 - for building EFI applications.
> 
> Which means that to compile ELF binaries on Fedora requires this patch
> (taken from Fedora build):

This seems completely backwards: Just like we (SUSE) did, they
should really configure their binutils package with
--enable-targets=<arch>-pep. I absolutely cannot see why a
MingW64 linker should be used to generate EFI binaries. Yes,
both use the same binary container format, but beyond that
there's nothing common here: EFI binaries are of no use in a
MingW64 environment (afaict at least), but are nowadays an
integral part of an OS installation (i.e. a Linux distro in this case).

If it can be proven that Fedora folks are absolutely unwilling to
do so, I could see something like what you propose as a
workaround (albeit it's more like a hack), so a few comments on
the patch itself:

> --- a/xen/Makefile
> +++ b/xen/Makefile
> @@ -20,6 +20,8 @@ export XEN_ROOT := $(BASEDIR)/..
>  MAKEFLAGS += -rR
>  
>  EFI_MOUNTPOINT ?= $(BOOT_DIR)/efi
> +EFI_VENDOR=fedora

This is a no-go. The variable specifically should only be set from
outside our build environment.

> +LD_EFI ?= $(LD)

Why couldn't you just probe the binary location(s) you know about
here? But in any case this would perhaps need better integration
with the checking done in xen/arch/x86/efi/Makefile.

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.