Update my example stuff
[muse-el.git] / Makefile
blob255f0559c3043ad28f5b1471c064a52e55bd50f0
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 debbuild debrevision debrelease upload elpa
5 include Makefile.defs
7 SUBDIRS = lisp contrib examples experimental texi
9 all: autoloads lisp contrib info-only
11 lisp:
12 (cd lisp && $(MAKE))
14 contrib:
15 (cd contrib && $(MAKE))
17 autoloads:
18 (cd lisp && $(MAKE) autoloads)
20 examples:
21 (cd examples && $(MAKE))
23 experimental:
24 (cd experimental && $(MAKE))
26 info-only:
27 (cd texi && $(MAKE) info-only)
29 doc texi:
30 (cd texi && $(MAKE))
32 clean:
33 for i in $(SUBDIRS); do \
34 (cd $$i && $(MAKE) clean); done
36 realclean fullclean: clean
37 for i in $(SUBDIRS); do \
38 (cd $$i && $(MAKE) realclean); done
40 install-info:
41 (cd texi && $(MAKE) install)
43 install-bin: autoloads lisp contrib
44 (cd lisp && $(MAKE) install)
45 (cd contrib && $(MAKE) install)
46 (cd experimental && $(MAKE) install-uncompiled)
48 install: install-bin install-info
50 test:
51 (cd lisp && $(MAKE) test)
53 distclean:
54 for i in $(SUBDIRS); do \
55 (cd $$i && $(MAKE) distclean); done
56 -rm -fr ../$(PROJECT)-$(VERSION)
58 dist: autoloads distclean
59 tla inventory -sB | tar -cf - --no-recursion -T- | \
60 (mkdir -p ../$(PROJECT)-$(VERSION); cd ../$(PROJECT)-$(VERSION) && \
61 tar xf -)
62 cp lisp/$(PROJECT)-autoloads.el ../$(PROJECT)-$(VERSION)/lisp
64 release: dist
65 (cd .. && tar -czf $(PROJECT)-$(VERSION).tar.gz \
66 $(PROJECT)-$(VERSION) ; \
67 zip -r $(PROJECT)-$(VERSION).zip $(PROJECT)-$(VERSION) && \
68 gpg --detach $(PROJECT)-$(VERSION).tar.gz && \
69 gpg --detach $(PROJECT)-$(VERSION).zip)
71 debclean:
72 -rm -f ../../dist/$(DISTRIBUTOR)/$(DEBNAME)_*
73 -rm -fr ../$(DEBNAME)_$(VERSION)*
75 debprepare:
76 -rm -rf ../$(DEBNAME)-$(VERSION)
77 (cd .. && tar -xzf $(PROJECT)-$(VERSION).tar.gz)
78 mv ../$(PROJECT)-$(VERSION) ../$(DEBNAME)-$(VERSION)
79 (cd .. && tar -czf $(DEBNAME)_$(VERSION).orig.tar.gz \
80 $(DEBNAME)-$(VERSION))
81 (cd debian && tla inventory -sB | tar -cf - --no-recursion -T- | \
82 (mkdir -p ../../$(DEBNAME)-$(VERSION)/debian; \
83 cd ../../$(DEBNAME)-$(VERSION)/debian && \
84 tar xf -))
86 debbuild:
87 (cd ../$(DEBNAME)-$(VERSION) && \
88 dpkg-buildpackage -v$(LASTUPLOAD) $(BUILDOPTS) \
89 -us -uc -rfakeroot && \
90 echo "Running lintian ..." && \
91 lintian -i ../$(DEBNAME)_$(VERSION)*.deb || : && \
92 echo "Done running lintian." && \
93 echo "Running linda ..." && \
94 linda -i ../$(DEBNAME)_$(VERSION)*.deb || : && \
95 echo "Done running linda." && \
96 debsign)
98 debinstall:
99 cp ../$(DEBNAME)_$(VERSION)* ../../dist/$(DISTRIBUTOR)
101 deb: debclean debprepare debbuild debinstall
103 upload: release
104 (cd .. && \
105 scp $(PROJECT)-$(VERSION).zip* $(PROJECT)-$(VERSION).tar.gz* \
106 mwolson@download.gna.org:/upload/muse-el)
108 elpa: realclean info-only
109 rm -fR $(ELPADIR)/$(PROJECT)-$(VERSION)
110 rm -f $(ELPADIR)/$(PROJECT)-$(VERSION).tar
111 mkdir -p $(ELPADIR)/$(PROJECT)-$(VERSION)
112 cp lisp/*.el $(ELPADIR)/$(PROJECT)-$(VERSION)
113 cp contrib/*.el $(ELPADIR)/$(PROJECT)-$(VERSION)
114 echo '(define-package "$(PROJECT)" "$(VERSION)"' > \
115 $(ELPADIR)/$(PROJECT)-$(VERSION)/$(PROJECT)-pkg.el
116 echo ' "$(ELPADESC)")' >> \
117 $(ELPADIR)/$(PROJECT)-$(VERSION)/$(PROJECT)-pkg.el
118 cp texi/$(MANUAL).info $(ELPADIR)/$(PROJECT)-$(VERSION)
119 echo '* Menu:' > $(ELPADIR)/$(PROJECT)-$(VERSION)/dir
120 echo >> $(ELPADIR)/$(PROJECT)-$(VERSION)/dir
121 install-info --section "Emacs" "Emacs" \
122 --info-dir=$(ELPADIR)/$(PROJECT)-$(VERSION) \
123 $(ELPADIR)/$(PROJECT)-$(VERSION)/$(MANUAL).info
124 rm -f $(ELPADIR)/$(PROJECT)-$(VERSION)/dir.old
125 (cd $(ELPADIR) && tar cf $(PROJECT)-$(VERSION).tar \
126 $(PROJECT)-$(VERSION))