On Tue, 2004-01-27 at 14:04, Vadim V. Zhytnikov wrote:
> Hi!
>
> James, could you take a look at the attached tiny
> patch. It assigns default value (lisp) to
> CMUCL_RUNTIME if no other value is provided
> by configure. Without this patch configure/make
> generate erroneous code for cmucl (else branch)
>
> exec "$MAXIMA_VERPKGLIBDIR/binary-$MAXIMA_LISP/" -quiet -core ...
>
> in maxima script if no --enable-cmucl is given.
>
> I'm far for being automake/autoconf expert. Is it sensible?
It's sensible, but it isn't quite the right thing to do. I'm sorry it
has taken me so long to fix this bug. My source tree is in a confused
state right now because I am in the middle of a fairly large change.
(When I am done, windows builds without MinGW should be a reality...)
Anyway, here is the problem and how to fix it:
Step 1: configure(.in) looks for various --enable and -with options in
order to determine which lisp(s) to use.
Step 2: If no lisps were specified in step one, configure(.in) looks
for lisp executables with default names and uses the first one it finds.
CLISP_RUNTIME and/or CMUCL_RUNTIME should only be set if needed.
(Otherwise, they might cause an unnecessary error.) Right now, the code
to set those variables is embedded in the code for Step 1, which is why
it fails if the lisp is not determined until Step 2. The runtime-setting
code for both lisps needs to be moved after Step 2.
I will get to this after I finish the project I am currently working on
if nobody beats me to it.
--Jim