[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: error building poke-mode.elc
From: |
Jose E. Marchesi |
Subject: |
Re: error building poke-mode.elc |
Date: |
Fri, 19 Mar 2021 09:43:55 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) |
> Building the current master branch on a system with Emacs 24.5.1,
> I get this error:
>
> ========================================================================
> make[2]: Entering directory '/media/develdata/devel/POKE/poke/etc'
> if test 'emacs' != no; then \
> am__dir=. am__subdir_includes=''; \
> case poke-mode.elc in */*) \
> am__dir=`echo 'poke-mode.elc' | sed 's,/[^/]*$,,'`; \
> am__subdir_includes="-L $am__dir -L ./$am__dir"; \
> esac; \
> test -d "$am__dir" || /arch/local/x86_64-linux/bin/mkdir -p "$am__dir" ||
> exit 1; \
> emacs --batch \
> \
> $am__subdir_includes -L . -L . \
> --eval '(if (boundp (quote byte-compile-dest-file-function)) (setq
> byte-compile-dest-file-function (lambda (_) "poke-mode.elc")) (defun
> byte-compile-dest-file (_) "poke-mode.elc") )' \
> -f batch-byte-compile 'poke-mode.el'; \
> else :; fi
> Loading 00debian-vars...
> Loading /etc/emacs/site-start.d/50autoconf.el (source)...
> Loading /etc/emacs/site-start.d/50cmake-data.el (source)...
> Loading /etc/emacs/site-start.d/50dictionaries-common.el (source)...
> Loading debian-ispell...
> Loading /var/cache/dictionaries-common/emacsen-ispell-default.el (source)...
> Loading /var/cache/dictionaries-common/emacsen-ispell-dicts.el (source)...
> Loading /etc/emacs/site-start.d/50gnugo.el (source)...
> Loading /etc/emacs/site-start.d/50python-docutils.el (source)...
>
> In toplevel form:
> poke-mode.el:169:1:Error: rx form `regexp' requires args satisfying `stringp'
> make[2]: *** [Makefile:2022: poke-mode.elc] Error 1
> ========================================================================
>
> Since Emacs is now a build prerequisite, it should be mentioned in the
> third section of the DEPENDENCIES file.
Emacs is not a strict dependency. From the Automake manual:
Automake will byte-compile all Emacs Lisp source files using the
Emacs found by ‘AM_PATH_LISPDIR’, if any was found.
If no Emacs is found in the build system, AM_PATH_LISPDIR will set
lispdir to a default and Automake will not try to byte-compile the .el
files.
Now, _if_ Emacs is installed, then clearly the modes are requiring a
recent enough version of Emacs. This is annoying.
I see two alternatives:
a) We change dist_lisp_LISP to dist_lisp_DATA so Automake will never try
to byte-compile the elisp files.
b) We document a minimum version of Emacs in DEPENDENCIES.