From: phillip.lord@russet.org.uk (Phillip Lord)
To: Eli Zaretskii <eliz@gnu.org>
Cc: rgm@gnu.org, eggert@cs.ucla.edu, emacs-devel@gnu.org
Subject: Re: reftex.el autoloads
Date: Sat, 19 Dec 2015 13:24:20 +0000 [thread overview]
Message-ID: <87io3uh8qj.fsf@russet.org.uk> (raw)
In-Reply-To: <8337uyx5ar.fsf@gnu.org> (Eli Zaretskii's message of "Sat, 19 Dec 2015 09:31:56 +0200")
Eli Zaretskii <eliz@gnu.org> writes:
>> The intuitive solution is do
>>
>> $(lisp)/loaddefs.el $(lisp)/textmodes/reftex-loadefs.el $(AND_ALL_THE_OTHERS): $(LOADDEFS)
>> @echo Directories for loaddefs: ${SUBDIRS_ALMOST}
>> $(AM_V_GEN)$(emacs) -l autoload \
>> --eval '(setq autoload-ensure-writable t)' \
>> --eval '(setq autoload-builtin-package-versions t)' \
>> --eval '(setq generated-autoload-file (expand-file-name (unmsys--file-name "$@")))' \
>> -f batch-update-autoloads ${SUBDIRS_ALMOST}
>>
>> but this fails because make actually runs batch-update-autoloads
>> multiple times which is both wasteful and causes a race condition with
>> -j.
>
> Several alternative solutions for this were tried, and all of them
> were found out as worse than the problem.
Indeed. It's something make just does not support well. The only
solution I have is to add makefile rules for each -loaddefs.el file
listing all dependencies. They don't change that often, so it's
possible, but I don't think it is worth it.
As I said at the beginning, personally, for the small files, I would
have placed the autoloads into loaddefs.el, and for the bigger files
(dired.el, reftex.el and ibuffer) I would remove this mechanism and
replace it with a simple require.
>> As this doesn't work, I didn't do it (I tried it!). Instead, I added
>> autoloads-force. It's ugly, but it's explicit and ugly rather than
>> implicit and ugly.
>
> This has never been a problem in practice, so I don't think that
> additional rule is needed.
I used it repeatedly to make the commits, and anyone adding new
autoloads to any of the autoloaded files would find it useful. And the
comment is more useful -- it too me a while to work out why the loaddefs
files where NOT being produced by make autoloads
But, feel free to remove it, if you wish. It's not a big deal.
Phil
next prev parent reply other threads:[~2015-12-19 13:24 UTC|newest]
Thread overview: 61+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-10 11:03 reftex.el autoloads Phillip Lord
2015-12-10 14:48 ` Artur Malabarba
2015-12-10 16:28 ` Eli Zaretskii
2015-12-10 18:52 ` Paul Eggert
2015-12-10 22:07 ` Phillip Lord
2015-12-11 7:26 ` Eli Zaretskii
2015-12-11 15:38 ` Phillip Lord
2015-12-10 22:03 ` Phillip Lord
2015-12-11 7:24 ` Eli Zaretskii
2015-12-11 15:35 ` Phillip Lord
2015-12-11 16:18 ` Eli Zaretskii
2015-12-11 17:08 ` Phillip Lord
2015-12-11 17:46 ` Glenn Morris
2015-12-11 18:20 ` Phillip Lord
2015-12-11 20:03 ` Paul Eggert
2015-12-12 18:24 ` Phillip Lord
2015-12-12 18:42 ` Eli Zaretskii
2015-12-12 18:56 ` Phillip Lord
2015-12-12 19:09 ` Eli Zaretskii
2015-12-12 21:15 ` Phillip Lord
2015-12-13 3:33 ` Eli Zaretskii
2015-12-13 20:33 ` Phillip Lord
2015-12-13 21:50 ` Glenn Morris
2015-12-13 22:11 ` Phillip Lord
2015-12-15 19:33 ` Glenn Morris
2015-12-16 17:15 ` Phillip Lord
2015-12-17 2:15 ` Glenn Morris
2015-12-17 3:42 ` Eli Zaretskii
2015-12-17 16:07 ` John Wiegley
2015-12-17 21:31 ` Phillip Lord
2015-12-18 16:39 ` Glenn Morris
2015-12-18 17:12 ` Paul Eggert
2015-12-18 20:55 ` Phillip Lord
2015-12-18 21:27 ` Eli Zaretskii
2015-12-18 21:51 ` Phillip Lord
2015-12-19 7:29 ` Eli Zaretskii
2015-12-18 22:05 ` Phillip Lord
2015-12-19 7:31 ` Eli Zaretskii
2015-12-19 13:24 ` Phillip Lord [this message]
2015-12-20 12:41 ` Phillip Lord
2015-12-20 15:59 ` Eli Zaretskii
2015-12-20 18:41 ` Phillip Lord
2015-12-20 18:37 ` Glenn Morris
2015-12-20 23:04 ` Phillip Lord
2015-12-21 0:24 ` Glenn Morris
2015-12-21 10:32 ` Phillip Lord
2015-12-22 10:55 ` Phillip Lord
2015-12-21 6:45 ` martin rudalics
2015-12-21 10:31 ` Phillip Lord
2015-12-18 20:45 ` Phillip Lord
2015-12-18 21:22 ` Phillip Lord
2015-12-20 18:41 ` Glenn Morris
2015-12-20 19:05 ` Eli Zaretskii
2015-12-21 0:22 ` Glenn Morris
2015-12-20 23:15 ` Phillip Lord
2015-12-21 0:29 ` Glenn Morris
2015-12-21 10:52 ` Phillip Lord
2015-12-17 5:57 ` Paul Eggert
2015-12-17 12:07 ` Phillip Lord
2015-12-11 17:34 ` David Engster
2015-12-11 17:39 ` Glenn Morris
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87io3uh8qj.fsf@russet.org.uk \
--to=phillip.lord@russet.org.uk \
--cc=eggert@cs.ucla.edu \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=rgm@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.