This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [VMS/committed]: Set extension to archive member


On Apr 18, 2012, at 9:09 AM, h.becker wrote:

> On 04/18/12 08:33, Tristan Gingold wrote:
>> 
>> On Apr 17, 2012, at 6:23 PM, Douglas B Rupp wrote:
>> 
>>> On 4/17/2012 3:50 AM, Tristan Gingold wrote:
>>>> Hi,
>>>> 
>>>> VMS archives member names doesn't have extension (only the 'basename' is stored).
>>>> But this is not the usual convention for ar, and some tools (libtool) expect that extracted
>>>> members of an archive to have the standard object extension.
>>>> 
>>>> This patch implements this behaviour, thus making VMS archives more UNIX friendly.
>>>> 
>>>> Committed on trunk.
>>>> 
>>>> Tristan.
>>> 
>>> So if one inserts a .o, it extracts as a .obj?
>> 
>> Yes.  That looks strange, but the extension is lost in the archive.
>> 
>> 
> Hmm, as I tried to explain, it's a feature of VMS object libraries. The extension may change as well as the basename may change - because of differences between the module name and the basename - and as you may end up with many library members from just one object file.

Yes, I think that I understand that.
Contrary to VMS librarian, GNU ar use the filename to set member name (and not the module name).  In practice, this doesn't change anything as basename = module name.  I agree this is not fully compliant with VMS librarian, but that's UNIX tools ported to VMS.

Tristan.



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]