Subject: bug#61278: Automake warns about LDFLAGS for defined library

From: Nick Bowler <[email-masked]>
Date: Sun, 5 Feb 2023 01:09:07 -0500

On 2023-02-04, Reuben Thomas via Bug reports for Automake
<[email-masked]> wrote:
> When automake is run, it warns:
>
> liba2ps/Makefile.am:63: warning: variable 'libnowarnings_a_LDFLAGS' is
> defined but no program or
> liba2ps/Makefile.am:63: library has 'libnowarnings_a' as canonical name
> (possible typo)
>
> I don't understand this, because libnowarnings.a is defined as the
> canonical name of a library.

Indeed, this message does not seem very accurate.

What Automake is trying to tell you is that LDFLAGS is meaningless
on a static library.  This message could definitely be improved!

> If in the first Makefile.am I change the convenience library
> "libnowarnings.a" to a libtool library "libnowarnings.la", and add it
> to noinst_LTLIBRARIES, and rename the other variables accordingly,
> then again I get no warnings.

Unlike with a static library, LDFLAGS is used with libtool libraries, so
it is good that there is no warning.

Cheers,
  Nick