aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--Makefile.local12
-rwxr-xr-xconfigure12
-rw-r--r--emacs/Makefile.local26
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 ""
diff --git a/configure b/configure
index d56caadd..ba205764 100755
--- a/configure
+++ b/configure
@@ -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)