[llvm-dev] [llvm-ar] default llvm-ar archive format type gnu vs darwin

James Y Knight via llvm-dev llvm-dev at lists.llvm.org
Wed Jul 10 07:27:42 PDT 2019


Basically the only reason to choose one ar archive format over another is
to enable the linker used on that platform to read it (in case it cannot
read all formats). Thus, attempting to automatically choose the format
which is most likely to be readable by linkers generally used with the
provided object-file format seems pretty sensible.

What problem do you see here?

On Wed, Jul 10, 2019 at 9:03 AM Owen Reynolds via llvm-dev <
llvm-dev at lists.llvm.org> wrote:

> Hi all,
>
> I've been making some additional tests for llvm-ar recently and was
> surprised by the behaviour regarding which archive format to output when
> the --format argument hasn't been used.
>
> From 273373:
>
> Try to be more clever about selecting the default format.  When an existing
> archive is used, use the type of the archive to determine the format.  When
> existing members are present, use the first member's format to determine
> the
> format to use.  If we are creating an empty archive (MRI mode) or are
> adding
> non-object members, default to the current behaviour of using the host
> type due
> to the lack of a better alternative.  This aids in cross-compilation on
> Darwin
> to non-Darwin platforms which rely on GNU format archives.
>
>
> This doesn't seem ideal to me, particularly the use of the first member to
> decide format as this is not obvious from a user perspective. Would it be
> better to just default to host type or treat them as separate tools and
> decide default format by tool name?
>
> Thanks,
>
> Owen
>
>
>
>
>
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20190710/efc992c9/attachment.html>


More information about the llvm-dev mailing list