• [gentoo-dev] [PATCH] elisp-common.eclass: fix for Emacs 29 (explicitly

    From Sam James@21:1/5 to All on Thu Aug 18 21:20:01 2022
    Emacs 29's NEWS says: "The autoload.el library is now obsolete."

    We should therefore explicitly 'require it in order to have the
    eclass machinery work.

    Fix build failures with e.g. exec-path-from-shell, flycheck:
    ```
    * Generating autoload file for GNU Emacs ...

    Error: void-function (batch-update-autoloads)
    debug-early-backtrace()
    debug-early(error (void-function batch-update-autoloads))
    batch-update-autoloads()
    command-line-1(("--eval" "(setq make-backup-files nil)" "--eval" "(setq generated-autoload-file (expand-file-name \"exec-path-from-shell-autoloads.el\"))" "-f" "batch-update-autoloads" "."))
    command-line()
    normal-top-level()
    Symbol’s function definition is void: batch-update-autoloads
    * elisp-make-autoload-file: batch-update-autoloads failed
    [ !! ]
    * ERROR: app-emacs/exec-path-from-shell-1.12::gentoo failed (compile phase):
    * (no error message)
    ```

    See https://www.mail-archive.com/freebsd-pkg-fallout@freebsd.org/msg1982134.html
    and https://lists.gnu.org/archive/html/bug-gnu-emacs/2022-08/msg01259.html.

    Thanks-to: John Turner <jturner.usa+gentoo@gmail.com>
    Signed-off-by: Sam James <sam@gentoo.org>
    ---
    eclass/elisp-common.eclass | 1 +
    1 file changed, 1 insertion(+)

    diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
    index 47c8132192ca..2715c26c91a8 100644
    --- a/eclass/elisp-common.eclass
    +++ b/eclass/elisp-common.eclass
    @@ -329,6 +329,7 @@ elisp-make-autoload-file() {
    EOF

    ${EMACS} ${EMACSFLAGS} \
    + --eval "(require 'autoload)" \
    --eval "(setq make-backup-files nil)" \
    --eval "(setq generated-autoload-file (expand-file-name \"${f}\"))" \
    -f batch-update-autoloads "${@-.}"
    --
    2.37.2

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)