• P
    optionrom: fix compilation with mingw docker target · 9d4cd7b4
    Paolo Bonzini 提交于
    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.
    Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
    9d4cd7b4
Makefile 2.2 KB