examples/ikiwiki: Make it work.
[muse-el.git] / Makefile
blob05e20104964a75398d65c74f8b1974f605541806
1 .PHONY: all lisp contrib autoloads examples experimental doc info-only
2 .PHONY: clean realclean distclean fullclean install-info install-bin install
3 .PHONY: test dist release upload elpa
5 DEFS = $(shell test -f Makefile.defs && echo Makefile.defs \
6 || echo Makefile.defs.default)
8 include $(DEFS)
10 SUBDIRS = lisp contrib examples experimental texi
12 all: autoloads lisp contrib info-only
14 lisp:
15 (cd lisp && $(MAKE))
17 contrib:
18 (cd contrib && $(MAKE))
20 autoloads:
21 (cd lisp && $(MAKE) autoloads)
23 examples:
24 (cd examples && $(MAKE))
26 experimental:
27 (cd experimental && $(MAKE))
29 info-only:
30 (cd texi && $(MAKE) info-only)
32 doc texi:
33 (cd texi && $(MAKE))
35 clean:
36 for i in $(SUBDIRS); do \
37 (cd $$i && $(MAKE) clean); done
39 realclean fullclean: clean
40 for i in $(SUBDIRS); do \
41 (cd $$i && $(MAKE) realclean); done
43 install-info:
44 (cd texi && $(MAKE) install)
46 install-bin: autoloads lisp contrib
47 (cd lisp && $(MAKE) install)
48 (cd contrib && $(MAKE) install)
49 (cd experimental && $(MAKE) install-uncompiled)
51 install: install-bin install-info
53 test:
54 (cd lisp && $(MAKE) test)
56 distclean:
57 for i in $(SUBDIRS); do \
58 (cd $$i && $(MAKE) distclean); done
59 -rm -fr ../$(PROJECT)-$(VERSION)
61 dist: autoloads distclean
62 git archive --format=tar --prefix=$(PROJECT)-$(VERSION)/ HEAD | \
63 (cd .. && tar xf -)
64 rm -f ../$(PROJECT)-$(VERSION)/.gitignore
65 cp lisp/$(PROJECT)-autoloads.el ../$(PROJECT)-$(VERSION)/lisp
67 release: dist
68 (cd .. && tar -czf $(PROJECT)-$(VERSION).tar.gz \
69 $(PROJECT)-$(VERSION) ; \
70 zip -r $(PROJECT)-$(VERSION).zip $(PROJECT)-$(VERSION) && \
71 gpg --detach $(PROJECT)-$(VERSION).tar.gz && \
72 gpg --detach $(PROJECT)-$(VERSION).zip)
74 upload:
75 (cd .. && \
76 scp $(PROJECT)-$(VERSION).zip* $(PROJECT)-$(VERSION).tar.gz* \
77 mwolson@download.gna.org:/upload/muse-el)
79 elpa: realclean info-only
80 rm -fR $(ELPADIR)/$(PROJECT)-$(VERSION)
81 rm -f $(ELPADIR)/$(PROJECT)-$(VERSION).tar
82 mkdir -p $(ELPADIR)/$(PROJECT)-$(VERSION)
83 cp lisp/*.el $(ELPADIR)/$(PROJECT)-$(VERSION)
84 cp contrib/*.el $(ELPADIR)/$(PROJECT)-$(VERSION)
85 echo '(define-package "$(PROJECT)" "$(VERSION)"' > \
86 $(ELPADIR)/$(PROJECT)-$(VERSION)/$(PROJECT)-pkg.el
87 echo ' "$(ELPADESC)")' >> \
88 $(ELPADIR)/$(PROJECT)-$(VERSION)/$(PROJECT)-pkg.el
89 cp texi/$(MANUAL).info $(ELPADIR)/$(PROJECT)-$(VERSION)
90 cp texi/dir-template $(ELPADIR)/$(PROJECT)-$(VERSION)/dir
91 install-info --section "Emacs" "Emacs" \
92 --info-dir=$(ELPADIR)/$(PROJECT)-$(VERSION) \
93 $(ELPADIR)/$(PROJECT)-$(VERSION)/$(MANUAL).info
94 rm -f $(ELPADIR)/$(PROJECT)-$(VERSION)/dir.old
95 (cd $(ELPADIR) && tar cf $(PROJECT)-$(VERSION).tar \
96 $(PROJECT)-$(VERSION))