Subject: Re: bug#19967: new warning from ar on rawhide systems

From: Bob Friesenhahn <[email-masked]>
Date: Fri, 27 Feb 2015 19:31:32 -0600 (CST)

On Fri, 27 Feb 2015, Eric Blake wrote:
>
> Is it worth teaching libtool to change ARFLAGS to be 'crD' instead of
> 'cru' when it is detected that ar is new enough to support deterministic
> libraries, in part to shut up the warning message being printed on every
> single libtool link line?  (Note that I would explicitly include 'D',
> because even though Fedora chose to make 'D' the default, other distros
> may choose to make 'U' the default).  Or conversely, do we want ARFLAGS
> to be 'cruU', to force non-deterministic mode, since any speedups made
> possible by timestamp comparison ('u') are only possible in
> non-deterministic mode?  Does the use of 'u' buy us much measurable time
> when repeatedly and incrementally linking large libraries, where the new
> 'D' mode is forced to link everything instead of just the new inputs?
> And of course there's the question of how easy is it to detect that ar
> is new enough to understand the 'D'/'U' dichotomy?

It seems that -D mode only works if the archive is created from 
scratch, or the argument file list supplied is the same (including 
order) each time.  This does not seem to be compatible with the 
options -ru which update the archive only if the provided file is 
newer, and may also be used in an incremental mode of operation (e.g. 
just one file is re-compiled).

Regardless, 'cru' is portable other toolchains/systems whereas -D 
seems to be limited to binutils.

> Is this something I should redirect to automake instead of libtool?

Perhaps so since it seems that Automake is in the driver's seat here.

Bob
-- 
Bob Friesenhahn
[email-masked], http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer,    http://www.GraphicsMagick.org/