Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
asdf
asdf
Commits
c19a17d8
Commit
c19a17d8
authored
Mar 29, 2013
by
Francois-Rene Rideau
Browse files
2.32.34: error non-toplevel-system when trying to define a system as a child.
parent
1d5ca36b
Changes
6
Hide whitespace changes
Inline
Side-by-side
asdf.asd
View file @
c19a17d8
...
...
@@ -74,7 +74,7 @@
:licence
"MIT"
:description
"Another System Definition Facility"
:long-description
"ASDF builds Common Lisp software organized into defined systems."
:version
"2.32.3
3
"
;; to be automatically updated by make bump-version
:version
"2.32.3
4
"
;; to be automatically updated by make bump-version
:depends-on
()
#+
asdf3
:encoding
#+
asdf3
:utf-8
;; For most purposes, asdf itself specially counts as a builtin system.
...
...
defsystem.lisp
View file @
c19a17d8
...
...
@@ -11,7 +11,7 @@
#:defsystem
#:register-system-definition
#:class-for-type
#:*default-component-class*
#:determine-system-directory
#:parse-component-form
#:duplicate-names
#:sysdef-error-component
#:check-component-input
))
#:duplicate-names
#:non-toplevel-system
#:sysdef-error-component
#:check-component-input
))
(
in-package
:asdf/defsystem
)
;;; Pathname
...
...
@@ -71,6 +71,13 @@
(
format
s
(
compatfmt
"~@<Error while defining system: multiple components are given same name ~S~@:>"
)
(
duplicate-names-name
c
)))))
(
define-condition
non-toplevel-system
(
system-definition-error
)
((
parent
:initarg
:parent
:reader
non-toplevel-system-parent
)
(
name
:initarg
:name
:reader
non-toplevel-system-name
))
(
:report
(
lambda
(
c
s
)
(
format
s
(
compatfmt
"~@<Error while defining system: component ~S claims to have a system ~S as a child~@:>"
)
(
non-toplevel-system-parent
c
)
(
non-toplevel-system-name
c
)))))
(
defun
sysdef-error-component
(
msg
type
name
value
)
(
sysdef-error
(
strcat
msg
(
compatfmt
"~&~@<The value specified for ~(~A~) ~A is ~S~@:>"
))
type
name
value
))
...
...
@@ -140,7 +147,8 @@
(
class-for-type
parent
type
))))
(
error
'duplicate-names
:name
name
))
(
when
do-first
(
error
"DO-FIRST is not supported anymore as of ASDF 3"
))
(
let*
((
args
`
(
:name
,
(
coerce-name
name
)
(
let*
((
name
(
coerce-name
name
))
(
args
`
(
:name
,
name
:pathname
,
pathname
,@
(
when
parent
`
(
:parent
,
parent
))
,@
(
remove-plist-keys
...
...
@@ -148,16 +156,13 @@
:perform
:explain
:output-files
:operation-done-p
:weakly-depends-on
:depends-on
:serial
)
rest
)))
(
component
(
find-component
parent
name
)))
(
when
weakly-depends-on
;; ASDF4: deprecate this feature and remove it.
(
appendf
depends-on
(
remove-if
(
complement
#'
(
lambda
(
x
)
(
find-system
x
nil
)))
weakly-depends-on
)))
(
when
previous-serial-component
(
push
previous-serial-component
depends-on
))
(
component
(
find-component
parent
name
))
(
class
(
class-for-type
parent
type
)))
(
when
(
and
parent
(
subtypep
class
'system
))
(
error
'non-toplevel-system
:parent
parent
:name
name
))
(
if
component
; preserve identity
(
apply
'reinitialize-instance
component
args
)
(
setf
component
(
apply
'make-instance
(
class
-for-type
parent
type
)
args
)))
(
setf
component
(
apply
'make-instance
class
args
)))
(
component-pathname
component
)
; eagerly compute the absolute pathname
(
let
((
sysfile
(
system-source-file
(
component-system
component
))))
;; requires the previous
(
when
(
and
(
typep
component
'system
)
(
not
bspp
))
...
...
@@ -177,6 +182,12 @@
:collect
c
:when
serial
:do
(
setf
previous-component
name
)))
(
compute-children-by-name
component
))
(
when
previous-serial-component
(
push
previous-serial-component
depends-on
))
(
when
weakly-depends-on
;; ASDF4: deprecate this feature and remove it.
(
appendf
depends-on
(
remove-if
(
complement
#'
(
lambda
(
x
)
(
find-system
x
nil
)))
weakly-depends-on
)))
;; Used by POIU. ASDF4: rename to component-depends-on?
(
setf
(
component-sideway-dependencies
component
)
depends-on
)
(
%refresh-component-inline-methods
component
rest
)
...
...
header.lisp
View file @
c19a17d8
;;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp -*-
;;; This is ASDF 2.32.3
3
: Another System Definition Facility.
;;; This is ASDF 2.32.3
4
: Another System Definition Facility.
;;;
;;; Feedback, bug reports, and patches are all welcome:
;;; please mail to <asdf-devel@common-lisp.net>.
...
...
interface.lisp
View file @
c19a17d8
...
...
@@ -116,7 +116,7 @@
#:missing-dependency
#:missing-dependency-of-version
#:circular-dependency
; errors
#:duplicate-names
#:duplicate-names
#:non-toplevel-system
#:try-recompiling
#:retry
...
...
upgrade.lisp
View file @
c19a17d8
...
...
@@ -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.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
(
asdf-version
"2.32.3
3
"
)
(
asdf-version
"2.32.3
4
"
)
(
existing-version
(
asdf-version
)))
(
setf
*asdf-version*
asdf-version
)
(
when
(
and
existing-version
(
not
(
equal
asdf-version
existing-version
)))
...
...
version.lisp-expr
View file @
c19a17d8
"2.32.3
3
"
"2.32.3
4
"
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new 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