Skip to content
Snippets Groups Projects
Commit e5e19249 authored by Francois-Rene Rideau's avatar Francois-Rene Rideau
Browse files

2.32.14: uiop/lisp-build tweaks, notably reintroduce *uninteresting-conditions*

parent 139f729a
No related branches found
No related tags found
No related merge requests found
...@@ -74,7 +74,7 @@ ...@@ -74,7 +74,7 @@
:licence "MIT" :licence "MIT"
:description "Another System Definition Facility" :description "Another System Definition Facility"
:long-description "ASDF builds Common Lisp software organized into defined systems." :long-description "ASDF builds Common Lisp software organized into defined systems."
:version "2.32.13" ;; to be automatically updated by make bump-version :version "2.32.14" ;; to be automatically updated by make bump-version
:depends-on () :depends-on ()
#+asdf3 :encoding #+asdf3 :utf-8 #+asdf3 :encoding #+asdf3 :utf-8
;; For most purposes, asdf itself specially counts as a builtin system. ;; For most purposes, asdf itself specially counts as a builtin system.
......
;;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp -*- ;;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp -*-
;;; This is ASDF 2.32.13: Another System Definition Facility. ;;; This is ASDF 2.32.14: Another System Definition Facility.
;;; ;;;
;;; Feedback, bug reports, and patches are all welcome: ;;; Feedback, bug reports, and patches are all welcome:
;;; please mail to <asdf-devel@common-lisp.net>. ;;; please mail to <asdf-devel@common-lisp.net>.
......
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
#:compile-condition #:compile-file-error #:compile-warned-error #:compile-failed-error #:compile-condition #:compile-file-error #:compile-warned-error #:compile-failed-error
#:compile-warned-warning #:compile-failed-warning #:compile-warned-warning #:compile-failed-warning
#:check-lisp-compile-results #:check-lisp-compile-warnings #:check-lisp-compile-results #:check-lisp-compile-warnings
#:*uninteresting-compiler-conditions* #:*uninteresting-loader-conditions* #:*uninteresting-conditions* #:*uninteresting-compiler-conditions* #:*uninteresting-loader-conditions*
;; Functions & Macros ;; Functions & Macros
#:get-optimization-settings #:proclaim-optimization-settings #:get-optimization-settings #:proclaim-optimization-settings
#:call-with-muffled-compiler-conditions #:with-muffled-compiler-conditions #:call-with-muffled-compiler-conditions #:with-muffled-compiler-conditions
...@@ -51,15 +51,16 @@ Note that ASDF ALWAYS raises an error if it fails to create an output file when ...@@ -51,15 +51,16 @@ Note that ASDF ALWAYS raises an error if it fails to create an output file when
(defvar *previous-optimization-settings* nil) (defvar *previous-optimization-settings* nil)
(defun get-optimization-settings () (defun get-optimization-settings ()
"Get current compiler optimization settings, ready to PROCLAIM again" "Get current compiler optimization settings, ready to PROCLAIM again"
#-(or clisp clozure cmu ecl sbcl scl)
(warn "~S does not support ~S. Please help me fix that." 'get-optimization-settings (lisp-implementation))
#+clozure (ccl:declaration-information 'optimize nil)
#+(or clisp cmu ecl sbcl scl)
(let ((settings '(speed space safety debug compilation-speed #+(or cmu scl) c::brevity))) (let ((settings '(speed space safety debug compilation-speed #+(or cmu scl) c::brevity)))
#-(or clisp clozure cmu ecl sbcl scl)
(warn "~S does not support your implementation. Please help me fix that." 'get-optimization-settings)
#.`(loop :for x :in settings #.`(loop :for x :in settings
,@(or #+clozure '(:for v :in '(ccl::*nx-speed* ccl::*nx-space* ccl::*nx-safety* ccl::*nx-debug* ccl::*nx-cspeed*)) ,@(or #+ecl '(:for v :in '(c::*speed* c::*space* c::*safety* c::*debug*))
#+ecl '(:for v :in '(c::*speed* c::*space* c::*safety* c::*debug*))
#+(or cmu scl) '(:for f :in '(c::cookie-speed c::cookie-space c::cookie-safety c::cookie-debug c::cookie-cspeed c::cookie-brevity))) #+(or cmu scl) '(:for f :in '(c::cookie-speed c::cookie-space c::cookie-safety c::cookie-debug c::cookie-cspeed c::cookie-brevity)))
:for y = (or #+clisp (gethash x system::*optimize*) :for y = (or #+clisp (gethash x system::*optimize*)
#+(or clozure ecl) (symbol-value v) #+(or ecl) (symbol-value v)
#+(or cmu scl) (funcall f c::*default-cookie*) #+(or cmu scl) (funcall f c::*default-cookie*)
#+sbcl (cdr (assoc x sb-c::*policy*))) #+sbcl (cdr (assoc x sb-c::*policy*)))
:when y :collect (list x y)))) :when y :collect (list x y))))
...@@ -84,7 +85,7 @@ Note that ASDF ALWAYS raises an error if it fails to create an output file when ...@@ -84,7 +85,7 @@ Note that ASDF ALWAYS raises an error if it fails to create an output file when
(deftype sb-grovel-unknown-constant-condition () (deftype sb-grovel-unknown-constant-condition ()
'(and style-warning (satisfies sb-grovel-unknown-constant-condition-p)))) '(and style-warning (satisfies sb-grovel-unknown-constant-condition-p))))
(defvar *uninteresting-compiler-conditions* (defvar *uninteresting-conditions*
(append (append
;;#+clozure '(ccl:compiler-warning) ;;#+clozure '(ccl:compiler-warning)
#+cmu '("Deleting unreachable code.") #+cmu '("Deleting unreachable code.")
...@@ -93,38 +94,39 @@ Note that ASDF ALWAYS raises an error if it fails to create an output file when ...@@ -93,38 +94,39 @@ Note that ASDF ALWAYS raises an error if it fails to create an output file when
#+sbcl #+sbcl
'(sb-c::simple-compiler-note '(sb-c::simple-compiler-note
"&OPTIONAL and &KEY found in the same lambda list: ~S" "&OPTIONAL and &KEY found in the same lambda list: ~S"
sb-int:package-at-variance
sb-kernel:uninteresting-redefinition
sb-kernel:undefined-alien-style-warning
;; sb-ext:implicit-generic-function-warning ; Controversial. Let's allow it by default.
#+sb-eval sb-kernel:lexical-environment-too-complex #+sb-eval sb-kernel:lexical-environment-too-complex
sb-kernel:undefined-alien-style-warning
sb-grovel-unknown-constant-condition ; defined above. sb-grovel-unknown-constant-condition ; defined above.
;; sb-ext:implicit-generic-function-warning ; Controversial. Let's allow it by default.
sb-int:package-at-variance
sb-kernel:uninteresting-redefinition
;; BEWARE: the below four are controversial to include here. ;; BEWARE: the below four are controversial to include here.
sb-kernel:redefinition-with-defun sb-kernel:redefinition-with-defun
sb-kernel:redefinition-with-defgeneric sb-kernel:redefinition-with-defgeneric
sb-kernel:redefinition-with-defmethod sb-kernel:redefinition-with-defmethod
sb-kernel::redefinition-with-defmacro) ; not exported by old SBCLs sb-kernel::redefinition-with-defmacro) ; not exported by old SBCLs
'("No generic function ~S present when encountering macroexpansion of defmethod. Assuming it will be an instance of standard-generic-function.")) ;; from closer2mop '("No generic function ~S present when encountering macroexpansion of defmethod. Assuming it will be an instance of standard-generic-function.")) ;; from closer2mop
"Conditions that may be skipped while compiling") "Conditions that may be skipped while compiling or loading Lisp code.")
(defvar *uninteresting-compiler-conditions* '()
"Additional conditions that may be skipped while compiling Lisp code.")
(defvar *uninteresting-loader-conditions* (defvar *uninteresting-loader-conditions*
(append (append
'("Overwriting already existing readtable ~S." ;; from named-readtables '("Overwriting already existing readtable ~S." ;; from named-readtables
#(#:finalizers-off-warning :asdf-finalizers)) ;; from asdf-finalizers #(#:finalizers-off-warning :asdf-finalizers)) ;; from asdf-finalizers
#+clisp '(clos::simple-gf-replacing-method-warning)) #+clisp '(clos::simple-gf-replacing-method-warning))
"Additional conditions that may be skipped while loading")) "Additional conditions that may be skipped while loading Lisp code."))
;;;; ----- Filtering conditions while building ----- ;;;; ----- Filtering conditions while building -----
(with-upgradability () (with-upgradability ()
(defun call-with-muffled-compiler-conditions (thunk) (defun call-with-muffled-compiler-conditions (thunk)
(call-with-muffled-conditions (call-with-muffled-conditions
thunk *uninteresting-compiler-conditions*)) thunk (append *uninteresting-conditions* *uninteresting-compiler-conditions*)))
(defmacro with-muffled-compiler-conditions ((&optional) &body body) (defmacro with-muffled-compiler-conditions ((&optional) &body body)
"Run BODY where uninteresting compiler conditions are muffled" "Run BODY where uninteresting compiler conditions are muffled"
`(call-with-muffled-compiler-conditions #'(lambda () ,@body))) `(call-with-muffled-compiler-conditions #'(lambda () ,@body)))
(defun call-with-muffled-loader-conditions (thunk) (defun call-with-muffled-loader-conditions (thunk)
(call-with-muffled-conditions (call-with-muffled-conditions
thunk (append *uninteresting-compiler-conditions* *uninteresting-loader-conditions*))) thunk (append *uninteresting-conditions* *uninteresting-loader-conditions*)))
(defmacro with-muffled-loader-conditions ((&optional) &body body) (defmacro with-muffled-loader-conditions ((&optional) &body body)
"Run BODY where uninteresting compiler and additional loader conditions are muffled" "Run BODY where uninteresting compiler and additional loader conditions are muffled"
`(call-with-muffled-loader-conditions #'(lambda () ,@body)))) `(call-with-muffled-loader-conditions #'(lambda () ,@body))))
......
...@@ -52,7 +52,7 @@ You can compare this string with e.g.: (ASDF:VERSION-SATISFIES (ASDF:ASDF-VERSIO ...@@ -52,7 +52,7 @@ You can compare this string with e.g.: (ASDF:VERSION-SATISFIES (ASDF:ASDF-VERSIO
;; "3.4.5.67" would be a development version in the official upstream of 3.4.5. ;; "3.4.5.67" would be a development version in the official upstream of 3.4.5.
;; "3.4.5.0.8" would be your eighth local modification of official release 3.4.5 ;; "3.4.5.0.8" would be your eighth local modification of official release 3.4.5
;; "3.4.5.67.8" would be your eighth local modification of development version 3.4.5.67 ;; "3.4.5.67.8" would be your eighth local modification of development version 3.4.5.67
(asdf-version "2.32.13") (asdf-version "2.32.14")
(existing-version (asdf-version))) (existing-version (asdf-version)))
(setf *asdf-version* asdf-version) (setf *asdf-version* asdf-version)
(when (and existing-version (not (equal asdf-version existing-version))) (when (and existing-version (not (equal asdf-version existing-version)))
......
"2.32.13" "2.32.14"
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment