[rtems commit] bsp/motorola_powerpc: Fix for Binutils 2.28+

Sebastian Huber sebastian.huber at embedded-brains.de
Fri Jun 2 05:24:40 UTC 2017



----- Am 2. Jun 2017 um 7:16 schrieb Chris Johns chrisj at rtems.org:

> On 02/06/2017 15:11, Sebastian Huber wrote:
>> Module:    rtems
>> Branch:    master
>> Commit:    7203b70be0266cdb4830537dfc8fd6189851708c
>> Changeset:
>> http://git.rtems.org/rtems/commit/?id=7203b70be0266cdb4830537dfc8fd6189851708c
>> 
>> Author:    Sebastian Huber <sebastian.huber at embedded-brains.de>
>> Date:      Thu Jun  1 19:04:05 2017 +0200
>> 
>> bsp/motorola_powerpc: Fix for Binutils 2.28+
>> 
>> There are mismatched sections in the bootloader input:
>> 
>> ld: Warning: ticker.exe uses hard float, ticker.ralf uses soft float
>> ld: ticker.exe: compiled normally and linked with modules compiled with
>> -mrelocatable
>> ld: failed to merge target specific data of file ticker.exe
>> 
>> Suppress this error explicitly.
> 
> Thank you for fixing this. A binutils observation ...
> 
> Yes an error cause the build fails so ....
> 
>> 
>> ---
>> 
>>  c/src/lib/libbsp/powerpc/motorola_powerpc/make/custom/mcp750.cfg         | 1 +
>>  c/src/lib/libbsp/powerpc/motorola_powerpc/make/custom/mtx603e.cfg        | 1 +
>>  c/src/lib/libbsp/powerpc/motorola_powerpc/make/custom/mvme2100.cfg       | 1 +
>>  c/src/lib/libbsp/powerpc/motorola_powerpc/make/custom/mvme2307.cfg       | 1 +
>>  .../lib/libbsp/powerpc/motorola_powerpc/make/custom/qemuprep-altivec.cfg | 1 +
>>  c/src/lib/libbsp/powerpc/motorola_powerpc/make/custom/qemuprep.cfg       | 1 +
>>  6 files changed, 6 insertions(+)
>> 
>> diff --git a/c/src/lib/libbsp/powerpc/motorola_powerpc/make/custom/mcp750.cfg
>> b/c/src/lib/libbsp/powerpc/motorola_powerpc/make/custom/mcp750.cfg
>> index 98e8fd9..67d1766 100644
>> --- a/c/src/lib/libbsp/powerpc/motorola_powerpc/make/custom/mcp750.cfg
>> +++ b/c/src/lib/libbsp/powerpc/motorola_powerpc/make/custom/mcp750.cfg
>> @@ -25,6 +25,7 @@ define bsp-post-link
>>   	$(LD) -o $(basename $@)$(DOWNEXT) \
>>  	    $ $(PROJECT_RELEASE)/lib/bootloader.o \
>>  	    --just-symbols=$(basename $@)$(EXEEXT) \
>> +	    --no-warn-mismatch \
> 
> ... is this option poorly named because it is an error?

Yes, this is what surprised me a bit, that it is an actual error. I had to run the linker in GDB to figure out what is going on. I guess everything is all right now.

Maybe its worth to ask on the Binutils mailing list why the --no-warn-mismatch suppresses an error and update the documentation accordingly.


More information about the devel mailing list