Fix bug with directives like #title leaking out of included regions
[muse-el.git] / Makefile
blob3880983e12e3b5b5ef2482f1330b6adfd0d3ff56
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 debclean debprepare debbuild debinstall deb upload
4 .PHONY: elpa
6 DEFS = $(shell test -f Makefile.defs && echo Makefile.defs \
7 || echo Makefile.defs.default)
9 include $(DEFS)
11 SUBDIRS = lisp contrib examples experimental texi
13 all: autoloads lisp contrib info-only
15 lisp:
16 (cd lisp && $(MAKE))
18 contrib:
19 (cd contrib && $(MAKE))
21 autoloads:
22 (cd lisp && $(MAKE) autoloads)
24 examples:
25 (cd examples && $(MAKE))
27 experimental:
28 (cd experimental && $(MAKE))
30 info-only:
31 (cd texi && $(MAKE) info-only)
33 doc texi:
34 (cd texi && $(MAKE))
36 clean:
37 for i in $(SUBDIRS); do \
38 (cd $$i && $(MAKE) clean); done
40 realclean fullclean: clean
41 for i in $(SUBDIRS); do \
42 (cd $$i && $(MAKE) realclean); done
44 install-info:
45 (cd texi && $(MAKE) install)
47 install-bin: autoloads lisp contrib
48 (cd lisp && $(MAKE) install)
49 (cd contrib && $(MAKE) install)
50 (cd experimental && $(MAKE) install-uncompiled)
52 install: install-bin install-info
54 test:
55 (cd lisp && $(MAKE) test)
57 distclean:
58 for i in $(SUBDIRS); do \
59 (cd $$i && $(MAKE) distclean); done
60 -rm -fr ../$(PROJECT)-$(VERSION)
62 dist: autoloads distclean
63 git archive --format=tar --prefix=$(PROJECT)-$(VERSION)/ | \
64 (cd .. && tar xf -)
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 debclean:
75 -rm -f ../../dist/$(DISTRIBUTOR)/$(DEBNAME)_*
76 -rm -fr ../$(DEBNAME)_$(VERSION)*
78 debprepare:
79 -rm -rf ../$(DEBNAME)-$(VERSION)
80 (cd .. && tar -xzf $(PROJECT)-$(VERSION).tar.gz)
81 mv ../$(PROJECT)-$(VERSION) ../$(DEBNAME)-$(VERSION)
82 (cd .. && tar -czf $(DEBNAME)_$(VERSION).orig.tar.gz \
83 $(DEBNAME)-$(VERSION))
84 (cd debian && git archive --format=tar \
85 --prefix=$(DEBNAME)-$(VERSION)/debian/ | \
86 (cd ../.. && tar xf -))
88 debbuild:
89 (cd ../$(DEBNAME)-$(VERSION) && \
90 dpkg-buildpackage -v$(LASTUPLOAD) $(BUILDOPTS) \
91 -us -uc -rfakeroot && \
92 echo "Running lintian ..." && \
93 lintian -i ../$(DEBNAME)_$(VERSION)*.deb || : && \
94 echo "Done running lintian." && \
95 echo "Running linda ..." && \
96 linda -i ../$(DEBNAME)_$(VERSION)*.deb || : && \
97 echo "Done running linda." && \
98 debsign)
100 debinstall:
101 cp ../$(DEBNAME)_$(VERSION)* ../../dist/$(DISTRIBUTOR)
103 deb: debclean debprepare debbuild debinstall
105 upload: release
106 (cd .. && \
107 scp $(PROJECT)-$(VERSION).zip* $(PROJECT)-$(VERSION).tar.gz* \
108 mwolson@download.gna.org:/upload/muse-el)
110 elpa: realclean info-only
111 rm -fR $(ELPADIR)/$(PROJECT)-$(VERSION)
112 rm -f $(ELPADIR)/$(PROJECT)-$(VERSION).tar
113 mkdir -p $(ELPADIR)/$(PROJECT)-$(VERSION)
114 cp lisp/*.el $(ELPADIR)/$(PROJECT)-$(VERSION)
115 cp contrib/*.el $(ELPADIR)/$(PROJECT)-$(VERSION)
116 echo '(define-package "$(PROJECT)" "$(VERSION)"' > \
117 $(ELPADIR)/$(PROJECT)-$(VERSION)/$(PROJECT)-pkg.el
118 echo ' "$(ELPADESC)")' >> \
119 $(ELPADIR)/$(PROJECT)-$(VERSION)/$(PROJECT)-pkg.el
120 cp texi/$(MANUAL).info $(ELPADIR)/$(PROJECT)-$(VERSION)
121 echo '* Menu:' > $(ELPADIR)/$(PROJECT)-$(VERSION)/dir
122 echo >> $(ELPADIR)/$(PROJECT)-$(VERSION)/dir
123 install-info --section "Emacs" "Emacs" \
124 --info-dir=$(ELPADIR)/$(PROJECT)-$(VERSION) \
125 $(ELPADIR)/$(PROJECT)-$(VERSION)/$(MANUAL).info
126 rm -f $(ELPADIR)/$(PROJECT)-$(VERSION)/dir.old
127 (cd $(ELPADIR) && tar cf $(PROJECT)-$(VERSION).tar \
128 $(PROJECT)-$(VERSION))