Opened 9 years ago

Closed 9 years ago

#745 closed defect (fixed)

Building COCOA-APPLICATION only sometimes causes ASDF to be loaded

Reported by: tfb Owned by: gz
Priority: normal Milestone:
Component: IDE Version: trunk
Keywords: Cc:

Description

I am using the trunk (1.6-dev-r14297M) on an Intel mac running 10.6.4.

After updating from SVN, I rebuild the IDE in two steps:

  • Rebuild CCL with (rebuild-ccl ...)
  • Build the IDE by running ccl -n and saying (require :cocoa-application).

The image dumped by the first of these steps never has ASDF in it (which is fine). The image dumped by the second of these steps *sometimes* has ASDF in it, which is at least annoying. Whether or not it contains ASDF depends on how much it needs to recompile, I think.

To replicate this: from the CCL root directory (whatever (translate-logical-pathname "ccl") gets), do this:

$ find cocoa-ide examples -name '*.dx64fsl' -exec rm {} \;

After this, the first time the IDE is build it will not include ASDF. The next time it will.

The problem is obviously related to how much needs to be compiled, but I've not been able to work out what exactly.

Change History (5)

comment:1 Changed 9 years ago by gz

  • Component changed from Infrastructure and Support to IDE
  • Owner set to gz
  • Status changed from new to assigned

comment:2 follow-up: Changed 9 years ago by gz

  • Resolution set to fixed
  • Status changed from assigned to closed

(In [14298]) Don't use asdf for easygui, this fixes ticket:745

comment:3 in reply to: ↑ 2 Changed 9 years ago by tfb

  • Resolution fixed deleted
  • Status changed from closed to reopened

Replying to gz:

(In [14298]) Don't use asdf for easygui, this fixes ticket:745

I think that cocoa-ide/project.lisp has a similar, but worse problem, because it actually uses ASDF for its being.

But something very odd happens. The following is in a clean (I think) 14298 version, with no init file

kingston$ rm cocoa-ide/fasls/project.dx64fsl 
kingston$ ccl -n
Welcome to Clozure Common Lisp Version 1.6-dev-r14298M  (DarwinX8664)!
? (find-package "ASDF")
NIL
? (require :cocoa-application)
[... many lines deleted ...]

Now if I run the application:

Welcome to Clozure Common Lisp Version 1.6-dev-r14298M  (DarwinX8664)!
? (find-package "ASDF")
#<Package "ASDF">
? (member :ASDF *features*)
NIL

Which is peculiar. It looks like ASDF is there (asdf:defsystem works) but its features are not on *features*.

Now if I rebuild without deleting the project.lisp FASL, I end up with an IDE which makes sense.

I think this must be to do with the EVAL-WHENery in project.lisp, but I don't really understand how the package can be there without the features.

This may all be idiocy on my part, of course.

comment:4 Changed 9 years ago by gz

Should be fixed by r14312.

comment:5 Changed 9 years ago by tfb

  • Resolution set to fixed
  • Status changed from reopened to closed

Yes, this is fixed I think.

Thank you

Note: See TracTickets for help on using tickets.