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
9
Merge Requests
9
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
32355c3f
Commit
32355c3f
authored
Sep 07, 2013
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
parents
cfa4b2d5
c0fe7767
Changes
13
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
131 additions
and
85 deletions
+131
-85
Makefile
Makefile
+5
-0
asdf.asd
asdf.asd
+1
-1
debian/changelog
debian/changelog
+9
-0
doc/index.html
doc/index.html
+4
-2
header.lisp
header.lisp
+1
-1
test/script-support.lisp
test/script-support.lisp
+7
-1
test/test-configuration.script
test/test-configuration.script
+51
-51
test/test-multiple.script
test/test-multiple.script
+11
-5
test/test-run-program.script
test/test-run-program.script
+33
-15
test/test-utilities.script
test/test-utilities.script
+5
-4
uiop/run-program.lisp
uiop/run-program.lisp
+2
-3
upgrade.lisp
upgrade.lisp
+1
-1
version.lisp-expr
version.lisp-expr
+1
-1
No files found.
Makefile
View file @
32355c3f
...
...
@@ -163,6 +163,11 @@ debian-package: mrproper
:
$
${
RELEASE
:
=
"
$$
(git tag -l '3.[0-9].[0-9]' | tail -n 1)"
}
;
echo
building package version
$$
RELEASE
;
\
git-buildpackage
--git-debian-branch
=
release
--git-upstream-branch
=
release
--git-upstream-tag
=
$$
RELEASE
--git-tag
--git-retag
--git-ignore-branch
debian-package-from-master
:
mrproper
:
$
${
RELEASE
:
=
"
$$
(git tag -l '3.[0-9].[0-9]' | tail -n 1)"
}
;
echo
building package version
$$
RELEASE
;
\
git-buildpackage
--git-debian-branch
=
master
--git-upstream-branch
=
master
--git-upstream-tag
=
$$
RELEASE
--git-tag
--git-retag
--git-ignore-branch
# Replace SBCL's ASDF with the current one. -- NOT recommended now that SBCL has ASDF2.
# for casual users, just use (asdf:load-system :asdf)
replace-sbcl-asdf
:
build/asdf.lisp
...
...
asdf.asd
View file @
32355c3f
...
...
@@ -74,7 +74,7 @@
:licence
"MIT"
:description
"Another System Definition Facility"
:long-description
"ASDF builds Common Lisp software organized into defined systems."
:version
"3.0.2.
4
"
;; to be automatically updated by make bump-version
:version
"3.0.2.
5
"
;; 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.
...
...
debian/changelog
View file @
32355c3f
cl-asdf (2:3.0.2.4-1) unstable; urgency=low
UIOP:DIRECTORY* fixed to NOT follow symbolic links on LispWorks.
Fix handling of :at key in :read-file-form.
Fix package issue for system-definition-error (lp #1206173).
Some docstring updates. Also documentation updates.
-- Francois-Rene Rideau <fare@tunes.org> Tue, 03 Sep 2013 12:17:21 -0500
cl-asdf (2:3.0.2-1) unstable; urgency=low
Improve support for CMUCL, ABCL, restore MCL support.
...
...
doc/index.html
View file @
32355c3f
...
...
@@ -115,7 +115,8 @@
<tt>
:asdf
</tt>
,
<tt>
"ASDF"
</tt>
or
<tt>
'asdf
</tt>
as an argument.)
All of these implementations provide at least ASDF 2,
and a few of them aready provide ASDF 3
(
<tt>
abcl
</tt>
,
<tt>
allegro
</tt>
,
<tt>
ccl
</tt>
,
<tt>
cmucl
</tt>
,
<tt>
ecl
</tt>
).
(
<tt>
abcl
</tt>
,
<tt>
allegro
</tt>
,
<tt>
ccl
</tt>
,
<tt>
cmucl
</tt>
,
<tt>
ecl
</tt>
,
<tt>
sbcl
</tt>
).
Hopefully soon all will follow suit;
but in the meantime, you can download ASDF 3,
and use
<tt>
(asdf:load-system :asdf)
</tt>
...
...
@@ -324,7 +325,8 @@ Peter Graves <gnooth@gmail.com>
<h3>
What is happening
</h3>
<dl>
<dt>
Summer 2013
</dt>
<dd>
Fran
ç
ois-Ren
é
Rideau has resigned as maintainer.
<dd>
Fran
ç
ois-Ren
é
Rideau has resigned as maintainer
after releasing ASDF 3.0.1.
Robert P. Goldman is interim maintainer until someone more gifted,
charming, dedicated, and better-looking can be secured to fill the role.
</dd>
<dt>
In February 2013
</dt>
...
...
header.lisp
View file @
32355c3f
;;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp -*-
;;; This is ASDF 3.0.2.
4
: Another System Definition Facility.
;;; This is ASDF 3.0.2.
5
: Another System Definition Facility.
;;;
;;; Feedback, bug reports, and patches are all welcome:
;;; please mail to <asdf-devel@common-lisp.net>.
...
...
test/script-support.lisp
View file @
32355c3f
...
...
@@ -27,7 +27,7 @@ Some constraints:
#:leave-test
#:def-test-system
#:action-name
#:in-plan-p
#:test-source
#:test-fasl
#:resolve-output
#:output-location
#:quietly
))
#:quietly
#:join-namestrings
))
(
in-package
:asdf-test
)
...
...
@@ -601,6 +601,12 @@ is bound, write a message and exit on an error. If
(
assert
(
asymval
'
#:*file1*
:test-package
))
(
assert
(
asymval
'
#:*file3*
:test-package
))))
(
defun
join-namestrings
(
namestrings
)
(
with-output-to-string
(
s
)
(
loop
:with
separator
=
(
acall
:inter-directory-separator
)
:for
(
n
.
morep
)
:on
namestrings
:do
(
format
s
"~A~@[~C~]"
n
(
and
morep
separator
)))))
;; These are shorthands for interactive debugging of test scripts:
(
!a
common-lisp-user::debug-asdf
debug-asdf
...
...
test/test-configuration.script
View file @
32355c3f
;;; -*- Lisp -*-
(in-package :asdf)
(use-package :asdf-test)
#+gcl2.6 (defmacro with-standard-io-syntax (&body body) `(progn ,@body))
...
...
@@ -63,52 +61,54 @@
:if-does-not-exist :create)
(format s "(defsystem :foo~D)~%" i))))
(progn
(assert-equal (asdf::parse-output-translations-string "/foo:/bar::/baz:/quux")
'(:output-translations ("/foo" "/bar") :inherit-configuration
("/baz" "/quux")))
(assert-equal (asdf::parse-output-translations-string "/:")
'(:output-translations ("/" nil) :ignore-inherited-configuration))
(assert-equal (asdf::parse-output-translations-string "/::")
'(:output-translations ("/" nil) :inherit-configuration))
(assert-equal (asdf::parse-output-translations-string "/:/")
'(:output-translations ("/" "/") :ignore-inherited-configuration))
(assert-equal (asdf::parse-output-translations-string
"(:output-translations (\"/\" \"/\") :ignore-inherited-configuration)")
'(:output-translations ("/" "/") :ignore-inherited-configuration))
(create-asd-files)
(create-conf-files)
(format t "~&subdirectories of dir2/: ~S~%" (subdirectories (under-tmp-directory "dir2/")))
(assert-equal 2 (length (subdirectories (under-tmp-directory "dir2/"))))
(format t "~&subdirectories of dir5/: ~S~%" (subdirectories (under-tmp-directory "dir5/")))
(assert-equal 2 (length (subdirectories (under-tmp-directory "dir5/"))))
(initialize-source-registry
`(:source-registry (:include ,(under-tmp-directory "conf.d/"))
(:include ,(under-tmp-directory "dir5/"))
(:include ,(under-tmp-directory "dir8/"))
(:include ,(under-tmp-directory "dir9/dira/"))
:ignore-inherited-configuration))
(format t "~&Source Registry: ~S~%"
asdf::*source-registry*)
(assert (find-system :foo0 nil))
(assert (find-system :foo1 nil))
(assert (find-system :foo2 nil))
(assert (find-system :foo3 nil))
(assert (find-system :foo4 nil))
(assert (not (find-system :foo5 nil)))
(assert (find-system :foo6 nil))
(assert (find-system :foo7 nil))
(assert (find-system :foo8 nil))
(assert (not (find-system :foo9 nil)))
(format t "~&A: ~S~%B: ~S~%"
(namestring (system-relative-pathname :foo3 "bar/baz.lisp"))
(under-tmp-directory "dir2/bar/baz.lisp"))
(assert-equal (namestring (system-relative-pathname :foo3 "bar/baz.lisp"))
(under-tmp-directory "dir2/bar/baz.lisp")))
(assert-equal (asdf::parse-output-translations-string
(join-namestrings '("/foo" "/bar" "" "/baz" "/quux")))
'(:output-translations ("/foo" "/bar") :inherit-configuration
("/baz" "/quux")))
(assert-equal (asdf::parse-output-translations-string
(join-namestrings '("/" "")))
'(:output-translations ("/" nil) :ignore-inherited-configuration))
(assert-equal (asdf::parse-output-translations-string
(join-namestrings '("/" "" "")))
'(:output-translations ("/" nil) :inherit-configuration))
(assert-equal (asdf::parse-output-translations-string
(join-namestrings '("/" "/")))
'(:output-translations ("/" "/") :ignore-inherited-configuration))
(assert-equal (asdf::parse-output-translations-string
"(:output-translations (\"/\" \"/\") :ignore-inherited-configuration)")
'(:output-translations ("/" "/") :ignore-inherited-configuration))
(create-asd-files)
(create-conf-files)
(format t "~&subdirectories of dir2/: ~S~%" (subdirectories (under-tmp-directory "dir2/")))
(assert-equal 2 (length (subdirectories (under-tmp-directory "dir2/"))))
(format t "~&subdirectories of dir5/: ~S~%" (subdirectories (under-tmp-directory "dir5/")))
(assert-equal 2 (length (subdirectories (under-tmp-directory "dir5/"))))
(initialize-source-registry
`(:source-registry (:include ,(under-tmp-directory "conf.d/"))
(:include ,(under-tmp-directory "dir5/"))
(:include ,(under-tmp-directory "dir8/"))
(:include ,(under-tmp-directory "dir9/dira/"))
:ignore-inherited-configuration))
(format t "~&Source Registry: ~S~%"
asdf::*source-registry*)
(assert (find-system :foo0 nil))
(assert (find-system :foo1 nil))
(assert (find-system :foo2 nil))
(assert (find-system :foo3 nil))
(assert (find-system :foo4 nil))
(assert (not (find-system :foo5 nil)))
(assert (find-system :foo6 nil))
(assert (find-system :foo7 nil))
(assert (find-system :foo8 nil))
(assert (not (find-system :foo9 nil)))
(format t "~&A: ~S~%B: ~S~%"
(namestring (system-relative-pathname :foo3 "bar/baz.lisp"))
(under-tmp-directory "dir2/bar/baz.lisp"))
(assert-equal (namestring (system-relative-pathname :foo3 "bar/baz.lisp"))
(under-tmp-directory "dir2/bar/baz.lisp"))
test/test-multiple.script
View file @
32355c3f
...
...
@@ -5,11 +5,17 @@
(defparameter asd2 (subpathname tmp "test-multiple-too.asd"))
(defparameter file4 (test-fasl "file4"))
(setf *central-registry* `(,*test-directory* ,tmp))
(run-program
(format nil "ln -sf ~A ~A"
(native-namestring asd)
(native-namestring asd2)))
(oos 'load-source-op 'test-multiple-too)
;; Don't rely on ln -s on Windows
(cond
((os-unix-p)
(run-program
(format nil "ln -sf ~A ~A"
(native-namestring asd)
(native-namestring asd2)))
(oos 'load-source-op 'test-multiple-too))
(t
(oos 'load-source-op 'test-multiple)))
(assert (asymval :*file3* :test-package))
(load-system 'test-multiple-free)
(assert (probe-file* file4))
test/test-run-program.script
View file @
32355c3f
;; -*- Lisp -*-
(declaim (optimize (debug 3) (safety 3)))
(DBG "Testing echo ok 1 via run-program as a list")
(assert-equal '("ok 1") (run-program '("echo" "ok" "1") :output :lines))
(DBG "Testing echo ok 1 via run-program as a string")
(assert-equal '("ok 1") (run-program "echo ok 1" :output :lines))
(unless (os-unix-p)
(leave-test "The rest of this test is only supposed to work on Unix"))
;; (unless (os-unix-p) (leave-test "The rest of this test is only supposed to work on Unix"))
;;; test asdf run-shell-command function
(setf *verbose-out* nil)
(
assert-equal 1 (run-shell-command "false")
)
(
DBG "Testing true via run-shell-command"
)
(assert-equal 0 (run-shell-command "true"))
(DBG "Testing false via run-shell-command")
(assert-equal 1 (run-shell-command "false"))
(DBG "Testing bad shell command via run-shell-command")
(unless (< 0 (run-shell-command "./bad-shell-command"))
(error "Failed to capture exit status indicating shell command failure."))
(unless (equal 0 (run-shell-command "./good-shell-command"))
(error "Failed to capture exit status indicating shell command failure."))
#+asdf-unix
(progn
(DBG "Testing good shell command in current directory via run-shell-command")
(unless (equal 0 (run-shell-command "./good-shell-command"))
(error "Failed to capture exit status indicating shell command success.")))
;; On Windows, normalize away CRLF into jut the unixy LF.
(defun remove-cr (x) (remove (code-char 13) x))
(DBG "Testing awkward legacy output capture via run-shell-command")
(let ((ok1 (format nil "; $ echo ok 1~%ok 1~%")))
(assert-equal
(with-output-to-string (s)
(let ((*verbose-out* s))
(run-shell-command "echo ~A 1" "ok")))
(remove-cr
(with-output-to-string (s)
(let ((*verbose-out* s))
(run-shell-command "echo ~A 1" "ok"))))
ok1)
#-ecl
(assert-equal
(with-output-to-string (s)
(let ((*verbose-out* t)
(*standard-output* s))
(let ((status (run-shell-command "echo ok ~D" 1)))
(unless (zerop status)
(error "Didn't get good exit status.")))))
(remove-cr
(with-output-to-string (s)
(let ((*verbose-out* t)
(*standard-output* s))
(let ((status (run-shell-command "echo ok ~D" 1)))
(unless (zerop status)
(error "Didn't get good exit status."))))))
ok1))
;; NB1: run-shell-command is deprecated. Use run-program instead.
;; NB2: we do NOT support stderr capture to *verbose-out* anymore in run-shell-command.
;; If you want 2>&1 redirection, you know where to find it.
(assert-equal '("ok 1") (run-program "echo ok 1" :output :lines))
(assert-equal "ok 1" (run-program '("echo" "ok 1") :output :line))
(assert-equal '(:ok 1) (run-program '("echo" ":ok 1") :output :forms))
(assert-equal (format nil "ok 1~%") (r
un-program '("echo" "ok 1") :output :string
))
(assert-equal (format nil "ok 1~%") (r
emove-cr (run-program '("echo" "ok 1") :output :string)
))
;; this test checks for a problem there was in allegro -- :output :interactive
;; would try to open T as a stream for INPUT.
(assert-equal 0 (run-program "true" :force-shell t :output :interactive))
...
...
test/test-utilities.script
View file @
32355c3f
...
...
@@ -42,16 +42,17 @@
(assert
(not (version-satisfies (asdf-version) "666")))
(assert-pathnames-equal
(split-native-pathnames-string
"foo:bar"
)
(split-native-pathnames-string
(join-namestrings '("foo" "bar"))
)
'(#p"foo" #p"bar"))
(assert-pathnames-equal
(split-native-pathnames-string
"foo:bar"
:ensure-directory t)
(split-native-pathnames-string
(join-namestrings '("foo" "bar"))
:ensure-directory t)
'(#p"foo/" #p"bar/"))
(assert-pathnames-equal
(split-native-pathnames-string
"/foo:/bar"
:want-absolute t)
(split-native-pathnames-string
(join-namestrings '("/foo" "/bar"))
:want-absolute t)
'(#p"/foo" #p"/bar"))
(assert-pathnames-equal
(split-native-pathnames-string "/foo:/bar" :want-absolute t :ensure-directory t)
(split-native-pathnames-string (join-namestrings '("/foo" "/bar"))
:want-absolute t :ensure-directory t)
'(#p"/foo/" #p"/bar/"))
(assert-equal
(mapcar 'location-function-p
...
...
uiop/run-program.lisp
View file @
32355c3f
...
...
@@ -316,9 +316,8 @@ EXTERNAL-FORMAT for the stream passed to the OUTPUT processor."
#-
(
or
allegro
clozure
)
(
list
"cmd"
"/c"
command
))
#+
os-windows
(
list
#+
(
or
allegro
clozure
)
(
escape-windows-command
command
)
#-
(
or
allegro
clozure
)
command
)))
#+
(
and
clozure
os-windows
)
(
command
(
list
command
))
#+
allegro
(
escape-windows-command
command
)
#-
allegro
command
)))
(
process*
(
multiple-value-list
#+
allegro
...
...
upgrade.lisp
View file @
32355c3f
...
...
@@ -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
"3.0.2.
4
"
)
(
asdf-version
"3.0.2.
5
"
)
(
existing-version
(
asdf-version
)))
(
setf
*asdf-version*
asdf-version
)
(
when
(
and
existing-version
(
not
(
equal
asdf-version
existing-version
)))
...
...
version.lisp-expr
View file @
32355c3f
"3.0.2.
4
"
"3.0.2.
5
"
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