unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Bootstrap deleted DOC-nnn file
@ 2013-05-10  0:22 Richard Stallman
  2013-05-10  9:24 ` Eli Zaretskii
  0 siblings, 1 reply; 57+ messages in thread
From: Richard Stallman @ 2013-05-10  0:22 UTC (permalink / raw)
  To: emacs-devel

I did a bootstrap, and it deleted the existing DOC-nnn file
that was used by the running Emacs.  As a result, that Emacs
had no access to documentation of dumped functions.

Because DOC-nnn files are numbered with versions, and each
time Emacs is dumped it gets a new number, there is no need
to delete the preexisting ones.  Why not leave them alone?

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
  Use Ekiga or an ordinary phone call




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-10  0:22 Bootstrap deleted DOC-nnn file Richard Stallman
@ 2013-05-10  9:24 ` Eli Zaretskii
  2013-05-10 11:02   ` Stephen J. Turnbull
  2013-05-10 22:08   ` Richard Stallman
  0 siblings, 2 replies; 57+ messages in thread
From: Eli Zaretskii @ 2013-05-10  9:24 UTC (permalink / raw)
  To: rms; +Cc: emacs-devel

> Date: Thu, 09 May 2013 20:22:27 -0400
> From: Richard Stallman <rms@gnu.org>
> 
> I did a bootstrap, and it deleted the existing DOC-nnn file
> that was used by the running Emacs.  As a result, that Emacs
> had no access to documentation of dumped functions.
> 
> Because DOC-nnn files are numbered with versions, and each
> time Emacs is dumped it gets a new number, there is no need
> to delete the preexisting ones.  Why not leave them alone?

But "make bootstrap" also deletes all the emacs-nnn executables,
doesn't it?  If so, there's no point in keeping their DOC files.



^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-10  9:24 ` Eli Zaretskii
@ 2013-05-10 11:02   ` Stephen J. Turnbull
  2013-05-10 12:51     ` Eli Zaretskii
  2013-05-10 22:08   ` Richard Stallman
  1 sibling, 1 reply; 57+ messages in thread
From: Stephen J. Turnbull @ 2013-05-10 11:02 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: rms, emacs-devel

Eli Zaretskii writes:

 > But "make bootstrap" also deletes all the emacs-nnn executables,
 > doesn't it?

Not *all* of them: there's one still live in memory.





^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-10 11:02   ` Stephen J. Turnbull
@ 2013-05-10 12:51     ` Eli Zaretskii
  2013-05-10 17:01       ` Stephen J. Turnbull
  0 siblings, 1 reply; 57+ messages in thread
From: Eli Zaretskii @ 2013-05-10 12:51 UTC (permalink / raw)
  To: Stephen J. Turnbull; +Cc: rms, emacs-devel

> From: "Stephen J. Turnbull" <stephen@xemacs.org>
> Cc: rms@gnu.org,
>     emacs-devel@gnu.org
> Date: Fri, 10 May 2013 20:02:01 +0900
> 
> Eli Zaretskii writes:
> 
>  > But "make bootstrap" also deletes all the emacs-nnn executables,
>  > doesn't it?
> 
> Not *all* of them: there's one still live in memory.

Not when bootstrap-clean is running, there isn't.



^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-10 12:51     ` Eli Zaretskii
@ 2013-05-10 17:01       ` Stephen J. Turnbull
  2013-05-10 17:19         ` Eli Zaretskii
  0 siblings, 1 reply; 57+ messages in thread
From: Stephen J. Turnbull @ 2013-05-10 17:01 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: rms, emacs-devel

Eli Zaretskii writes:

 > Not when bootstrap-clean is running, there isn't.

    src/emacs

then

    M-x shell RET
    make bootstrap RET

should do the trick.  No?









^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-10 17:01       ` Stephen J. Turnbull
@ 2013-05-10 17:19         ` Eli Zaretskii
  2013-05-11  2:46           ` Stephen J. Turnbull
  0 siblings, 1 reply; 57+ messages in thread
From: Eli Zaretskii @ 2013-05-10 17:19 UTC (permalink / raw)
  To: Stephen J. Turnbull; +Cc: rms, emacs-devel

> From: "Stephen J. Turnbull" <stephen@xemacs.org>
> Cc: rms@gnu.org,
>     emacs-devel@gnu.org
> Date: Sat, 11 May 2013 02:01:56 +0900
> 
> Eli Zaretskii writes:
> 
>  > Not when bootstrap-clean is running, there isn't.
> 
>     src/emacs
> 
> then
> 
>     M-x shell RET
>     make bootstrap RET
> 
> should do the trick.  No?

Perhaps you should switch to Windows, then: it won't let you delete a
file that is in use.



^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-10  9:24 ` Eli Zaretskii
  2013-05-10 11:02   ` Stephen J. Turnbull
@ 2013-05-10 22:08   ` Richard Stallman
  2013-05-10 22:33     ` chad
  1 sibling, 1 reply; 57+ messages in thread
From: Richard Stallman @ 2013-05-10 22:08 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: emacs-devel

    But "make bootstrap" also deletes all the emacs-nnn executables,
    doesn't it?  If so, there's no point in keeping their DOC files.

Yes there is.  I had a job running, and it could not get its DOC file.

However, it is a bad thing to delete the old executables too.
It is sometimes useful to compare behavior of the new version
with the old version.  There is no need to delete them,
so let the user decide.

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
  Use Ekiga or an ordinary phone call




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-10 22:08   ` Richard Stallman
@ 2013-05-10 22:33     ` chad
  2013-05-11  3:09       ` Stephen J. Turnbull
  2013-05-11  7:13       ` Eli Zaretskii
  0 siblings, 2 replies; 57+ messages in thread
From: chad @ 2013-05-10 22:33 UTC (permalink / raw)
  To: rms, emacs-devel@gnu.org Development; +Cc: Eli Zaretskii


On 10 May 2013, at 15:08, Richard Stallman <rms@gnu.org> wrote:

>    But "make bootstrap" also deletes all the emacs-nnn executables,
>    doesn't it?  If so, there's no point in keeping their DOC files.
> 
> Yes there is.  I had a job running, and it could not get its DOC file.
> 
> However, it is a bad thing to delete the old executables too.
> It is sometimes useful to compare behavior of the new version
> with the old version.  There is no need to delete them,
> so let the user decide.

I used to run into this minor issue frequently when building
development versions of emacs for MIT's campus computer system.
Over time, the build trees would collect a bunch of DOC files, but
it was pretty easy to clean up, and since we were intentionally on
the bleeding edge, keeping multiple versions was occasionally useful.

There is a big problem with that approach, though: only the executable
and the DOC files are versioned. The elisp libraries would immediately
out of sync, and since most of the changes are to lisp files, the
old binary+DOC was of very limited usefulness.

As an aside, these days I follow emacs dev on a macosx system (using
the ns port; the mac port doesn't have this functionality) that
uses a relocatable install, so the entirety of emacs lives inside
a single emacs-only directory tree (Emacs.app). This makes multiple
versions very easy to manage, and I keep at least two independent
emacsen around at all times. It's saved me more than once.

I hope that helps,
~Chad




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-10 17:19         ` Eli Zaretskii
@ 2013-05-11  2:46           ` Stephen J. Turnbull
  0 siblings, 0 replies; 57+ messages in thread
From: Stephen J. Turnbull @ 2013-05-11  2:46 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: rms, emacs-devel

Eli Zaretskii writes:

 > Perhaps you should switch to Windows, then: it won't let you delete a
 > file that is in use.

POSIX won't, either: POSIX semantics for rm(1) just deletes a
directory entry.  The file storage gets GC'd (more or less) when
nobody is using it.  The problem here is that a file *not* in use is
deleted, but the user wants to access it by name after that.

I suspect that bootstrap-clean accesses a file-in-use (specifically,
the dumped executable) before getting to DOC, so "use Windows" might
save the day here.

However, since Richard is experiencing the problem, we can assume a
switch to Windows is not an acceptable resolution. :-)



^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-10 22:33     ` chad
@ 2013-05-11  3:09       ` Stephen J. Turnbull
  2013-05-11 12:10         ` Richard Stallman
  2013-05-11  7:13       ` Eli Zaretskii
  1 sibling, 1 reply; 57+ messages in thread
From: Stephen J. Turnbull @ 2013-05-11  3:09 UTC (permalink / raw)
  To: chad; +Cc: Eli Zaretskii, rms, emacs-devel@gnu.org Development

chad writes:
 > On 10 May 2013, at 15:08, Richard Stallman <rms@gnu.org> wrote:

 > > However, it is a bad thing to delete the old executables too.
 > > It is sometimes useful to compare behavior of the new version
 > > with the old version.  There is no need to delete them,
 > > so let the user decide.

 > [The ns port] uses a relocatable install, so the entirety of emacs
 > lives inside a single emacs-only directory tree (Emacs.app). This
 > makes multiple versions very easy to manage, and I keep at least
 > two independent emacsen around at all times. It's saved me more
 > than once.

Richard, I agree with you that it would be nice to have access to the
DOC file, but I think that might best be served by tweaking the DOC-
file-finding routine to look for its DOC first, then a DOC of a later
build, then a DOC of the same version, and finally any DOC at all.  Of
course due to the way DOC files are indexed you still might lose, but
it's worth a try.  Fuzz the index a bit and search "near" the baked-in
index for the entry when you don't have an exact match.

Another fallback would be to do a find-function if the DOC file
doesn't exist or you can't find the docstring in the DOC file.

A third is to embed the DOC file in the executable, with an option to
keep it separate for users who need a slimmer executable (with modern
OS technology, are there any? :)

For the executable, I think you are in a small minority that isn't
best served by Chad's solution of a relocatable install.  True, it
involves extra effort and time to "make install", but you're already
doing a bootstrap.  In heavy hack-build-test cycles, one doesn't do a
"make clean" even, let alone a "make bootstrap-clean".  No problem
there, it's only when you have an expensive "make bootstrap" that you
want to precede it with "make install".

I don't know if the content-finding code that is used by the ns build
is generalized to all Emacs builds, but if it is you can get
relocatable builds for free.  If not, it's not that hard (and Mike
Sperber did it for XEmacs, I imagine he'd be willing to discuss the
fine points that caused him pain).

A final point: In the case of "the old version", I'm pretty sure you
mean "the last version I built", which probably will still work.  Most
of us, however, have substantial churn in our libraries due to distro
updates, and my experience is that old executables typically have a
lifetime of about 1-3 months (normally due to a security patch to
libpng, but who's counting? ;-) After that the executable won't load
anyway, unless statically linked.  Almost nobody does that anymore.
So cleaning up old versions is a harmless convenience for most
developers.  (I suppose you could do a "keep last N versions" the way
the traditional Emacs backup-versioning code does.)




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-10 22:33     ` chad
  2013-05-11  3:09       ` Stephen J. Turnbull
@ 2013-05-11  7:13       ` Eli Zaretskii
  2013-05-11 12:10         ` Richard Stallman
  1 sibling, 1 reply; 57+ messages in thread
From: Eli Zaretskii @ 2013-05-11  7:13 UTC (permalink / raw)
  To: chad; +Cc: rms, emacs-devel

> From: chad <yandros@MIT.EDU>
> Date: Fri, 10 May 2013 15:33:00 -0700
> Cc: Eli Zaretskii <eliz@gnu.org>
> 
> There is a big problem with that approach, though: only the executable
> and the DOC files are versioned. The elisp libraries would immediately
> out of sync, and since most of the changes are to lisp files, the
> old binary+DOC was of very limited usefulness.

It is useful if you can reproduce something starting with "emacs -Q".
Loading Lisp files is never a problem, even if they are in a different
directory.

Also, you seem to be thinking about building from the source tree
which is your local branch that tracks the master.  But that is only
one use case.  If you are working on a local branch, or in general in
a tree whose Lisp files don't change much, the problem you mention
doesn't happen at all.



^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-11  3:09       ` Stephen J. Turnbull
@ 2013-05-11 12:10         ` Richard Stallman
  2013-05-11 16:49           ` Richard Stallman
  0 siblings, 1 reply; 57+ messages in thread
From: Richard Stallman @ 2013-05-11 12:10 UTC (permalink / raw)
  To: Stephen J. Turnbull; +Cc: eliz, yandros, emacs-devel

    Richard, I agree with you that it would be nice to have access to the
    DOC file, but I think that might best be served by tweaking the DOC-
    file-finding routine to look for its DOC first, then a DOC of a later
    build, then a DOC of the same version, and finally any DOC at all.  Of
    course due to the way DOC files are indexed you still might lose, but
    it's worth a try.  Fuzz the index a bit and search "near" the baked-in
    index for the entry when you don't have an exact match.

This could work, but why do something complex and unreliable
instead of the simple solution (don't delete the files)?

    A third is to embed the DOC file in the executable, with an option to
    keep it separate for users who need a slimmer executable (with modern
    OS technology, are there any? :)

Maybe this is a reasonable thing to do nowadays, but it is a bigger change.
Why not fix the bug the simple way now, and think about this later?

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
  Use Ekiga or an ordinary phone call




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-11  7:13       ` Eli Zaretskii
@ 2013-05-11 12:10         ` Richard Stallman
  2013-05-11 12:58           ` Eli Zaretskii
  0 siblings, 1 reply; 57+ messages in thread
From: Richard Stallman @ 2013-05-11 12:10 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: yandros, emacs-devel

It is true that Lisp files are out of sync after the recompile.
However, in practice just reloading the Lisp file that has the problem
usually works.

I see two reasons why it is useful to run the old executables.

* When it is convenient to keep running an existing Emacs job
for a while.

* To compare behavior, if a new bug has appeared.

I don't suggest doing a lot of work to support these things perfectly,
but they are more important than the minor cleanliness of
deleting some files merely because they are probably not useful.

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
  Use Ekiga or an ordinary phone call




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-11 12:10         ` Richard Stallman
@ 2013-05-11 12:58           ` Eli Zaretskii
  2013-05-11 14:50             ` Stefan Monnier
  2013-05-11 16:49             ` Richard Stallman
  0 siblings, 2 replies; 57+ messages in thread
From: Eli Zaretskii @ 2013-05-11 12:58 UTC (permalink / raw)
  To: rms; +Cc: yandros, emacs-devel

> Date: Sat, 11 May 2013 08:10:46 -0400
> From: Richard Stallman <rms@gnu.org>
> CC: yandros@MIT.EDU, emacs-devel@gnu.org
> 
> It is true that Lisp files are out of sync after the recompile.
> However, in practice just reloading the Lisp file that has the problem
> usually works.
> 
> I see two reasons why it is useful to run the old executables.
> 
> * When it is convenient to keep running an existing Emacs job
> for a while.
> 
> * To compare behavior, if a new bug has appeared.
> 
> I don't suggest doing a lot of work to support these things perfectly,
> but they are more important than the minor cleanliness of
> deleting some files merely because they are probably not useful.

Perhaps a running Emacs could create a kind of "lock file" for DOC it
uses (maybe even using the same machinery we already have in
filelock.c), and then "make bootstrap" could refrain from deleting a
DOC file thus "locked".



^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-11 12:58           ` Eli Zaretskii
@ 2013-05-11 14:50             ` Stefan Monnier
  2013-05-11 16:49               ` Richard Stallman
  2013-05-11 16:49             ` Richard Stallman
  1 sibling, 1 reply; 57+ messages in thread
From: Stefan Monnier @ 2013-05-11 14:50 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: yandros, rms, emacs-devel

> Perhaps a running Emacs could create a kind of "lock file" for DOC it
> uses (maybe even using the same machinery we already have in
> filelock.c), and then "make bootstrap" could refrain from deleting a
> DOC file thus "locked".

I think it's simply time to give up on DOC-nn.mm and just use "DOC".
I'll do that later this week.


        Stefan



^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-11 12:10         ` Richard Stallman
@ 2013-05-11 16:49           ` Richard Stallman
  2013-05-11 17:16             ` Eli Zaretskii
  2013-05-12  2:45             ` Stephen J. Turnbull
  0 siblings, 2 replies; 57+ messages in thread
From: Richard Stallman @ 2013-05-11 16:49 UTC (permalink / raw)
  To: stephen, eliz, yandros, emacs-devel

Another use of not deleting the old executables and DOC files
is that I would be able to tell, roughly, when I got the sources
last.  That might help me track down the mysterious bug
that converts multibyte characters to unibyte characters as I edit.

Right now I have no idea how long ago I had previously recompiled,
whether it was a few weeks ago or a few months ago.

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
  Use Ekiga or an ordinary phone call




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-11 12:58           ` Eli Zaretskii
  2013-05-11 14:50             ` Stefan Monnier
@ 2013-05-11 16:49             ` Richard Stallman
  1 sibling, 0 replies; 57+ messages in thread
From: Richard Stallman @ 2013-05-11 16:49 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: yandros, emacs-devel

    Perhaps a running Emacs could create a kind of "lock file" for DOC it
    uses (maybe even using the same machinery we already have in
    filelock.c), and then "make bootstrap" could refrain from deleting a
    DOC file thus "locked".

I suppose it is possible, but why do this
rather than the simple solution -- just don't delete them?

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
  Use Ekiga or an ordinary phone call




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-11 14:50             ` Stefan Monnier
@ 2013-05-11 16:49               ` Richard Stallman
  2013-05-11 17:37                 ` Stefan Monnier
  0 siblings, 1 reply; 57+ messages in thread
From: Richard Stallman @ 2013-05-11 16:49 UTC (permalink / raw)
  To: Stefan Monnier; +Cc: eliz, yandros, emacs-devel

    I think it's simply time to give up on DOC-nn.mm and just use "DOC".
    I'll do that later this week.

Won't that cause all but the latest Emacs executable in the directory
to fail to access doc strings?  Why make such a change instead
of leaving things alone?

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
  Use Ekiga or an ordinary phone call




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-11 16:49           ` Richard Stallman
@ 2013-05-11 17:16             ` Eli Zaretskii
  2013-05-11 21:44               ` Richard Stallman
  2013-05-12  2:45             ` Stephen J. Turnbull
  1 sibling, 1 reply; 57+ messages in thread
From: Eli Zaretskii @ 2013-05-11 17:16 UTC (permalink / raw)
  To: rms; +Cc: stephen, yandros, emacs-devel

> Date: Sat, 11 May 2013 12:49:00 -0400
> From: Richard Stallman <rms@gnu.org>
> 
> Another use of not deleting the old executables and DOC files
> is that I would be able to tell, roughly, when I got the sources
> last.  That might help me track down the mysterious bug
> that converts multibyte characters to unibyte characters as I edit.
> 
> Right now I have no idea how long ago I had previously recompiled,
> whether it was a few weeks ago or a few months ago.

Doesn't "M-x emacs-version RET" tells you that?  It includes the build
date.




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-11 16:49               ` Richard Stallman
@ 2013-05-11 17:37                 ` Stefan Monnier
  2013-05-11 21:44                   ` Richard Stallman
  0 siblings, 1 reply; 57+ messages in thread
From: Stefan Monnier @ 2013-05-11 17:37 UTC (permalink / raw)
  To: Richard Stallman; +Cc: eliz, yandros, emacs-devel

>     I think it's simply time to give up on DOC-nn.mm and just use "DOC".
>     I'll do that later this week.
> Won't that cause all but the latest Emacs executable in the directory
> to fail to access doc strings?

No, they'll just all use the same file, just like they all use the same
.el and .elc files.


        Stefan



^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-11 17:16             ` Eli Zaretskii
@ 2013-05-11 21:44               ` Richard Stallman
  2013-05-11 22:14                 ` Christopher Schmidt
  2013-05-12  3:00                 ` Eli Zaretskii
  0 siblings, 2 replies; 57+ messages in thread
From: Richard Stallman @ 2013-05-11 21:44 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: stephen, yandros, emacs-devel

emacs-version will tell me that I built this Emacs on May 1.
ls -l emacs will tell me the same thing.

However, I can't find out when I built the previous
executable, as that was deleted.

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
  Use Ekiga or an ordinary phone call




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-11 17:37                 ` Stefan Monnier
@ 2013-05-11 21:44                   ` Richard Stallman
  2013-05-13 15:15                     ` Stefan Monnier
  0 siblings, 1 reply; 57+ messages in thread
From: Richard Stallman @ 2013-05-11 21:44 UTC (permalink / raw)
  To: Stefan Monnier; +Cc: eliz, yandros, emacs-devel

    > Won't that cause all but the latest Emacs executable in the directory
    > to fail to access doc strings?

    No, they'll just all use the same file, just like they all use the same
    .el and .elc files.

But... the dumped Emacs contains offsets in the DOC file.
If the DOC file is changed, those references won't work.

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
  Use Ekiga or an ordinary phone call




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-11 21:44               ` Richard Stallman
@ 2013-05-11 22:14                 ` Christopher Schmidt
  2013-05-12 19:39                   ` Richard Stallman
  2013-05-12  3:00                 ` Eli Zaretskii
  1 sibling, 1 reply; 57+ messages in thread
From: Christopher Schmidt @ 2013-05-11 22:14 UTC (permalink / raw)
  To: emacs-devel

Richard Stallman <rms@gnu.org> writes:
> However, I can't find out when I built the previous executable, as
> that was deleted.

How about executing

    ./src/emacs -q --batch --eval "(princ emacs-build-time)" > ~/prev-emacs-build

after each build?

FWIW the bzr revision (emacs-bzr-version) is more important than the
build time.

        Christopher



^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-11 16:49           ` Richard Stallman
  2013-05-11 17:16             ` Eli Zaretskii
@ 2013-05-12  2:45             ` Stephen J. Turnbull
  2013-05-12 15:33               ` Eli Zaretskii
                                 ` (3 more replies)
  1 sibling, 4 replies; 57+ messages in thread
From: Stephen J. Turnbull @ 2013-05-12  2:45 UTC (permalink / raw)
  To: rms; +Cc: eliz, yandros, emacs-devel

Richard Stallman writes:

 > Another use of not deleting the old executables and DOC files
 > is that I would be able to tell, roughly, when I got the sources
 > last.

"make install" (to someplace other than where I put my "system" emacs)
is my friend here.

Also, bisection on the bzr trunk[1] is usually quite precise about
identifying when a bug was introduced.  It's often slower in clock
time (has to rebuild every tested version), but it can be quite
automated so a much lower burden on the developer's attention in many
cases.

Once again, I think you are the unusual developer here.  You'll have
to judge how important preserving your practices is, but I doubt
you have much company.  The practices I mention above require very
little developer effort once they become habit.  Again, the cost of
changing your workflow is something you have to judge for yourself.

Footnotes: 
[1]  I thought bzr had a bisect command, but "bzr help bisect" comes
up nil.  Somebody must have a helper script or plugin, or you can roll
your own easily enough.




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-11 21:44               ` Richard Stallman
  2013-05-11 22:14                 ` Christopher Schmidt
@ 2013-05-12  3:00                 ` Eli Zaretskii
  2013-05-12 19:39                   ` Richard Stallman
  1 sibling, 1 reply; 57+ messages in thread
From: Eli Zaretskii @ 2013-05-12  3:00 UTC (permalink / raw)
  To: rms; +Cc: stephen, yandros, emacs-devel

> Date: Sat, 11 May 2013 17:44:26 -0400
> From: Richard Stallman <rms@gnu.org>
> CC: stephen@xemacs.org, yandros@MIT.EDU, emacs-devel@gnu.org
> 
> emacs-version will tell me that I built this Emacs on May 1.
> ls -l emacs will tell me the same thing.
> 
> However, I can't find out when I built the previous
> executable, as that was deleted.

Don't you update from bzr whenever you build?  If so, sorting your
files by time stamp will show you your previous updates, which
correspond to your builds.

You can also install the bzr-tiplog plugin
(https://launchpad.net/bzr-tiplog), which shows you the revisions at
which you updated from bzr.



^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-12  2:45             ` Stephen J. Turnbull
@ 2013-05-12 15:33               ` Eli Zaretskii
  2013-05-12 19:39               ` Richard Stallman
                                 ` (2 subsequent siblings)
  3 siblings, 0 replies; 57+ messages in thread
From: Eli Zaretskii @ 2013-05-12 15:33 UTC (permalink / raw)
  To: Stephen J. Turnbull; +Cc: yandros, rms, emacs-devel

> From: "Stephen J. Turnbull" <stephen@xemacs.org>
> Cc: eliz@gnu.org,
>     yandros@MIT.EDU,
>     emacs-devel@gnu.org
> Date: Sun, 12 May 2013 11:45:37 +0900
> 
> [1]  I thought bzr had a bisect command, but "bzr help bisect" comes
> up nil.

It's a plugin that needs to be installed.



^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-11 22:14                 ` Christopher Schmidt
@ 2013-05-12 19:39                   ` Richard Stallman
  0 siblings, 0 replies; 57+ messages in thread
From: Richard Stallman @ 2013-05-12 19:39 UTC (permalink / raw)
  To: Christopher Schmidt; +Cc: emacs-devel

    FWIW the bzr revision (emacs-bzr-version) is more important than the
    build time.

I could run that too in the old executables, if they had not been
deleted.

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
  Use Ekiga or an ordinary phone call




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-12  2:45             ` Stephen J. Turnbull
  2013-05-12 15:33               ` Eli Zaretskii
@ 2013-05-12 19:39               ` Richard Stallman
  2013-05-12 19:39               ` Richard Stallman
  2013-05-12 19:39               ` Richard Stallman
  3 siblings, 0 replies; 57+ messages in thread
From: Richard Stallman @ 2013-05-12 19:39 UTC (permalink / raw)
  To: Stephen J. Turnbull; +Cc: eliz, yandros, emacs-devel

    Also, bisection on the bzr trunk[1] is usually quite precise about
    identifying when a bug was introduced.

If "bisection" means compiling intermediate versions, that is not
practical on my slow machine which takes hours to do a bootstrap.
However, someone else could do it to find this bug.

That has nothing directly to do with the issue of deleting the old
executables.

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
  Use Ekiga or an ordinary phone call




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-12  2:45             ` Stephen J. Turnbull
  2013-05-12 15:33               ` Eli Zaretskii
  2013-05-12 19:39               ` Richard Stallman
@ 2013-05-12 19:39               ` Richard Stallman
  2013-05-12 23:32                 ` Stephen J. Turnbull
  2013-05-12 19:39               ` Richard Stallman
  3 siblings, 1 reply; 57+ messages in thread
From: Richard Stallman @ 2013-05-12 19:39 UTC (permalink / raw)
  To: Stephen J. Turnbull; +Cc: eliz, yandros, emacs-devel

    Once again, I think you are the unusual developer here.

So what?

Deleting the old executables is of so little benefit
that if anyone ever finds it substantially inconvenient, that is
a reason not to do it.

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
  Use Ekiga or an ordinary phone call




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-12  2:45             ` Stephen J. Turnbull
                                 ` (2 preceding siblings ...)
  2013-05-12 19:39               ` Richard Stallman
@ 2013-05-12 19:39               ` Richard Stallman
  2013-05-12 23:04                 ` Stephen J. Turnbull
  3 siblings, 1 reply; 57+ messages in thread
From: Richard Stallman @ 2013-05-12 19:39 UTC (permalink / raw)
  To: Stephen J. Turnbull; +Cc: eliz, yandros, emacs-devel

    "make install" (to someplace other than where I put my "system" emacs)
    is my friend here.

That is sketchy.  What exactly are you saying I should do?

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
  Use Ekiga or an ordinary phone call




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-12  3:00                 ` Eli Zaretskii
@ 2013-05-12 19:39                   ` Richard Stallman
  2013-05-12 20:00                     ` Eli Zaretskii
  2013-05-13 14:09                     ` Richard Stallman
  0 siblings, 2 replies; 57+ messages in thread
From: Richard Stallman @ 2013-05-12 19:39 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: stephen, yandros, emacs-devel

    Don't you update from bzr whenever you build?  If so, sorting your
    files by time stamp will show you your previous updates, which
    correspond to your builds.

Thanks.  This shows that my previous update was Mar 28.
The bug did not occur in that version.

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
  Use Ekiga or an ordinary phone call




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-12 19:39                   ` Richard Stallman
@ 2013-05-12 20:00                     ` Eli Zaretskii
  2013-05-13 14:09                     ` Richard Stallman
  1 sibling, 0 replies; 57+ messages in thread
From: Eli Zaretskii @ 2013-05-12 20:00 UTC (permalink / raw)
  To: rms; +Cc: stephen, yandros, emacs-devel

> Date: Sun, 12 May 2013 15:39:59 -0400
> From: Richard Stallman <rms@gnu.org>
> CC: stephen@xemacs.org, yandros@MIT.EDU, emacs-devel@gnu.org
> 
>     Don't you update from bzr whenever you build?  If so, sorting your
>     files by time stamp will show you your previous updates, which
>     correspond to your builds.
> 
> Thanks.  This shows that my previous update was Mar 28.
> The bug did not occur in that version.

That's strange, because my analysis indicates that it was introduced
on Mar 11.  Maybe my conclusions were wrong.



^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-12 19:39               ` Richard Stallman
@ 2013-05-12 23:04                 ` Stephen J. Turnbull
  0 siblings, 0 replies; 57+ messages in thread
From: Stephen J. Turnbull @ 2013-05-12 23:04 UTC (permalink / raw)
  To: rms; +Cc: eliz, yandros, emacs-devel

Richard Stallman writes:
 >     "make install" (to someplace other than where I put my "system"
 >     emacs) is my friend here.
 > 
 > That is sketchy.  What exactly are you saying I should do?

I'm not saying you *should* do it; it's a workflow change with costs
only you can assess.

In my case I keep a "good build" (often a release) in
/usr/local/bin/xemacs, and several configurations by NAME in
/usr/local/src/XEmacs/+NAME/src/xemacs (ie the source tree).  Since I
do those builds irregularly I usually have a series of binaries lying
around, and for functions that aren't related to a particular build,
that's often enough to check that it's a recent bug.  That allows me
to restrict bisection.  If not I go directly to bisection.

If I wanted to completely avoid bisection, I would build my XEmacs
with "configure --without-prefix[1] ...", then[2]

    make install prefix=/usr/local/save/`date +%Y%m%d%H%M%S`

I don't know if Emacs supports all the features needed, but I suspect
Emacs *does* support them since the GNUStep port provides a
"relocatable installation" like --without-prefix.  You would get the
same effect with "configure --prefix=/usr/local/`date +%Y%m%d%H%M%S`"
and then just "make install" (at the expense of needing to reconfigure
and rebuild if you want to install to an "always good" location the
way I use /usr/local).  (N.B. Use of a time stamp happens to be
well-fitted to your requirements, but it's not designed that way.  I
do this with build logs anyway, so it was the natural thing to do
here.)

There was also a program called "GNU stow" which provided support for
doing this kind of thing (more aimed at supporting multiple
architectures served from an single NFS server).  I never used it but
a couple of people who adminned such systems recommended it highly (in
1998...).


Footnotes: 
[1]  This option makes XEmacs assume an installation layout relative
to the executable, and the prefix is nowhere compiled in to the binary
except in the `describe-installation' string.

[2]  Adjust to taste; I only have one application I would do this for,
so a timestamp is all I need.




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-12 19:39               ` Richard Stallman
@ 2013-05-12 23:32                 ` Stephen J. Turnbull
  2013-05-13 23:47                   ` Richard Stallman
  0 siblings, 1 reply; 57+ messages in thread
From: Stephen J. Turnbull @ 2013-05-12 23:32 UTC (permalink / raw)
  To: rms; +Cc: eliz, yandros, emacs-devel

Richard Stallman writes:

 > Deleting the old executables is of so little benefit that if anyone
 > ever finds it substantially inconvenient, that is a reason not to
 > do it.

What I personally find inconvenient is that every bit of lint in the
build tree eventually leads to a confused beta tester.  And yes, I
have had people tell me "I'm sorry, I had an old executable running
for some reason", resolving a bug report.

This has become a much bigger deal now that essentially all of our
testers get their trees from VCS, and therefore typically repeatedly
build in the same tree.




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-12 19:39                   ` Richard Stallman
  2013-05-12 20:00                     ` Eli Zaretskii
@ 2013-05-13 14:09                     ` Richard Stallman
  2013-05-13 16:27                       ` Andreas Schwab
  2013-05-13 16:30                       ` Eli Zaretskii
  1 sibling, 2 replies; 57+ messages in thread
From: Richard Stallman @ 2013-05-13 14:09 UTC (permalink / raw)
  To: rms; +Cc: eliz, yandros, stephen, emacs-devel

	Don't you update from bzr whenever you build?  If so, sorting your
	files by time stamp will show you your previous updates, which
	correspond to your builds.

I wrote:

    Thanks.  This shows that my previous update was Mar 28.
    The bug did not occur in that version.

But since the bug seems to have been introduced on Mar 11,
maybe I did not actually recompile on Mar 28.  Maybe I just
updated the sources without recompiling.  I can't tell.

I could reliably know when I recompiled last, and from which BZR
version, if I had the old executables.

It is no longer crucial for this bug, since its cause is now known.
However, the issue may arise at other times.

In the past, I rarely did make bootstrap.
A simple recompile nearly always worked.  However, the Emacs build
system has got a lot more complex, and a simple recompile usually
does not work; I am effectively compelled to do a bootstrap instead.
I think that is a change for the worse.

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
  Use Ekiga or an ordinary phone call




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-11 21:44                   ` Richard Stallman
@ 2013-05-13 15:15                     ` Stefan Monnier
  2013-05-13 23:47                       ` Richard Stallman
  0 siblings, 1 reply; 57+ messages in thread
From: Stefan Monnier @ 2013-05-13 15:15 UTC (permalink / raw)
  To: Richard Stallman; +Cc: eliz, yandros, emacs-devel

> But... the dumped Emacs contains offsets in the DOC file.
> If the DOC file is changed, those references won't work.

No, they don't, but if the reference is found to be pointing to a wrong
place, the Snarf-documentation is called again to reset the offsets, so
the references work again.
I know, because I've been using such a configuration for many years now.


        Stefan



^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-13 14:09                     ` Richard Stallman
@ 2013-05-13 16:27                       ` Andreas Schwab
  2013-05-14 13:32                         ` Richard Stallman
  2013-05-13 16:30                       ` Eli Zaretskii
  1 sibling, 1 reply; 57+ messages in thread
From: Andreas Schwab @ 2013-05-13 16:27 UTC (permalink / raw)
  To: rms; +Cc: eliz, yandros, stephen, emacs-devel

Richard Stallman <rms@gnu.org> writes:

> In the past, I rarely did make bootstrap.

In the past, Emacs didn't change much.

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."



^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-13 14:09                     ` Richard Stallman
  2013-05-13 16:27                       ` Andreas Schwab
@ 2013-05-13 16:30                       ` Eli Zaretskii
  1 sibling, 0 replies; 57+ messages in thread
From: Eli Zaretskii @ 2013-05-13 16:30 UTC (permalink / raw)
  To: rms; +Cc: stephen, yandros, emacs-devel

> Date: Mon, 13 May 2013 10:09:02 -0400
> From: Richard Stallman <rms@gnu.org>
> CC: eliz@gnu.org, stephen@xemacs.org, yandros@MIT.EDU,
> 	emacs-devel@gnu.org
> 
> In the past, I rarely did make bootstrap.
> A simple recompile nearly always worked.  However, the Emacs build
> system has got a lot more complex, and a simple recompile usually
> does not work; I am effectively compelled to do a bootstrap instead.
> I think that is a change for the worse.

Actually, I hate bootstrapping as well, and I seldom if ever need to.
Even if a simple "make" fails, trying "make" a few more times, or
maybe "make -k" in some extreme situations usually does the job.  And
when worse comes to worst, I just do

  find ./lisp -name '*.elc' -delete
  make




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-13 15:15                     ` Stefan Monnier
@ 2013-05-13 23:47                       ` Richard Stallman
  2013-05-14  1:56                         ` Stefan Monnier
  0 siblings, 1 reply; 57+ messages in thread
From: Richard Stallman @ 2013-05-13 23:47 UTC (permalink / raw)
  To: Stefan Monnier; +Cc: eliz, yandros, emacs-devel

    No, they don't, but if the reference is found to be pointing to a wrong
    place, the Snarf-documentation is called again to reset the offsets, so
    the references work again.
    I know, because I've been using such a configuration for many years now.

I recall that C-h f did not work in the old Emacs that I continued running
for a while after the bootstrap.  Maybe there is a bug in this in some
circumstances.

Next time I bootstrap (I try not to do it often) I will try to
remember to note down details.

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
  Use Ekiga or an ordinary phone call




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-12 23:32                 ` Stephen J. Turnbull
@ 2013-05-13 23:47                   ` Richard Stallman
  2013-05-14  1:24                     ` Stephen J. Turnbull
  0 siblings, 1 reply; 57+ messages in thread
From: Richard Stallman @ 2013-05-13 23:47 UTC (permalink / raw)
  To: Stephen J. Turnbull; +Cc: eliz, yandros, emacs-devel

      And yes, I
    have had people tell me "I'm sorry, I had an old executable running
    for some reason", resolving a bug report.

How did they run the old executables?  I doubt that they typed
emacs-MM.NN.OO.P to run one.  More likely they did `make install',
don't you think?  I could have done that, and not lost the old
executable.  But I don't want to run an old executable by mistake.
Having the old executables sit in src under their version-specific
names will not lead me to run an old executable unless I really want
to.

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
  Use Ekiga or an ordinary phone call




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-13 23:47                   ` Richard Stallman
@ 2013-05-14  1:24                     ` Stephen J. Turnbull
  0 siblings, 0 replies; 57+ messages in thread
From: Stephen J. Turnbull @ 2013-05-14  1:24 UTC (permalink / raw)
  To: rms; +Cc: eliz, yandros, emacs-devel

Richard Stallman writes:
 >       And yes, I
 >     have had people tell me "I'm sorry, I had an old executable
 >     running for some reason", resolving a bug report.
 > 
 > How did they run the old executables?  I doubt that they typed
 > emacs-MM.NN.OO.P to run one.

Doubt what you like, but in the cases I refer to indeed the path used
to invoke the executable was versioned, though not always explicitly
typed by the user (aliases, completion, etc).  It's quite unusual that
it happens without the user recognizing it, but memories are fallible,
and when it does happen, it obscures the actual problem (or lack of it
in the case of spurious reports of regressions), delaying solution or
creating unnecessary work for maintainers.

 > But I don't want to run an old executable by mistake.

I quite understand that.  I have been at pains to avoid denying your
experience or workflow; it is what it is and I do not deny that for
you the benefits of keeping old executables around for various reasons
exceeds the cost.  My whole point is simply that your experience is
hardly universal.  Apparently most people don't care at all, while a
few (including more than one active maintainer of Emacsen) experience
the costs to be noticeably greater than the benefits.




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-13 23:47                       ` Richard Stallman
@ 2013-05-14  1:56                         ` Stefan Monnier
  2013-05-14  6:29                           ` Eli Zaretskii
  2013-05-15  0:05                           ` Richard Stallman
  0 siblings, 2 replies; 57+ messages in thread
From: Stefan Monnier @ 2013-05-14  1:56 UTC (permalink / raw)
  To: Richard Stallman; +Cc: eliz, yandros, emacs-devel

>     No, they don't, but if the reference is found to be pointing to a wrong
>     place, the Snarf-documentation is called again to reset the offsets, so
>     the references work again.
>     I know, because I've been using such a configuration for many years now.

> I recall that C-h f did not work in the old Emacs that I continued running
> for a while after the bootstrap.

That's because the DOC-nn.mm file was gone.  If there is a single DOC
file, which we don't bother to remove, this won't happen.


        Stefan



^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-14  1:56                         ` Stefan Monnier
@ 2013-05-14  6:29                           ` Eli Zaretskii
  2013-05-14 12:48                             ` Stefan Monnier
  2013-05-15  0:05                           ` Richard Stallman
  1 sibling, 1 reply; 57+ messages in thread
From: Eli Zaretskii @ 2013-05-14  6:29 UTC (permalink / raw)
  To: Stefan Monnier; +Cc: yandros, rms, emacs-devel

> From: Stefan Monnier <monnier@iro.umontreal.ca>
> Date: Mon, 13 May 2013 21:56:57 -0400
> Cc: eliz@gnu.org, yandros@MIT.EDU, emacs-devel@gnu.org
> 
> If there is a single DOC file, which we don't bother to remove

You probably mean "which we recreate every time", because etc/DOC is
removed as part of a bootstrap (and even when DOC is rebuilt because
it's outdated).  Right?



^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-14  6:29                           ` Eli Zaretskii
@ 2013-05-14 12:48                             ` Stefan Monnier
  0 siblings, 0 replies; 57+ messages in thread
From: Stefan Monnier @ 2013-05-14 12:48 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: yandros, rms, emacs-devel

>> If there is a single DOC file, which we don't bother to remove
> You probably mean "which we recreate every time", because etc/DOC is
> removed as part of a bootstrap (and even when DOC is rebuilt because
> it's outdated).  Right?

Sure.  We could also just leave it, since I don't think it can do
much harm.  The point is that it won't be "gone for ever".


        Stefan



^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-13 16:27                       ` Andreas Schwab
@ 2013-05-14 13:32                         ` Richard Stallman
  2013-05-14 16:32                           ` Paul Eggert
  2013-05-14 16:54                           ` Andreas Schwab
  0 siblings, 2 replies; 57+ messages in thread
From: Richard Stallman @ 2013-05-14 13:32 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: eliz, yandros, stephen, emacs-devel

    In the past, Emacs didn't change much.

Yes it did -- but few changes required a bootstrap
because the build system was simpler.  One in a while
I had to do ./configure, but that was simple and quick.
Now that usually doesn't work, and the only way I can
get past it is to do a bootstrap.

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
  Use Ekiga or an ordinary phone call




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-14 13:32                         ` Richard Stallman
@ 2013-05-14 16:32                           ` Paul Eggert
  2013-05-15 11:43                             ` Richard Stallman
  2013-05-14 16:54                           ` Andreas Schwab
  1 sibling, 1 reply; 57+ messages in thread
From: Paul Eggert @ 2013-05-14 16:32 UTC (permalink / raw)
  To: rms; +Cc: emacs-devel

On 05/14/13 06:32, Richard Stallman wrote:
> Now that usually doesn't work, and the only way I can
> get past it is to do a bootstrap.

This isn't what I observe.  Usually, when the system
build procedure changes, a plain 'make' causes 'configure'
to be rebuilt and re-run.  I do run into cases where this
doesn't work and a bootstrap is needed, but these are less
common for me.

For example, I just now merged the latest trunk changes
into my copy.  I'd guess it was a day or two's worth.  I was
delayed mostly by 'bzr' (that is, 'bzr up', 'bzr merge',
'bzr commit'), which took many seconds.  'make'
took just a few seconds.

Perhaps one of the differences is that I merge and build fairly often.
If you run into the problem again, perhaps you could jot down
the bzr version of the old Emacs, and of the new Emacs;
then I could try to reproduce it here.



^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-14 13:32                         ` Richard Stallman
  2013-05-14 16:32                           ` Paul Eggert
@ 2013-05-14 16:54                           ` Andreas Schwab
  2013-05-15 11:43                             ` Richard Stallman
  1 sibling, 1 reply; 57+ messages in thread
From: Andreas Schwab @ 2013-05-14 16:54 UTC (permalink / raw)
  To: rms; +Cc: eliz, yandros, stephen, emacs-devel

Richard Stallman <rms@gnu.org> writes:

> Now that usually doesn't work, and the only way I can
> get past it is to do a bootstrap.

Most of the time you can do without bootstrap by stratetic deletion of
elc files.

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."



^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-14  1:56                         ` Stefan Monnier
  2013-05-14  6:29                           ` Eli Zaretskii
@ 2013-05-15  0:05                           ` Richard Stallman
  1 sibling, 0 replies; 57+ messages in thread
From: Richard Stallman @ 2013-05-15  0:05 UTC (permalink / raw)
  To: Stefan Monnier; +Cc: eliz, yandros, emacs-devel

    > I recall that C-h f did not work in the old Emacs that I continued running
    > for a while after the bootstrap.

    That's because the DOC-nn.mm file was gone.  If there is a single DOC
    file, which we don't bother to remove, this won't happen.

I see.

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
  Use Ekiga or an ordinary phone call




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-14 16:32                           ` Paul Eggert
@ 2013-05-15 11:43                             ` Richard Stallman
  2013-05-15 12:22                               ` Eli Zaretskii
  2013-05-15 19:08                               ` Stefan Monnier
  0 siblings, 2 replies; 57+ messages in thread
From: Richard Stallman @ 2013-05-15 11:43 UTC (permalink / raw)
  To: Paul Eggert; +Cc: emacs-devel

    If you run into the problem again, perhaps you could jot down
    the bzr version of the old Emacs, and of the new Emacs;
    then I could try to reproduce it here.

I will try to remember to do this next time.

I generally go for a few months between updates.  It takes many hours
to bootstrap, and even plain make takes a while.

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
  Use Ekiga or an ordinary phone call




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-14 16:54                           ` Andreas Schwab
@ 2013-05-15 11:43                             ` Richard Stallman
  2013-05-15 12:20                               ` Eli Zaretskii
  0 siblings, 1 reply; 57+ messages in thread
From: Richard Stallman @ 2013-05-15 11:43 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: eliz, yandros, stephen, emacs-devel

    Most of the time you can do without bootstrap by stratetic deletion of
    elc files.

I know what to do with elc files.  The problems that make me bootstrap
have to do with configuration.

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
  Use Ekiga or an ordinary phone call




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-15 11:43                             ` Richard Stallman
@ 2013-05-15 12:20                               ` Eli Zaretskii
  2013-05-15 23:27                                 ` Richard Stallman
  0 siblings, 1 reply; 57+ messages in thread
From: Eli Zaretskii @ 2013-05-15 12:20 UTC (permalink / raw)
  To: rms; +Cc: stephen, yandros, schwab, emacs-devel

> Date: Wed, 15 May 2013 07:43:34 -0400
> From: Richard Stallman <rms@gnu.org>
> CC: eliz@gnu.org, yandros@MIT.EDU, stephen@xemacs.org,
> 	emacs-devel@gnu.org
> 
> The problems that make me bootstrap have to do with configuration.

That is extremely strange, since bootstrap doesn't do anything special
wrt anything but the *.elc files.  Can you tell why you thought the
problems were with configuration?

If the problems are really not with stale *.elc files, then
"make distclean ; make" should do the same as "make bootstrap",
AFAIR.



^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-15 11:43                             ` Richard Stallman
@ 2013-05-15 12:22                               ` Eli Zaretskii
  2013-05-15 13:24                                 ` Xue Fuqiao
  2013-05-15 23:27                                 ` Richard Stallman
  2013-05-15 19:08                               ` Stefan Monnier
  1 sibling, 2 replies; 57+ messages in thread
From: Eli Zaretskii @ 2013-05-15 12:22 UTC (permalink / raw)
  To: rms; +Cc: eggert, emacs-devel

> Date: Wed, 15 May 2013 07:43:17 -0400
> From: Richard Stallman <rms@gnu.org>
> Cc: emacs-devel@gnu.org
> 
> It takes many hours to bootstrap, and even plain make takes a while.

If you have a machine with more than one core, then "make -j N", where
N is the number of cores multiplied by 1.5, will make a lot of
difference, time-wise.



^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-15 12:22                               ` Eli Zaretskii
@ 2013-05-15 13:24                                 ` Xue Fuqiao
  2013-05-15 23:27                                 ` Richard Stallman
  1 sibling, 0 replies; 57+ messages in thread
From: Xue Fuqiao @ 2013-05-15 13:24 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: eggert, Richard Stallman, emacs-devel

On Wed, May 15, 2013 at 8:22 PM, Eli Zaretskii <eliz@gnu.org> wrote:
>> Date: Wed, 15 May 2013 07:43:17 -0400
>> From: Richard Stallman <rms@gnu.org>
>> Cc: emacs-devel@gnu.org
>>
>> It takes many hours to bootstrap, and even plain make takes a while.
>
> If you have a machine with more than one core, then "make -j N", where
> N is the number of cores multiplied by 1.5, will make a lot of
> difference, time-wise.

Good tip.  Maybe it can be written into INSTALL or INSTALL.BZR.

--
Best regards, Xue Fuqiao.
http://www.gnu.org/software/emacs/



^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-15 11:43                             ` Richard Stallman
  2013-05-15 12:22                               ` Eli Zaretskii
@ 2013-05-15 19:08                               ` Stefan Monnier
  2013-05-15 22:37                                 ` Xue Fuqiao
  1 sibling, 1 reply; 57+ messages in thread
From: Stefan Monnier @ 2013-05-15 19:08 UTC (permalink / raw)
  To: Richard Stallman; +Cc: Paul Eggert, emacs-devel

> It takes many hours to bootstrap, and even plain make takes a while.

Many hours sounds odd.  Bootstrapping takes a while on my low-power
machines as well, but even my home server (a Mele with Allwinner A10
processor) bootstraps in less than an hour and a half.

> I generally go for a few months between updates.

Then bootstrapping is probably the right choice, indeed, because just
"make" probably won't be much quicker, and this way you don't have to
worry about the case where "make" fails.


        Stefan



^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-15 19:08                               ` Stefan Monnier
@ 2013-05-15 22:37                                 ` Xue Fuqiao
  0 siblings, 0 replies; 57+ messages in thread
From: Xue Fuqiao @ 2013-05-15 22:37 UTC (permalink / raw)
  To: Stefan Monnier; +Cc: Paul Eggert, Richard Stallman, emacs-devel

On Thu, May 16, 2013 at 3:08 AM, Stefan Monnier
<monnier@iro.umontreal.ca> wrote:
>> It takes many hours to bootstrap, and even plain make takes a while.
>
> Many hours sounds odd.  Bootstrapping takes a while on my low-power
> machines as well, but even my home server (a Mele with Allwinner A10
> processor) bootstraps in less than an hour and a half.

IIRC he uses Yeeloong Notebook.  Its Loongson processor should be 800-900MHz.

--
Best regards, Xue Fuqiao.
http://www.gnu.org/software/emacs/



^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-15 12:20                               ` Eli Zaretskii
@ 2013-05-15 23:27                                 ` Richard Stallman
  0 siblings, 0 replies; 57+ messages in thread
From: Richard Stallman @ 2013-05-15 23:27 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: stephen, yandros, schwab, emacs-devel

    That is extremely strange, since bootstrap doesn't do anything special
    wrt anything but the *.elc files.  Can you tell why you thought the
    problems were with configuration?

I asked for help and people told me to do various things to enable
configure to run.  I can't remember them, but people told me to do
a bootstrap to get past this.

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
  Use Ekiga or an ordinary phone call




^ permalink raw reply	[flat|nested] 57+ messages in thread

* Re: Bootstrap deleted DOC-nnn file
  2013-05-15 12:22                               ` Eli Zaretskii
  2013-05-15 13:24                                 ` Xue Fuqiao
@ 2013-05-15 23:27                                 ` Richard Stallman
  1 sibling, 0 replies; 57+ messages in thread
From: Richard Stallman @ 2013-05-15 23:27 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: eggert, emacs-devel

    If you have a machine with more than one core,

Thanks, but it has only one.

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
  Use Ekiga or an ordinary phone call




^ permalink raw reply	[flat|nested] 57+ messages in thread

end of thread, other threads:[~2013-05-15 23:27 UTC | newest]

Thread overview: 57+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-05-10  0:22 Bootstrap deleted DOC-nnn file Richard Stallman
2013-05-10  9:24 ` Eli Zaretskii
2013-05-10 11:02   ` Stephen J. Turnbull
2013-05-10 12:51     ` Eli Zaretskii
2013-05-10 17:01       ` Stephen J. Turnbull
2013-05-10 17:19         ` Eli Zaretskii
2013-05-11  2:46           ` Stephen J. Turnbull
2013-05-10 22:08   ` Richard Stallman
2013-05-10 22:33     ` chad
2013-05-11  3:09       ` Stephen J. Turnbull
2013-05-11 12:10         ` Richard Stallman
2013-05-11 16:49           ` Richard Stallman
2013-05-11 17:16             ` Eli Zaretskii
2013-05-11 21:44               ` Richard Stallman
2013-05-11 22:14                 ` Christopher Schmidt
2013-05-12 19:39                   ` Richard Stallman
2013-05-12  3:00                 ` Eli Zaretskii
2013-05-12 19:39                   ` Richard Stallman
2013-05-12 20:00                     ` Eli Zaretskii
2013-05-13 14:09                     ` Richard Stallman
2013-05-13 16:27                       ` Andreas Schwab
2013-05-14 13:32                         ` Richard Stallman
2013-05-14 16:32                           ` Paul Eggert
2013-05-15 11:43                             ` Richard Stallman
2013-05-15 12:22                               ` Eli Zaretskii
2013-05-15 13:24                                 ` Xue Fuqiao
2013-05-15 23:27                                 ` Richard Stallman
2013-05-15 19:08                               ` Stefan Monnier
2013-05-15 22:37                                 ` Xue Fuqiao
2013-05-14 16:54                           ` Andreas Schwab
2013-05-15 11:43                             ` Richard Stallman
2013-05-15 12:20                               ` Eli Zaretskii
2013-05-15 23:27                                 ` Richard Stallman
2013-05-13 16:30                       ` Eli Zaretskii
2013-05-12  2:45             ` Stephen J. Turnbull
2013-05-12 15:33               ` Eli Zaretskii
2013-05-12 19:39               ` Richard Stallman
2013-05-12 19:39               ` Richard Stallman
2013-05-12 23:32                 ` Stephen J. Turnbull
2013-05-13 23:47                   ` Richard Stallman
2013-05-14  1:24                     ` Stephen J. Turnbull
2013-05-12 19:39               ` Richard Stallman
2013-05-12 23:04                 ` Stephen J. Turnbull
2013-05-11  7:13       ` Eli Zaretskii
2013-05-11 12:10         ` Richard Stallman
2013-05-11 12:58           ` Eli Zaretskii
2013-05-11 14:50             ` Stefan Monnier
2013-05-11 16:49               ` Richard Stallman
2013-05-11 17:37                 ` Stefan Monnier
2013-05-11 21:44                   ` Richard Stallman
2013-05-13 15:15                     ` Stefan Monnier
2013-05-13 23:47                       ` Richard Stallman
2013-05-14  1:56                         ` Stefan Monnier
2013-05-14  6:29                           ` Eli Zaretskii
2013-05-14 12:48                             ` Stefan Monnier
2013-05-15  0:05                           ` Richard Stallman
2013-05-11 16:49             ` Richard Stallman

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).