[Asdf-devel] Moving MKCL's bundled version to ASDF 3.1.2

Jean-Claude Beaudoin jean.claude.beaudoin at gmail.com
Fri Jun 20 16:47:07 UTC 2014

On Fri, Jun 20, 2014 at 9:40 AM, Faré <fahree at gmail.com> wrote:

> On Fri, Jun 20, 2014 at 6:11 AM, Jean-Claude Beaudoin
> <jean.claude.beaudoin at gmail.com> wrote:
> > I dropped in ASDF 3.1.2 from the release tarball in the MKCL 1.1.9
> > source tree as a direct replacement of the currently bundled ASDF.
> > It compiled fine. The whole MKCL build completes and installs as usual.
> > The thus resulting ASDF 3.1.2 reports all tests are good when
> > 'make test l=mkcl" is run, as well as with 'make test-upgrade l=mkcl'.
> >
> > But when I come to try an upgrade from 3.1.2 to syntax-control
> > branch I then get a crash.  Here is attached the transcript of what
> > is produced at the repl.
> >
> > The error message basically says that 'build/asdf.lisp' cannot be found.
> > And in fact it is missing (it used to be produced properly by
> > If I drop to a shell prompt and do make build/asdf.lisp and try the
> > same upgrade again then it completes properly. So is there something
> > broken now with the ASDF bundle 'concatenate' ops?
> >
> I suspect you are not bootstrapping ASDF properly;
> that would explain why your patch didn't fix things at first,
> but worked when I tried to reproduce: only the second time around
> would ASDF have been properly built.
> Most implementations "just" check in asdf.lisp.
> If you checkout the whole tree, you need to create asdf.lisp by running
> "make".
And I do as you say during MKCL's bootstrap. But that is not the situation
interest here. What we have here is MKCL fully and properly built and
with its bundled ASDF version already loaded, attempting a "live upgrade" of

> > Would do but I don't quite understand how to fix what I just reported
> here
> > above.
> >
> Please make sure you build asdf before you use asdf.
> asdf is not magical: it needs either make or asdf to build asdf.
> If you don't have asdf yet and try to build asdf, you're in trouble —
> unless you use make to escape the bootstrap loop.
You got me to doubt myself so I went back to my original setup with ASDF
and replayed the whole scenario from there, making sure to remove the
file from the "live upgrade" directory first. I attached the transcript of
the REPL this gives
me.  As you can see from it, the 'build/asdf.lisp' gets recreated without
any explicit
call to "make" on my part.  This is not what happens when the bundled ASDF
is 3.1.2!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/asdf-devel/attachments/20140620/ac24a4fa/attachment.html>
-------------- next part --------------
jean-claude at mars> ls -lat build
total 564
-rw-rw-r--  1 jean-claude jean-claude 567880 Jun 20 12:19 asdf.lisp
drwxrwxr-x  2 jean-claude jean-claude   4096 Jun 20 12:19 ./
drwxr-xr-x 10 jean-claude jean-claude   4096 Jun 20 12:19 ../
jean-claude at mars> date
Fri Jun 20 12:21:04 EDT 2014
jean-claude at mars> rm build/asdf.lisp
jean-claude at mars> rmdir build
jean-claude at mars> ../../bin/mkcl
Loading ~/.mkclrc!
;;; Loading #P"/home/jean-claude/CL/MKCL/dev/releases/mkcl-1.1/git/mkcl.git/src/bin/../lib/mkcl-1.1.9/contrib/asdf.fasb"
Done with loading asdf from ~/.mkclrc!
Done with configuring asdf from ~/.mkclrc!
;;; Loading "/home/jean-claude/quicklisp/setup.lisp"

This is ManKai Common Lisp 1.1.9

Copyright (C) 1984 Taiichi Yuasa and Masami Hagiya
Copyright (C) 1993 Giuseppe Attardi
Copyright (C) 2000 Juan J. Garcia-Ripoll
Copyright (C) 2010-2014 Jean-Claude Beaudoin

ManKai Common Lisp (MKCL) is free software,
and you are welcome to redistribute and/or
modify it under the terms of the GNU LGPL.
See file 'Copyright' in the source code for details.

Type :h for Help.
Top level in: #<thread "Initial" active (30555) 0x7fe6d3672700 0000000003141000>.
> (asdf::asdf-version)

> (push '(getcwd) asdf::*central-registry*)

((GETCWD) #P"/home/jean-claude/quicklisp/quicklisp/")
> (asdf:oos 'asdf:load-op :asdf)

;;; Loading "/home/jean-claude/CL/MKCL/dev/releases/mkcl-1.1/git/mkcl.git/src/test/asdf/asdf.asd"
;;; Loading "/home/jean-claude/CL/MKCL/dev/releases/mkcl-1.1/git/mkcl.git/src/test/asdf/uiop/uiop.asd"
;;; Compiling /home/jean-claude/CL/MKCL/dev/releases/mkcl-1.1/git/mkcl.git/src/test/asdf/build/asdf.lisp.
; Upgrading ASDF from version to version
;;; Finished compiling /home/jean-claude/CL/MKCL/dev/releases/mkcl-1.1/git/mkcl.git/src/test/asdf/build/asdf.lisp.
;;; Loading "/home/jean-claude/.cache/common-lisp/mkcl-1.1.9-linux-x64/home/jean-claude/CL/MKCL/dev/releases/mkcl-1.1/git/mkcl.git/src/test/asdf/build/asdf.fas"
> (quit)
jean-claude at mars> ls -lat build
total 564
drwxrwxr-x  2 jean-claude jean-claude   4096 Jun 20 12:21 ./
drwxr-xr-x 10 jean-claude jean-claude   4096 Jun 20 12:21 ../
-rw-rw-r--  1 jean-claude jean-claude 567880 Jun 20 12:21 asdf.lisp

More information about the asdf-devel mailing list