emacs-diffs
[Top][All Lists]
Advanced

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

master 261d6afd6e: Byte-compile the in-tree loaddefs.el files


From: Lars Ingebrigtsen
Subject: master 261d6afd6e: Byte-compile the in-tree loaddefs.el files
Date: Wed, 3 Aug 2022 08:22:23 -0400 (EDT)

branch: master
commit 261d6afd6e6f3ba2bbf4db0d9ac57b0cbacc0137
Author: Lars Ingebrigtsen <larsi@gnus.org>
Commit: Lars Ingebrigtsen <larsi@gnus.org>

    Byte-compile the in-tree loaddefs.el files
    
    * lisp/Makefile.in (all): Add "autoloads", which now otherwise
    won't be done.
    ($(lisp)/loaddefs.el): Remove this target, since it's always done,
    and would then trigger a re-compilation of loaddefs.elc.
    
    * lisp/loadup.el: Load loaddefs.elc (if it exists).
    
    * lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate): Don't
    include no-byte-compile cookies in the Emacs build.
    
    * src/Makefile.in ($(pdmp)): Depend on loaddefs.elc to ensure that
    it's built by this point.
    ($(etc)/DOC): Don't scan loaddefs.el for doc strings, since they
    are now picked up from the .elc file (bug#53024).
---
 lisp/Makefile.in                | 17 +++++++----------
 lisp/emacs-lisp/loaddefs-gen.el |  3 ++-
 lisp/loadup.el                  |  7 ++++---
 src/Makefile.in                 |  6 ++----
 4 files changed, 15 insertions(+), 18 deletions(-)

diff --git a/lisp/Makefile.in b/lisp/Makefile.in
index 9516f2fc36..315b1fcf7b 100644
--- a/lisp/Makefile.in
+++ b/lisp/Makefile.in
@@ -123,10 +123,10 @@ SUBDIRS_FINDER = $(filter-out 
${srcdir}/leim%,${SUBDIRS_ALMOST})
 ## All subdirectories in which we might want to create subdirs.el.
 SUBDIRS_SUBDIRS = $(filter-out ${srcdir}/cedet% ${srcdir}/leim%,${SUBDIRS})
 
-# cus-load and finder-inf are not explicitly requested by anything, so
-# we add them here to make sure they get built.
+# cus-load, finder-inf and autoloads are not explicitly requested by
+# anything, so we add them here to make sure they get built.
 all: compile-main $(lisp)/cus-load.el $(lisp)/finder-inf.el generate-ja-dic \
-       org-manuals
+       org-manuals autoloads
 
 PHONY_EXTRAS =
 .PHONY: all custom-deps finder-data autoloads update-subdirs $(PHONY_EXTRAS) \
@@ -196,13 +196,10 @@ org-manuals: main-first
 # from ../src rules, but that doesn't seem possible due to the various
 # non-trivial dependencies.
 
-# We make $(lisp)/loaddefs.el a dependency of .PHONY to cause Make to
-# ignore its time stamp.  That's because the real dependencies of
-# loaddefs.el aren't known to Make, they are implemented in
-# loaddefs-generate--emacs-batch.
-
-autoloads .PHONY: $(lisp)/loaddefs.el
-$(lisp)/loaddefs.el: gen-lisp $(LOADDEFS) $(lisp)/emacs-lisp/loaddefs-gen.elc
+# That's because the real dependencies of loaddefs.el aren't known to
+# Make, they are implemented in loaddefs-generate--emacs-batch, so
+# autoloads is an "all" dependency.
+autoloads:
        $(AM_V_GEN)$(emacs) \
             -l $(lisp)/emacs-lisp/loaddefs-gen.elc \
            -f loaddefs-generate--emacs-batch ${SUBDIRS_ALMOST}
diff --git a/lisp/emacs-lisp/loaddefs-gen.el b/lisp/emacs-lisp/loaddefs-gen.el
index 36b0b1e9cd..830799ec36 100644
--- a/lisp/emacs-lisp/loaddefs-gen.el
+++ b/lisp/emacs-lisp/loaddefs-gen.el
@@ -588,7 +588,8 @@ If GENERATE-FULL, don't update, but regenerate all the 
loaddefs files."
           (with-temp-buffer
             (if (and updating (file-exists-p loaddefs-file))
                 (insert-file-contents loaddefs-file)
-              (insert (loaddefs-generate--rubric loaddefs-file nil t))
+              (insert (loaddefs-generate--rubric
+                       loaddefs-file nil t include-package-version))
               (search-backward "\f")
               (when extra-data
                 (insert extra-data)
diff --git a/lisp/loadup.el b/lisp/loadup.el
index 21a87dbd77..a65c1724ae 100644
--- a/lisp/loadup.el
+++ b/lisp/loadup.el
@@ -185,9 +185,10 @@
 ;; should be updated by overwriting it with an up-to-date copy of
 ;; loaddefs.el that is not corrupted by local changes.
 ;; admin/update_autogen can be used to update ldefs-boot.el periodically.
-(condition-case nil (load "loaddefs.el")
-  ;; In case loaddefs hasn't been generated yet.
-  (file-error (load "ldefs-boot.el")))
+(condition-case nil
+    (load "loaddefs")
+  (file-error
+   (load "ldefs-boot.el")))
 
 (let ((new (make-hash-table :test #'equal)))
   ;; Now that loaddefs has populated definition-prefixes, purify its contents.
diff --git a/src/Makefile.in b/src/Makefile.in
index 7d15b7afd5..e81e7a16d9 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -635,7 +635,7 @@ Emacs.pdmp: $(pdmp)
 endif
 
 ifeq ($(DUMPING),pdumper)
-$(pdmp): emacs$(EXEEXT)
+$(pdmp): emacs$(EXEEXT) $(lispsource)/loaddefs.elc
        LC_ALL=C $(RUN_TEMACS) -batch $(BUILD_DETAILS) -l loadup --temacs=pdump 
\
                --bin-dest $(BIN_DESTDIR) --eln-dest $(ELN_DESTDIR)
        cp -f $@ $(bootstrap_pdmp)
@@ -652,13 +652,11 @@ endif
 ## for the first time, this prevents any variation between configurations
 ## in the contents of the DOC file.
 ##
-$(etc)/DOC: $(libsrc)/make-docfile$(EXEEXT) $(doc_obj) 
$(lispsource)/loaddefs.el
+$(etc)/DOC: $(libsrc)/make-docfile$(EXEEXT) $(doc_obj)
        $(AM_V_GEN)$(MKDIR_P) $(etc)
        $(AM_V_at)rm -f $(etc)/DOC
        $(AM_V_at)$(libsrc)/make-docfile -d $(srcdir) \
          $(SOME_MACHINE_OBJECTS) $(doc_obj) > $(etc)/DOC
-       $(AM_V_at)$(libsrc)/make-docfile -a $(etc)/DOC -d $(lispsource) \
-         loaddefs.el
 
 $(libsrc)/make-docfile$(EXEEXT) $(libsrc)/make-fingerprint$(EXEEXT): \
   $(lib)/libgnu.a



reply via email to

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