Loading .gitlab-ci.yml +1 −1 Original line number Diff line number Diff line Loading @@ -7,6 +7,6 @@ before_script: test: script: - bin/build.sh -C "" -o ./snapshot/bin/lisp - bin/build.sh -B boot-21c -C "" -o ./snapshot/bin/lisp - bin/make-dist.sh -I dist-linux linux-4 - bin/run-tests.sh -l dist-linux/bin/lisp 2>&1 | tee test.log src/bootfiles/21b/boot-21c.lisp 0 → 100644 +68 −0 Original line number Diff line number Diff line ;;;; ;;;; Boot file for changing the fasl file version numbers to 21a. ;;;; (in-package :c) (setf lisp::*enable-package-locked-errors* nil) ;;; ;;; Note that BYTE-FASL-FILE-VERSION is a constant. ;;; ;;; (Be sure to change BYTE-FASL-FILE-VERSION in ;;; compiler/byte-comp.lisp to the correct value too!) ;;; #-cmu21c (setf (symbol-value 'byte-fasl-file-version) #x21c) #-cmu21c (setf (backend-fasl-file-version *target-backend*) #x21c) ;;; ;;; Don't check fasl versions in the compiling Lisp because we'll ;;; load files compiled with the new version numbers. ;;; #-cmu21c (setq lisp::*skip-fasl-file-version-check* t) ;;; ;;; This is here because BYTE-FASL-FILE-VERSION is constant-folded in ;;; OPEN-FASL-FILE. To make the new version number take effect, we ;;; have to redefine the function. ;;; #-cmu21c (defun open-fasl-file (name where &optional byte-p) (declare (type pathname name)) (let* ((stream (open name :direction :output :if-exists :new-version :element-type '(unsigned-byte 8) :class 'binary-text-stream)) (res (make-fasl-file :stream stream))) (multiple-value-bind (version f-vers f-imp) (if byte-p (values "Byte code" byte-fasl-file-version (backend-byte-fasl-file-implementation *backend*)) (values (backend-version *backend*) (backend-fasl-file-version *backend*) (backend-fasl-file-implementation *backend*))) (format stream "FASL FILE output from ~A.~@ Compiled ~A on ~A~@ Compiler ~A, Lisp ~A~@ Targeted for ~A, FASL version ~X~%" where (ext:format-universal-time nil (get-universal-time)) (machine-instance) compiler-version (lisp-implementation-version) version f-vers) ;; ;; Terminate header. (dump-byte 255 res) ;; ;; Specify code format. (dump-fop 'lisp::fop-long-code-format res) (dump-byte f-imp res) (dump-unsigned-32 f-vers res)) res)) src/compiler/byte-comp.lisp +1 −1 Original line number Diff line number Diff line Loading @@ -38,7 +38,7 @@ ;; 0-9 followed by a single hex digit in the range a-f. Then the ;; version looks like a decimal number followed by a minor release ;; letter of a to f. (defconstant byte-fasl-file-version #x21b) (defconstant byte-fasl-file-version #x21c) (let* ((version-string (format nil "~X" byte-fasl-file-version))) ;; Add :cmu<n> to *features* Loading src/general-info/release-21c.md +1 −3 Original line number Diff line number Diff line **Work in progress** # CMUCL 21c The CMUCL project is pleased to announce the release of CMUCL 21c. Loading Loading @@ -52,7 +50,7 @@ See http://www.cmucl.org or https://gitlab.common-lisp.net/cmucl/cmucl for more information, See https://gitlab.common-lisp.net/cmucl/cmucl/wikis/GettingCmucl for obtaining CMUCL, including sources and binaries.. for obtaining CMUCL, including sources and binaries. We hope you enjoy using this release of CMUCL! src/general-info/release-21d.md 0 → 100644 +40 −0 Original line number Diff line number Diff line ** Work in Progress ** # CMUCL 21d The CMUCL project is pleased to announce the release of CMUCL 21c. This is a major release which contains numerous enhancements and bug fixes from the 21a release. CMUCL is a free, high performance implementation of the Common Lisp programming language which runs on most major Unix platforms. It mainly conforms to the ANSI Common Lisp standard. CMUCL provides a sophisticated native code compiler; a powerful foreign function interface; an implementation of CLOS, the Common Lisp Object System, which includes multi-methods and a meta-object protocol; a source-level debugger and code profiler; and an Emacs-like editor implemented in Common Lisp. CMUCL is maintained by a team of volunteers collaborating over the Internet, and is mostly in the public domain. ## New in this release: * Known issues: * Feature enhancements * Changes * ANSI compliance fixes: * Bug fixes: * Gitlab tickets: * Other changes: * Improvements to the PCL implementation of CLOS: * Changes to building procedure: This release is not binary compatible with code compiled using CMUCL 21c; you will need to recompile FASL files. See http://www.cmucl.org or https://gitlab.common-lisp.net/cmucl/cmucl for more information, See https://gitlab.common-lisp.net/cmucl/cmucl/wikis/GettingCmucl for obtaining CMUCL, including sources and binaries.. We hope you enjoy using this release of CMUCL! Loading
.gitlab-ci.yml +1 −1 Original line number Diff line number Diff line Loading @@ -7,6 +7,6 @@ before_script: test: script: - bin/build.sh -C "" -o ./snapshot/bin/lisp - bin/build.sh -B boot-21c -C "" -o ./snapshot/bin/lisp - bin/make-dist.sh -I dist-linux linux-4 - bin/run-tests.sh -l dist-linux/bin/lisp 2>&1 | tee test.log
src/bootfiles/21b/boot-21c.lisp 0 → 100644 +68 −0 Original line number Diff line number Diff line ;;;; ;;;; Boot file for changing the fasl file version numbers to 21a. ;;;; (in-package :c) (setf lisp::*enable-package-locked-errors* nil) ;;; ;;; Note that BYTE-FASL-FILE-VERSION is a constant. ;;; ;;; (Be sure to change BYTE-FASL-FILE-VERSION in ;;; compiler/byte-comp.lisp to the correct value too!) ;;; #-cmu21c (setf (symbol-value 'byte-fasl-file-version) #x21c) #-cmu21c (setf (backend-fasl-file-version *target-backend*) #x21c) ;;; ;;; Don't check fasl versions in the compiling Lisp because we'll ;;; load files compiled with the new version numbers. ;;; #-cmu21c (setq lisp::*skip-fasl-file-version-check* t) ;;; ;;; This is here because BYTE-FASL-FILE-VERSION is constant-folded in ;;; OPEN-FASL-FILE. To make the new version number take effect, we ;;; have to redefine the function. ;;; #-cmu21c (defun open-fasl-file (name where &optional byte-p) (declare (type pathname name)) (let* ((stream (open name :direction :output :if-exists :new-version :element-type '(unsigned-byte 8) :class 'binary-text-stream)) (res (make-fasl-file :stream stream))) (multiple-value-bind (version f-vers f-imp) (if byte-p (values "Byte code" byte-fasl-file-version (backend-byte-fasl-file-implementation *backend*)) (values (backend-version *backend*) (backend-fasl-file-version *backend*) (backend-fasl-file-implementation *backend*))) (format stream "FASL FILE output from ~A.~@ Compiled ~A on ~A~@ Compiler ~A, Lisp ~A~@ Targeted for ~A, FASL version ~X~%" where (ext:format-universal-time nil (get-universal-time)) (machine-instance) compiler-version (lisp-implementation-version) version f-vers) ;; ;; Terminate header. (dump-byte 255 res) ;; ;; Specify code format. (dump-fop 'lisp::fop-long-code-format res) (dump-byte f-imp res) (dump-unsigned-32 f-vers res)) res))
src/compiler/byte-comp.lisp +1 −1 Original line number Diff line number Diff line Loading @@ -38,7 +38,7 @@ ;; 0-9 followed by a single hex digit in the range a-f. Then the ;; version looks like a decimal number followed by a minor release ;; letter of a to f. (defconstant byte-fasl-file-version #x21b) (defconstant byte-fasl-file-version #x21c) (let* ((version-string (format nil "~X" byte-fasl-file-version))) ;; Add :cmu<n> to *features* Loading
src/general-info/release-21c.md +1 −3 Original line number Diff line number Diff line **Work in progress** # CMUCL 21c The CMUCL project is pleased to announce the release of CMUCL 21c. Loading Loading @@ -52,7 +50,7 @@ See http://www.cmucl.org or https://gitlab.common-lisp.net/cmucl/cmucl for more information, See https://gitlab.common-lisp.net/cmucl/cmucl/wikis/GettingCmucl for obtaining CMUCL, including sources and binaries.. for obtaining CMUCL, including sources and binaries. We hope you enjoy using this release of CMUCL!
src/general-info/release-21d.md 0 → 100644 +40 −0 Original line number Diff line number Diff line ** Work in Progress ** # CMUCL 21d The CMUCL project is pleased to announce the release of CMUCL 21c. This is a major release which contains numerous enhancements and bug fixes from the 21a release. CMUCL is a free, high performance implementation of the Common Lisp programming language which runs on most major Unix platforms. It mainly conforms to the ANSI Common Lisp standard. CMUCL provides a sophisticated native code compiler; a powerful foreign function interface; an implementation of CLOS, the Common Lisp Object System, which includes multi-methods and a meta-object protocol; a source-level debugger and code profiler; and an Emacs-like editor implemented in Common Lisp. CMUCL is maintained by a team of volunteers collaborating over the Internet, and is mostly in the public domain. ## New in this release: * Known issues: * Feature enhancements * Changes * ANSI compliance fixes: * Bug fixes: * Gitlab tickets: * Other changes: * Improvements to the PCL implementation of CLOS: * Changes to building procedure: This release is not binary compatible with code compiled using CMUCL 21c; you will need to recompile FASL files. See http://www.cmucl.org or https://gitlab.common-lisp.net/cmucl/cmucl for more information, See https://gitlab.common-lisp.net/cmucl/cmucl/wikis/GettingCmucl for obtaining CMUCL, including sources and binaries.. We hope you enjoy using this release of CMUCL!