Kaffe don't link on HP/UX 10.20

Alexandre Oliva oliva at dcc.unicamp.br
Sat Aug 15 15:24:02 PDT 1998


Godmar Back <gback at cs.utah.edu> writes:

> * Who will need to have these tools installed?

>     - Will Kaffe users who compile Kaffe out of the box need them?

Not at all.

>     - Will Kaffe developers who make changes to Kaffe's .c/.h files need?

Only if they want automatic dependency tracking when they *modify* the 
dependency list of a file.  

>     - Will Kaffe developers who make changes to Kaffe's .in files need them?

If they modify Makefile.am, that is used to build Makefile.in, yes,
they will need them.

>     - Will those who'll "need" them also have to "learn" them?

libtool will be transparent to users; automake will require Makefiles
to be created in a different, much simpler fashion.  If you ever look
at a Makefile.am, you will never want to write a Makefile.in again.
Furthermore, automake's makefiles are much more portable and
standard.
 
> * What will the benefit of libtool be?  To find the proper link-order and
>   switches for a given architecture?  How often will those change?

libtool is a portable way of creating shared libraries.  Kaffe's
configure.in will no longer have to contain information about how to
build shared libraries in such and such platforms, etc.  Furthermore,
in platforms in which shared libraries can't be built, libtool will
transparently revert to static ones.

> * How intuitive are these tools?  Rank them against autoconf (a tool I 
>   personally find extremely unintuitive.)

They're much easier to use than autoconf.  Makefile.am's are
straighforward.  Libtool requires a bit of hacking when it is first
configured but, after that, all you have to do is increment library
version numbers.  An alternate libtool configuration allows you to
configure libraries to carry the tool version number, so you don't
ever have to modify their version numbers.

> How readable and debuggable are those?

Makefile.in is not much readable, but it's reliable, and that's the
point.  libtool is rather stable already, so you probably won't have
reasons to debug it either.

> * How big is the version dependency of these tools?

libtool is quite new, and people are likely not to have the latest
version.  Developers will only need libtool installed if they modify
configure.in or acinclude.m4 (used by automake to build aclocal.m4
when needed).  However, it's possible to create a set up that doesn't
require developers to have libtool installed even in this case; I've
done that in Amanda http://www.amanda.org, and it works fine.

You only need automake if you modify Makefile.am and you want those
changes to propagate to Makefile.in and Makefile.  In this case, it's
best if all developers agree to use the same version of automake,
otherwise Makefiles may end up different from one another, which does
not mean incompatible.

-- 
Alexandre Oliva
mailto:oliva at dcc.unicamp.br mailto:aoliva at acm.org
http://www.dcc.unicamp.br/~oliva
Universidade Estadual de Campinas, SP, Brasil



More information about the kaffe mailing list