unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* INSTALL-CVS
@ 2002-06-16 18:41 D. Goel
  2002-06-16 19:02 ` INSTALL-CVS Simon Josefsson
  0 siblings, 1 reply; 32+ messages in thread
From: D. Goel @ 2002-06-16 18:41 UTC (permalink / raw)


It seems that the discussion on INSTALL-CVS has died down.   Here's
the latest INSTALL-CVS, if maintainers would like to install it--->




	      Building and Installing Emacs from the CVS

The Emacs tarball contains byte-compiled versions of the Lisp files.
The CVS repository does not contain the byte-compiled files.
Therefore, to build from CVS you must run `make bootstrap'
instead of just `make':

  $ ./configure
  $ make bootstrap


Normally, it is not necessary to use "make bootstrap" after every CVS
update.  Unless there are problems, "make all" should be used.

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

* Re: INSTALL-CVS
  2002-06-16 18:41 INSTALL-CVS D. Goel
@ 2002-06-16 19:02 ` Simon Josefsson
  2002-06-17  6:07   ` INSTALL-CVS Eli Zaretskii
  0 siblings, 1 reply; 32+ messages in thread
From: Simon Josefsson @ 2002-06-16 19:02 UTC (permalink / raw)
  Cc: emacs-devel

"D. Goel" <deego@glue.umd.edu> writes:

> It seems that the discussion on INSTALL-CVS has died down.   Here's
> the latest INSTALL-CVS, if maintainers would like to install it--->
>
>
>
>
> 	      Building and Installing Emacs from the CVS
>
> The Emacs tarball contains byte-compiled versions of the Lisp files.
> The CVS repository does not contain the byte-compiled files.
> Therefore, to build from CVS you must run `make bootstrap'
> instead of just `make':
>
>   $ ./configure
>   $ make bootstrap
>
>
> Normally, it is not necessary to use "make bootstrap" after every CVS
> update.  Unless there are problems, "make all" should be used.

What about "make recompile" in lisp/?  I find myself often doing that
instead of bootstrap, once I've run bootstrap once.

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

* Re: INSTALL-CVS
  2002-06-16 19:02 ` INSTALL-CVS Simon Josefsson
@ 2002-06-17  6:07   ` Eli Zaretskii
  2002-06-18 16:29     ` INSTALL-CVS D. Goel
  0 siblings, 1 reply; 32+ messages in thread
From: Eli Zaretskii @ 2002-06-17  6:07 UTC (permalink / raw)
  Cc: D. Goel, emacs-devel


On Sun, 16 Jun 2002, Simon Josefsson wrote:

> >   $ ./configure
> >   $ make bootstrap
> >
> >
> > Normally, it is not necessary to use "make bootstrap" after every CVS
> > update.  Unless there are problems, "make all" should be used.
> 
> What about "make recompile" in lisp/?

I added that and installed the file.

Thanks.

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

* Re: INSTALL-CVS
  2002-06-17  6:07   ` INSTALL-CVS Eli Zaretskii
@ 2002-06-18 16:29     ` D. Goel
  2002-06-19  5:15       ` INSTALL-CVS Eli Zaretskii
  0 siblings, 1 reply; 32+ messages in thread
From: D. Goel @ 2002-06-18 16:29 UTC (permalink / raw)
  Cc: emacs-devel


> > > Normally, it is not necessary to use "make bootstrap" after every CVS
> > > update.  Unless there are problems, "make all" should be used.
> > 
> > What about "make recompile" in lisp/?



And just a reminder to all that if your suggestions did not make it
into the official INSTALL-CVS, please put them up on the wiki at:
http://www.emacswiki.org/cgi-bin/wiki.pl?EmacsFromCVS

Your stuff here, will be further improved by people visting the site,
and the best of the best here could then perhaps make it into the
official versions..


DG				   
-- 

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

* Re: INSTALL-CVS
  2002-06-18 16:29     ` INSTALL-CVS D. Goel
@ 2002-06-19  5:15       ` Eli Zaretskii
  0 siblings, 0 replies; 32+ messages in thread
From: Eli Zaretskii @ 2002-06-19  5:15 UTC (permalink / raw)
  Cc: emacs-devel


On 18 Jun 2002, D. Goel wrote:

> And just a reminder to all that if your suggestions did not make it
> into the official INSTALL-CVS, please put them up on the wiki at:
> http://www.emacswiki.org/cgi-bin/wiki.pl?EmacsFromCVS

Please check out the version of INSTALL-CVS in the CVS.  I think I 
incorporated all the relevant suggestions people posted here during the 
discussions.

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

* INSTALL-CVS
@ 2003-05-29 21:31 Nick Roberts
  2003-06-01 15:24 ` INSTALL-CVS Eli Zaretskii
  0 siblings, 1 reply; 32+ messages in thread
From: Nick Roberts @ 2003-05-29 21:31 UTC (permalink / raw)



In the file, INSTALL-CVS, it says:

> Normally, it is not necessary to use "make bootstrap" after every CVS
> update.  Unless there are problems, we suggest the following
> procedure:
> 
>   $ ./configure
>   $ make
>   $ cd lisp
>   $ make recompile EMACS=../src/emacs
>   $ cd ..
>   $ make

The user presumably also wants up-to-date documentation so shouldn't
it also have?:

  $ cd man
  $ make info

Would it be a good idea to have one target to do all these things,
`make cvs', say?

Nick

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

* Re: INSTALL-CVS
  2003-05-29 21:31 INSTALL-CVS Nick Roberts
@ 2003-06-01 15:24 ` Eli Zaretskii
  2003-06-01 20:51   ` INSTALL-CVS Nick Roberts
  0 siblings, 1 reply; 32+ messages in thread
From: Eli Zaretskii @ 2003-06-01 15:24 UTC (permalink / raw)
  Cc: emacs-devel

> From: Nick Roberts <nick@nick.uklinux.net>
> Date: Thu, 29 May 2003 22:31:36 +0100
> 
> > Normally, it is not necessary to use "make bootstrap" after every CVS
> > update.  Unless there are problems, we suggest the following
> > procedure:
> > 
> >   $ ./configure
> >   $ make
> >   $ cd lisp
> >   $ make recompile EMACS=../src/emacs
> >   $ cd ..
> >   $ make
> 
> The user presumably also wants up-to-date documentation so shouldn't
> it also have?:
> 
>   $ cd man
>   $ make info

??? Are you saying that on your machine, if you type "make" in the
top-level directory, it doesn't recurse into the `man' subdirectory
automatically?

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

* Re: INSTALL-CVS
  2003-06-01 15:24 ` INSTALL-CVS Eli Zaretskii
@ 2003-06-01 20:51   ` Nick Roberts
  2003-06-02  4:06     ` INSTALL-CVS Eli Zaretskii
  2003-06-03  4:06     ` INSTALL-CVS Richard Stallman
  0 siblings, 2 replies; 32+ messages in thread
From: Nick Roberts @ 2003-06-01 20:51 UTC (permalink / raw)
  Cc: emacs-devel


 > ??? Are you saying that on your machine, if you type "make" in the
 > top-level directory, it doesn't recurse into the `man' subdirectory
 > automatically?

Yes, I think thats right. 

My Makefile has these two lines

all: ${SUBDIR} leim

SUBDIR = lib-src src

So only these three directories in the top-level are visited.

Nick

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

* Re: INSTALL-CVS
  2003-06-01 20:51   ` INSTALL-CVS Nick Roberts
@ 2003-06-02  4:06     ` Eli Zaretskii
  2003-06-02 16:56       ` INSTALL-CVS Stefan Monnier
  2003-06-02 22:35       ` INSTALL-CVS Nick Roberts
  2003-06-03  4:06     ` INSTALL-CVS Richard Stallman
  1 sibling, 2 replies; 32+ messages in thread
From: Eli Zaretskii @ 2003-06-02  4:06 UTC (permalink / raw)
  Cc: emacs-devel

> From: Nick Roberts <nick@nick.uklinux.net>
> Date: Sun, 1 Jun 2003 21:51:40 +0100
> 
>  > ??? Are you saying that on your machine, if you type "make" in the
>  > top-level directory, it doesn't recurse into the `man' subdirectory
>  > automatically?
> 
> Yes, I think thats right. 
> 
> My Makefile has these two lines
> 
> all: ${SUBDIR} leim
> 
> SUBDIR = lib-src src
> 
> So only these three directories in the top-level are visited.

That's because in the normal (non-CVS) build, the files in the info
directory are already there.

Sorry, I forgot all those gory details.  The _real_ answer to your
question is that (1) "make bootstrap" builds the Info manuals,
and (2) if you build the CVS without bootstrapping, "make instal"
will make sure the Info manuals are up to date, and if not rebuild
them (see the target install-arch-indep which depends on info).

Given that, do you still think we should tell users to invoke Make in
the man subdirectory, and if so, why?

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

* Re: INSTALL-CVS
  2003-06-02  4:06     ` INSTALL-CVS Eli Zaretskii
@ 2003-06-02 16:56       ` Stefan Monnier
  2003-06-02 22:34         ` INSTALL-CVS Nick Roberts
  2003-06-02 22:35       ` INSTALL-CVS Nick Roberts
  1 sibling, 1 reply; 32+ messages in thread
From: Stefan Monnier @ 2003-06-02 16:56 UTC (permalink / raw)
  Cc: emacs-devel

> That's because in the normal (non-CVS) build, the files in the info
> directory are already there.
> 
> Sorry, I forgot all those gory details.  The _real_ answer to your
> question is that (1) "make bootstrap" builds the Info manuals,
> and (2) if you build the CVS without bootstrapping, "make instal"
> will make sure the Info manuals are up to date, and if not rebuild
> them (see the target install-arch-indep which depends on info).

I have changed my Makefile.in long ago to add `man' to the default
target.  The only cases where it might hurt is if the Emacs tarball
comes with Texinfo files more recent than the Info files (that would
be a bug in the tarball) or if the program that untars the tarball
does not obey the timestamps in the tarball and happens to untar
the Texinfo files after untarring the Ifno files.

Maybe we can avoid all this by using two different Makefile.in
depending on whether it's checked out via CVS or taken from a tarball.
I.e. the `make-dist' script would slightly adjust the Makefile.in by
removing the `man' target from the default target.


	Stefan

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

* Re: INSTALL-CVS
  2003-06-02 16:56       ` INSTALL-CVS Stefan Monnier
@ 2003-06-02 22:34         ` Nick Roberts
  0 siblings, 0 replies; 32+ messages in thread
From: Nick Roberts @ 2003-06-02 22:34 UTC (permalink / raw)
  Cc: emacs-devel

 > I have changed my Makefile.in long ago to add `man' to the default
 > target.  The only cases where it might hurt is if the Emacs tarball
 > comes with Texinfo files more recent than the Info files (that would
 > be a bug in the tarball) or if the program that untars the tarball
 > does not obey the timestamps in the tarball and happens to untar
 > the Texinfo files after untarring the Ifno files.
 > 
 > Maybe we can avoid all this by using two different Makefile.in
 > depending on whether it's checked out via CVS or taken from a tarball.
 > I.e. the `make-dist' script would slightly adjust the Makefile.in by
 > removing the `man' target from the default target.

Assuming that the advice in INSTALL-CVS is sound, why would the target below,
added to the Makefile (or rather Makefile.in) in the top directory, not work?

cvs:
	$(MAKE)
	(cd lisp; $(MAKE) recompile EMACS=../src/emacs)
	$(MAKE)
	(cd man; $(MAKE))

then INSTALL-CVS could advise:

 $ ./configure
 $ make cvs

after an update.


Nick

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

* Re: INSTALL-CVS
  2003-06-02  4:06     ` INSTALL-CVS Eli Zaretskii
  2003-06-02 16:56       ` INSTALL-CVS Stefan Monnier
@ 2003-06-02 22:35       ` Nick Roberts
  1 sibling, 0 replies; 32+ messages in thread
From: Nick Roberts @ 2003-06-02 22:35 UTC (permalink / raw)
  Cc: emacs-devel

 > Sorry, I forgot all those gory details.  The _real_ answer to your
 > question is that (1) "make bootstrap" builds the Info manuals,
 > and (2) if you build the CVS without bootstrapping, "make instal"
 > will make sure the Info manuals are up to date, and if not rebuild
 > them (see the target install-arch-indep which depends on info).
 > 
 > Given that, do you still think we should tell users to invoke Make in
 > the man subdirectory, and if so, why?

make bootstrap takes a very long time on my machine. I don't want to use make
install as I use everything where it was built (my CVS copy crashes far too
often to put it anywhere permanent ;-)). I do want up-to-date documentation,
however, as that is one source of information for the current build. I would
guess there are others who think likewise.

Nick

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

* Re: INSTALL-CVS
  2003-06-01 20:51   ` INSTALL-CVS Nick Roberts
  2003-06-02  4:06     ` INSTALL-CVS Eli Zaretskii
@ 2003-06-03  4:06     ` Richard Stallman
  2003-06-03  6:54       ` INSTALL-CVS David Masterson
  1 sibling, 1 reply; 32+ messages in thread
From: Richard Stallman @ 2003-06-03  4:06 UTC (permalink / raw)
  Cc: emacs-devel

     > ??? Are you saying that on your machine, if you type "make" in the
     > top-level directory, it doesn't recurse into the `man' subdirectory
     > automatically?

    Yes, I think thats right. 

I believe this was deliberate.  I think the reason was that we don't
want `make' to recurse into `man' and generate a DVI file, and we
normally distribute Emacs with the Info files already updated, so
there is no need for it to update them.

However, I guess it would be harmless now to change it so that
top-level `make all' updates the Info files but does not generate the
DVI files.

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

* Re: INSTALL-CVS
  2003-06-03  4:06     ` INSTALL-CVS Richard Stallman
@ 2003-06-03  6:54       ` David Masterson
  2003-06-04 11:38         ` INSTALL-CVS Andreas Schwab
  0 siblings, 1 reply; 32+ messages in thread
From: David Masterson @ 2003-06-03  6:54 UTC (permalink / raw)


>>>>> Richard Stallman writes:

> However, I guess it would be harmless now to change it so that
> top-level `make all' updates the Info files but does not generate
> the DVI files.

Suggestion -- have the configure script 'touch' the Info files as the
last thing it does if and only if they exist at the time of the
'configure'.  Then 'make all' shouldn't update the Info files that are
delivered with the distribution, but should do the right thing at all
other times without requiring any special tricks in the Makefiles.

-- 
David Masterson                David DOT Masterson AT synopsys DOT com
Sr. R&D Engineer               Synopsys, Inc.
Software Engineering           Sunnyvale, CA

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

* Re: INSTALL-CVS
  2003-06-03  6:54       ` INSTALL-CVS David Masterson
@ 2003-06-04 11:38         ` Andreas Schwab
  2003-06-04 14:42           ` INSTALL-CVS Stefan Monnier
  2003-06-04 17:38           ` INSTALL-CVS David Masterson
  0 siblings, 2 replies; 32+ messages in thread
From: Andreas Schwab @ 2003-06-04 11:38 UTC (permalink / raw)
  Cc: emacs-devel

David Masterson <David.Masterson@synopsys.com> writes:

|> >>>>> Richard Stallman writes:
|> 
|> > However, I guess it would be harmless now to change it so that
|> > top-level `make all' updates the Info files but does not generate
|> > the DVI files.
|> 
|> Suggestion -- have the configure script 'touch' the Info files as the
|> last thing it does if and only if they exist at the time of the
|> 'configure'.

This is counter-productive, because then if you rerun configure when the
info files are out-of-date they won't be rebuilt.

Andreas.

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux AG, Deutschherrnstr. 15-19, D-90429 Nürnberg
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

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

* Re: INSTALL-CVS
  2003-06-04 11:38         ` INSTALL-CVS Andreas Schwab
@ 2003-06-04 14:42           ` Stefan Monnier
  2003-06-04 17:26             ` INSTALL-CVS David Masterson
  2003-06-05 10:58             ` INSTALL-CVS Richard Stallman
  2003-06-04 17:38           ` INSTALL-CVS David Masterson
  1 sibling, 2 replies; 32+ messages in thread
From: Stefan Monnier @ 2003-06-04 14:42 UTC (permalink / raw)
  Cc: emacs-devel

> David Masterson <David.Masterson@synopsys.com> writes:
> 
> |> >>>>> Richard Stallman writes:
> |> 
> |> > However, I guess it would be harmless now to change it so that
> |> > top-level `make all' updates the Info files but does not generate
> |> > the DVI files.
> |> 
> |> Suggestion -- have the configure script 'touch' the Info files as the
> |> last thing it does if and only if they exist at the time of the
> |> 'configure'.
> 
> This is counter-productive, because then if you rerun configure when the
> info files are out-of-date they won't be rebuilt.

Agreed.

I think we should simply add `man' to the default target and
live with it.  If that means that `makeinfo' is sometimes called
when a user installs Emacs, what's the big deal ?
If the problem is that the user might not have a working `makeinfo',
how about running it with a leading "-" so that an error from
`makeinfo' is ignored by make ?


	Stefan

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

* Re: INSTALL-CVS
  2003-06-04 14:42           ` INSTALL-CVS Stefan Monnier
@ 2003-06-04 17:26             ` David Masterson
  2003-06-04 17:27               ` INSTALL-CVS Stefan Monnier
  2003-06-05 10:58             ` INSTALL-CVS Richard Stallman
  1 sibling, 1 reply; 32+ messages in thread
From: David Masterson @ 2003-06-04 17:26 UTC (permalink / raw)
  Cc: emacs-devel

>>>>> Stefan Monnier writes:

>> David Masterson <David.Masterson@synopsys.com> writes:
>> 
>> |> >>>>> Richard Stallman writes:
>> |> 
>> |> > However, I guess it would be harmless now to change it so that
>> |> > top-level `make all' updates the Info files but does not generate
>> |> > the DVI files.
>> |> 
>> |> Suggestion -- have the configure script 'touch' the Info files as the
>> |> last thing it does if and only if they exist at the time of the
>> |> 'configure'.
>> 
>> This is counter-productive, because then if you rerun configure when the
>> info files are out-of-date they won't be rebuilt.

Is there a configure output file that could be checked for existence
(config.log) and don't do the 'touch' in  that case?

> Agreed.

> I think we should simply add `man' to the default target and live
> with it.  If that means that `makeinfo' is sometimes called when a
> user installs Emacs, what's the big deal ?  If the problem is that
> the user might not have a working `makeinfo', how about running it
> with a leading "-" so that an error from `makeinfo' is ignored by
> make ?

Ignoring the error in 'man' would cause 'install-man' to fail.
Perhaps configure should test for a working 'makeinfo' (if it doesn't
already) and default to (say) '/bin/true' if no working makeinfo is
found?

-- 
David Masterson                David DOT Masterson AT synopsys DOT com
Sr. R&D Engineer               Synopsys, Inc.
Software Engineering           Sunnyvale, CA

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

* Re: INSTALL-CVS
  2003-06-04 17:26             ` INSTALL-CVS David Masterson
@ 2003-06-04 17:27               ` Stefan Monnier
  2003-06-04 17:52                 ` INSTALL-CVS David Masterson
  0 siblings, 1 reply; 32+ messages in thread
From: Stefan Monnier @ 2003-06-04 17:27 UTC (permalink / raw)
  Cc: Stefan Monnier

> > I think we should simply add `man' to the default target and live
> > with it.  If that means that `makeinfo' is sometimes called when a
> > user installs Emacs, what's the big deal ?  If the problem is that
> > the user might not have a working `makeinfo', how about running it
> > with a leading "-" so that an error from `makeinfo' is ignored by
> > make ?
> 
> Ignoring the error in 'man' would cause 'install-man' to fail.

Why would it ?


	Stefan

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

* Re: INSTALL-CVS
  2003-06-04 11:38         ` INSTALL-CVS Andreas Schwab
  2003-06-04 14:42           ` INSTALL-CVS Stefan Monnier
@ 2003-06-04 17:38           ` David Masterson
  2003-06-04 18:06             ` INSTALL-CVS Stefan Monnier
  1 sibling, 1 reply; 32+ messages in thread
From: David Masterson @ 2003-06-04 17:38 UTC (permalink / raw)


>>>>> Andreas Schwab writes:

> David Masterson <David.Masterson@synopsys.com> writes:
> |> >>>>> Richard Stallman writes:
> |> 
> |> > However, I guess it would be harmless now to change it so that
> |> > top-level `make all' updates the Info files but does not
> |> > generate the DVI files.
> |> 
> |> Suggestion -- have the configure script 'touch' the Info files as
> |> the last thing it does if and only if they exist at the time of
> |> the 'configure'.

> This is counter-productive, because then if you rerun configure when
> the info files are out-of-date they won't be rebuilt.

I think I understand what you're saying, but I'm not sure why anyone
would *rerun* configure in a "built" environment and not do something
like 'make clean' first.

Perhaps the 'touch' could be done only on first run of configure?

-- 
David Masterson                David DOT Masterson AT synopsys DOT com
Sr. R&D Engineer               Synopsys, Inc.
Software Engineering           Sunnyvale, CA

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

* Re: INSTALL-CVS
  2003-06-04 17:27               ` INSTALL-CVS Stefan Monnier
@ 2003-06-04 17:52                 ` David Masterson
  2003-06-04 17:55                   ` INSTALL-CVS Stefan Monnier
  0 siblings, 1 reply; 32+ messages in thread
From: David Masterson @ 2003-06-04 17:52 UTC (permalink / raw)
  Cc: emacs-devel

>>>>> Stefan Monnier writes:

>> > I think we should simply add `man' to the default target and live
>> > with it.  If that means that `makeinfo' is sometimes called when a
>> > user installs Emacs, what's the big deal ?  If the problem is that
>> > the user might not have a working `makeinfo', how about running it
>> > with a leading "-" so that an error from `makeinfo' is ignored by
>> > make ?
>> 
>> Ignoring the error in 'man' would cause 'install-man' to fail.

> Why would it ?

Hmmm.  Am I missing something obvious?  Because the 'man' target fails
in generating the Info files (assume none previously existed) with
makeinfo, but the error is ignored, so the build would go on to the
'install-man' target which would try to copy the Info files to where
they should be installed and, thus, fail.

-- 
David Masterson                David DOT Masterson AT synopsys DOT com
Sr. R&D Engineer               Synopsys, Inc.
Software Engineering           Sunnyvale, CA

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

* Re: INSTALL-CVS
  2003-06-04 17:52                 ` INSTALL-CVS David Masterson
@ 2003-06-04 17:55                   ` Stefan Monnier
  0 siblings, 0 replies; 32+ messages in thread
From: Stefan Monnier @ 2003-06-04 17:55 UTC (permalink / raw)
  Cc: Stefan Monnier

> >> > I think we should simply add `man' to the default target and live
> >> > with it.  If that means that `makeinfo' is sometimes called when a
> >> > user installs Emacs, what's the big deal ?  If the problem is that
> >> > the user might not have a working `makeinfo', how about running it
> >> > with a leading "-" so that an error from `makeinfo' is ignored by
> >> > make ?
> >> 
> >> Ignoring the error in 'man' would cause 'install-man' to fail.
> 
> > Why would it ?
> 
> Hmmm.  Am I missing something obvious?  Because the 'man' target fails

If the info files aren't there and the makeinfo fails, there's
not much we can do and it's not an interesting case.  The case we need
to pay attention to is the one where the user untars the tarball,
the timestamps get messed up and the make unnecessarily runs
makeinfo even though the info files are already there (and are
uptodate, since if they're not uptodate that means the tarball
is buggy anyway).


	Stefan

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

* Re: INSTALL-CVS
  2003-06-04 17:38           ` INSTALL-CVS David Masterson
@ 2003-06-04 18:06             ` Stefan Monnier
  2003-06-04 20:54               ` INSTALL-CVS David Masterson
  0 siblings, 1 reply; 32+ messages in thread
From: Stefan Monnier @ 2003-06-04 18:06 UTC (permalink / raw)
  Cc: emacs-devel

> I think I understand what you're saying, but I'm not sure why anyone
> would *rerun* configure in a "built" environment and not do something
> like 'make clean' first.

I never understand why anyone would do `make clean' (probably
because I can never remember which of `clean', `extraclean', `distclean',
`fooclean', `hyperclean', or `megaclean' does what I want).

./configure is rerun for me whenever `configure' changes.


	Stefan

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

* Re: INSTALL-CVS
  2003-06-04 18:06             ` INSTALL-CVS Stefan Monnier
@ 2003-06-04 20:54               ` David Masterson
  2003-06-04 21:00                 ` INSTALL-CVS Stefan Monnier
  2003-06-05 12:49                 ` INSTALL-CVS Andreas Schwab
  0 siblings, 2 replies; 32+ messages in thread
From: David Masterson @ 2003-06-04 20:54 UTC (permalink / raw)
  Cc: emacs-devel

>>>>> Stefan Monnier writes:

>> I think I understand what you're saying, but I'm not sure why
>> anyone would *rerun* configure in a "built" environment and not do
>> something like 'make clean' first.

> I never understand why anyone would do `make clean' (probably
> because I can never remember which of `clean', `extraclean',
> `distclean', `fooclean', `hyperclean', or `megaclean' does what I
> want).

> ./configure is rerun for me whenever `configure' changes.

Hmmm.  But, since most (all?) 'make' commands only do time-stamp
checking to determine if a target should be rebuilt, if the rerun of
configure causes the Makefile(s) to be regen'ed with new or changed
commands in a target, that target may not be rebuilt because you
didn't "clean" your environment first.  True?

When you're familiar with the environment (as you are with Emacs), you
can get away without cleaning your environment first.  However, the
safe approach is to only 'configure' in a clean environment.

CPU cycles are relatively cheap nowadays...  ;-)

-- 
David Masterson                David DOT Masterson AT synopsys DOT com
Sr. R&D Engineer               Synopsys, Inc.
Software Engineering           Sunnyvale, CA

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

* Re: INSTALL-CVS
  2003-06-04 20:54               ` INSTALL-CVS David Masterson
@ 2003-06-04 21:00                 ` Stefan Monnier
  2003-06-04 23:01                   ` INSTALL-CVS David Masterson
  2003-06-05 21:46                   ` INSTALL-CVS Richard Stallman
  2003-06-05 12:49                 ` INSTALL-CVS Andreas Schwab
  1 sibling, 2 replies; 32+ messages in thread
From: Stefan Monnier @ 2003-06-04 21:00 UTC (permalink / raw)
  Cc: Stefan Monnier

> When you're familiar with the environment (as you are with Emacs), you
> can get away without cleaning your environment first.  However, the
> safe approach is to only 'configure' in a clean environment.

It seems the only time that I need to re-run a configure script
is when I'm hacking on the corresponding program.  Otherwise,
I just untar, configure, make install, and throw away.


	Stefan

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

* Re: INSTALL-CVS
  2003-06-04 21:00                 ` INSTALL-CVS Stefan Monnier
@ 2003-06-04 23:01                   ` David Masterson
  2003-06-05 21:46                   ` INSTALL-CVS Richard Stallman
  1 sibling, 0 replies; 32+ messages in thread
From: David Masterson @ 2003-06-04 23:01 UTC (permalink / raw)


>>>>> Stefan Monnier writes:

>> When you're familiar with the environment (as you are with Emacs), you
>> can get away without cleaning your environment first.  However, the
>> safe approach is to only 'configure' in a clean environment.

> It seems the only time that I need to re-run a configure script
> is when I'm hacking on the corresponding program.  Otherwise,
> I just untar, configure, make install, and throw away.

Thus my original suggestion to 'touch' the Info files at the end of
configure (iff they exist) is not so counter-productive after all.

-- 
David Masterson                David DOT Masterson AT synopsys DOT com
Sr. R&D Engineer               Synopsys, Inc.
Software Engineering           Sunnyvale, CA

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

* Re: INSTALL-CVS
  2003-06-04 14:42           ` INSTALL-CVS Stefan Monnier
  2003-06-04 17:26             ` INSTALL-CVS David Masterson
@ 2003-06-05 10:58             ` Richard Stallman
  2003-06-05 14:02               ` INSTALL-CVS Stefan Monnier
  1 sibling, 1 reply; 32+ messages in thread
From: Richard Stallman @ 2003-06-05 10:58 UTC (permalink / raw)
  Cc: emacs-devel

    I think we should simply add `man' to the default target and
    live with it.  If that means that `makeinfo' is sometimes called
    when a user installs Emacs, what's the big deal ?

Why would it have that effect?  The info files in a release
should always be up to date.

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

* Re: INSTALL-CVS
  2003-06-04 20:54               ` INSTALL-CVS David Masterson
  2003-06-04 21:00                 ` INSTALL-CVS Stefan Monnier
@ 2003-06-05 12:49                 ` Andreas Schwab
  1 sibling, 0 replies; 32+ messages in thread
From: Andreas Schwab @ 2003-06-05 12:49 UTC (permalink / raw)
  Cc: Stefan Monnier

David Masterson <David.Masterson@synopsys.COM> writes:

|> Hmmm.  But, since most (all?) 'make' commands only do time-stamp
|> checking to determine if a target should be rebuilt, if the rerun of
|> configure causes the Makefile(s) to be regen'ed with new or changed
|> commands in a target, that target may not be rebuilt because you
|> didn't "clean" your environment first.  True?

Yes, but it almost never matters.

|> When you're familiar with the environment (as you are with Emacs), you
|> can get away without cleaning your environment first.  However, the
|> safe approach is to only 'configure' in a clean environment.

It has been a long time since I last did a make clean.

|> CPU cycles are relatively cheap nowadays...  ;-)

Why should I waste CPU cycles when I can do more important things with
them?

Andreas.

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux AG, Deutschherrnstr. 15-19, D-90429 Nürnberg
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

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

* Re: INSTALL-CVS
  2003-06-05 10:58             ` INSTALL-CVS Richard Stallman
@ 2003-06-05 14:02               ` Stefan Monnier
  2003-06-05 19:02                 ` INSTALL-CVS Nick Roberts
  2003-06-06 17:02                 ` INSTALL-CVS Richard Stallman
  0 siblings, 2 replies; 32+ messages in thread
From: Stefan Monnier @ 2003-06-05 14:02 UTC (permalink / raw)
  Cc: Stefan Monnier

>     I think we should simply add `man' to the default target and
>     live with it.  If that means that `makeinfo' is sometimes called
>     when a user installs Emacs, what's the big deal ?
> 
> Why would it have that effect?  The info files in a release
> should always be up to date.

Agreed.  I thought the reason why `man' was not in the default
target was because some `tar's might leave timestamps alone,
so that the relative timestamps depend on the order in which
the files were extracted from the tarball.

Any objection to the patch below ?


	Stefan


--- Makefile.in 23 Feb 2003 17:07:42 -0000      1.280
+++ Makefile.in 5 Jun 2003 14:01:42 -0000
@@ -239,7 +239,7 @@
 # Set to FRC to force running autoconf and autoheader
 MAINT =
 
-all: ${SUBDIR} leim
+all: ${SUBDIR} leim info
 
 removenullpaths=sed -e 's/^://g' -e 's/:$$//g' -e 's/::/:/g'

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

* Re: INSTALL-CVS
  2003-06-05 14:02               ` INSTALL-CVS Stefan Monnier
@ 2003-06-05 19:02                 ` Nick Roberts
  2003-06-06 17:02                 ` INSTALL-CVS Richard Stallman
  1 sibling, 0 replies; 32+ messages in thread
From: Nick Roberts @ 2003-06-05 19:02 UTC (permalink / raw)



 > Agreed.  I thought the reason why `man' was not in the default
 > target was because some `tar's might leave timestamps alone,
 > so that the relative timestamps depend on the order in which
 > the files were extracted from the tarball.
 > 
 > Any objection to the patch below ?
 > ...

Or, in case there is a problem for the tarball, how about:


all: ${SUBDIR} leim cvs

cvs:
	if [ -f INSTALL-CVS ]; \
	then $(MAKE) info; \
	fi

as I assume the file, INSTALL-CVS, isn't included in the tarball and
the user need only type make in both cases.

Nick

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

* Re: INSTALL-CVS
  2003-06-04 21:00                 ` INSTALL-CVS Stefan Monnier
  2003-06-04 23:01                   ` INSTALL-CVS David Masterson
@ 2003-06-05 21:46                   ` Richard Stallman
  2003-06-05 23:38                     ` INSTALL-CVS David Masterson
  1 sibling, 1 reply; 32+ messages in thread
From: Richard Stallman @ 2003-06-05 21:46 UTC (permalink / raw)
  Cc: monnier+gnu/emacs

    It seems the only time that I need to re-run a configure script
    is when I'm hacking on the corresponding program.  Otherwise,
    I just untar, configure, make install, and throw away.

Perhaps disks are big enough nowadays that people don't need
to delete their tar files.  Maybe that means `make clean' is
less needed than it was 15 years ago.

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

* Re: INSTALL-CVS
  2003-06-05 21:46                   ` INSTALL-CVS Richard Stallman
@ 2003-06-05 23:38                     ` David Masterson
  0 siblings, 0 replies; 32+ messages in thread
From: David Masterson @ 2003-06-05 23:38 UTC (permalink / raw)
  Cc: Stefan Monnier

>>>>> Richard Stallman writes:

> Perhaps disks are big enough nowadays that people don't need
> to delete their tar files.  Maybe that means `make clean' is
> less needed than it was 15 years ago.

Well, deleting a tar file is not often a big deal as it's probably on
a backup tape or in a snapshot directory or can easily be downloaded
again.  Because 'make' is timestamp based, 'make clean' is *sometimes*
necessary to get something rebuilt properly if you hack the Makefile
(which is what a re-configure potentially does).  The level of
'clean'ness needed is dependent upon how radically the Makefile is
hacked.  It's also sometimes needed because a source file is changed
(as in 'cvs update'), but a target in the Makefile that depends on the
source file doesn't explicitly state the dependency (usually a bug in
the Makefile, but sometimes purposely done).

-- 
David Masterson                David DOT Masterson AT synopsys DOT com
Sr. R&D Engineer               Synopsys, Inc.
Software Engineering           Sunnyvale, CA

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

* Re: INSTALL-CVS
  2003-06-05 14:02               ` INSTALL-CVS Stefan Monnier
  2003-06-05 19:02                 ` INSTALL-CVS Nick Roberts
@ 2003-06-06 17:02                 ` Richard Stallman
  1 sibling, 0 replies; 32+ messages in thread
From: Richard Stallman @ 2003-06-06 17:02 UTC (permalink / raw)
  Cc: monnier+gnu/emacs

    Agreed.  I thought the reason why `man' was not in the default
    target was because some `tar's might leave timestamps alone,
    so that the relative timestamps depend on the order in which
    the files were extracted from the tarball.

Does anyone know if this is true?
If it is true, and Make tries to run makeinfo on a system
that doesn't have it, that will get an error
but the info files will still be correct
(as they were in the distro).  So what we want is
to ignore errors from the recursive make for the man dir.

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

end of thread, other threads:[~2003-06-06 17:02 UTC | newest]

Thread overview: 32+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-06-16 18:41 INSTALL-CVS D. Goel
2002-06-16 19:02 ` INSTALL-CVS Simon Josefsson
2002-06-17  6:07   ` INSTALL-CVS Eli Zaretskii
2002-06-18 16:29     ` INSTALL-CVS D. Goel
2002-06-19  5:15       ` INSTALL-CVS Eli Zaretskii
  -- strict thread matches above, loose matches on Subject: below --
2003-05-29 21:31 INSTALL-CVS Nick Roberts
2003-06-01 15:24 ` INSTALL-CVS Eli Zaretskii
2003-06-01 20:51   ` INSTALL-CVS Nick Roberts
2003-06-02  4:06     ` INSTALL-CVS Eli Zaretskii
2003-06-02 16:56       ` INSTALL-CVS Stefan Monnier
2003-06-02 22:34         ` INSTALL-CVS Nick Roberts
2003-06-02 22:35       ` INSTALL-CVS Nick Roberts
2003-06-03  4:06     ` INSTALL-CVS Richard Stallman
2003-06-03  6:54       ` INSTALL-CVS David Masterson
2003-06-04 11:38         ` INSTALL-CVS Andreas Schwab
2003-06-04 14:42           ` INSTALL-CVS Stefan Monnier
2003-06-04 17:26             ` INSTALL-CVS David Masterson
2003-06-04 17:27               ` INSTALL-CVS Stefan Monnier
2003-06-04 17:52                 ` INSTALL-CVS David Masterson
2003-06-04 17:55                   ` INSTALL-CVS Stefan Monnier
2003-06-05 10:58             ` INSTALL-CVS Richard Stallman
2003-06-05 14:02               ` INSTALL-CVS Stefan Monnier
2003-06-05 19:02                 ` INSTALL-CVS Nick Roberts
2003-06-06 17:02                 ` INSTALL-CVS Richard Stallman
2003-06-04 17:38           ` INSTALL-CVS David Masterson
2003-06-04 18:06             ` INSTALL-CVS Stefan Monnier
2003-06-04 20:54               ` INSTALL-CVS David Masterson
2003-06-04 21:00                 ` INSTALL-CVS Stefan Monnier
2003-06-04 23:01                   ` INSTALL-CVS David Masterson
2003-06-05 21:46                   ` INSTALL-CVS Richard Stallman
2003-06-05 23:38                     ` INSTALL-CVS David Masterson
2003-06-05 12:49                 ` INSTALL-CVS Andreas Schwab

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