reduce-algebra bug

Mark Brethen mark.brethen at gmail.com
Sun Dec 18 14:16:35 PST 2011


I discovered bug as a result of MacPorts' staged build/install process which prevents reduce from finding the lisp load directories. The load path is in the Lisp variable {loaddirectories!*} and is set during the build phase to the ${worksrcpath}. This of course breaks during destroot phase.

you can set this in your ~/.reducerc like: lisp(loaddirectories!* := '("" "/opt/local/libexec/reduce-algebra/pslbuild/x86_64-mac_10.7_lion-darwin11.2.0/red/" "/opt/local/libexec/reduce-algebra/pslbuild/x86_64-mac_10.7_lion-darwin11.2.0/psl/"));

From the developer:

sturm at lennier[~/Cloud/Dropbox/reduce-algebra/trunk/psl] grep loaddi * bootstrap.sh:(setq loaddirectories!* '("" "$here/red/" "$here/psl/")) build.sh:(setq loaddirectories!* '("" "$here/red/" "$here/psl/")) build.sh:(setq loaddirectories!* (quote ("" "$here/red/" "$here/psl/"))) mkredpsl.dat.for.vista:(setq loaddirectories* '("" "$reduce\lisp\psl\win32\red\" noncoremodule.sh: loaddirectories!* := "red/" . "psl/" . loaddirectories!*; reduce.img.dat.bat:(setq loaddirectories!* (list "" (bldmsg "%w\..\red/" (getenv "here")) reduce.img.sh:(setq loaddirectories!* (quote ("" "$here/red/" "$here/psl/")))

A solution for the future, would be to patch the variable $here ...

In line 285 of trunk/psl/build.sh there is:

(setq loaddirectories!* (quote ("" "$here/red/" "$here/psl/")))

I think this is the value of loaddirectories!* that finally gets dumped into the image in line 345:

(savesystem "REDUCE" "$fasl/reduce" (quote ((read-init-file "reduce"))))


Mark






More information about the macports-dev mailing list