branch: externals/bnf-mode
commit ec0774eaa240374352c16c3d79b7f4cab57f487b
Author: Serghei Iakovlev <[email protected]>
Commit: Serghei Iakovlev <[email protected]>
Add ability to generate bnf-mode-autoloads.el file
---
Makefile | 14 ++++++++++++--
default.mk | 2 ++
2 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/Makefile b/Makefile
index 5a032f6..0b4621c 100644
--- a/Makefile
+++ b/Makefile
@@ -30,6 +30,12 @@ dir: $(INFOPAGES)
$(info Generating dir)
@echo $^ | xargs -n 1 $(INSTALL_INFO) --dir=$@
+$(AUTOLOADS): $(SRCS)
+ @$(EMACSBATCH) --eval \
+ "(progn \
+ (require 'package) \
+ (package-generate-autoloads \"bnf-mode\" default-directory))"
+
# Remove badges
define org-clean
@cat $^ | sed -e "s/\[\[.*\.svg\]\]//g"
@@ -67,6 +73,9 @@ checkdoc:
.PHONY: build
build: $(OBJS)
+.PHONY: autoloads
+autoloads: $(AUTOLOADS)
+
.PHONY: test
test:
@$(CASK) exec buttercup $(TESTFLAGS)
@@ -75,7 +84,7 @@ test:
clean:
$(info Remove all byte compiled Elisp files...)
@$(CASK) clean-elc
- $(info Remove build artefacts...)
+ $(info Remove build artifacts...)
@$(RM) README ChangeLog coverage-final.json
@$(RM) $(PACKAGE)-pkg.el $(PACKAGE)-*.tar
@@ -101,9 +110,10 @@ help: .title
@echo ' init: Initialize the project (has to be launched first)'
@echo ' checkdoc: Checks BNF Mode code for errors in the
documentation'
@echo ' build: Byte compile BNF Mode package'
+ @echo ' autoloads: Generate autoloads file'
@echo ' test: Run the non-interactive unit test suite'
@echo ' clean: Remove all byte compiled Elisp files,
documentation,'
- @echo ' build artefacts and tarball'
+ @echo ' build artifacts and tarball'
@echo ' package: Build package'
@echo ' install: Install BNF Mode'
@echo ' info: Generate info manual'
diff --git a/default.mk b/default.mk
index 3c527f2..5a8e14c 100644
--- a/default.mk
+++ b/default.mk
@@ -53,6 +53,7 @@ PACKAGE = bnf-mode
ARCHIVE_NAME = $(PACKAGE)-$(VERSION)
# File lists
+AUTOLOADS = bnf-mode-autoloads.el
SRCS = bnf-mode.el
OBJS = $(SRCS:.el=.elc)
@@ -60,6 +61,7 @@ INFOPAGES = $(addsuffix .info,$(PACKAGE))
ARCHIVE_CONTENTS = README \
ChangeLog \
LICENSE \
+ $(AUTOLOADS) \
$(PACKAGE).el \
$(PACKAGE)-pkg.el \
$(INFOPAGES) dir