unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* cvs-update
@ 2006-01-04  6:27 Juri Linkov
  2006-01-04 17:02 ` cvs-update Eli Zaretskii
  2006-01-04 18:27 ` cvs-update Bill Wohler
  0 siblings, 2 replies; 11+ messages in thread
From: Juri Linkov @ 2006-01-04  6:27 UTC (permalink / raw)


I see a new useful make target was added to Makefiles as:

cvs-update: recompile autoloads finder-data custom-deps

But I wonder why it doesn't use the existing target `updates'?
I mean why not to write the same new target as:

cvs-update: recompile updates

Also I think it would be good to recommend it in INSTALL.CVS,
e.g. by replacing

  $ make recompile EMACS=../src/emacs

with

  $ make cvs-update EMACS=../src/emacs

Or maybe even there should be a new top-level target `cvs-update' to perform
all necessary updates after every CVS update, e.g. something like:

make; make -C lisp EMACS=../src/emacs recompile updates; make; make tags; make info

-- 
Juri Linkov
http://www.jurta.org/emacs/

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

* Re: cvs-update
  2006-01-04  6:27 cvs-update Juri Linkov
@ 2006-01-04 17:02 ` Eli Zaretskii
  2006-01-05  5:25   ` cvs-update Stefan Monnier
  2006-01-05  6:44   ` cvs-update Juri Linkov
  2006-01-04 18:27 ` cvs-update Bill Wohler
  1 sibling, 2 replies; 11+ messages in thread
From: Eli Zaretskii @ 2006-01-04 17:02 UTC (permalink / raw)
  Cc: emacs-devel

> From: Juri Linkov <juri@jurta.org>
> Date: Wed, 04 Jan 2006 08:27:44 +0200
> 
> I see a new useful make target was added to Makefiles as:
> 
> cvs-update: recompile autoloads finder-data custom-deps

I'm glad you find it useful.

> But I wonder why it doesn't use the existing target `updates'?
> I mean why not to write the same new target as:
> 
> cvs-update: recompile updates

Because "make updates" also does "make update-subdirs", which is
almost always unnecessary, and includes the mh-autoloads target, which
is already part of "make recompile".

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

* Re: cvs-update
  2006-01-04  6:27 cvs-update Juri Linkov
  2006-01-04 17:02 ` cvs-update Eli Zaretskii
@ 2006-01-04 18:27 ` Bill Wohler
  1 sibling, 0 replies; 11+ messages in thread
From: Bill Wohler @ 2006-01-04 18:27 UTC (permalink / raw)


Juri Linkov <juri@jurta.org> writes:

> Also I think it would be good to recommend [the cvs-update target]
> in INSTALL.CVS, e.g. by replacing
>
>   $ make recompile EMACS=../src/emacs
>
> with
>
>   $ make cvs-update EMACS=../src/emacs
>
> Or maybe even there should be a new top-level target `cvs-update' to perform
> all necessary updates after every CVS update, e.g. something like:
>
> make; make -C lisp EMACS=../src/emacs recompile updates; make; make tags; make info

I would like that.

-- 
Bill Wohler <wohler@newt.com>  http://www.newt.com/wohler/  GnuPG ID:610BD9AD
Maintainer of comp.mail.mh FAQ and MH-E. Vote Libertarian!
If you're passed on the right, you're in the wrong lane.

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

* Re: cvs-update
  2006-01-04 17:02 ` cvs-update Eli Zaretskii
@ 2006-01-05  5:25   ` Stefan Monnier
  2006-01-05 16:08     ` cvs-update Bill Wohler
  2006-01-05 16:29     ` cvs-update Eli Zaretskii
  2006-01-05  6:44   ` cvs-update Juri Linkov
  1 sibling, 2 replies; 11+ messages in thread
From: Stefan Monnier @ 2006-01-05  5:25 UTC (permalink / raw)
  Cc: Juri Linkov, emacs-devel

> Because "make updates" also does "make update-subdirs", which is
> almost always unnecessary, and includes the mh-autoloads target, which
> is already part of "make recompile".

mh-autoloads should simply not be in update-subdirs.
It seems it's been added a bit everywhere rather than carefully choosing the
one place where it should go.


        Stefan

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

* Re: cvs-update
  2006-01-04 17:02 ` cvs-update Eli Zaretskii
  2006-01-05  5:25   ` cvs-update Stefan Monnier
@ 2006-01-05  6:44   ` Juri Linkov
  2006-01-05 16:33     ` cvs-update Eli Zaretskii
  1 sibling, 1 reply; 11+ messages in thread
From: Juri Linkov @ 2006-01-05  6:44 UTC (permalink / raw)
  Cc: emacs-devel

>> But I wonder why it doesn't use the existing target `updates'?
>> I mean why not to write the same new target as:
>>
>> cvs-update: recompile updates
>
> Because "make updates" also does "make update-subdirs", which is
> almost always unnecessary,

update-subdirs is much faster than other updates so it doesn't hurt to
call this target after every CVS update.

> and includes the mh-autoloads target, which is already part of "make
> recompile".

Then it should be removed.

-- 
Juri Linkov
http://www.jurta.org/emacs/

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

* Re: cvs-update
  2006-01-05  5:25   ` cvs-update Stefan Monnier
@ 2006-01-05 16:08     ` Bill Wohler
  2006-01-05 18:54       ` cvs-update Stefan Monnier
  2006-01-05 16:29     ` cvs-update Eli Zaretskii
  1 sibling, 1 reply; 11+ messages in thread
From: Bill Wohler @ 2006-01-05 16:08 UTC (permalink / raw)


Stefan Monnier <monnier@iro.umontreal.ca> writes:

>> Because "make updates" also does "make update-subdirs", which is
>> almost always unnecessary, and includes the mh-autoloads target, which
>> is already part of "make recompile".
>
> mh-autoloads should simply not be in update-subdirs.
> It seems it's been added a bit everywhere rather than carefully choosing the
> one place where it should go.

Actually, I carefully chose each of those places ;-).

I started out by putting it everywhere where "autoloads" appeared
since it's an identical construct. If mh-autoloads doesn't belong in
those places, neither does autoloads. If I remember correctly, I had
to add it to compile and recompile too since it wasn't getting run
during bootstrap or during recompiles after cvs updates.

Note that unlike autoloads target, the mh-autoloads target won't
actually do anything if none of the files in the mh-e directory have
changed. And it runs a whole lot faster.

I'm definitely open to feedback or suggestions.

-- 
Bill Wohler <wohler@newt.com>  http://www.newt.com/wohler/  GnuPG ID:610BD9AD
Maintainer of comp.mail.mh FAQ and MH-E. Vote Libertarian!
If you're passed on the right, you're in the wrong lane.

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

* Re: cvs-update
  2006-01-05  5:25   ` cvs-update Stefan Monnier
  2006-01-05 16:08     ` cvs-update Bill Wohler
@ 2006-01-05 16:29     ` Eli Zaretskii
  2006-01-05 16:51       ` cvs-update Stefan Monnier
  1 sibling, 1 reply; 11+ messages in thread
From: Eli Zaretskii @ 2006-01-05 16:29 UTC (permalink / raw)
  Cc: juri, emacs-devel

> Cc: Juri Linkov <juri@jurta.org>, emacs-devel@gnu.org
> From: Stefan Monnier <monnier@iro.umontreal.ca>
> Date: Thu, 05 Jan 2006 00:25:59 -0500
> 
> > Because "make updates" also does "make update-subdirs", which is
> > almost always unnecessary, and includes the mh-autoloads target, which
> > is already part of "make recompile".
> 
> mh-autoloads should simply not be in update-subdirs.

You misunderstood me (because my wording was ambiguous):
`mh-autoloads' is not part of `update-subdirs', it's part of
`updates'.

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

* Re: cvs-update
  2006-01-05  6:44   ` cvs-update Juri Linkov
@ 2006-01-05 16:33     ` Eli Zaretskii
  0 siblings, 0 replies; 11+ messages in thread
From: Eli Zaretskii @ 2006-01-05 16:33 UTC (permalink / raw)
  Cc: emacs-devel

> From: Juri Linkov <juri@jurta.org>
> Cc: emacs-devel@gnu.org
> Date: Thu, 05 Jan 2006 08:44:34 +0200
> 
> > Because "make updates" also does "make update-subdirs", which is
> > almost always unnecessary,
> 
> update-subdirs is much faster than other updates so it doesn't hurt to
> call this target after every CVS update.

That depends on how fast is your machine and your filesystem.  I have
sometimes to work on platforms where update-subdirs is annoyingly
slow.

In any case, I always thought Make was invented precisely so
unnecessary commands would not be run, even if they don't take long
time.

> > and includes the mh-autoloads target, which is already part of "make
> > recompile".
> 
> Then it should be removed.

>From where? from "make recompile"?  I thought it was there for a
good reason.  Bill, could you please comment on this?

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

* Re: cvs-update
  2006-01-05 16:29     ` cvs-update Eli Zaretskii
@ 2006-01-05 16:51       ` Stefan Monnier
  0 siblings, 0 replies; 11+ messages in thread
From: Stefan Monnier @ 2006-01-05 16:51 UTC (permalink / raw)
  Cc: juri, emacs-devel

>> > Because "make updates" also does "make update-subdirs", which is
>> > almost always unnecessary, and includes the mh-autoloads target, which
>> > is already part of "make recompile".
>> 
>> mh-autoloads should simply not be in update-subdirs.

> You misunderstood me (because my wording was ambiguous):
> `mh-autoloads' is not part of `update-subdirs', it's part of
> `updates'.

Oh, I see.  Well, then it shouldn't be in recompile.


        Stefan

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

* Re: cvs-update
  2006-01-05 16:08     ` cvs-update Bill Wohler
@ 2006-01-05 18:54       ` Stefan Monnier
  2006-01-05 22:47         ` cvs-update Bill Wohler
  0 siblings, 1 reply; 11+ messages in thread
From: Stefan Monnier @ 2006-01-05 18:54 UTC (permalink / raw)
  Cc: emacs-devel

> I started out by putting it everywhere where "autoloads" appeared
> since it's an identical construct. If mh-autoloads doesn't belong in
> those places, neither does autoloads. If I remember correctly, I had
> to add it to compile and recompile too since it wasn't getting run
> during bootstrap or during recompiles after cvs updates.

As far as I know, bootstrap rebuild loaddefs.el even though `autoloads' is
not on `compile', so there must have been some other problem.

> Note that unlike autoloads target, the mh-autoloads target won't
> actually do anything if none of the files in the mh-e directory have
> changed. And it runs a whole lot faster.

Right, so maybe it should be in compile/recompile only and nowhere else.


        Stefan

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

* Re: cvs-update
  2006-01-05 18:54       ` cvs-update Stefan Monnier
@ 2006-01-05 22:47         ` Bill Wohler
  0 siblings, 0 replies; 11+ messages in thread
From: Bill Wohler @ 2006-01-05 22:47 UTC (permalink / raw)
  Cc: emacs-devel

Stefan Monnier <monnier@iro.umontreal.ca> wrote:

> > Note that unlike autoloads target, the mh-autoloads target won't
> > actually do anything if none of the files in the mh-e directory have
> > changed. And it runs a whole lot faster.
> 
> Right, so maybe it should be in compile/recompile only and nowhere else.

I just removed it from bootstrap since bootstrap depends on compile
which depends on mh-autoloads.

I added mh-autoloads to compile-always to be consistent with the compile
target.

I did not remove mh-autoloads from updates since none of the targets of
updates already builds mh-autoloads and because I don't fully understand
the use of updates. However, it just occurred to me updates is for those
targets which take a long time to run and don't change often and
therefore are not recompile dependencies. If that's true, specifying
mh-autoloads as an updates dependency is essentially a no-op (since the
recompile target has likely been run recently) and might as well be
removed. Right? I'll do that, so as you say, mh-autoloads will only be a
compile/compile-always/recompile dependency.

-- 
Bill Wohler <wohler@newt.com>  http://www.newt.com/wohler/  GnuPG ID:610BD9AD
Maintainer of comp.mail.mh FAQ and MH-E. Vote Libertarian!
If you're passed on the right, you're in the wrong lane.

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

end of thread, other threads:[~2006-01-05 22:47 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-01-04  6:27 cvs-update Juri Linkov
2006-01-04 17:02 ` cvs-update Eli Zaretskii
2006-01-05  5:25   ` cvs-update Stefan Monnier
2006-01-05 16:08     ` cvs-update Bill Wohler
2006-01-05 18:54       ` cvs-update Stefan Monnier
2006-01-05 22:47         ` cvs-update Bill Wohler
2006-01-05 16:29     ` cvs-update Eli Zaretskii
2006-01-05 16:51       ` cvs-update Stefan Monnier
2006-01-05  6:44   ` cvs-update Juri Linkov
2006-01-05 16:33     ` cvs-update Eli Zaretskii
2006-01-04 18:27 ` cvs-update Bill Wohler

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).