This is the mail archive of the
mailing list for the binutils project.
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:
>>>> 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.
>>> 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.