Created attachment 173051 [details] typescript session It is possible to compile the last math/open-axiom port that was marked BROKEN (open-axiom-1.4.2_3) and then deleted, by always replying '1': 1: [IGNORE-ALL ] Ignore all package locks in the context of this operation in the SBCL debugger (multiple times). Then, the compilation goes through and the resulting programs can be installed with the usual 'make deinstall && make reinstall' as usual. I didn't experience any endless loop; but please note that I DID have the same version of open-axiom still installed on that machine. $ uname -a FreeBSD phenom.fritz.box 10.3-STABLE FreeBSD 10.3-STABLE #0 r303311: Mon Jul 25 20:42:34 CEST 2016 root@phenom.fritz.box:/usr/obj/usr/src/sys/GENERIC amd64 $ sbcl This is SBCL 1.3.1, an implementation of ANSI Common Lisp. More information about SBCL is available at <http://www.sbcl.org/>. SBCL is free software, provided as is, with absolutely no warranty. It is mostly in the public domain; some portions are provided under BSD-style licenses. See the CREDITS and COPYING files in the distribution for more information. * (sb-ext:exit) $ open-axiom OpenAxiom: The Open Scientific Computation Platform Version: OpenAxiom 1.4.2 Built on Wednesday July 27, 2016 at 15:21:43 ----------------------------------------------------------------------------- Issue )copyright to view copyright notices. Issue )summary for a summary of useful system commands. Issue )quit to leave OpenAxiom and return to shell. ----------------------------------------------------------------------------- (1) -> )quit Please see the attached typescript.xz
Since it used to be my port, I will take this.
Yesterday i also played a little bit around with it. After reading the Spec carefully the problem is the definition of the constant IDENTITY in open-axiom, because this constant already exists in the SBCL package. You can shadow the basic package and redefine it. But yesterday i just replaced all IDENTITY with AXIOMIDENTITY and it worked also.
Torsten - could you provide a patch? Or tell me which files to update so I can add a sed command to Makefile that makes the appropriate changes? Then I'll resurrect the port.
(In reply to Torsten Zuehlsdorff from comment #2) Yes, looking again at typescript grepping for IGNORE-ALL, *all* errors that drop into the debugger are indeed caused by IDENTITY constant: "(SB-EXT:PACKAGE-LOCK-VIOLATION #<PACKAGE "COMMON-LISP"> :SYMBOL IDENTITY :FORMAT-CONTROL "defining ~s as a constant" :FORMAT-ARGUMENTS (IDENTITY))" in various files that are being generated on-the-fly, like: /usr/ports/math/open-axiom/work/open-axiom-1.4.2/src/interp/sys-constants.clisp /usr/ports/math/open-axiom/work/open-axiom-1.4.2/src/interp/sys-globals.clisp /usr/ports/math/open-axiom/work/open-axiom-1.4.2/src/interp/vmlisp.lisp /usr/ports/math/open-axiom/work/open-axiom-1.4.2/src/interp/diagnostics.clisp and so on, out of corresponding *.boot files (you can see the file near the error message). But simply s/IDENTITY/AXIOMIDENTITY/g in open-axiom may have unintended consequences w.r.t. usability. Are you sure that is the right way to fix it? -cpghost.
I tried a simple s/IDENTITY/AXIOMIDENTITY/g in open-axiom. It wouldn't build.
It has been > 2 years since the last update here. Has someone made progress or do we close?
Lets close it. I have no time for further investigation and there seems no need at all? Greetings, Torsten
Closing per comment #7.