unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
* [ALT PATCH] emacs: target one-notmuch.el[c] -- emacs client in one .el[c] file
       [not found] <1378150636-26822-1-git-send-email-tomi.ollila@iki.fi^[[D>
@ 2013-09-04 13:41 ` Tomi Ollila
  2013-09-04 16:28   ` David Bremner
  0 siblings, 1 reply; 3+ messages in thread
From: Tomi Ollila @ 2013-09-04 13:41 UTC (permalink / raw)
  To: notmuch; +Cc: tomi.ollila

Added Makefile recipes to create notmuch emacs client in just one
.el[c] file.

This is an experimental feature and not built by default.

This is useful for example when one wants to build the latest
emacs client and then distribute the elisp file to many machines.

This is also useful for (initial) testing:

     make emacs/one-notmuch.elc
     emacs -q -l emacs/one-notmuch.elc -f notmuch

can be used to quickly experiment with new development.
---

This is alternative to

id:1378150636-26822-1-git-send-email-tomi.ollila@iki.fi

notmuch-one* was changed to one-notmuch*

Now the created files do not "pollute" notmuch-* filenamespace
and is easier to distinquish.

See the referred email for more usage possibilities.

 emacs/Makefile.local | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/emacs/Makefile.local b/emacs/Makefile.local
index a910aff..7f3526d 100644
--- a/emacs/Makefile.local
+++ b/emacs/Makefile.local
@@ -46,6 +46,20 @@ endif
 install: install-emacs
 endif
 
+# Unsupported hack to provide notmuch emacs client in one *.elc file.
+# It probably works -- or then it fails mysteriously. YMMV.
+# Enter `make emacs/one-notmuch.elc' in top level directory to build it.
+ifeq ($(HAVE_EMACS),1)
+$(dir)/one-notmuch.el: $(emacs_sources)
+	rm -f $(emacs_bytecode) # XXX
+	make -n all WITH_EMACS=1 | sed -n '/printf.*EMACS/ s/.* //p' | \
+		xargs grep -vh '(declare-function.*"notmuch' > '$@' || :
+	{ echo ';; Local Variables:'; \
+	  echo ';; byte-compile-warnings: (not cl-functions)'; \
+	  echo ';; End:'; } >> '$@'
+endif
+CLEAN+=$(dir)/one-notmuch.el $(dir)/one-notmuch.elc
+
 .PHONY: install-emacs
 install-emacs:
 	mkdir -p "$(DESTDIR)$(emacslispdir)"
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [ALT PATCH] emacs: target one-notmuch.el[c] -- emacs client in one .el[c] file
  2013-09-04 13:41 ` [ALT PATCH] emacs: target one-notmuch.el[c] -- emacs client in one .el[c] file Tomi Ollila
@ 2013-09-04 16:28   ` David Bremner
  2013-09-04 16:32     ` Tomi Ollila
  0 siblings, 1 reply; 3+ messages in thread
From: David Bremner @ 2013-09-04 16:28 UTC (permalink / raw)
  To: Tomi Ollila, notmuch; +Cc: tomi.ollila

Tomi Ollila <tomi.ollila@iki.fi> writes:

> can be used to quickly experiment with new development.

What about explicitely putting this under devel? I'm a bit nervous about
promoting this feature since mismatch between CLI and emacs code is
already a source of problems for users.

d

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [ALT PATCH] emacs: target one-notmuch.el[c] -- emacs client in one .el[c] file
  2013-09-04 16:28   ` David Bremner
@ 2013-09-04 16:32     ` Tomi Ollila
  0 siblings, 0 replies; 3+ messages in thread
From: Tomi Ollila @ 2013-09-04 16:32 UTC (permalink / raw)
  To: David Bremner, notmuch

On Wed, Sep 04 2013, David Bremner <david@tethera.net> wrote:

> Tomi Ollila <tomi.ollila@iki.fi> writes:
>
>> can be used to quickly experiment with new development.
>
> What about explicitely putting this under devel? I'm a bit nervous about
> promoting this feature since mismatch between CLI and emacs code is
> already a source of problems for users.

Hmm, that is good approach... Let's see how that sorts out...

> d

Tomi


-- 
"kaik on mänt!"

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2013-09-04 16:32 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <1378150636-26822-1-git-send-email-tomi.ollila@iki.fi^[[D>
2013-09-04 13:41 ` [ALT PATCH] emacs: target one-notmuch.el[c] -- emacs client in one .el[c] file Tomi Ollila
2013-09-04 16:28   ` David Bremner
2013-09-04 16:32     ` Tomi Ollila

Code repositories for project(s) associated with this public inbox

	https://yhetil.org/notmuch.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).