[PATCH] Addition of new option '--rlib' in linker for Renesas SH targets
Pedro Alves
pedro_alves@portugalmail.pt
Wed Jun 28 15:51:00 GMT 2006
Pedro Alves wrote:
> Gina Verlekar wrote:
>
>> Hi,
>>
>> The patch attached herewith adds a new option '--rlib' to the linker.
>> Using this
>> option, Linker links a Renesas SH library file (created by Renesas
>> Compiler)
>> with GNU object files.
>> '--rlib' option is supported only for Renesas SH targets.
>>
>> The format of the option is:
>> --rlib=<filename >
>> where 'filename' is the Renesas SH library file to be linked.
>>
>> This patch converts the Renesas library file into a GNU archive with
>> name
>> <filename>.rlib. This file is created in the same directory as the
>> Renesas
>> library file. This created GNU archive is then passed to the Linker for
>> further
>> processing. This option can be used multiple times to link multiple
>> Renesas SH
>> library
>> files.
>>
>>
>>
> If the Renesas library is fully converted into a GNU archive, why
> isn't this implimented as a
> separate tool? One that converts the libs only once, and be done with
> it so the user can use -l
> normally. You could even integrate the tool into the build system, so
> it would be transparent
> like your patches aims at being.
I took a quick look at the patch, and can't see anything that would
prevent you
from splitting process_renesas_library_file into a seperate tool.
As I understand the patch, process_renesas_library_file function
extracts the object files of the renesas lib,
and then you then call create_gnu_archive on the files mimicing what ar
q does.
You could instead have (simplified):
rlibextract $(renesaslib) $(outputdir)
ar q librenlib.a $(outputdir)/*
ld $(objects) -lrenlib
rlibextract being your new tool.
It would reduce code duplication,
you would be able to maintain it with a different release cycle from
binutils,
*and* it could be used with older binutils versions.
Wouldn't this be better? Or am I missing something?
Cheers,
Pedro Alves
More information about the Binutils
mailing list