Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
A
asdf
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
15
Issues
15
List
Boards
Labels
Service Desk
Milestones
Merge Requests
8
Merge Requests
8
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
asdf
asdf
Commits
03bff8ee
Commit
03bff8ee
authored
Jan 04, 2014
by
Robert P. Goldman
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
ssh://common-lisp.net/project/asdf/public_html/asdf
Merge necessary because of local docstring addition.
parents
2cf1cd0c
cc377e63
Changes
17
Hide whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
73 additions
and
56 deletions
+73
-56
Makefile
Makefile
+19
-20
asdf.asd
asdf.asd
+1
-1
debian/changelog
debian/changelog
+2
-2
header.lisp
header.lisp
+1
-1
interface.lisp
interface.lisp
+1
-0
package-system.lisp
package-system.lisp
+16
-9
test/asdf-pathname-test.script
test/asdf-pathname-test.script
+13
-13
test/dll-test.lisp
test/dll-test.lisp
+2
-0
test/dll-user.lisp
test/dll-user.lisp
+2
-0
test/package-system-test.script
test/package-system-test.script
+5
-0
test/package-system-test/e.lisp
test/package-system-test/e.lisp
+3
-0
test/test-asdf.asd
test/test-asdf.asd
+0
-3
test/test-compile-file-failure.script
test/test-compile-file-failure.script
+4
-3
test/test-logical-pathname.script
test/test-logical-pathname.script
+1
-1
uiop/os.lisp
uiop/os.lisp
+1
-1
upgrade.lisp
upgrade.lisp
+1
-1
version.lisp-expr
version.lisp-expr
+1
-1
No files found.
Makefile
View file @
03bff8ee
...
...
@@ -134,32 +134,31 @@ test: test-lisp test-clean-load test-load-systems doc
test-load-systems
:
build/asdf.lisp
./test/run-tests.sh
-l
${l}
${s}
test-all-lisps
:
${MAKE}
test-load-systems
@
for
lisp
in
${lisps}
;
do
\
${MAKE}
test-clean-load test-lisp test-upgrade
l
=
$$
lisp
||
exit
1
;
\
done
test-all-lisps
:
test-load-systems test-all-clean-load test-all-lisp test-all-upgrade
# test upgrade is a very long run... This does just the regression tests
test-all-no-upgrade
:
@
for
lisp
in
${lisps}
;
do
\
${MAKE}
test-clean-load test-lisp
l
=
$$
lisp
||
exit
1
;
\
done
test-all-clean-load
:
@
for
lisp
in
${lisps}
;
do
${MAKE}
test-clean-load
l
=
$$
lisp
||
exit
1
;
done
test-all-lisp
:
@
for
lisp
in
${lisps}
;
do
${MAKE}
test-lisp
l
=
$$
lisp
||
exit
1
;
done
test-all-upgrade
:
@
for
lisp
in
${lisps}
;
do
\
${MAKE}
test-upgrade
l
=
$$
lisp
||
exit
1
;
\
done
@
for
lisp
in
${lisps}
;
do
${MAKE}
test-upgrade
l
=
$$
lisp
||
exit
1
;
done
test-all-no-upgrade
:
doc test-load-systems test-all-clean-load test-all-lisp
test-all
:
test-all-no-upgrade test-all-upgrade
test-all-lisp-no-stop
:
@
for
lisp
in
${lisps}
;
do
${MAKE}
test-lisp
l
=
$$
lisp
;
done
;
:
test-all-upgrade-no-stop
:
@
for
lisp
in
${lisps}
;
do
${MAKE}
test-upgrade
l
=
$$
lisp
;
done
;
:
test-all
:
doc test-all-lisps
test-all
-no-upgrade-no-stop
:
doc test-load-systems test-all-clean-load test-all-lisp-no-stop
test-all-no-stop
:
-
make doc
;
for
l
in
${lisps}
;
do
\
make test-clean-load test-lisp
l
=
$$
l
;
make test-upgrade
l
=
$$
l
;
\
done
;
true
test-all-no-stop
:
test-all-no-upgrade-no-stop test-all-upgrade-no-stop
test-all-no-upgrade-no-stop
:
-
make doc
;
for
l
in
${lisps}
;
do
make test-clean-load test-lisp
l
=
$$
l
;
done
;
true
extract
:
extract-all-tagged-asdf
extract-all-tagged-asdf
:
build/asdf.lisp
...
...
asdf.asd
View file @
03bff8ee
...
...
@@ -75,7 +75,7 @@
:licence
"MIT"
:description
"Another System Definition Facility"
:long-description
"ASDF builds Common Lisp software organized into defined systems."
:version
"3.1.0.3
4
"
;; to be automatically updated by make bump-version
:version
"3.1.0.3
6
"
;; to be automatically updated by make bump-version
:depends-on
()
#+
asdf3
:encoding
#+
asdf3
:utf-8
:class
#.
(
if
(
find-class
'package-system
nil
)
'package-system
'system
)
...
...
debian/changelog
View file @
03bff8ee
...
...
@@ -4,7 +4,7 @@ cl-asdf (2:3.1.1-1) unstable; urgency=low
* asdf-package-system combines the one-file, one-package, one-system paradigm
of quick-build and faslpath with the portability and robustness of ASDF 3.
* Portability: much improved support for the latest GCL 2.8.
* Robustness: Fixes and tweaks for ABCL, CLISP, ECL, SBCL/Windows.
* Robustness: Fixes and tweaks for ABCL, CLISP, ECL, SBCL/Windows
, XCL
.
Test improvements. Added missing dependencies in asdf.asd(!).
Fixes to version-satisfies (thanks to stassats) and to the file-stamp cache.
* run-program tweaked again on Windows;
...
...
@@ -20,7 +20,7 @@ cl-asdf (2:3.1.1-1) unstable; urgency=low
* ASDF3.1 feature pushed, to signal the slew of significant improvements
since initial ASDF 3.0 pre-release (i.e. version 2.27).
-- Francois-Rene Rideau <fare@tunes.org> Tue,
19 Dec 2013 15:31
:56 -0500
-- Francois-Rene Rideau <fare@tunes.org> Tue,
03 Jan 2014 15:10
:56 -0500
cl-asdf (2:3.0.3-1) unstable; urgency=low
...
...
header.lisp
View file @
03bff8ee
;;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp -*-
;;; This is ASDF 3.1.0.3
4
: Another System Definition Facility.
;;; This is ASDF 3.1.0.3
6
: Another System Definition Facility.
;;;
;;; Feedback, bug reports, and patches are all welcome:
;;; please mail to <asdf-devel@common-lisp.net>.
...
...
interface.lisp
View file @
03bff8ee
...
...
@@ -119,6 +119,7 @@
#:missing-dependency-of-version
#:circular-dependency
; errors
#:duplicate-names
#:non-toplevel-system
#:non-system-system
#:package-system-missing-package-error
#:try-recompiling
#:retry
...
...
package-system.lisp
View file @
03bff8ee
...
...
@@ -8,7 +8,7 @@
:asdf/upgrade
:asdf/component
:asdf/system
:asdf/find-system
:asdf/lisp-action
)
(
:export
#:package-system
#:register-system-packages
#:sysdef-package-system-search
#:*defpackage-forms*
#:*package-systems*
))
#:*defpackage-forms*
#:*package-systems*
#:package-system-missing-package-error
))
(
in-package
:asdf/package-system
)
(
with-upgradability
()
...
...
@@ -31,15 +31,22 @@
(
member
(
car
form
)
*defpackage-forms*
)))
(
defun
stream-defpackage-form
(
stream
)
(
loop
:for
form
=
(
read
stream
)
:when
(
defpackage-form-p
form
)
:return
form
))
(
loop
:for
form
=
(
read
stream
nil
nil
)
:while
form
:when
(
defpackage-form-p
form
)
:return
form
))
(
defun
file-defpackage-form
(
file
)
"Return the first DEFPACKAGE form in FILE."
(
with-input-file
(
f
file
)
(
stream-defpackage-form
f
)))
(
define-condition
package-system-missing-package-error
(
system-definition-error
)
((
system
:initarg
:system
:reader
error-system
)
(
pathname
:initarg
:pathname
:reader
error-pathname
))
(
:report
(
lambda
(
c
s
)
(
format
s
(
compatfmt
"~@<No package form found while ~
trying to define package-system ~A from file ~A~>"
)
(
error-system
c
)
(
error-pathname
c
)))))
(
defun
package-dependencies
(
defpackage-form
)
"Return a list of packages depended on by the package
defined in DEFPACKAGE-FORM. A package is depended upon if
...
...
@@ -76,10 +83,10 @@ otherwise return a default system name computed from PACKAGE-NAME."
system-name
(
string-downcase
package-name
)))
(
defun
package-system-file-dependencies
(
file
)
(
let*
(
(
defpackage-form
(
file-defpackage-form
file
))
(
package-dependencies
(
package-dependencies
defpackage-form
)))
(
remove
t
(
mapcar
'package-name-system
package-dependencies
)
)))
(
defun
package-system-file-dependencies
(
file
&optional
system
)
(
if-let
(
defpackage-form
(
file-defpackage-form
file
))
(
remove
t
(
mapcar
'package-name-system
(
package-dependencies
defpackage-form
)))
(
error
'package-system-missing-package-error
:system
system
:pathname
file
)))
(
defun
same-package-system-p
(
system
name
directory
subpath
dependencies
)
(
and
(
eq
(
type-of
system
)
'package-system
)
...
...
@@ -104,7 +111,7 @@ otherwise return a default system name computed from PACKAGE-NAME."
(
f
(
probe-file*
(
subpathname
dir
sub
:type
"lisp"
)
:truename
*resolve-symlinks*
)))
(
when
(
file-pathname-p
f
)
(
let
((
dependencies
(
package-system-file-dependencies
f
))
(
let
((
dependencies
(
package-system-file-dependencies
f
system
))
(
previous
(
cdr
(
system-registered-p
system
))))
(
if
(
same-package-system-p
previous
system
dir
sub
dependencies
)
previous
...
...
test/asdf-pathname-test.script
View file @
03bff8ee
...
...
@@ -4,7 +4,7 @@
(in-package :asdf-pathname-test)
(eval-when (:compile-toplevel :load-toplevel :execute)
#-
xcl
(push :asdf-test-logical-pathname *features*)
#-
(or xcl gcl)
(push :asdf-test-logical-pathname *features*)
#+xcl (push :buggy-untyped-file *features*))
;;(setf *unspecific-pathname-type* nil)
...
...
@@ -423,20 +423,20 @@
(asdf:initialize-output-translations)
(format t "output translations: ~S~%" (asdf::output-translations))
(progn
;; we're testing with unix or some emulation, are we not?
(assert-pathname-equal (resolve-location '(:home)) (truename (user-homedir-pathname)))
(assert-pathname-equal (resolve-location '("/foo" "bar" "baz")) #p"/foo/bar/baz")
(assert-pathname-equal (resolve-location '("/foo" "bar" "baz") :ensure-directory t) #p"/foo/bar/baz/")
(assert-pathname-equal (resolve-location '("/foo" "bar" "baz") :ensure-directory t :wilden t) (wilden #p"/foo/bar/baz/"))
(assert-pathname-equal (resolve-location '("/foo" "bar" "baz") :ensure-directory nil :wilden t) (wilden #p"/foo/bar/"))
(assert-pathname-equal (resolve-location '("/foo" "bar" :**/ "baz" #p"*.*") :ensure-directory nil :wilden t) #p"/foo/bar/**/baz/*.*")
;; we're testing with unix or some emulation, are we not?
(assert (directory-pathname-p (system-source-directory (find-system :test-asdf/test-source-directory-1))))
(assert (directory-pathname-p (system-source-directory (find-system :test-asdf/test-source-directory-2))))
(assert-pathname-equal (resolve-location '(:home)) (truename (user-homedir-pathname)))
(assert-pathname-equal (resolve-location '("/foo" "bar" "baz")) #p"/foo/bar/baz")
(assert-pathname-equal (resolve-location '("/foo" "bar" "baz") :ensure-directory t) #p"/foo/bar/baz/")
(assert-pathname-equal (resolve-location '("/foo" "bar" "baz") :ensure-directory t :wilden t) (wilden #p"/foo/bar/baz/"))
(assert-pathname-equal (resolve-location '("/foo" "bar" "baz") :ensure-directory nil :wilden t) (wilden #p"/foo/bar/"))
(assert-pathname-equal (resolve-location '("/foo" "bar" :**/ "baz" #p"*.*") :ensure-directory nil :wilden t) #p"/foo/bar/**/baz/*.*")
(or (test-component-pathnames :delete-host t :support-string-pathnames nil)
(leave-test "test failed" 1)))
(assert (directory-pathname-p (system-source-directory (find-system :test-asdf/test-source-directory-1))))
(assert (directory-pathname-p (system-source-directory (find-system :test-asdf/test-source-directory-2))))
#-gcl
(assert (test-component-pathnames :delete-host t :support-string-pathnames nil))
#|
(load "LIBRARY:de;setf;utility;asdf;cp-test.lisp")
...
...
test/dll-test.lisp
View file @
03bff8ee
(
defpackage
:test-asdf/dll-test
(
:use
))
;; dummy, for package-system dependencies.
#+
ecl
(
ffi:clines
"
extern int sample_function();
...
...
test/dll-user.lisp
View file @
03bff8ee
(
defpackage
:test-asdf/dll-user
(
:use
))
;; dummy, for package-system dependencies.
(
in-package
:test-package
)
(
ffi:def-function
"sample_function"
()
:returning
:int
)
test/package-system-test.script
View file @
03bff8ee
(register-directory (subpathname *test-directory* "package-system-test/"))
(load-system :package-system-test/a/x)
(load-system :package-system-test/d)
(signals package-system-missing-package-error (load-system :package-system-test/e))
;; No such file.
(signals missing-component (load-system :package-system-test/f))
test/package-system-test/e.lisp
0 → 100644
View file @
03bff8ee
;; This file is missing a defpackage form, and loading it as a package-system should trigger an error.
(
in-package
:asdf-test
)
test/test-asdf.asd
View file @
03bff8ee
...
...
@@ -71,6 +71,3 @@
(
defsystem
:test-asdf/bundle-2
:depends-on
(
:test-asdf/bundle-1
)
:components
((
:file
"file2"
)))
(
defsystem
:test-asdf/dll-test
:components
((
:file
"dll-test"
)))
(
defsystem
:test-asdf/dll-user
:components
((
:file
"dll-user"
)))
test/test-compile-file-failure.script
View file @
03bff8ee
...
...
@@ -4,11 +4,12 @@
:components ((:file "test-compile-file-failure")))
(assert (handler-case
(let ((*compile-file-failure-behaviour* :warn))
(load-system 'test-compile-file-failure :force t)
t)
(let ((*compile-file-failure-behaviour* :warn))
(load-system 'test-compile-file-failure :force t)
t)
(compile-file-error () nil)))
#-gcl
(assert (handler-case
(let ((*compile-file-failure-behaviour* :error))
(load-system 'test-compile-file-failure :force t)
...
...
test/test-logical-pathname.script
View file @
03bff8ee
...
...
@@ -17,7 +17,7 @@
(translate-logical-pathname "ASDF:test;test-logical-pathname.asd")
(truename "ASDF:test;test-logical-pathname.asd"))
#+
xcl (leave-test "GCL 2.6
doesn't do Logical pathnames well enough" 0)
#+
(or gcl xcl) (leave-test "This implementation
doesn't do Logical pathnames well enough" 0)
(DBG "Test logical pathnames in central registry")
(setf *central-registry* '(#p"ASDF:test;"))
...
...
uiop/os.lisp
View file @
03bff8ee
...
...
@@ -267,7 +267,7 @@ suitable for use as a directory name to segregate Lisp FASLs, C dynamic librarie
(
defun
chdir
(
x
)
"Change current directory, as per POSIX chdir(2), to a given pathname object"
(
if-let
(
x
(
pathname
x
))
(
or
#+
abcl
(
java:jstatic
"setProperty"
"java.lang.System"
"user.dir"
(
na
tive-na
mestring
x
))
(
or
#+
abcl
(
java:jstatic
"setProperty"
"java.lang.System"
"user.dir"
(
namestring
x
))
#+
allegro
(
excl:chdir
x
)
#+
clisp
(
ext:cd
x
)
#+
clozure
(
setf
(
ccl:current-directory
)
x
)
...
...
upgrade.lisp
View file @
03bff8ee
...
...
@@ -64,7 +64,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 branch, on top 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
"3.1.0.3
4
"
)
(
asdf-version
"3.1.0.3
6
"
)
(
existing-version
(
asdf-version
)))
(
setf
*asdf-version*
asdf-version
)
(
when
(
and
existing-version
(
not
(
equal
asdf-version
existing-version
)))
...
...
version.lisp-expr
View file @
03bff8ee
"3.1.0.3
4
"
"3.1.0.3
6
"
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