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
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
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
Jan Moringen
asdf
Commits
55d8be11
Commit
55d8be11
authored
May 08, 2015
by
Francois-Rene Rideau
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update some documentation and comments regarding the demise of ASDF 2.
parent
572230ae
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
42 additions
and
27 deletions
+42
-27
doc/asdf.texinfo
doc/asdf.texinfo
+28
-18
header.lisp
header.lisp
+1
-1
tools/install-asdf.lisp
tools/install-asdf.lisp
+8
-3
tools/load-asdf.lisp
tools/load-asdf.lisp
+5
-5
No files found.
doc/asdf.texinfo
View file @
55d8be11
...
...
@@ -36,11 +36,11 @@ for Common Lisp programs and libraries.
You can find the latest version of this manual at
@url
{
http://common-lisp.net/project/asdf/asdf.html
}
.
ASDF Copyright @copyright
{}
2001-201
4
Daniel Barlow and contributors.
ASDF Copyright @copyright
{}
2001-201
5
Daniel Barlow and contributors.
This manual Copyright @copyright
{}
2001-201
4
Daniel Barlow and contributors.
This manual Copyright @copyright
{}
2001-201
5
Daniel Barlow and contributors.
This manual revised @copyright
{}
2009-201
4
Robert P. Goldman and Francois-Rene Rideau.
This manual revised @copyright
{}
2009-201
5
Robert P. Goldman and Francois-Rene Rideau.
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
...
...
@@ -395,8 +395,7 @@ to make sure it's all working properly. @xref{Using ASDF}.
@node Loading a pre-installed ASDF, Checking whether ASDF is loaded, Loading ASDF, Loading ASDF
@section Loading a pre-installed ASDF
Most recent Lisp implementations include a copy of ASDF 3,
or at least ASDF 2.
All actively maintained Lisp implementations now include a copy of ASDF 3.
You can usually load this copy using Common Lisp's @code
{
require
}
function.@footnote
{
NB: all implementations except GNU CLISP also accept
@code
{
(require "ASDF")
}
, @code
{
(require 'asdf)
}
and @code
{
(require :asdf)
}
.
...
...
@@ -409,7 +408,7 @@ For portability's sake, you should use @code{(require "asdf")}.
As of the writing of this manual,
the following implementations provide ASDF 3 this way:
ABCL, Allegro CL, Clozure CL, CMUCL, ECL, GNU CLISP, LispWorks, MKCL, SBCL.
ABCL, Allegro CL, C
LASP, C
lozure CL, CMUCL, ECL, GNU CLISP, LispWorks, MKCL, SBCL.
The following implementations only provide ASDF 2:
mocl, XCL.
The following implementations don't provide ASDF:
...
...
@@ -417,11 +416,11 @@ Corman CL, GCL, Genera, MCL, SCL.
The latter implementations are not actively maintained (except maybe GCL);
if some of them are ever released again, they probably will include ASDF 3.
If the implementation you are using doesn't provide
ASDF 2 or
ASDF 3,
If the implementation you are using doesn't provide
a recent
ASDF 3,
see @pxref
{
Loading ASDF,,Loading ASDF from source
}
below.
If that implementation is still actively maintained,
you may also send a bug report to your Lisp vendor and complain
about their failing to provide ASDF.
about their failing to provide
an up-to-date
ASDF.
@node Checking whether ASDF is loaded, Upgrading ASDF, Loading a pre-installed ASDF, Loading ASDF
@section Checking whether ASDF is loaded
...
...
@@ -494,11 +493,17 @@ amongst the regularly configured systems, before it compiles anything else.
@node Upgrading your implementation's ASDF, Issues with upgrading ASDF, Upgrading ASDF, Upgrading ASDF
@subsection Upgrading your implementation's ASDF
Most implementations provide a recent ASDF 3 in their latest release.
@c Now that all implementations provide ASDF 3, most issues become trivial,
@c except on CMUCL where upgrade doesn't work.
@c Most of the upgrading section might be moved to an advanced chapter
@c rather than being in an early section that will trouble the novice.
All maintained implementations now provide ASDF 3 in their latest release.
If yours doesn't, we recommend upgrading your implementation.
If the latest version of your implementation still doesn't provide ASDF,
or provides an old version, we recommend installing a recent ASDF so your implementation provides it,
as explained below.
If you want to stick to an old implementation that didn't provide ASDF or provided an old version,
we recommend installing a recent ASDF, as explained below,
into your implementation's installation directory;
thus your modified implementation will now provide ASDF 3.
If all fails, we recommend you load ASDF from source
@pxref
{
Loading ASDF,,Loading ASDF from source
}
.
...
...
@@ -562,7 +567,7 @@ at the very beginning of whatever script you are running,
before you start using ASDF to load anything else.
@item
Until all implementations provide ASDF 3 or later,
Until all implementations provide ASDF 3 or later
(now the case in May 2015)
,
it is unsafe to upgrade ASDF as part of loading a system
that depends on a more recent version of ASDF,
since the new one might shadow the old one while the old one is running,
...
...
@@ -578,7 +583,7 @@ with such code as:
(error "FOO requires ASDF ~A or later." *required-asdf-version*))
@end example
@item
Until all implementations provide ASDF 3 or later,
Until all implementations provide ASDF 3 or later
(now the case in May 2015)
,
it is unsafe for a system to transitively depend on ASDF
and not directly depend on ASDF;
if any of the system you use either depends-on asdf,
...
...
@@ -586,6 +591,11 @@ system-depends-on asdf, or transitively does,
you should also do as well.
@end itemize
Note that bugs in CMUCL and XCL prevent upgrade of ASDF.
Happily, CMUCL comes with a recent ASDF,
and XCL is more of a working demo than something you'd use seriously anyway.
@node Loading ASDF from source, , Upgrading ASDF, Loading ASDF
@section Loading ASDF from source
...
...
@@ -1265,7 +1275,7 @@ system-option := :defsystem-depends-on system-list
| module-option
| option
# These are only available since ASDF3 (actually its alpha release 2.27)
# These are only available since ASDF
3 (actually its alpha release 2.27)
system-option := :homepage string
| :bug-tracker string
| :mailto string
...
...
@@ -4375,9 +4385,9 @@ on implementations that support Unicode, and you can use reader-conditionalizati
to protect any @code
{
:encoding @emph
{
encoding
}}
statement, as in
@code
{
#
+
asdf
-
unicode :encoding #
+
asdf
-
unicode :utf
-
8
}
.
We recommend that you avoid using unprotected @code
{
:encoding
}
specifications
until after ASDF
2
.
21
or later becomes widespread
(
in April
2014
, only LispWorks lags with ASDF
2
.
019
,
and is scheduled to be updated later this year
)
.
until after ASDF
2
.
21
or later becomes widespread
.
As of May
2015
, all maintained implementations provide ASDF
3
,
so you may prudently start using this and other features without such protection
.
While it offers plenty of hooks for extension,
and one such extension is available
(
see @code
{
asdf
-
encodings
}
below
)
,
...
...
header.lisp
View file @
55d8be11
...
...
@@ -19,7 +19,7 @@
;;; http://www.opensource.org/licenses/mit-license.html on or about
;;; Monday; July 13, 2009)
;;;
;;; Copyright (c) 2001-201
4
Daniel Barlow and contributors
;;; Copyright (c) 2001-201
5
Daniel Barlow and contributors
;;;
;;; Permission is hereby granted, free of charge, to any person obtaining
;;; a copy of this software and associated documentation files (the
...
...
tools/install-asdf.lisp
View file @
55d8be11
":"
; exec cl-launch "$0" "$@" # -*- Lisp -*-
#|
Usage: make && ./tools/asdf-tools install-asdf lispworks
or make
&& l=lispworks ./tools/asdf-tool
s install-asdf
or make && cl-launch -l lispworks
bin/install-asdf-as-module
or make
l=lispwork
s install-asdf
or make && cl-launch -l lispworks
tools/install-asdf.lisp
or make
sbcl # or otherwise start your Lisp
(load "
bin/install-asdf-as-module
")
(load "
tools/install-asdf.lisp
")
This script will install the current version of ASDF
as a module pre-compiled for your implementation,
...
...
@@ -26,6 +26,11 @@ It notably doesn't work on:
* mocl, that doesn't support ASDF 3 yet.
* Corman Lisp, RMCL, Genera, that are obsolete anyway.
Note that if you're using it with LispWorks, you first have to create
a command-line executable for LispWorks this way:
echo '(hcl:save-image "lispworks-console" :environment nil)' > si.lisp
lispworks-7-0-0-x86-linux -siteinit - -init - -build si.lisp
|#
#+
gcl
...
...
tools/load-asdf.lisp
View file @
55d8be11
...
...
@@ -42,12 +42,12 @@
(
ignore-errors
(
and
(
probe-file
x
)
(
load
x
))))
(
load-and-configure-asdf
()
;; First, try to require ASDF from the implementation, if not already loaded.
;;
Most implementations provide ASDF 3.0, LispWorks still lags with ASDF 2.019,
;;
and some unmaintained implementations, or obsolete implementations or versions thereof
;; only provide ASDF 2, ASDF 1, or don't provide ASDF.
;;
All actively maintained implementations now provide ASDF 3.0;
;;
some old versions of maintained implementations, and some unmaintained
;; o
r obsolete implementations o
nly provide ASDF 2, ASDF 1, or don't provide ASDF.
;; Note that CLISP is case-sensitive, so we need to specify a lowercase string,
;; and not the keyword :asdf or symbol 'asdf;
old CLISP versions that don't provide ASDF
;; may error at compile-time if we call (require "asdf") directly.
;; and not the keyword :asdf or symbol 'asdf;
also old CLISP versions that don't
;;
provide ASDF
may error at compile-time if we call (require "asdf") directly.
(
ignore-errors
(
funcall
'require
"asdf"
))
;; If ASDF 2 isn't provided, load our ASDF from source.
;; ASDF 1 is not enough, because it won't heed our project's output-translations.
...
...
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