Subject: bug#2151: closed (Re: bug#2151: 23.0.90; Building the 23.0.90 pretest recompiles Lisp files)

From: [email-masked] (GNU bug Tracking System)
Date: Fri, 27 Jun 2014 00:43:03 +0000

Your bug report

#2151: 23.0.90; Building the 23.0.90 pretest recompiles Lisp files

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
2151: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=2151
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#2151: 23.0.90; Building the 23.0.90 pretest recompiles Lisp files
From: Glenn Morris <[email-masked]>
To: [email-masked]
Date: Thu, 26 Jun 2014 20:42:51 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

Version: 24.5

Fixed thanks to GNU make.

Subject: 23.0.90; Building the 23.0.90 pretest recompiles Lisp files
From: Eli Zaretskii <[email-masked]>
To: [email-masked]
Date: Mon, 02 Feb 2009 01:03:52 -0500

Building the pretest recompiles many Lisp files, which it shouldn't IMO.

Looking at the Makefile's, I think the problem is in this snippet from
src/Makefile.in (near the end):

  /* Since the .el.elc rule cannot specify an extra dependency, we do it here.  */
  ${lisp} ${SOME_MACHINE_LISP}: $(BOOTSTRAPEMACS)

  ${lispsource}loaddefs.el: $(BOOTSTRAPEMACS)
	  cd ../lisp; $(MAKE) $(MFLAGS) autoloads EMACS=../src/bootstrap-emacs${EXEEXT}

  /* Dump an Emacs executable named bootstrap-emacs containing the
     files from loadup.el in source form.  */

  bootstrap-emacs${EXEEXT}: temacs${EXEEXT}
	  cd ../lisp; $(MAKE) $(MFLAGS) update-subdirs
  #ifdef CANNOT_DUMP
	  ln -f temacs${EXEEXT} bootstrap-emacs${EXEEXT}
  #else
	  $(RUN_TEMACS) --batch --load loadup bootstrap
	  mv -f emacs${EXEEXT} bootstrap-emacs${EXEEXT}
  #endif /* ! defined (CANNOT_DUMP) */
	  @: Compile some files earlier to speed up further compilation.
	  cd ../lisp; $(MAKE) $(MFLAGS) compile-first EMACS=../src/bootstrap-emacs${EXEEXT}

It goes like this: since temacs is built, the last rule says to
produce bootstrap-emacs${EXEEXT}.  The new bootstrap-emacs then
triggers the 2 rules before it, which rebuild loaddefs.el and
recompile the Lisp files in ${lisp} and ${SOME_MACHINE_LISP}.

In GNU Emacs 23.0.90.1 (x86_64-unknown-linux-gnu)
 of 2009-02-02 on fencepost
configured using `configure  '--without-x''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: nil
  value of $XMODIFIERS: nil
  locale-coding-system: nil
  default-enable-multibyte-characters: t

Major mode: Fundamental

Minor modes in effect:
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  global-auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
ESC O D ESC O D ESC O D DEL ESC O B ESC O D a t SPC 
s t a r t u p SPC w h e n SPC y o u r SPC ~ / . e m 
a c s SPC s e t s SPC t h a t SPC v a r i a b ESC DEL 
o p t i o n s DEL . ESC b ESC b ESC b ESC d c u s t 
o m i z e s ESC b ESC b ESC b ESC b ESC b ESC f ESC 
d SPC i f ESC q ESC O B ESC O B ESC O B ESC O A ESC 
O B ESC O B DEL ESC O A ESC O A ESC O B ESC O B ESC 
O A ESC M-q M-k ESC O A ESC O B ESC O B C-x M-m C-x 
o C-x o ESC x f i n d - f i l e - l i t TAB RET m a 
i l . n e w RET C-s c y d ESC [ 6 ~ ESC [ 6 ~ ESC O 
A ESC O B ESC O B ESC O C ESC O C ESC O C ESC O C ESC 
O C ESC O C ESC O C ESC O D C-@ C-e ESC w ESC [ 6 ~ 
C-x b RET C-x b RET C-x b RET C-c C-c y e s RET C-x 
4 f e m a c s . c v TAB e m a TAB ESC DEL p r e TAB 
e m a TAB 3 TAB / t y TAB RET C-x o ESC x ESC O A ESC 
O A RET

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
Mark saved where search started
Quit
Making completion list... [3 times]
Mark saved where search started
Auto-saving...done
Auto-saving...done
Mark saved where search started
Mark set
Sending...done