]> code.delx.au - gnu-emacs-elpa/blob - packages/web-server/Makefile
Merge commit '0cda39255827f283e7578cd469ae42daad9556a2' from js2-mode
[gnu-emacs-elpa] / packages / web-server / Makefile
1 EMACS := emacs
2 BATCH=$(EMACS) --batch --execute '(add-to-list (quote load-path) "$(shell pwd)")'
3
4 SRC=$(wildcard *.el)
5 ELC=$(SRC:.el=.elc)
6
7 .PHONY: src doc check clean
8 all: src doc
9
10 src: $(SRC)
11 $(BATCH) -f batch-byte-compile $^
12
13 doc:
14 $(MAKE) -C doc/
15
16 doc/web-server.info:
17 $(MAKE) -C doc/ web-server.info
18
19 doc/dir:
20 $(MAKE) -C doc/ dir
21
22 check: $(SRC)
23 $(BATCH) -l cl -l ert -l web-server-test -f ert-run-tests-batch-and-exit
24
25 clean:
26 rm -rf $(ELC) $(PACKAGE) $(PACKAGE).tar
27 $(MAKE) -C doc/ $(MAKECMDGOALS)
28
29 # Packaging
30 PARSE=grep "$(1):" web-server.el|sed 's/^.*$(1): //'
31 NAME=web-server
32 VERSION=$(shell $(call PARSE,Version))
33 DOC=$(shell head -1 web-server.el|sed 's/^.*--- //')
34 REQ=$(shell $(call PARSE,Package-Requires))
35 DEFPKG=(define-package "$(NAME)" "$(VERSION)"\n "$(DOC)"\n (quote $(REQ)))
36 PACKAGE=$(NAME)-$(VERSION)
37
38 $(PACKAGE): $(filter-out web-server-test.el, $(SRC)) doc/web-server.info doc/dir
39 mkdir -p $(PACKAGE)
40 cp $^ $(PACKAGE)
41 sed -n '/;;; Commentary:/,/;;; Code:/p' web-server.el|tail -n+3|head -n-2|cut -c4- >$(PACKAGE)/README
42 echo -e '$(DEFPKG)' > $(PACKAGE)/$(NAME)-pkg.el
43
44 $(PACKAGE).tar: $(PACKAGE)
45 tar cf $@ $<
46
47 package: $(PACKAGE).tar