[PATCH 2/2] build/emacs: add target to create elpa package
David Bremner
david at tethera.net
Sat Nov 19 09:44:29 PST 2016
This package can be created without emacs, but will only be usable in
versions of emacs supporting package.el
---
Makefile.global | 2 ++
emacs/Makefile.local | 10 ++++++++++
2 files changed, 12 insertions(+)
diff --git a/Makefile.global b/Makefile.global
index 444e6bb..d8f335a 100644
--- a/Makefile.global
+++ b/Makefile.global
@@ -23,6 +23,8 @@ ifeq ($(IS_GIT),yes)
VERSION:=$(shell git --git-dir=${srcdir}/.git describe --abbrev=7 --match '[0-9.]*'|sed -e s/_/~/ -e s/-/+/ -e s/-/~/)
# drop the ~g$sha1 part
ELPA_VERSION:=$(word 1,$(subst ~, ,$(VERSION)))
+# convert git version to package.el friendly form
+ELPA_VERSION:=$(subst +,snapshot,$(ELPA_VERSION))
# Write the file 'version.stamp' in case its contents differ from $(VERSION)
FILE_VERSION:=$(shell test -f version.stamp && read vs < version.stamp || vs=; echo $$vs)
diff --git a/emacs/Makefile.local b/emacs/Makefile.local
index 90a57cc..f163617 100644
--- a/emacs/Makefile.local
+++ b/emacs/Makefile.local
@@ -24,6 +24,8 @@ emacs_sources := \
$(dir)/notmuch-company.el \
$(dir)/notmuch-draft.el
+elpa_sources := ${emacs_sources} $(dir)/notmuch-pkg.el
+
$(dir)/notmuch-version.el: $(dir)/Makefile.local version.stamp
$(dir)/notmuch-version.el: $(srcdir)/$(dir)/notmuch-version.el.tmpl
@sed -e 's/%AG%/Generated file (from $(<F)) -- do not edit!/' \
@@ -73,6 +75,14 @@ ifeq ($(HAVE_EMACS),1)
$(call quiet,EMACS) --directory emacs -batch -f batch-byte-compile $<
endif
+elpa: $(ELPA_FILE)
+
+notmuch-emacs-%.tar: ${elpa_sources}
+ mkdir -p .elpa-build/notmuch-${ELPA_VERSION}
+ cp ${elpa_sources} .elpa-build/notmuch-${ELPA_VERSION}
+ tar -C .elpa-build -cf $@ notmuch-${ELPA_VERSION}
+ rm -r .elpa-build
+
ifeq ($(WITH_EMACS),1)
ifeq ($(HAVE_EMACS),1)
all: $(emacs_bytecode)
--
2.10.2
More information about the notmuch
mailing list