automake-1.16: Libtool Flags
8.3.7 ‘_LIBADD’, ‘_LDFLAGS’, and ‘_LIBTOOLFLAGS’
------------------------------------------------
As shown in previous sections, the ‘LIBRARY_LIBADD’ variable should be
used to list extra libtool objects (‘.lo’ files) or libtool libraries
(‘.la’) to add to LIBRARY.
The ‘LIBRARY_LDFLAGS’ variable is the place to list additional
libtool linking flags, such as ‘-version-info’, ‘-static’, and a lot
more. ⇒Link mode (libtool)Link mode.
The ‘libtool’ command has two kinds of options: mode-specific options
and generic options. Mode-specific options such as the aforementioned
linking flags should be lumped with the other flags passed to the tool
invoked by ‘libtool’ (hence the use of ‘LIBRARY_LDFLAGS’ for libtool
linking flags). Generic options include ‘--tag=TAG’ and ‘--silent’
(⇒Invoking ‘libtool’ (libtool)Invoking libtool. for more options).
They should appear before the mode selection on the command line; in
‘Makefile.am’s they should be listed in the ‘LIBRARY_LIBTOOLFLAGS’
variable.
If ‘LIBRARY_LIBTOOLFLAGS’ is not defined, then the variable
‘AM_LIBTOOLFLAGS’ is used instead.
These flags are passed to libtool after the ‘--tag=TAG’ option
computed by Automake (if any), so ‘LIBRARY_LIBTOOLFLAGS’ (or
‘AM_LIBTOOLFLAGS’) is a good place to override or supplement the
‘--tag=TAG’ setting.
The libtool rules also use a ‘LIBTOOLFLAGS’ variable that should not
be set in ‘Makefile.am’: this is a user variable (⇒Flag Variables
Ordering). It allows users to run ‘make LIBTOOLFLAGS=--silent’, for
instance. Note that the verbosity of ‘libtool’ can also be influenced
by the Automake support for silent rules (⇒Automake Silent
Rules).