[OpenAFS-devel] Why I like libtool

Russ Allbery rra@stanford.edu
Fri, 13 May 2005 09:40:42 -0700


Jim Rees <rees@umich.edu> writes:

> Then I guess I'm confused.  I thought you needed libtool at compile
> time, and that libtool ran the compiler itself.

You're right about that part.

The way it works is like this:

 * The part of libtool that you include in your project, provided that
   you don't need its loadable module support, is an Autoconf macro that
   goes into aclocal.m4 or whatever, just like any other, and a giant
   shell script that needs some Autoconf substitutions that's called
   ltmain.sh.  Both of these are covered under the Autoconf license, which
   means you can include them in your package under your existing
   distribution terms with no licensing problems.

 * When the person who wants to build the package runs configure,
   configure creates the libtool shell script from ltmain.sh by
   substituting in various things that it figured out via the normal
   Autoconf route.

 * Then, when building your package, you use ${top_builddir}/libtool to
   build the stuff that you want done with libtool.

Ignore all the stuff in the manual about using some libtool installed in
/usr/local/bin or something.  Almost no one actually does that.

-- 
Russ Allbery (rra@stanford.edu)             <http://www.eyrie.org/~eagle/>