On 9 August 2016 at 21:56, Paolo Bonzini <[email protected]> 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

Reply via email to