I like what I have seen so far with
Jean-Fredric's use of 'autoconf' toward
configuring 'bootJVM', especially in the
way that it can deduce the platform
and C compiler it is running, not to
mention figuring out if the Java
compiler and archiver are valid.
When I wrote the initial 'config.sh'
script, I kept wishing that I had
previously written 'autoconf' scripts
because I have been a user of
them in many situations for a long time.
I also like how most of the
input files are stored in a 'support'
subdirectory, which can thin out the
potential clutter in the top level
directory, which, currently for 'bootJVM',
has quite a few things in it. Notice
that the code provided (the November 1
version, the one I studied most) has a
number of its input files derived from
what is the output of the current
'config.sh' script, meaning that both
scripts contribute part of the complete
set of configuration parameters to
the whole. In order to effectively use
the 'autoconf' approach, we should
probably consider either extending
this example to include all of the
functionality of the current 'config.sh'
script (using 'svn update -r HEAD .'
to get the latest) or consider focusing
on the core feature set of deducing the
runtime platform, deducing the
configuration of the C compiler, and
perhaps also verifying the validity of
the JDK programs, then incorporating
this logic into the current 'config.sh'
script. I'm open to more suggestions
here, and I am grateful to Jean-Frederic
for his work to date on this important
issue, showing how 'autoconf' can be
used for 'bootJVM' configuration!