Raymond Toy pushed to branch master at cmucl / cmucl
Commits:
-
aba5f454
by Raymond Toy at 2017-10-07T09:00:19-07:00
4 changed files:
- src/contrib/asdf/asdf.lisp
- src/contrib/asdf/doc/asdf.html
- src/contrib/asdf/doc/asdf.info
- src/contrib/asdf/doc/asdf.pdf
Changes:
... | ... | @@ -31,7 +31,7 @@ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION |
31 | 31 |
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
32 | 32 |
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
33 | 33 |
-->
|
34 |
-<!-- Created by GNU Texinfo 6.3, http://www.gnu.org/software/texinfo/ -->
|
|
34 |
+<!-- Created by GNU Texinfo 6.1, http://www.gnu.org/software/texinfo/ -->
|
|
35 | 35 |
<head>
|
36 | 36 |
<title>ASDF Manual</title>
|
37 | 37 |
|
... | ... | @@ -235,6 +235,7 @@ ul.no-bullet {list-style: none} |
235 | 235 |
<ul class="no-bullet">
|
236 | 236 |
<li><a name="toc-_0060_0060My-Common-Lisp-implementation-comes-with-an-outdated-version-of-ASDF_002e-What-to-do_003f_0027_0027" href="#My-Common-Lisp-implementation-comes-with-an-outdated-version-of-ASDF_002e-What-to-do_003f">13.4.1 “My Common Lisp implementation comes with an outdated version of ASDF. What to do?”</a></li>
|
237 | 237 |
<li><a name="toc-_0060_0060I_0027m-a-Common-Lisp-implementation-vendor_002e-When-and-how-should-I-upgrade-ASDF_003f_0027_0027" href="#I_0027m-a-Common-Lisp-implementation-vendor_002e-When-and-how-should-I-upgrade-ASDF_003f">13.4.2 “I’m a Common Lisp implementation vendor. When and how should I upgrade ASDF?”</a></li>
|
238 |
+ <li><a name="toc-After-upgrading-ASDF_002c-ASDF-_0028and-Quicklisp_0029-can_0027t-find-my-systems" href="#After-upgrading-ASDF">13.4.3 After upgrading ASDF, ASDF (and Quicklisp) can’t find my systems</a></li>
|
|
238 | 239 |
</ul></li>
|
239 | 240 |
<li><a name="toc-Issues-with-configuring-ASDF-1" href="#Issues-with-configuring-ASDF">13.5 Issues with configuring ASDF</a>
|
240 | 241 |
<ul class="no-bullet">
|
... | ... | @@ -276,7 +277,7 @@ ul.no-bullet {list-style: none} |
276 | 277 |
<a name="Top"></a>
|
277 | 278 |
<a name="ASDF_003a-Another-System-Definition-Facility"></a>
|
278 | 279 |
<h1 class="top">ASDF: Another System Definition Facility</h1>
|
279 |
-<p>Manual for Version 3.2.1
|
|
280 |
+<p>Manual for Version 3.3.0
|
|
280 | 281 |
</p>
|
281 | 282 |
|
282 | 283 |
<p>This manual describes ASDF, a system definition facility
|
... | ... | @@ -353,16 +354,19 @@ ASDF is <em>not</em> a tool for library and system <em>installation</em>; |
353 | 354 |
it plays a role like <code>make</code> or <code>ant</code>, not like a package manager.
|
354 | 355 |
In particular, ASDF should not to be confused with Quicklisp or ASDF-Install,
|
355 | 356 |
that attempt to find and download ASDF systems for you.
|
356 |
-Despite what the name might suggest, ASDF-Install is not part of ASDF, but a separate piece of software.
|
|
357 |
+Despite what the name might suggest,
|
|
358 |
+ASDF-Install was never a part of ASDF, it was a separate piece of software.
|
|
357 | 359 |
ASDF-Install is also unmaintained and obsolete.
|
358 | 360 |
We recommend you use Quicklisp
|
359 | 361 |
(<a href="http://www.quicklisp.org/">http://www.quicklisp.org/</a>) instead,
|
360 | 362 |
a Common Lisp package manager which works well and is being actively maintained.
|
361 | 363 |
If you want to download software from version control instead of tarballs,
|
362 |
-so you may more easily modify it, we recommend clbuild (<a href="http://common-lisp.net/project/clbuild/">http://common-lisp.net/project/clbuild/</a>).
|
|
363 |
-We recommend <samp>~/common-lisp/</samp>
|
|
364 |
-as a place into which to install Common Lisp software;
|
|
365 |
-starting with ASDF 3.1.2, it is included in the default source-registry configuration.
|
|
364 |
+so you may more easily modify it,
|
|
365 |
+we recommend clbuild (<a href="http://common-lisp.net/project/clbuild/">http://common-lisp.net/project/clbuild/</a>).
|
|
366 |
+As for where on your filesystem to install Common Lisp software,
|
|
367 |
+we recommend subdirectories of <samp>~/common-lisp/</samp>:
|
|
368 |
+starting with ASDF 3.1.2 (2014), this hierarchy is included
|
|
369 |
+in the default source-registry configuration.
|
|
366 | 370 |
</p>
|
367 | 371 |
<p>Finally, note that this manual is incomplete.
|
368 | 372 |
All the bases are covered,
|
... | ... | @@ -511,8 +515,9 @@ before you contact us and raise an issue. |
511 | 515 |
<h3 class="section">3.3 Upgrading ASDF</h3>
|
512 | 516 |
|
513 | 517 |
<p>If your implementation already provides ASDF 3 or later (and it should),
|
514 |
-but you want a more recent ASDF version than your implementation provides,
|
|
515 |
-then you just need to ensure the more recent ASDF is installed in a configured path, like any other system.
|
|
518 |
+but you want a more recent ASDF version than your implementation provides, then
|
|
519 |
+you just need to ensure the more recent ASDF is installed in a configured path,
|
|
520 |
+like any other system.
|
|
516 | 521 |
We recommend you download an official tarball or checkout a release from git into
|
517 | 522 |
<samp>~/common-lisp/asdf/</samp>.
|
518 | 523 |
(see <a href="#Configuring-ASDF-to-find-your-systems">Configuring ASDF to find your systems</a>).
|
... | ... | @@ -532,15 +537,18 @@ see <a href="#Replacing-your-implementation_0027s-ASDF">Replacing your implement |
532 | 537 |
<h3 class="section">3.4 Replacing your implementation’s ASDF</h3>
|
533 | 538 |
|
534 | 539 |
<p>All maintained implementations now provide ASDF 3 in their latest release.
|
535 |
-If your doesn’t, we recommend you upgrade it.
|
|
540 |
+If yours doesn’t, we recommend you upgrade it.
|
|
536 | 541 |
</p>
|
537 |
-<p>Now, if you insist on using an old implementation that didn’t provide ASDF or provided an old version,
|
|
542 |
+<p>Now, if you insist on using an old implementation
|
|
543 |
+that didn’t provide ASDF or provided an old version,
|
|
538 | 544 |
we recommend installing a recent ASDF, as explained below,
|
539 | 545 |
into your implementation’s installation directory.
|
540 | 546 |
Thus your modified implementation will now provide ASDF 3.
|
541 |
-This requires proper write permissions and may necessitate execution as a system administrator.
|
|
547 |
+This requires proper write permissions and
|
|
548 |
+may necessitate execution as a system administrator.
|
|
542 | 549 |
</p>
|
543 |
-<p>The ASDF source repository contains a tool to help you upgrade your implementation’s ASDF.
|
|
550 |
+<p>The ASDF source repository contains a tool to
|
|
551 |
+help you upgrade your implementation’s ASDF.
|
|
544 | 552 |
You can invoke it from the shell command-line as
|
545 | 553 |
<code>tools/asdf-tools install-asdf lispworks</code>
|
546 | 554 |
(where you can replace <code>lispworks</code> by the name of the relevant implementation),
|
... | ... | @@ -681,17 +689,34 @@ may already have configured system-managed libraries for you. |
681 | 689 |
|
682 | 690 |
|
683 | 691 |
<p>Novices may skip this section.
|
692 |
+Please <em>do not</em> use the central-registry if you are a novice,
|
|
693 |
+and <em>do not</em> instruct novices to use the central-registry.
|
|
684 | 694 |
</p>
|
685 | 695 |
<p>The old way to configure ASDF to find your systems is by
|
686 | 696 |
<code>push</code>ing directory pathnames onto the variable
|
687 | 697 |
<code>asdf:*central-registry*</code>.
|
688 | 698 |
</p>
|
689 |
-<p>You must configure this variable between the time you load ASDF
|
|
690 |
-and the time you first try to use it.
|
|
691 |
-Loading and configuring ASDF presumably happen
|
|
692 |
-as part of some initialization script that builds or starts
|
|
693 |
-your Common Lisp software system.
|
|
694 |
-(For instance, some SBCL users used to put it in their <samp>~/.sbclrc</samp>.)
|
|
699 |
+<p>You <em>must</em> configure this variable <em>after</em> you load ASDF 3 or later,
|
|
700 |
+yet <em>before</em> the first time you try to use it.
|
|
701 |
+This loading and configuring of ASDF must happen
|
|
702 |
+as part of some initialization script:
|
|
703 |
+typically, either a script you maintain that builds your project,
|
|
704 |
+or your implementation’s initialization script
|
|
705 |
+(e.g. <samp>~/.sbclrc</samp> for SBCL).
|
|
706 |
+</p>
|
|
707 |
+<p>Also, if you are using an ancient ASDF 2 or earlier to load ASDF 3 or later,
|
|
708 |
+then after it loads the ancient ASDF, your script <em>must</em> configure
|
|
709 |
+the central-registry a first time to tell ASDF 1 or 2 where to find ASDF 3,
|
|
710 |
+then load ASDF 3 with e.g. <code>(asdf:operate 'asdf:load-op "asdf")</code>,
|
|
711 |
+then configure the central-registry again, because
|
|
712 |
+ASDF 3 will not preserve the central-registry from ASDF 2 when upgrading.
|
|
713 |
+You should probably be using the source-registry instead, which will be preserved
|
|
714 |
+(unless you manually called <code>asdf:initialize-source-registry</code> with an argument,
|
|
715 |
+in which case you will have to do it again indeed).
|
|
716 |
+However, if you are using an ancient ASDF 2 or earlier,
|
|
717 |
+we <em>strongly</em> recommend that you should instead upgrade your implementation,
|
|
718 |
+or overwrite the ancient ASDF installation with a more recent one:
|
|
719 |
+See <a href="#Replacing-your-implementation_0027s-ASDF">Replacing your implementation's ASDF</a>.
|
|
695 | 720 |
</p>
|
696 | 721 |
<p>The <code>asdf:*central-registry*</code> is empty by default in ASDF 2 or ASDF 3,
|
697 | 722 |
but is still supported for compatibility with ASDF 1.
|
... | ... | @@ -714,6 +739,8 @@ is necessary to tell Lisp that you’re discussing a directory |
714 | 739 |
rather than a file. If you leave it out, ASDF is likely to look in
|
715 | 740 |
<code>/home/me/src/</code> instead of <code>/home/me/src/foo/</code> as you
|
716 | 741 |
intended, and fail to find your system definition.
|
742 |
+Modern versions of ASDF will issue an error and offer you to
|
|
743 |
+remove such entries from the central-registry.
|
|
717 | 744 |
</p>
|
718 | 745 |
<p>Typically there are a lot of <samp>.asd</samp> files, and
|
719 | 746 |
a common idiom was to put
|
... | ... | @@ -1309,6 +1336,12 @@ simple-component-name := string |
1309 | 1336 |
|
1310 | 1337 |
pathname-specifier := pathname | string | symbol
|
1311 | 1338 |
|
1339 |
+version-specifier := string
|
|
1340 |
+ | (:read-file-form <pathname-specifier> <form-specifier>?)
|
|
1341 |
+ | (:read-file-line <pathname-specifier> <line-specifier>?)
|
|
1342 |
+line-specifier := :at integer # base zero
|
|
1343 |
+form-specifier := :at [ integer | ( integer+ )]
|
|
1344 |
+ |
|
1312 | 1345 |
method-form := (operation-name qual lambda-list &rest body)
|
1313 | 1346 |
qual := method qualifier?
|
1314 | 1347 |
|
... | ... | @@ -1510,12 +1543,17 @@ had the version strings been interpreted as decimal fractions. |
1510 | 1543 |
the <code>:version</code> argument can be an expression that is resolved to
|
1511 | 1544 |
such a string using the following trivial domain-specific language:
|
1512 | 1545 |
in addition to being a literal string, it can be an expression of the form
|
1513 |
-<code>(:read-file-form <pathname-or-string> :at <access-at-specifier>)</code>,
|
|
1514 |
-which will be resolved by reading a form in the specified pathname
|
|
1515 |
-(read as a subpathname of the current system if relative or a unix-namestring).
|
|
1546 |
+<code>(:read-file-form <pathname-or-string> [:at <access-at-specifier]>)</code>,
|
|
1547 |
+or <code>(:read-file-line <pathname-or-string> [:at
|
|
1548 |
+<access-at-specifier]?>)</code>.
|
|
1549 |
+As the name suggests, the former will be resolved by reading a form in the specified pathname
|
|
1550 |
+(read as a subpathname of the current system if relative or a
|
|
1551 |
+unix-namestring), and the latter by reading a line.
|
|
1516 | 1552 |
You may use a <code>uiop:access-at</code> specifier
|
1517 |
-with the (optional) <code>:at</code> keyword,
|
|
1518 |
-by default the specifier is <code>0</code>, meaning the first form is returned;
|
|
1553 |
+with the <code>:at</code> keyword,
|
|
1554 |
+by default the specifier is <code>0</code>, meaning the first form/line is
|
|
1555 |
+returned.
|
|
1556 |
+For <code>:read-file-form</code>,
|
|
1519 | 1557 |
subforms can also be specified, with e.g. <code>(1 2 2)</code> specifying
|
1520 | 1558 |
“the third subform (index 2) of the third subform (index 2) of the second form (index 1)”
|
1521 | 1559 |
in the file (mind the off-by-one error in the English language).
|
... | ... | @@ -3486,7 +3524,7 @@ The speedup will only happen if the implementation-provided ASDF is recent enoug |
3486 | 3524 |
since the upgrade will itself be found but
|
3487 | 3525 |
after the old version has scanned the directories without heeding such a cache.
|
3488 | 3526 |
To upgrade the implementation-provided ASDF,
|
3489 |
-use our script <code>tools/install-asdf.lisp</code>.
|
|
3527 |
+see <a href="#Replacing-your-implementation_0027s-ASDF">Replacing your implementation's ASDF</a>.
|
|
3490 | 3528 |
</p>
|
3491 | 3529 |
|
3492 | 3530 |
<hr>
|
... | ... | @@ -5308,17 +5346,21 @@ Happily, CMUCL comes with a recent ASDF, |
5308 | 5346 |
and XCL is more of a working demo than something you’d use seriously anyway.
|
5309 | 5347 |
|
5310 | 5348 |
</li><li> For the above reasons, your build and startup scripts
|
5311 |
-should load, configure and upgrade ASDF among the very first things they do,
|
|
5312 |
-and ensure that ASDF 3 or later is present indeed,
|
|
5313 |
-before they start using ASDF to load anything else.
|
|
5314 |
- |
|
5315 |
-</li><li> Now that all implementations provide ASDF 3.1 or later (since May 2016),
|
|
5349 |
+should load ASDF 3, configure it, and upgrade it,
|
|
5350 |
+among the very first things they do.
|
|
5351 |
+They should ensure that only ASDF 3 or later is used indeed,
|
|
5352 |
+and error out if ASDF 2 or earlier was used.
|
|
5353 |
+ |
|
5354 |
+</li><li> Now that (since May 2016) all maintained implementations
|
|
5355 |
+(i.e. having had at least one release since 2014,
|
|
5356 |
+or a commit on their public source code repository)
|
|
5357 |
+provide ASDF 3.1 or later,
|
|
5316 | 5358 |
the simple solution is just to use code as below in your setup,
|
5317 | 5359 |
and when it fails, upgrade your implementation or replace its ASDF.
|
5318 | 5360 |
(see <a href="#Replacing-your-implementation_0027s-ASDF">Replacing your implementation's ASDF</a>):
|
5319 | 5361 |
<div class="example">
|
5320 | 5362 |
<pre class="example">(require "asdf")
|
5321 |
-#-asdf3 (error "ASDF 3 or bust")
|
|
5363 |
+#-asdf3.1 (error "ASDF 3.1 or bust")
|
|
5322 | 5364 |
</pre></div>
|
5323 | 5365 |
|
5324 | 5366 |
</li><li> For scripts that try to use ASDF simply via <code>require</code> at first, and
|
... | ... | @@ -5326,13 +5368,14 @@ make heroic attempts to load it the hard way if at first they don’t succee |
5326 | 5368 |
see <samp>tools/load-asdf.lisp</samp> distributed with the ASDF source repository,
|
5327 | 5369 |
or the code of <a href="https://cliki.net/cl-launch"><code>cl-launch</code></a>.
|
5328 | 5370 |
|
5329 |
-</li><li> Note that in addition to the pitfalls and constraints above,
|
|
5371 |
+</li><li> <a name="reinitializeASDFAfterUpgrade"></a>Note that in addition to the pitfalls and constraints above,
|
|
5330 | 5372 |
these heroic scripts (should you wish to write or modify one),
|
5331 | 5373 |
must take care to configure ASDF <em>twice</em>.
|
5332 |
-A first time, right after you load the old ASDF 2 and before you upgrade to the new ASDF 3,
|
|
5374 |
+A first time, right after you load the old ASDF 2 (or 1!)
|
|
5375 |
+and before you upgrade to the new ASDF 3,
|
|
5333 | 5376 |
so it may find where you put ASDF 3.
|
5334 |
-A second time, because some implementations can’t handle a smooth upgrade to ASDF 3,
|
|
5335 |
-and lose configuration as they do.
|
|
5377 |
+A second time, because most implementations can’t handle a smooth upgrade from ASDF 2 to ASDF 3,
|
|
5378 |
+so ASDF 3 doesn’t try (anymore) and loses any configuration from ASDF 2.
|
|
5336 | 5379 |
<div class="lisp">
|
5337 | 5380 |
<pre class="lisp">(ignore-errors (funcall 'require "asdf")) ;; <--- try real hard
|
5338 | 5381 |
;; <--- insert heroics here, if that failed to provide ASDF 2 or 3
|
... | ... | @@ -5486,7 +5529,38 @@ when they upgrade to the upstream version. |
5486 | 5529 |
|
5487 | 5530 |
</li></ul>
|
5488 | 5531 |
|
5489 |
- |
|
5532 |
+<hr>
|
|
5533 |
+<a name="After-upgrading-ASDF"></a>
|
|
5534 |
+<a name="After-upgrading-ASDF_002c-ASDF-_0028and-Quicklisp_0029-can_0027t-find-my-systems"></a>
|
|
5535 |
+<h4 class="subsection">13.4.3 After upgrading ASDF, ASDF (and Quicklisp) can’t find my systems</h4>
|
|
5536 |
+<a name="index-_002acentral_002dregistry_002a"></a>
|
|
5537 |
+<a name="index-Quicklisp"></a>
|
|
5538 |
+ |
|
5539 |
+<p>When you upgrade the ASDF running in your Lisp image
|
|
5540 |
+from an ancient ASDF 2 or older to ASDF 3 or newer,
|
|
5541 |
+then you may have to re-configure ASDF.
|
|
5542 |
+If your configuration only consists in
|
|
5543 |
+using the source-registry and output-translations (as it should),
|
|
5544 |
+and if you are not explicitly calling <code>asdf:initialize-source-registry</code>
|
|
5545 |
+or <code>asdf:initialize-output-translations</code> with a non-nil argument,
|
|
5546 |
+then ASDF will reconfigure itself.
|
|
5547 |
+Otherwise, you will have to configure ASDF 2 (or older) to find ASDF 3,
|
|
5548 |
+then configure ASDF 3.
|
|
5549 |
+Notably, <var>*central-registry*</var> is not maintained across upgrades from ASDF 2.
|
|
5550 |
+See <a href="#reinitializeASDFAfterUpgrade">note about ASDF reconfiguration after upgrade</a>.
|
|
5551 |
+</p>
|
|
5552 |
+<p>Problems like this may be experienced if one loads Quicklisp
|
|
5553 |
+(which as of this writing bundles an obsolete ASDF version 2.26),
|
|
5554 |
+upgrades ASDF, and then tries to load new systems.
|
|
5555 |
+The correct solution is to load the most up-to-date ASDF you can,
|
|
5556 |
+<em>then</em> configure it, <em>then</em> load Quicklisp and any other extension.
|
|
5557 |
+Do <em>not</em> try to upgrade from ASDF 2 <em>after</em> loading Quicklisp,
|
|
5558 |
+for it will leave both ASDF and Quicklisp badly misconfigured.
|
|
5559 |
+For details see the discussion at the above cross-reference.
|
|
5560 |
+</p>
|
|
5561 |
+<p>Also, if you are experiencing such failures due to Quicklisp shipping an ancient ASDF,
|
|
5562 |
+please complain to Zach Beane about it.
|
|
5563 |
+</p>
|
|
5490 | 5564 |
|
5491 | 5565 |
<hr>
|
5492 | 5566 |
<a name="Issues-with-configuring-ASDF"></a>
|
... | ... | @@ -5884,24 +5958,17 @@ interested, too. |
5884 | 5958 |
;; Load the test script support.
|
5885 | 5959 |
(load "script-support.lisp")
|
5886 | 5960 |
|
5887 |
-;; Initialize the script support.
|
|
5888 |
-;; This will also change your *package* to asdf-test.
|
|
5961 |
+;; Initialize the script support for interaction.
|
|
5962 |
+;; This will also change your *package* to asdf-test
|
|
5963 |
+;; after frobbing the asdf-test package to make it usable.
|
|
5889 | 5964 |
;; NB: this function is also available from package cl-user,
|
5890 | 5965 |
;; and also available with the shorter name da in both packages.
|
5891 |
-(asdf-test::debug-asdf)
|
|
5892 |
- |
|
5893 |
-;; In case you modified ASDF since you last tested it,
|
|
5894 |
-;; you need to update asdf.lisp itself by evaluating 'make' in a shell,
|
|
5895 |
-;; or (require "asdf") (asdf:load-system :asdf) in another CL REPL,
|
|
5896 |
-;; if not done in this REPL above.
|
|
5897 |
-;; *Then*, in this REPL, you need to evaluate:
|
|
5898 |
-;(asdf-test::compile-load-asdf)
|
|
5966 |
+(asdf-test:debug-asdf)
|
|
5899 | 5967 |
|
5900 | 5968 |
;; Now, you may experiment with test code from a .script file.
|
5901 | 5969 |
;; See the instructions given at the end of your failing test
|
5902 | 5970 |
;; to identify which form is needed, e.g.
|
5903 |
-(frob-packages)
|
|
5904 |
-(asdf::with-asdf-cache () (load "test-utilities.script"))
|
|
5971 |
+(run-test-script "test-utilities.script")
|
|
5905 | 5972 |
</pre></div>
|
5906 | 5973 |
|
5907 | 5974 |
|
... | ... | @@ -6016,6 +6083,8 @@ see the <samp>TODO</samp> file in the source repository. |
6016 | 6083 |
|
6017 | 6084 |
<a class="summary-letter" href="#Concept-Index_cp_letter-P"><b>P</b></a>
|
6018 | 6085 |
|
6086 |
+<a class="summary-letter" href="#Concept-Index_cp_letter-Q"><b>Q</b></a>
|
|
6087 |
+
|
|
6019 | 6088 |
<a class="summary-letter" href="#Concept-Index_cp_letter-R"><b>R</b></a>
|
6020 | 6089 |
|
6021 | 6090 |
<a class="summary-letter" href="#Concept-Index_cp_letter-S"><b>S</b></a>
|
... | ... | @@ -6105,6 +6174,9 @@ see the <samp>TODO</samp> file in the source repository. |
6105 | 6174 |
<tr><td></td><td valign="top"><a href="#index-pathname-specifiers">pathname specifiers</a>:</td><td> </td><td valign="top"><a href="#The-defsystem-grammar">The defsystem grammar</a></td></tr>
|
6106 | 6175 |
<tr><td></td><td valign="top"><a href="#index-Primary-system-name">Primary system name</a>:</td><td> </td><td valign="top"><a href="#Components">Components</a></td></tr>
|
6107 | 6176 |
<tr><td colspan="4"> <hr></td></tr>
|
6177 |
+<tr><th><a name="Concept-Index_cp_letter-Q">Q</a></th><td></td><td></td></tr>
|
|
6178 |
+<tr><td></td><td valign="top"><a href="#index-Quicklisp">Quicklisp</a>:</td><td> </td><td valign="top"><a href="#After-upgrading-ASDF">After upgrading ASDF</a></td></tr>
|
|
6179 |
+<tr><td colspan="4"> <hr></td></tr>
|
|
6108 | 6180 |
<tr><th><a name="Concept-Index_cp_letter-R">R</a></th><td></td><td></td></tr>
|
6109 | 6181 |
<tr><td></td><td valign="top"><a href="#index-readtables">readtables</a>:</td><td> </td><td valign="top"><a href="#How-do-I-work-with-readtables_003f">How do I work with readtables?</a></td></tr>
|
6110 | 6182 |
<tr><td colspan="4"> <hr></td></tr>
|
... | ... | @@ -6147,6 +6219,8 @@ see the <samp>TODO</samp> file in the source repository. |
6147 | 6219 |
|
6148 | 6220 |
<a class="summary-letter" href="#Concept-Index_cp_letter-P"><b>P</b></a>
|
6149 | 6221 |
|
6222 |
+<a class="summary-letter" href="#Concept-Index_cp_letter-Q"><b>Q</b></a>
|
|
6223 |
+
|
|
6150 | 6224 |
<a class="summary-letter" href="#Concept-Index_cp_letter-R"><b>R</b></a>
|
6151 | 6225 |
|
6152 | 6226 |
<a class="summary-letter" href="#Concept-Index_cp_letter-S"><b>S</b></a>
|
... | ... | @@ -6366,6 +6440,7 @@ see the <samp>TODO</samp> file in the source repository. |
6366 | 6440 |
<tr><td></td><th align="left">Index Entry</th><td> </td><th align="left"> Section</th></tr>
|
6367 | 6441 |
<tr><td colspan="4"> <hr></td></tr>
|
6368 | 6442 |
<tr><th><a name="Variable-Index_vr_symbol-1">*</a></th><td></td><td></td></tr>
|
6443 |
+<tr><td></td><td valign="top"><a href="#index-_002acentral_002dregistry_002a"><code>*central-registry*</code></a>:</td><td> </td><td valign="top"><a href="#After-upgrading-ASDF">After upgrading ASDF</a></td></tr>
|
|
6369 | 6444 |
<tr><td></td><td valign="top"><a href="#index-_002acompile_002dfile_002dfailure_002dbehaviour_002a"><code>*compile-file-failure-behaviour*</code></a>:</td><td> </td><td valign="top"><a href="#Error-handling">Error handling</a></td></tr>
|
6370 | 6445 |
<tr><td></td><td valign="top"><a href="#index-_002acompile_002dfile_002dwarnings_002dbehaviour_002a"><code>*compile-file-warnings-behaviour*</code></a>:</td><td> </td><td valign="top"><a href="#Error-handling">Error handling</a></td></tr>
|
6371 | 6446 |
<tr><td></td><td valign="top"><a href="#index-_002adefault_002dsource_002dregistry_002dexclusions_002a"><code>*default-source-registry-exclusions*</code></a>:</td><td> </td><td valign="top"><a href="#Search-Algorithm">Search Algorithm</a></td></tr>
|
1 |
-This is asdf.info, produced by makeinfo version 6.3 from asdf.texinfo.
|
|
1 |
+This is asdf.info, produced by makeinfo version 6.1 from asdf.texinfo.
|
|
2 | 2 |
|
3 | 3 |
This manual describes ASDF, a system definition facility for Common Lisp
|
4 | 4 |
programs and libraries.
|
... | ... | @@ -43,7 +43,7 @@ File: asdf.info, Node: Top, Next: Introduction, Prev: (dir), Up: (dir) |
43 | 43 |
ASDF: Another System Definition Facility
|
44 | 44 |
****************************************
|
45 | 45 |
|
46 |
-Manual for Version 3.2.1
|
|
46 |
+Manual for Version 3.3.0
|
|
47 | 47 |
|
48 | 48 |
This manual describes ASDF, a system definition facility for Common
|
49 | 49 |
Lisp programs and libraries.
|
... | ... | @@ -228,6 +228,7 @@ Issues with installing the proper version of ASDF |
228 | 228 |
|
229 | 229 |
* My Common Lisp implementation comes with an outdated version of ASDF. What to do?::
|
230 | 230 |
* I'm a Common Lisp implementation vendor. When and how should I upgrade ASDF?::
|
231 |
+* After upgrading ASDF, ASDF (and Quicklisp) can't find my systems: After upgrading ASDF.
|
|
231 | 232 |
|
232 | 233 |
Issues with configuring ASDF
|
233 | 234 |
|
... | ... | @@ -276,16 +277,17 @@ ASDF::, for a description of the ASDF internals and how to extend ASDF. |
276 | 277 |
it plays a role like 'make' or 'ant', not like a package manager. In
|
277 | 278 |
particular, ASDF should not to be confused with Quicklisp or
|
278 | 279 |
ASDF-Install, that attempt to find and download ASDF systems for you.
|
279 |
-Despite what the name might suggest, ASDF-Install is not part of ASDF,
|
|
280 |
-but a separate piece of software. ASDF-Install is also unmaintained and
|
|
281 |
-obsolete. We recommend you use Quicklisp (<http://www.quicklisp.org/>)
|
|
282 |
-instead, a Common Lisp package manager which works well and is being
|
|
283 |
-actively maintained. If you want to download software from version
|
|
284 |
-control instead of tarballs, so you may more easily modify it, we
|
|
285 |
-recommend clbuild (<http://common-lisp.net/project/clbuild/>). We
|
|
286 |
-recommend '~/common-lisp/' as a place into which to install Common Lisp
|
|
287 |
-software; starting with ASDF 3.1.2, it is included in the default
|
|
288 |
-source-registry configuration.
|
|
280 |
+Despite what the name might suggest, ASDF-Install was never a part of
|
|
281 |
+ASDF, it was a separate piece of software. ASDF-Install is also
|
|
282 |
+unmaintained and obsolete. We recommend you use Quicklisp
|
|
283 |
+(<http://www.quicklisp.org/>) instead, a Common Lisp package manager
|
|
284 |
+which works well and is being actively maintained. If you want to
|
|
285 |
+download software from version control instead of tarballs, so you may
|
|
286 |
+more easily modify it, we recommend clbuild
|
|
287 |
+(<http://common-lisp.net/project/clbuild/>). As for where on your
|
|
288 |
+filesystem to install Common Lisp software, we recommend subdirectories
|
|
289 |
+of '~/common-lisp/': starting with ASDF 3.1.2 (2014), this hierarchy is
|
|
290 |
+included in the default source-registry configuration.
|
|
289 | 291 |
|
290 | 292 |
Finally, note that this manual is incomplete. All the bases are
|
291 | 293 |
covered, but many advanced topics are only barely alluded to, and there
|
... | ... | @@ -446,7 +448,7 @@ File: asdf.info, Node: Replacing your implementation's ASDF, Next: Loading ASD |
446 | 448 |
========================================
|
447 | 449 |
|
448 | 450 |
All maintained implementations now provide ASDF 3 in their latest
|
449 |
-release. If your doesn't, we recommend you upgrade it.
|
|
451 |
+release. If yours doesn't, we recommend you upgrade it.
|
|
450 | 452 |
|
451 | 453 |
Now, if you insist on using an old implementation that didn't provide
|
452 | 454 |
ASDF or provided an old version, we recommend installing a recent ASDF,
|
... | ... | @@ -612,16 +614,33 @@ File: asdf.info, Node: Configuring ASDF to find your systems --- old style, Ne |
612 | 614 |
4.2 Configuring ASDF to find your systems -- old style
|
613 | 615 |
======================================================
|
614 | 616 |
|
615 |
-Novices may skip this section.
|
|
617 |
+Novices may skip this section. Please _do not_ use the central-registry
|
|
618 |
+if you are a novice, and _do not_ instruct novices to use the
|
|
619 |
+central-registry.
|
|
616 | 620 |
|
617 | 621 |
The old way to configure ASDF to find your systems is by 'push'ing
|
618 | 622 |
directory pathnames onto the variable 'asdf:*central-registry*'.
|
619 | 623 |
|
620 |
- You must configure this variable between the time you load ASDF and
|
|
621 |
-the time you first try to use it. Loading and configuring ASDF
|
|
622 |
-presumably happen as part of some initialization script that builds or
|
|
623 |
-starts your Common Lisp software system. (For instance, some SBCL users
|
|
624 |
-used to put it in their '~/.sbclrc'.)
|
|
624 |
+ You _must_ configure this variable _after_ you load ASDF 3 or later,
|
|
625 |
+yet _before_ the first time you try to use it. This loading and
|
|
626 |
+configuring of ASDF must happen as part of some initialization script:
|
|
627 |
+typically, either a script you maintain that builds your project, or
|
|
628 |
+your implementation's initialization script (e.g. '~/.sbclrc' for
|
|
629 |
+SBCL).
|
|
630 |
+ |
|
631 |
+ Also, if you are using an ancient ASDF 2 or earlier to load ASDF 3 or
|
|
632 |
+later, then after it loads the ancient ASDF, your script _must_
|
|
633 |
+configure the central-registry a first time to tell ASDF 1 or 2 where to
|
|
634 |
+find ASDF 3, then load ASDF 3 with e.g. '(asdf:operate 'asdf:load-op
|
|
635 |
+"asdf")', then configure the central-registry again, because ASDF 3 will
|
|
636 |
+not preserve the central-registry from ASDF 2 when upgrading. You
|
|
637 |
+should probably be using the source-registry instead, which will be
|
|
638 |
+preserved (unless you manually called 'asdf:initialize-source-registry'
|
|
639 |
+with an argument, in which case you will have to do it again indeed).
|
|
640 |
+However, if you are using an ancient ASDF 2 or earlier, we _strongly_
|
|
641 |
+recommend that you should instead upgrade your implementation, or
|
|
642 |
+overwrite the ancient ASDF installation with a more recent one: *Note
|
|
643 |
+Replacing your implementation's ASDF::.
|
|
625 | 644 |
|
626 | 645 |
The 'asdf:*central-registry*' is empty by default in ASDF 2 or ASDF
|
627 | 646 |
3, but is still supported for compatibility with ASDF 1. When used, it
|
... | ... | @@ -640,7 +659,8 @@ pathname.(2) The trailing directory name separator is necessary to tell |
640 | 659 |
Lisp that you're discussing a directory rather than a file. If you
|
641 | 660 |
leave it out, ASDF is likely to look in '/home/me/src/' instead of
|
642 | 661 |
'/home/me/src/foo/' as you intended, and fail to find your system
|
643 |
-definition.
|
|
662 |
+definition. Modern versions of ASDF will issue an error and offer you
|
|
663 |
+to remove such entries from the central-registry.
|
|
644 | 664 |
|
645 | 665 |
Typically there are a lot of '.asd' files, and a common idiom was to
|
646 | 666 |
put _symbolic links_ to all of one's '.asd' files in a common directory
|
... | ... | @@ -1214,6 +1234,12 @@ File: asdf.info, Node: The defsystem grammar, Next: Other code in .asd files, |
1214 | 1234 |
|
1215 | 1235 |
pathname-specifier := pathname | string | symbol
|
1216 | 1236 |
|
1237 |
+ version-specifier := string
|
|
1238 |
+ | (:read-file-form <pathname-specifier> <form-specifier>?)
|
|
1239 |
+ | (:read-file-line <pathname-specifier> <line-specifier>?)
|
|
1240 |
+ line-specifier := :at integer # base zero
|
|
1241 |
+ form-specifier := :at [ integer | ( integer+ )]
|
|
1242 |
+ |
|
1217 | 1243 |
method-form := (operation-name qual lambda-list &rest body)
|
1218 | 1244 |
qual := method qualifier?
|
1219 | 1245 |
|
... | ... | @@ -1383,14 +1409,17 @@ happened had the version strings been interpreted as decimal fractions. |
1383 | 1409 |
can be an expression that is resolved to such a string using the
|
1384 | 1410 |
following trivial domain-specific language: in addition to being a
|
1385 | 1411 |
literal string, it can be an expression of the form '(:read-file-form
|
1386 |
-<pathname-or-string> :at <access-at-specifier>)', which will be resolved
|
|
1387 |
-by reading a form in the specified pathname (read as a subpathname of
|
|
1388 |
-the current system if relative or a unix-namestring). You may use a
|
|
1389 |
-'uiop:access-at' specifier with the (optional) ':at' keyword, by default
|
|
1390 |
-the specifier is '0', meaning the first form is returned; subforms can
|
|
1391 |
-also be specified, with e.g. '(1 2 2)' specifying "the third subform
|
|
1392 |
-(index 2) of the third subform (index 2) of the second form (index 1)"
|
|
1393 |
-in the file (mind the off-by-one error in the English language).
|
|
1412 |
+<pathname-or-string> [:at <access-at-specifier]>)', or '(:read-file-line
|
|
1413 |
+<pathname-or-string> [:at <access-at-specifier]?>)'. As the name
|
|
1414 |
+suggests, the former will be resolved by reading a form in the specified
|
|
1415 |
+pathname (read as a subpathname of the current system if relative or a
|
|
1416 |
+unix-namestring), and the latter by reading a line. You may use a
|
|
1417 |
+'uiop:access-at' specifier with the ':at' keyword, by default the
|
|
1418 |
+specifier is '0', meaning the first form/line is returned. For
|
|
1419 |
+':read-file-form', subforms can also be specified, with e.g. '(1 2 2)'
|
|
1420 |
+specifying "the third subform (index 2) of the third subform (index 2)
|
|
1421 |
+of the second form (index 1)" in the file (mind the off-by-one error in
|
|
1422 |
+the English language).
|
|
1394 | 1423 |
|
1395 | 1424 |
System definers are encouraged to use version identifiers of the form
|
1396 | 1425 |
X.Y.Z for major version, minor version and patch level, where
|
... | ... | @@ -3177,8 +3206,8 @@ speedup will only happen if the implementation-provided ASDF is recent |
3177 | 3206 |
enough (3.1.3.7 or later); it is not enough for a recent ASDF upgrade to
|
3178 | 3207 |
be present, since the upgrade will itself be found but after the old
|
3179 | 3208 |
version has scanned the directories without heeding such a cache. To
|
3180 |
-upgrade the implementation-provided ASDF, use our script
|
|
3181 |
-'tools/install-asdf.lisp'.
|
|
3209 |
+upgrade the implementation-provided ASDF, *note Replacing your
|
|
3210 |
+implementation's ASDF::.
|
|
3182 | 3211 |
|
3183 | 3212 |
|
3184 | 3213 |
File: asdf.info, Node: Configuration API, Next: Introspection, Prev: Caching Results, Up: Controlling where ASDF searches for systems
|
... | ... | @@ -4866,17 +4895,19 @@ when upgrading from ASDF 2, due to limitations in ASDF 2. |
4866 | 4895 |
ASDF, and XCL is more of a working demo than something you'd use
|
4867 | 4896 |
seriously anyway.
|
4868 | 4897 |
|
4869 |
- * For the above reasons, your build and startup scripts should load,
|
|
4870 |
- configure and upgrade ASDF among the very first things they do, and
|
|
4871 |
- ensure that ASDF 3 or later is present indeed, before they start
|
|
4872 |
- using ASDF to load anything else.
|
|
4873 |
- |
|
4874 |
- * Now that all implementations provide ASDF 3.1 or later (since May
|
|
4875 |
- 2016), the simple solution is just to use code as below in your
|
|
4876 |
- setup, and when it fails, upgrade your implementation or replace
|
|
4877 |
- its ASDF. (*note Replacing your implementation's ASDF::):
|
|
4898 |
+ * For the above reasons, your build and startup scripts should load
|
|
4899 |
+ ASDF 3, configure it, and upgrade it, among the very first things
|
|
4900 |
+ they do. They should ensure that only ASDF 3 or later is used
|
|
4901 |
+ indeed, and error out if ASDF 2 or earlier was used.
|
|
4902 |
+ |
|
4903 |
+ * Now that (since May 2016) all maintained implementations (i.e.
|
|
4904 |
+ having had at least one release since 2014, or a commit on their
|
|
4905 |
+ public source code repository) provide ASDF 3.1 or later, the
|
|
4906 |
+ simple solution is just to use code as below in your setup, and
|
|
4907 |
+ when it fails, upgrade your implementation or replace its ASDF.
|
|
4908 |
+ (*note Replacing your implementation's ASDF::):
|
|
4878 | 4909 |
(require "asdf")
|
4879 |
- #-asdf3 (error "ASDF 3 or bust")
|
|
4910 |
+ #-asdf3.1 (error "ASDF 3.1 or bust")
|
|
4880 | 4911 |
|
4881 | 4912 |
* For scripts that try to use ASDF simply via 'require' at first, and
|
4882 | 4913 |
make heroic attempts to load it the hard way if at first they don't
|
... | ... | @@ -4887,10 +4918,11 @@ when upgrading from ASDF 2, due to limitations in ASDF 2. |
4887 | 4918 |
* Note that in addition to the pitfalls and constraints above, these
|
4888 | 4919 |
heroic scripts (should you wish to write or modify one), must take
|
4889 | 4920 |
care to configure ASDF _twice_. A first time, right after you load
|
4890 |
- the old ASDF 2 and before you upgrade to the new ASDF 3, so it may
|
|
4891 |
- find where you put ASDF 3. A second time, because some
|
|
4892 |
- implementations can't handle a smooth upgrade to ASDF 3, and lose
|
|
4893 |
- configuration as they do.
|
|
4921 |
+ the old ASDF 2 (or 1!) and before you upgrade to the new ASDF 3,
|
|
4922 |
+ so it may find where you put ASDF 3. A second time, because most
|
|
4923 |
+ implementations can't handle a smooth upgrade from ASDF 2 to ASDF
|
|
4924 |
+ 3, so ASDF 3 doesn't try (anymore) and loses any configuration from
|
|
4925 |
+ ASDF 2.
|
|
4894 | 4926 |
(ignore-errors (funcall 'require "asdf")) ;; <--- try real hard
|
4895 | 4927 |
;; <--- insert heroics here, if that failed to provide ASDF 2 or 3
|
4896 | 4928 |
;; <--- insert configuration here, if that succeeded
|
... | ... | @@ -4937,6 +4969,7 @@ File: asdf.info, Node: Issues with installing the proper version of ASDF, Next |
4937 | 4969 |
|
4938 | 4970 |
* My Common Lisp implementation comes with an outdated version of ASDF. What to do?::
|
4939 | 4971 |
* I'm a Common Lisp implementation vendor. When and how should I upgrade ASDF?::
|
4972 |
+* After upgrading ASDF, ASDF (and Quicklisp) can't find my systems: After upgrading ASDF.
|
|
4940 | 4973 |
|
4941 | 4974 |
|
4942 | 4975 |
File: asdf.info, Node: My Common Lisp implementation comes with an outdated version of ASDF. What to do?, Next: I'm a Common Lisp implementation vendor. When and how should I upgrade ASDF?, Prev: Issues with installing the proper version of ASDF, Up: Issues with installing the proper version of ASDF
|
... | ... | @@ -4954,7 +4987,7 @@ recommend you replace your implementation's ASDF. *Note Replacing your |
4954 | 4987 |
implementation's ASDF::.
|
4955 | 4988 |
|
4956 | 4989 |
|
4957 |
-File: asdf.info, Node: I'm a Common Lisp implementation vendor. When and how should I upgrade ASDF?, Prev: My Common Lisp implementation comes with an outdated version of ASDF. What to do?, Up: Issues with installing the proper version of ASDF
|
|
4990 |
+File: asdf.info, Node: I'm a Common Lisp implementation vendor. When and how should I upgrade ASDF?, Next: After upgrading ASDF, Prev: My Common Lisp implementation comes with an outdated version of ASDF. What to do?, Up: Issues with installing the proper version of ASDF
|
|
4958 | 4991 |
|
4959 | 4992 |
13.4.2 "I'm a Common Lisp implementation vendor. When and how should I upgrade ASDF?"
|
4960 | 4993 |
-------------------------------------------------------------------------------------
|
... | ... | @@ -5022,6 +5055,36 @@ should report upstream and that we will fix ASAP. |
5022 | 5055 |
upgrade to the upstream version.
|
5023 | 5056 |
|
5024 | 5057 |
|
5058 |
+File: asdf.info, Node: After upgrading ASDF, Prev: I'm a Common Lisp implementation vendor. When and how should I upgrade ASDF?, Up: Issues with installing the proper version of ASDF
|
|
5059 |
+ |
|
5060 |
+13.4.3 After upgrading ASDF, ASDF (and Quicklisp) can't find my systems
|
|
5061 |
+-----------------------------------------------------------------------
|
|
5062 |
+ |
|
5063 |
+When you upgrade the ASDF running in your Lisp image from an ancient
|
|
5064 |
+ASDF 2 or older to ASDF 3 or newer, then you may have to re-configure
|
|
5065 |
+ASDF. If your configuration only consists in using the source-registry
|
|
5066 |
+and output-translations (as it should), and if you are not explicitly
|
|
5067 |
+calling 'asdf:initialize-source-registry' or
|
|
5068 |
+'asdf:initialize-output-translations' with a non-nil argument, then ASDF
|
|
5069 |
+will reconfigure itself. Otherwise, you will have to configure ASDF 2
|
|
5070 |
+(or older) to find ASDF 3, then configure ASDF 3. Notably,
|
|
5071 |
+*CENTRAL-REGISTRY* is not maintained across upgrades from ASDF 2. *Note
|
|
5072 |
+note about ASDF reconfiguration after upgrade:
|
|
5073 |
+reinitializeASDFAfterUpgrade.
|
|
5074 |
+ |
|
5075 |
+ Problems like this may be experienced if one loads Quicklisp (which
|
|
5076 |
+as of this writing bundles an obsolete ASDF version 2.26), upgrades
|
|
5077 |
+ASDF, and then tries to load new systems. The correct solution is to
|
|
5078 |
+load the most up-to-date ASDF you can, _then_ configure it, _then_ load
|
|
5079 |
+Quicklisp and any other extension. Do _not_ try to upgrade from ASDF 2
|
|
5080 |
+_after_ loading Quicklisp, for it will leave both ASDF and Quicklisp
|
|
5081 |
+badly misconfigured. For details see the discussion at the above
|
|
5082 |
+cross-reference.
|
|
5083 |
+ |
|
5084 |
+ Also, if you are experiencing such failures due to Quicklisp shipping
|
|
5085 |
+an ancient ASDF, please complain to Zach Beane about it.
|
|
5086 |
+ |
|
5087 |
+
|
|
5025 | 5088 |
File: asdf.info, Node: Issues with configuring ASDF, Next: Issues with using and extending ASDF to define systems, Prev: Issues with installing the proper version of ASDF, Up: FAQ
|
5026 | 5089 |
|
5027 | 5090 |
13.5 Issues with configuring ASDF
|
... | ... | @@ -5403,24 +5466,17 @@ interested, too. |
5403 | 5466 |
;; Load the test script support.
|
5404 | 5467 |
(load "script-support.lisp")
|
5405 | 5468 |
|
5406 |
- ;; Initialize the script support.
|
|
5407 |
- ;; This will also change your *package* to asdf-test.
|
|
5469 |
+ ;; Initialize the script support for interaction.
|
|
5470 |
+ ;; This will also change your *package* to asdf-test
|
|
5471 |
+ ;; after frobbing the asdf-test package to make it usable.
|
|
5408 | 5472 |
;; NB: this function is also available from package cl-user,
|
5409 | 5473 |
;; and also available with the shorter name da in both packages.
|
5410 |
- (asdf-test::debug-asdf)
|
|
5411 |
- |
|
5412 |
- ;; In case you modified ASDF since you last tested it,
|
|
5413 |
- ;; you need to update asdf.lisp itself by evaluating 'make' in a shell,
|
|
5414 |
- ;; or (require "asdf") (asdf:load-system :asdf) in another CL REPL,
|
|
5415 |
- ;; if not done in this REPL above.
|
|
5416 |
- ;; *Then*, in this REPL, you need to evaluate:
|
|
5417 |
- ;(asdf-test::compile-load-asdf)
|
|
5474 |
+ (asdf-test:debug-asdf)
|
|
5418 | 5475 |
|
5419 | 5476 |
;; Now, you may experiment with test code from a .script file.
|
5420 | 5477 |
;; See the instructions given at the end of your failing test
|
5421 | 5478 |
;; to identify which form is needed, e.g.
|
5422 |
- (frob-packages)
|
|
5423 |
- (asdf::with-asdf-cache () (load "test-utilities.script"))
|
|
5479 |
+ (run-test-script "test-utilities.script")
|
|
5424 | 5480 |
|
5425 | 5481 |
|
5426 | 5482 |
File: asdf.info, Node: Ongoing Work, Next: Bibliography, Prev: FAQ, Up: Top
|
... | ... | @@ -5511,34 +5567,34 @@ Concept Index |
5511 | 5567 |
* :asdf2: Introduction. (line 6)
|
5512 | 5568 |
* :asdf3: Introduction. (line 6)
|
5513 | 5569 |
* :build-operation: The defsystem grammar.
|
5514 |
- (line 128)
|
|
5570 |
+ (line 134)
|
|
5515 | 5571 |
* :compile-check: Controlling file compilation.
|
5516 | 5572 |
(line 6)
|
5517 | 5573 |
* :default-registry source config directive: Configuration DSL.
|
5518 | 5574 |
(line 6)
|
5519 | 5575 |
* :defsystem-depends-on: The defsystem grammar.
|
5520 |
- (line 120)
|
|
5576 |
+ (line 126)
|
|
5521 | 5577 |
* :directory source config directive: Configuration DSL. (line 6)
|
5522 | 5578 |
* :exclude source config directive: Configuration DSL. (line 6)
|
5523 | 5579 |
* :feature dependencies: The defsystem grammar.
|
5524 |
- (line 270)
|
|
5580 |
+ (line 279)
|
|
5525 | 5581 |
* :if-feature component option: The defsystem grammar.
|
5526 |
- (line 390)
|
|
5582 |
+ (line 399)
|
|
5527 | 5583 |
* :ignore-invalid-entries source config directive: Configuration DSL.
|
5528 | 5584 |
(line 6)
|
5529 | 5585 |
* :include source config directive: Configuration DSL. (line 6)
|
5530 | 5586 |
* :inherit-configuration source config directive: Configuration DSL.
|
5531 | 5587 |
(line 6)
|
5532 | 5588 |
* :require dependencies: The defsystem grammar.
|
5533 |
- (line 260)
|
|
5589 |
+ (line 269)
|
|
5534 | 5590 |
* :tree source config directive: Configuration DSL. (line 6)
|
5535 | 5591 |
* :version: The defsystem form. (line 68)
|
5536 | 5592 |
* :version <1>: The defsystem grammar.
|
5537 |
- (line 229)
|
|
5593 |
+ (line 235)
|
|
5538 | 5594 |
* :version <2>: Common attributes of components.
|
5539 | 5595 |
(line 23)
|
5540 | 5596 |
* :weakly-depends-on: The defsystem grammar.
|
5541 |
- (line 140)
|
|
5597 |
+ (line 146)
|
|
5542 | 5598 |
* also-exclude source config directive: Configuration DSL. (line 6)
|
5543 | 5599 |
* around-compile keyword: Controlling file compilation.
|
5544 | 5600 |
(line 6)
|
... | ... | @@ -5579,23 +5635,25 @@ Concept Index |
5579 | 5635 |
* launchpad: Where do I report a bug?.
|
5580 | 5636 |
(line 6)
|
5581 | 5637 |
* logical pathnames: The defsystem grammar.
|
5582 |
- (line 289)
|
|
5638 |
+ (line 298)
|
|
5583 | 5639 |
* mailing list: Mailing list. (line 6)
|
5584 | 5640 |
* operation: Operations. (line 6)
|
5585 | 5641 |
* pathname specifiers: The defsystem grammar.
|
5586 |
- (line 162)
|
|
5642 |
+ (line 168)
|
|
5587 | 5643 |
* Primary system name: Components. (line 70)
|
5644 |
+* Quicklisp: After upgrading ASDF.
|
|
5645 |
+ (line 6)
|
|
5588 | 5646 |
* readtables: How do I work with readtables?.
|
5589 | 5647 |
(line 6)
|
5590 | 5648 |
* serial dependencies: The defsystem grammar.
|
5591 |
- (line 335)
|
|
5649 |
+ (line 344)
|
|
5592 | 5650 |
* system: Components. (line 6)
|
5593 | 5651 |
* system designator: Components. (line 6)
|
5594 | 5652 |
* System names: Components. (line 70)
|
5595 | 5653 |
* Testing for ASDF: Introduction. (line 6)
|
5596 | 5654 |
* tree source config directive: Configuration DSL. (line 6)
|
5597 | 5655 |
* version specifiers: The defsystem grammar.
|
5598 |
- (line 229)
|
|
5656 |
+ (line 235)
|
|
5599 | 5657 |
|
5600 | 5658 |
|
5601 | 5659 |
File: asdf.info, Node: Function and Class Index, Next: Variable Index, Prev: Concept Index, Up: Top
|
... | ... | @@ -5776,6 +5834,8 @@ Variable Index |
5776 | 5834 | |