Next: Conditional Libtool Libraries, Previous: Libtool Concept, Up: A Shared Library
Automake uses libtool to build libraries declared with the
LTLIBRARIES primary.  Each _LTLIBRARIES variable is a
list of libtool libraries to build.  For instance, to create a libtool
library named libgettext.la, and install it in libdir,
write:
     lib_LTLIBRARIES = libgettext.la
     libgettext_la_SOURCES = gettext.c gettext.h ...
   Automake predefines the variable pkglibdir, so you can use
pkglib_LTLIBRARIES to install libraries in
‘$(libdir)/@PACKAGE@/’.
   
If gettext.h is a public header file that needs to be installed
in order for people to use the library, it should be declared using a
_HEADERS variable, not in libgettext_la_SOURCES. 
Headers listed in the latter should be internal headers that are not
part of the public interface.
     lib_LTLIBRARIES = libgettext.la
     libgettext_la_SOURCES = gettext.c ...
     include_HEADERS = gettext.h ...
   A package can build and install such a library along with other
programs that use it.  This dependency should be specified using
LDADD.  The following example builds a program named
hello that is linked with libgettext.la.
     lib_LTLIBRARIES = libgettext.la
     libgettext_la_SOURCES = gettext.c ...
     
     bin_PROGRAMS = hello
     hello_SOURCES = hello.c ...
     hello_LDADD = libgettext.la
   Whether hello is statically or dynamically linked with libgettext.la is not yet known: this will depend on the configuration of libtool and the capabilities of the host.