On Fri, Aug 18, 2000 at 06:33:08PM +0100, Murray Cumming wrote:
> Tim Heath <[EMAIL PROTECTED]> wrote:
> > I need to understand better the way to combine libraries in
> > subdirectories into one library at the top_srcdir. Does anyone know of
> > an example that does this with static libraries I could look at? I
> > created the static libraries myself so I don't beleive there is any m4
> > macros for them to use in configure.in.
>
> If the page on my site does not explain this well enough then I would welcome
> a suggestion about something that should be improved.
>
> The downloadable example on the 'Building C/C++ libraries...' page combines
> libtool libraries from sub directories. The example on the 'Using autoconf and
> automake...' page combines static libraries from sub directories into an
> executable. It should take much more work to combine static libraries into one
> static library. Although, I believe that there is some way that a libtool
> library can be used to generate a static library.
There is. The libraries in the subdirectories should be built as
libtool convenience libraries. Each corresponding Makefile.am should
look a bit like this:
noinst_LTLIBRARIES = libsubdirectory.la
libsubdirectory_la_SOURCES = src1.c srcn.c
If you only want old style static ar archives, you must add:
libsubdirectory_la_LDFLAGS = -static
To combine a bunch of these in a different directory, the Makefile.am
looks something like this:
lib_LTLIBRARIES = libcombine.la
libcombine_la_SOURCES = comb1.c combn.c
libcombine_la_LIBADD = $(top_builddir)/sub1/libsubdirectory.la \
$(top_builddir)/subn/libanothersubdir.la
Again you can also add:
libcombin_la_LDFLAGS = -static
if you only want ar archives.
Cheers,
Gary.
--
___ _ ___ __ _ mailto: [EMAIL PROTECTED]
/ __|__ _ _ ___ _| | / / | / /_ _ _ _ __ _| |_ __ _ ___ [EMAIL PROTECTED]
| (_ / _` | '_|// / |/ /| |/ / _` | || / _` | ' \/ _` | _ \
\___\__,_|_|\_, /|___(_)___/\__,_|\_,_\__, |_||_\__,_|//_/
home page: /___/ /___/ gpg public key:
http://www.oranda.demon.co.uk http://www.oranda.demon.co.uk/key.asc