[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] optionrom: fix compilation with mingw docker ta
From: |
Peter Maydell |
Subject: |
Re: [Qemu-devel] [PATCH] optionrom: fix compilation with mingw docker target |
Date: |
Tue, 9 Aug 2016 22:47:17 +0100 |
On 9 August 2016 at 21:56, Paolo Bonzini <address@hidden> wrote:
> Two fixes are needed. First, mingw does not have -D_FORTIFY_SOURCE,
> hence --enable-debug disables optimization. This is not acceptable
> for ROMs, which should override CFLAGS to force inclusion of -O2.
>
> Second, PE stores global constructors and destructors using the
> following linker script snippet:
>
> ___CTOR_LIST__ = .; __CTOR_LIST__ = . ;
> LONG (-1);*(.ctors); *(.ctor); *(SORT(.ctors.*));
> LONG (0);
> ___DTOR_LIST__ = .; __DTOR_LIST__ = . ;
> LONG (-1); *(.dtors); *(.dtor); *(SORT(.dtors.*));
> LONG (0);
>
> The LONG directives cause the .img files to be 16 bytes too large;
> the recently added check to signrom.py catches this. To fix this,
> replace -T and -e options with a linker script.
...this is really starting to strongly suggest to me that we should
not be trying to build our ROM images with whatever random
maybe-this-is-an-x86-compiler $CC happens to be...
thanks
-- PMM