Raymond Toy pushed to branch master at cmucl / cmucl
Commits: e32c4479 by Raymond Toy at 2017-10-15T10:04:15-07:00 Release 21c
Use `-B boot-21c` to bootstrap the release from 21b to 21c.
- 21b/boot-21c.lisp: - Add boot-21c.lisp to update the version number - compiler/byte-comp.lisp - Update the actual version number
- - - - - 6217c780 by Raymond Toy at 2017-10-15T10:05:41-07:00 Add -B flag to bootstrap the release number change
- - - - - 1fd413e3 by Raymond Toy at 2017-10-15T10:05:55-07:00 Remove WIP.
- - - - - e1aa8483 by Raymond Toy at 2017-10-15T10:08:19-07:00 Add release-21d.md release notes.
- - - - - 48afbb09 by Raymond Toy at 2017-10-27T21:00:48-07:00 Merge branch 'master' into 21c-branch
- - - - - 9f2679a6 by Raymond Toy at 2017-10-27T21:03:02-07:00 Remove WIP and fix typo.
- - - - - 9697034f by Raymond Toy at 2017-10-27T21:03:30-07:00 Fix up markdown markup
- - - - - e87e8196 by Raymond Toy at 2017-10-28T15:32:21+00:00 Merge branch '21c-branch' into 'master'
21c branch
See merge request cmucl/cmucl!27 - - - - -
5 changed files:
- .gitlab-ci.yml - + src/bootfiles/21b/boot-21c.lisp - src/compiler/byte-comp.lisp - src/general-info/release-21c.md - + src/general-info/release-21d.md
Changes:
===================================== .gitlab-ci.yml ===================================== --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -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 ===================================== --- /dev/null +++ b/src/bootfiles/21b/boot-21c.lisp @@ -0,0 +1,68 @@ +;;;; +;;;; 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 ===================================== --- a/src/compiler/byte-comp.lisp +++ b/src/compiler/byte-comp.lisp @@ -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*
===================================== src/general-info/release-21c.md ===================================== --- a/src/general-info/release-21c.md +++ b/src/general-info/release-21c.md @@ -1,5 +1,3 @@ -**Work in progress** - # CMUCL 21c
The CMUCL project is pleased to announce the release of CMUCL 21c. @@ -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 ===================================== --- /dev/null +++ b/src/general-info/release-21d.md @@ -0,0 +1,40 @@ +** 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!
View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/compare/4c0780dc2a04d965f610d804a...
--- View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/compare/4c0780dc2a04d965f610d804a... You're receiving this email because of your account on gitlab.common-lisp.net.