I've long errouneously blamed GCL.  Detailed investigation turned out
top be an Axiom doing.  Fixed thusly.

Tested on:

  * i686-pc-linux with GCL and noweb installed
  * x86_64-suse-linux without GCL and with noweb installed

Bill, if you can give it a try on mac, that would be very appreciated.

-- Gaby

src/interp/

2006-09-11  Gabriel Dos Reis  <[EMAIL PROTECTED]>

        * Makefile.pamphlet (${SAVESYS}): Don't set
        si::*system-directory*. 
        * Makefile.in: Regenerate.
        
*** src/interp/Makefile.pamphlet        (revision 15833)
--- src/interp/Makefile.pamphlet        (local)
*************** GCL likes to tell you when it has replac
*** 840,845 ****
--- 840,852 ----
  tail-recursive call. This happens when the last form in a function
  is a call to the same function. In general, we don't care so we set
  compiler::*suppress-compiler-notes* to true in order to reduce the noise.
+ 
+ Notice that when Axiom uses GCL as the Lisp platform, it is usually not 
+ a good idea to mess with GCL's internal variables.  In particular, GCL
+ has its own idea about what to do with [[si::*system-directory*]], which 
+ should not be set here just because we happen to save an GCL-based image.
+ Doing otherwise causes havoc.
+ 
  <<savesys>>=
  ${SAVESYS}:   ${DEPSYS} ${OBJS} ${OUT}/bookvol5.${O} ${OUT}/util.${O} \
                  ${OUT}/nocompil.${LISP} ${OUT}/sys-pkg.${LISP} \
*************** ${SAVESYS}:     ${DEPSYS} ${OBJS} ${OUT}/boo
*** 883,889 ****
  #     @ echo '#+:akcl (si::multiply-bignum-stack 10)' >> ${OUT}/makeint.lisp
        @ echo '#+:akcl (setq compiler::*suppress-compiler-notes* t)' >> 
${OUT}/makeint.lisp
        @ echo '#+:akcl (si::gbc-time 0)' >> ${OUT}/makeint.lisp
!       @ echo '#+:akcl (setq si::*system-directory* "${SPAD}/bin/")' >> 
${OUT}/makeint.lisp
        @ (cd ${OBJ}/${SYS}/bin ; \
          echo '(progn (gbc t) (load "${OUT}/makeint.lisp") (gbc t) 
(user::spad-save "${SAVESYS}"))' | ${LISPSYS} )
        @ echo 6 ${SAVESYS} created
--- 890,896 ----
  #     @ echo '#+:akcl (si::multiply-bignum-stack 10)' >> ${OUT}/makeint.lisp
        @ echo '#+:akcl (setq compiler::*suppress-compiler-notes* t)' >> 
${OUT}/makeint.lisp
        @ echo '#+:akcl (si::gbc-time 0)' >> ${OUT}/makeint.lisp
! #     @ echo '#+:akcl (setq si::*system-directory* "${SPAD}/bin/")' >> 
${OUT}/makeint.lisp
        @ (cd ${OBJ}/${SYS}/bin ; \
          echo '(progn (gbc t) (load "${OUT}/makeint.lisp") (gbc t) 
(user::spad-save "${SAVESYS}"))' | ${LISPSYS} )
        @ echo 6 ${SAVESYS} created


_______________________________________________
Axiom-developer mailing list
Axiom-developer@nongnu.org
http://lists.nongnu.org/mailman/listinfo/axiom-developer

Reply via email to