diff options
-rw-r--r-- | Makefile.local | 12 | ||||
-rwxr-xr-x | configure | 12 | ||||
-rw-r--r-- | emacs/Makefile.local | 26 |
3 files changed, 32 insertions, 18 deletions
diff --git a/Makefile.local b/Makefile.local index da31982c..bb8ea543 100644 --- a/Makefile.local +++ b/Makefile.local @@ -118,9 +118,6 @@ quiet ?= $($(shell echo $1 | sed -e s'/ .*//')) %.o: %.c $(global_deps) $(call quiet,CC $(CFLAGS)) -c $(FINAL_CFLAGS) $< -o $@ -%.elc: %.el - $(call quiet,EMACS) --directory emacs -batch -f batch-byte-compile $< - .deps/%.d: %.c $(global_deps) @set -e; rm -f $@; mkdir -p $$(dirname $@) ; \ $(CC) -M $(CPPFLAGS) $(FINAL_CFLAGS) $< > $@.$$$$ 2>/dev/null ; \ @@ -183,12 +180,17 @@ install: all notmuch.1.gz install -m0644 notmuch.1.gz $(DESTDIR)$(prefix)/share/man/man1/ ifeq ($(MAKECMDGOALS), install) @echo "" - @echo "Notmuch is now installed." + @echo "Notmuch is now installed to $(DESTDIR)$(prefix)" + @echo "" + @echo "To run notmuch from emacs, each user should add the following line to ~/.emacs:" + @echo "" + @echo " (require 'notmuch)" + @echo "" + @echo "And should then run \"M-x notmuch\" from within emacs or run \"emacs -f notmuch\"" @echo "" @echo "You may now want to install additional components to support using notmuch" @echo "together with other software packages:" @echo "" - @echo " make install-emacs" @echo " make install-bash" @echo " make install-zsh" @echo "" @@ -175,6 +175,15 @@ else emacs_lispdir='$(prefix)/share/emacs/site-lisp' fi +printf "Checking if emacs is available... " +if emacs --quick --batch > /dev/null 2>&1; then + printf "Yes.\n" + have_emacs=1 +else + printf "No (so will not byte-compile emacs code)\n" + have_emacs=0 +fi + if [ $errors -gt 0 ]; then cat <<EOF @@ -300,6 +309,9 @@ libdir = ${LIBDIR:=\$(prefix)/lib} # The directory to which emacs lisp files should be installed emacs_lispdir=${emacs_lispdir} +# Whether there's an emacs binary available for byte-compiling +HAVE_EMACS = ${have_emacs} + # The directory to which desktop files should be installed desktop_dir = \$(prefix)/share/applications diff --git a/emacs/Makefile.local b/emacs/Makefile.local index 51d045c3..52aca4ef 100644 --- a/emacs/Makefile.local +++ b/emacs/Makefile.local @@ -9,21 +9,21 @@ emacs_sources := \ emacs_bytecode := $(subst .el,.elc,$(emacs_sources)) -.PHONY: emacs -emacs: $(emacs_bytecode) +%.elc: %.el + $(call quiet,EMACS) --directory emacs -batch -f batch-byte-compile $< + +ifeq ($(HAVE_EMACS),1) +all: $(emacs_bytecode) +endif + +install: install-emacs .PHONY: install-emacs -install-emacs: install emacs +install-emacs: mkdir -p $(DESTDIR)/$(emacs_lispdir) - install -m0644 $(emacs_sources) $(emacs_bytecode) $(DESTDIR)$(emacs_lispdir) - @echo "" - @echo "The notmuch emacs client is now installed." - @echo "" - @echo "To run this, each user should add the following line to the ~/.emacs file:" - @echo "" - @echo " (require 'notmuch)" - @echo "" - @echo "And should then run \"M-x notmuch\" from within emacs or run \"emacs -f notmuch\"" - @echo "" + install -m0644 $(emacs_sources) $(DESTDIR)$(emacs_lispdir) +ifeq ($(HAVE_EMACS),1) + install -m0644 $(emacs_bytecode) $(DESTDIR)$(emacs_lispdir) +endif CLEAN := $(CLEAN) $(emacs_bytecode) |