automake-1.16: Libtool Modules
8.3.6 Libtool Modules
---------------------
These are libtool libraries meant to be dlopened. They are indicated to
libtool by passing ‘-module’ at link-time.
pkglib_LTLIBRARIES = mymodule.la
mymodule_la_SOURCES = doit.c
mymodule_la_LDFLAGS = -module
Ordinarily, Automake requires that a library’s name start with ‘lib’.
However, when building a dynamically loadable module you might wish to
use a "nonstandard" name. Automake will not complain about such
nonstandard names if it knows the library being built is a libtool
module, i.e., if ‘-module’ explicitly appears in the library’s
‘_LDFLAGS’ variable (or in the common ‘AM_LDFLAGS’ variable when no
per-library ‘_LDFLAGS’ variable is defined).
As always, ‘AC_SUBST’ variables are black boxes to Automake since
their values are not yet known when ‘automake’ is run. Therefore if
‘-module’ is set via such a variable, Automake cannot notice it and will
proceed as if the library was an ordinary libtool library, with strict
naming.
If ‘mymodule_la_SOURCES’ is not specified, then it defaults to the
single file ‘mymodule.c’ (⇒Default _SOURCES).