[Ecls-list] ASDF redesign
Samium Gromoff
_deepfire at feelingofgreen.ru
Tue May 13 14:00:21 UTC 2008
Good day Juan,
I've encountered a rebuild problem that might be related to the
load-at-once behavior.
Testcase is as follows:
a1.lisp: -------------------
(defpackage a1)
a1.asd: --------------------
(defpackage :a1.system
(:use :cl :asdf))
(in-package :a1.system)
(defsystem :a1
:depends-on ()
:components
((:file "a1")))
a2.lisp: -------------------
(defpackage a2
(:use :a1))
a2.asd: --------------------
(defpackage :a2.system
(:use :cl :asdf))
(in-package :a2.system)
(defsystem :a2
:depends-on (:a1)
:components
((:file "a2")))
With that in place we perform the following sequence:
1. The first, successful build:
ecl -eval '(require :asdf)' -eval '(asdf:make-build :a2 :type :fasl :monolithic t)' -eval '(quit)'
2. Simulation of change, either
sleep 2s; touch a2.lisp
or
rm a2.o liba2.a a2.fasb
3. Problem point:
deepfire at canopus:~/local$ ecl -eval '(require :asdf)' -eval '(asdf:make-build :a2 :type :fasl :monolithic t)' -eval '(quit)'
;;; Loading #P"/usr/lib/ecl/asdf.fas"
;;; Loading #P"/usr/lib/ecl/cmp.fas"
;;; Loading #P"/usr/lib/ecl/sysfun.lsp"
; loading system definition from a2.asd into #<ASDF0 package>
;;; Loading "/mnt/ext/home/deepfire/local/a2.asd"
; registering #<SYSTEM :A2 138027488> as A2
; loading system definition from a1.asd into #<ASDF0 package>
;;; Loading "/mnt/ext/home/deepfire/local/a1.asd"
; registering #<SYSTEM :A1 138096640> as A1
;;; Compiling /mnt/ext/home/deepfire/local/a2.lisp.
;;; Compiling (SI::DODEFPACKAGE "A2" ...).
;;; The form (SI::DODEFPACKAGE "A2" 'NIL NIL '("A1") 'NIL 'NIL 'NIL 'NIL 'NIL 'NIL) was not evaluated successfully.
;;; You are recommended to compile again.
An error occurred during initialization:
There exists no package with name "A1".
regards, Samium Gromoff
More information about the ecl-devel
mailing list