Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Didier Verna
asdf
Commits
b0a04b68
Commit
b0a04b68
authored
Sep 21, 2016
by
Francois-Rene Rideau
Browse files
Another pass of documentation after proofreading by Robert in
!24
.
parent
45c0bd77
Changes
3
Hide whitespace changes
Inline
Side-by-side
backward-interface.lisp
View file @
b0a04b68
...
@@ -36,24 +36,37 @@
...
@@ -36,24 +36,37 @@
(
define-condition
compile-warned
(
compile-error
)
())
(
define-condition
compile-warned
(
compile-error
)
())
(
defun
component-load-dependencies
(
component
)
(
defun
component-load-dependencies
(
component
)
"DEPRECATED. Please use COMPONENT-SIDEWAY-DEPENDENCIES instead."
;; Old deprecated name for the same thing. Please update your software.
;; Old deprecated name for the same thing. Please update your software.
(
component-sideway-dependencies
component
))
(
component-sideway-dependencies
component
))
(
defgeneric
operation-forced
(
operation
))
;; Used by swank.asd for swank-loader.
(
defgeneric
operation-forced
(
operation
)
;; swank.asd looks at where the operation was forced to actually reload swank.
(
:documentation
"DEPRECATED. Assume it's (constantly t) instead."
))
;; But the only reason the action would be performed again is because it was forced;
;; This method exists for backward compatibility with swank.asd, its only user,
;; so the check is redundant. More generally, if you have to do it when the operation was forced,
;; that still uses it as of 2016-09-21.
;; you should do it when not, and vice-versa, because it really shouldn't matter.
;;
;; The magic PERFORM method in swank.asd only actually loads swank if it sees that
;; the operation was forced. But except for the first time, the only reason the action
;; would be performed to begin with is because it was forced; and the first time over,
;; it doesn't hurt that :reload t :delete t should be used. So the check is redundant.
;; More generally, if you have to do something when the operation was forced,
;; you should also do it when not, and vice-versa, because it really shouldn't matter.
;; Thus, the backward-compatible thing to do is to always return T.
;; Thus, the backward-compatible thing to do is to always return T.
;;
;; TODO: change this function to a defun that always returns T.
(
defmethod
operation-forced
((
o
operation
))
(
getf
(
operation-original-initargs
o
)
:force
))
(
defmethod
operation-forced
((
o
operation
))
(
getf
(
operation-original-initargs
o
)
:force
))
;; These old interfaces from ASDF1 have never been very meaningful
;; These old interfaces from ASDF1 have never been very meaningful
;; but are still used in obscure places.
;; but are still used in obscure places.
(
defgeneric
operation-on-warnings
(
operation
))
(
defgeneric
operation-on-warnings
(
operation
)
(
defgeneric
operation-on-failure
(
operation
))
(
:documentation
"DEPRECATED. Please use UIOP:*COMPILE-FILE-WARNINGS-BEHAVIOUR* instead."
))
(
defgeneric
(
setf
operation-on-warnings
)
(
x
operation
))
(
defgeneric
operation-on-failure
(
operation
)
(
defgeneric
(
setf
operation-on-failure
)
(
x
operation
))
(
:documentation
"DEPRECATED. Please use UIOP:*COMPILE-FILE-FAILURE-BEHAVIOUR* instead."
))
(
defgeneric
(
setf
operation-on-warnings
)
(
x
operation
)
(
:documentation
"DEPRECATED. Please SETF UIOP:*COMPILE-FILE-WARNINGS-BEHAVIOUR* instead."
))
(
defgeneric
(
setf
operation-on-failure
)
(
x
operation
)
(
:documentation
"DEPRECATED. Please SETF UIOP:*COMPILE-FILE-FAILURE-BEHAVIOUR* instead."
))
(
defmethod
operation-on-warnings
((
o
operation
))
(
defmethod
operation-on-warnings
((
o
operation
))
*compile-file-warnings-behaviour*
)
*compile-file-warnings-behaviour*
)
(
defmethod
operation-on-failure
((
o
operation
))
(
defmethod
operation-on-failure
((
o
operation
))
...
@@ -67,12 +80,11 @@
...
@@ -67,12 +80,11 @@
;; As of 2.014.8, we mean to make this function obsolete,
;; As of 2.014.8, we mean to make this function obsolete,
;; but that won't happen until all clients have been updated.
;; but that won't happen until all clients have been updated.
;;(cerror "Use ASDF:SYSTEM-SOURCE-FILE instead"
;;(cerror "Use ASDF:SYSTEM-SOURCE-FILE instead"
"Function ASDF:SYSTEM-DEFINITION-PATHNAME is obsolete.
"DEPRECATED. This function used to expose ASDF internals with subtle
It used to expose ASDF internals with subtle differences with respect to
differences with respect to user expectations, that have been refactored
user expectations, that have been refactored away since.
away since. We recommend you use ASDF:SYSTEM-SOURCE-FILE instead for a
We recommend you use ASDF:SYSTEM-SOURCE-FILE instead
mostly compatible replacement that we're supporting, or even
for a mostly compatible replacement that we're supporting,
ASDF:SYSTEM-SOURCE-DIRECTORY or ASDF:SYSTEM-RELATIVE-PATHNAME
or even ASDF:SYSTEM-SOURCE-DIRECTORY or ASDF:SYSTEM-RELATIVE-PATHNAME
if that's whay you mean."
;;)
if that's whay you mean."
;;)
(
system-source-file
x
))
(
system-source-file
x
))
...
...
bundle.lisp
View file @
b0a04b68
...
@@ -72,6 +72,7 @@ itself."))
...
@@ -72,6 +72,7 @@ itself."))
(
:documentation
"Abstract operation for linking files together"
))
(
:documentation
"Abstract operation for linking files together"
))
(
defclass
gather-op
(
bundle-op
)
(
defclass
gather-op
(
bundle-op
)
;; TODO: rename the slot and reader gather-op to gather-operation
((
gather-op
:initform
nil
:allocation
:class
:reader
gather-op
)
((
gather-op
:initform
nil
:allocation
:class
:reader
gather-op
)
(
gather-type
:initform
:no-output-file
:allocation
:class
:reader
gather-type
))
(
gather-type
:initform
:no-output-file
:allocation
:class
:reader
gather-type
))
(
:documentation
"Abstract operation for gathering many input files from a system"
))
(
:documentation
"Abstract operation for gathering many input files from a system"
))
...
@@ -80,10 +81,11 @@ itself."))
...
@@ -80,10 +81,11 @@ itself."))
(
typep
op
'monolithic-op
))
(
typep
op
'monolithic-op
))
;; Dependencies of a gather-op are the actions of the dependent operation
;; Dependencies of a gather-op are the actions of the dependent operation
;; (from gather-op reader, defaulting to lib-op or compile-op depending
;; for all the (sorted) required components for loading the system.
;; on the operation being monolithic or not) for all the (sorted) required components
;; Monolithic operations typically use lib-op as the dependent operation,
;; for loading the system, recursing either to other systems or sub-components
;; and all system-level dependencies as required components.
;; depending on it being monolithic or not.
;; Non-monolithic operations typically use compile-op as the dependent operation,
;; and all transitive sub-components as required components (excluding other systems).
(
defmethod
component-depends-on
((
o
gather-op
)
(
s
system
))
(
defmethod
component-depends-on
((
o
gather-op
)
(
s
system
))
(
let*
((
mono
(
operation-monolithic-p
o
))
(
let*
((
mono
(
operation-monolithic-p
o
))
(
deps
(
deps
...
@@ -264,7 +266,7 @@ or of opaque libraries shipped along the source code."))
...
@@ -264,7 +266,7 @@ or of opaque libraries shipped along the source code."))
(
defclass
prebuilt-system
(
system
)
(
defclass
prebuilt-system
(
system
)
((
build-pathname
:initarg
:static-library
:initarg
:lib
((
build-pathname
:initarg
:static-library
:initarg
:lib
:accessor
prebuilt-system-static-library
))
:accessor
prebuilt-system-static-library
))
(
:documentation
"Class for a system
that comes precompiled with a
static library
file
"
)))
(
:documentation
"Class for a system
delivered with a linkable
static library
(.a/.lib)
"
)))
;;;
;;;
...
...
plan.lisp
View file @
b0a04b68
...
@@ -238,7 +238,8 @@ initialized with SEED."
...
@@ -238,7 +238,8 @@ initialized with SEED."
;; in the current image, or NIL if it hasn't.
;; in the current image, or NIL if it hasn't.
;; Note that if e.g. LOAD-OP only depends on up-to-date files, but
;; Note that if e.g. LOAD-OP only depends on up-to-date files, but
;; hasn't been done in the current image yet, then it can have a non-T timestamp,
;; hasn't been done in the current image yet, then it can have a non-T timestamp,
;; yet a NIL done-in-image-p flag.
;; yet a NIL done-in-image-p flag: we can predict what timestamp it will have once loaded,
;; i.e. that of the input-files.
(
nest
(
nest
(
block
())
(
block
())
(
let
((
dep-stamp
; collect timestamp from dependencies (or T if forced or out-of-date)
(
let
((
dep-stamp
; collect timestamp from dependencies (or T if forced or out-of-date)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment