Jerry James writes:
On Tue, Feb 26, 2008 at 9:44 PM, Stephen J. Turnbull
<stephen(a)xemacs.org> wrote:
> Well, I can't reproduce any more, and the smoketest (which always
> starts from a fresh checkout) never went red from this issue. So as
> Mike is saying, it has something to do with using old build products.
> If make extraclean doesn't remove them, then finding out what's still
> in your tree that isn't in a fresh checkout is key.
In light of Vin's message, the next question is: which XEmacs 21.5 is
the package smoketest using? That is, is it using xemacs tip,
xemacs-beta tip, something older?
I believe it uses the most recent beta, which would be 21.5.28, now
many months old. Mats?
I've figured out part of the problem. The autoloads specified by the
REQUIRES Make variable are consed on to a list, which means they are
executed in reverse order. But people add dependencies on the end of
the list as they are discovered, we have "REQUIRES = ... eieio ... ede",
so ede's autoloads get loaded first. The autoloaded code actually
calls the eieio functions, and boom! there's no definition.
I tried putting ede first (ie, loaded last) in REQUIRES, but then
something else blew up:
xemacs exiting.
Given parent class eieio-persistent is not a classmake[2]: *** [auto-autoloads.elc] Error
255
make[2]: Leaving directory `/playpen/src/XEmacs/Packages/xemacs-packages/semantic'
make[1]: *** [semantic/bytecompile.target] Error 2
make[1]: Leaving directory `/playpen/src/XEmacs/Packages/xemacs-packages'
make: *** [xemacs-packages/bytecompile.target] Error 2
Even if that "worked", it would suck. It means that eieio would be
loaded in every normally invoked instance of XEmacs, whether it or any
of its dependencies were ever used or not. I think all autoloads
should simply be nuked out of ede, and any other packages that
autoload expressions like (defclass ...), until they learn to behave
politely.
_______________________________________________
XEmacs-Beta mailing list
XEmacs-Beta(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-beta