all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
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



  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.