Re: automake & kaffeh

Date view Thread view Subject view Author view

From: Alexandre Oliva (oliva@dcc.unicamp.br)
Date: Thu Jan 07 1999 - 05:22:30 EST


On Jan 7, 1999, Godmar Back <gback@cs.utah.edu> wrote:

> I think we have to rename Math.h.

How about java_lang_Math.h?

> An explanation for people not familiar with libtool/automake.

Err... It's hard to me to foresee what people will find different.
Maybe it's because I'm so used to automake and libtool :-)

libtool shouldn't make any difference at all, except that you'll see a
few .lo and .la files around. It's designed to be mostly transparent.

Using automake means editing Makefile.am instead of Makefile.in, and
that it will take care of rebuilding autoconf/automake-related files
whenever they become out-of-date.

You also have to specify which files should go in a distribution (make
dist): they should either be listed as sources to some binary or
library or be listed in the EXTRA_DIST variable. In order to avoid
missing some file, you should run `make distcheck' instead of just
`make dist'. distcheck runs make dist, builds the dist tree and runs
make check on it.

Since automake doesn't accept sources from other directories, because
this is not portable, I have created some makefiles in subdirectories
such as jit, intrp and system/unix-*. A special kind of temporary
library, called libtool convenience library, is created to hold files
from each of these directories, and then the convenience library is
included in libkaffevm. In other cases, such as gc-mem.c, I have
preferred to just create a gc-mem.c forwarder (a file that #includes
mem/gc-mem.c) within kaffe/kaffevm. If we later decide that it was
not a good idea, it is very easy to create a Makefile.am within
kaffevm/mem and create a convenience library there.

I think I'll just collect these few messages into FAQ.automake...

>> - in order to modify the Makefiles and configure.in, you need rather
>> recent versions of autoconf and automake. autoconf 2.13 (just
>> released) and automake 1.4 (to be released soon, currently available
>> via CVS) should be fine. I'm not sure you really need the newest
>> automake, but I'm sure that you need at least autoconf 2.12.2 (never
>> officially released)

> I bet you need perl5 too.

automake is supposed to work with perl4, but some people have reported
problems with it. I'm not sure they have already been fixed.

-- 
Alexandre Oliva  http://www.dcc.unicamp.br/~oliva  aoliva@{acm.org}
oliva@{dcc.unicamp.br,gnu.org,egcs.cygnus.com,samba.org}
Universidade Estadual de Campinas, SP, Brasil


Date view Thread view Subject view Author view

This archive was generated by hypermail 2b29 : Sat Sep 23 2000 - 19:57:31 EDT