emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Gnus 5.11 in Emacs CVS


From: Miles Bader
Subject: Re: Gnus 5.11 in Emacs CVS
Date: Mon, 19 Apr 2004 18:23:03 -0400
User-agent: Mutt/1.3.28i

[I've re-added emacs-devel to the CC: list (I hope that's OK!): For anyone
 reading this there, the topic is that Reiner can bootstrap a CVS checkout,
 but not an arch checkout.  This seems some how related to vc-arch.el and
 long pathnames?  I can bootstrap an arch checkout if I make sure that
 vc-arch.el is byte-compiled, but he can't.]

On Mon, Apr 19, 2004 at 09:30:58PM +0200, Reiner Steib wrote:
> > but are you _sure_ the CVS checkout actually bootstraps correctly?
> > The arch tree is pretty much the same as the CVS tree, so it's a bit
> > mystifying that one would work and the other not.
> 
> But it's not exactly synced (some *.el files differ slightly; nothing
> relevant IMHO, but not only CVS keyword expansion).

Well obviously they aren't guaranteed to be exactly synced at every moment of
the day, but ignoring the time delay (the sync happens usually a few times
per day) they should be exactly the same, with the following exceptions:

  (1) RCS keywords are not expanded in the arch branch

  (2) The arch branch has some .arch-inventory files that aren't in CVS
      (actually there's currently only one, in the nt/ subdirectory)

  (3) A CVS checkout has a bunch of empty directories which as far as I can
      tell are inconsequential (but annoying in the CVS tree), and mostly
      artifacts of the fact that CVS doesn't really understand directories.

      [Historically, the empty `info/' dir did cause some problems in the arch
      branch, but that was fixed in the Makefile a long time ago.]

If you're seeing differences in .el files that aren't related to RCS keyword
expansion, then there's probably something wrong (so please send details).

> > before doing make bootstrap in the EMACS-CVS tree.
> 
> Done in EMACS-CVS tree (without doing "cvs update"): Still bootstraps
> fine.  I still cannot checkout a fresh copy of CVS-Emacs, I can only
> update my current tree.

Hmmm.  Given that the problem I observed was related to `vc-arch.el', maybe
the problem is that vc-arch is somehow getting invoked since the arch
checkout is obviously an arch tree, and there's a bug in vc-arch.

I'd think that the byte-compiler shouldn't trigger the VC machinery at all,
but maybe it does, and nobody noticed it before.

> > BTW, I think I found a work-around for the bootstrapping problem: make
> > sure vc-arch.el is compiled first, e.g., do:
> >
> >    src/bootstrap-emacs -batch -f byte-compile-file lisp/vc-arch.el
> >
> > and then try a `make bootstrap' again.
> >
> > I'm not yet sure what the cause of the problem is though.
> 
> Didn't work for me, because my
> --prefix=/import/xtra/emacs/Gnus_5_11_arch doesn't exist yet.

Hmmm, it should work (I think) -- the emacs being run is not the installed
emacs, but src/bootstrap-emacs, and it should be getting its lisp files from
../lisp.

BTW, are you building in the source tree, or using a separate build dir?
I always do the latter (so in fact, I think the command I posted above is
slightly wrong -- I used full paths for both src/bootstrap-emacs and
lisp/vc-arch.el, which is important in this case, as they are actually in
different trees).

Thanks,

-Miles

Remaining text of Reiner's message, for emacs-devel readers:

> But eventually this might bring us closer to the problem...
> 
> In another try, I got the following error:
> 
> --8<---------------cut here---------------start------------->8---
> [...]
> Compiling 
> /import/Archive/8.2-RPM-Groups/Productivity/Editors/Emacs/emacs/arch/HEAD/emacs/lisp/./eshell/esh-maint.el
> Compiling 
> /import/Archive/8.2-RPM-Groups/Productivity/Editors/Emacs/emacs/arch/HEAD/emacs/lisp/./eshell/esh-mode.el
> Loading ange-ftp (source)...
> 
> In end of data:
> esh-mode.el:1081:1:Warning: the following functions might not be defined at
>     runtime: characterp, char-int, eshell-subgroups, eshell-parse-arguments,
>     eshell-bol, eshell-move-argument, eshell-backward-argument,
>     eshell-output-filter, eshell-parse-command, eshell-send-input,
>     eshell-get-old-input, eshell-update-markers, eshell-parse-command-input,
>     eshell-invoke-directly, eshell-eval-command, eshell-life-is-too-much,
>     eshell-run-output-filters, eshell-beginning-of-output,
>     eshell-end-of-output, eshell-beginning-of-input, eshell-show-output,
>     eshell-send-invisible
> esh-mode.el:1081:1:Warning: the function `find-tag-interactive' is not known
>     to be defined.
> Wrote 
> /import/Archive/8.2-RPM-Groups/Productivity/Editors/Emacs/emacs/arch/HEAD/emacs/lisp/eshell/esh-mode.elc
> Compiling 
> /import/Archive/8.2-RPM-Groups/Productivity/Editors/Emacs/emacs/arch/HEAD/emacs/lisp/./eshell/esh-module.el
> Loading ange-ftp (source)...
> 
> In toplevel form:
> ../../../../../../../../../../import/Archive/8.2-RPM-Groups/Productivity/Editors/Emacs/emacs/arch/HEAD/emacs/lisp/eshell/esh-module.el:29:13:Error:
>  Lisp nesting exceeds max-lisp-eval-depth
> make[1]: *** [compile] Error 1
> make[1]: Leaving directory 
> `/import/Archive/8.2-RPM-Groups/Productivity/Editors/Emacs/emacs/arch/HEAD/emacs/lisp'
> make: *** [bootstrap] Error 2
> --8<---------------cut here---------------end--------------->8---
> 
> I was surprised about the "../../../../../../../../../.." sequence
> here.  Maybe there's a problem with the deep directory level or the
> long path of $PWD?  Thus, I did "tla get emacs--cvs-trunk--0 emacs" in
> /tmp/ste/arch and it bootstrapped successfully!
> 
> I was not able to trigger this behavior with CVS-HEAD.
> 
> But with arch, I get the "Lisp nesting exceeds max-lisp-eval-depth"
> error when compiling in a "strange" directory like
> "/import/Archive/8.2-RPM-Groups/Productivity/Editors/Emacs/emacs/cvs-HEAD/some---------------------other---------------------long---------------------path/second--some---------------------other---------------------long---------------------path/third--some---------------------other---------------------long---------------------path/a/b/c/d/e/f/z/emacs".
> 
> When I copy this to a short path, ...
> 
>   [...]/f/z/emacs$ cp -a . /tmp/ste/from-long
> 
> ... it bootstraps successfully (after doing "make maintainer-clean"
> and rerunning ./configure (same argument as before: only --prefix).
> 
> Admittedly, my built directory
> "/import/Archive/8.2-RPM-Groups/Productivity/Editors/Emacs/emacs/arch/HEAD/emacs/"
> is quite long (~ 100 chars, ~ 10th level from /), but I don't think
> that it's normal the limit are so tight.
> 
> Bye, Reiner.
-- 
We have met the enemy, and he is us.  -- Pogo




reply via email to

[Prev in Thread] Current Thread [Next in Thread]