emacs-devel
[Top][All Lists]
Advanced

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

Re: Fixing the lisp/loaddefs.el situation


From: David PONCE
Subject: Re: Fixing the lisp/loaddefs.el situation
Date: Mon, 15 Sep 2003 08:51:32 +0200 (CEST)

Hi Miles,

>>Looks good.  What about lisp/makefile-w32.in?
> 
> 
> I have no idea about that; a cursory glance shows lots of things
> commented out from the normal makefile, and some weird shit to deal with
> different command interpreter types, so I think it's best to leave it to
> the experts (if there be any).

I propose you this patch for lisp/makefile.w32-in, took from your
changes to lisp/Makefile.in.  I managed to bootstrap today's CVS
version of Emacs on my Windows NT box, using latest MinGW 3.0.0-1
toolkit and the "sh" shell environment provided by cygwin.  Hope it
will help.

David

Index: lisp/makefile.w32-in
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/makefile.w32-in,v
retrieving revision 1.31
diff -c -r1.31 makefile.w32-in
*** lisp/makefile.w32-in        1 Sep 2003 15:45:13 -0000       1.31
--- lisp/makefile.w32-in        15 Sep 2003 06:39:05 -0000
***************
*** 87,92 ****
--- 87,93 ----
        $(lisp)/language/utf-8-lang.el \
        $(lisp)/language/georgian.el \
        $(lisp)/loaddefs.el \
+       $(lisp)/loaddefs-boot.el \
        $(lisp)/loadup.el \
        $(lisp)/mail/blessmail.el \
        $(lisp)/patcomp.el \
***************
*** 352,373 ****
  recompile: doit
        $(emacs) -f batch-byte-recompile-directory $(lisp)
  
! # Prepare a bootstrap in the lisp subdirectory.  Build loaddefs.el,
! # because it's not sure it's up-to-date, and if it's not, that might
! # lead to errors during the bootstrap because something fails to
! # autoload as expected.  Remove compiled Lisp files so that
! # bootstrap-emacs will be built from sources only.
  
  # Need separate version for sh and native cmd.exe
  bootstrap-clean: bootstrap-clean-$(SHELLTYPE) loaddefs.el
  
  bootstrap-clean-CMD:
  #     if exist $(EMACS) $(MAKE) $(MFLAGS) autoloads
        -for %f in (. $(WINS)) do for %g in (%f\*.elc) do @$(DEL) %g
  
  bootstrap-clean-SH:
  #     if test -f $(EMACS); then $(MAKE) $(MFLAGS) autoloads; fi
  #     -rm -f $(lisp)/*.elc $(lisp)/*/*.elc
        -for dir in . $(WINS); do rm -f $$dir/*.elc; done
  
  # Generate/update files for the bootstrap process.
--- 353,385 ----
  recompile: doit
        $(emacs) -f batch-byte-recompile-directory $(lisp)
  
! # Prepare a bootstrap in the lisp subdirectory.
! #
! # Build loaddefs.el, because it's not sure it's up-to-date, and if it's not,
! # that might lead to errors during the bootstrap because something fails to
! # autoload as expected.  However, if there is no emacs binary, then we can't
! # build autoloads yet, so just make sure there's some loaddefs.el file, as
! # it's necessary for generating the binary (because loaddefs.el is an
! # automatically generated file, we don't want to store it in the source
! # repository).
! #
! # Remove compiled Lisp files so that bootstrap-emacs will be built from
! # sources only.
  
  # Need separate version for sh and native cmd.exe
  bootstrap-clean: bootstrap-clean-$(SHELLTYPE) loaddefs.el
  
  bootstrap-clean-CMD:
  #     if exist $(EMACS) $(MAKE) $(MFLAGS) autoloads
+       if not exist $(lisp)\loaddefs.el cp $(lisp)/loaddefs-boot.el 
$(lisp)/loaddefs.el
        -for %f in (. $(WINS)) do for %g in (%f\*.elc) do @$(DEL) %g
  
  bootstrap-clean-SH:
  #     if test -f $(EMACS); then $(MAKE) $(MFLAGS) autoloads; fi
  #     -rm -f $(lisp)/*.elc $(lisp)/*/*.elc
+       if ! test -r $(lisp)/loaddefs.el; then \
+         cp $(lisp)/loaddefs-boot.el $(lisp)/loaddefs.el; \
+       fi
        -for dir in . $(WINS); do rm -f $$dir/*.elc; done
  
  # Generate/update files for the bootstrap process.





reply via email to

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