Initial merge of nxml
[bpt/emacs.git] / lisp / nxml / Makefile
1 EXTRA=README NEWS VERSION TODO COPYING Makefile rng-auto.el \
2 nxml-mode.xml nxml-mode.rnc nxml-mode.texi nxml-mode.info dir \
3 test.valid.xml test.invalid.xml
4
5 SRC=nxml-rap.el nxml-outln.el nxml-mode.el nxml-parse.el nxml-enc.el \
6 nxml-uchnm.el nxml-glyph.el nxml-maint.el nxml-util.el nxml-ns.el \
7 rng-dt.el rng-valid.el rng-pttrn.el rng-xsd.el rng-cmpct.el \
8 rng-match.el rng-nxml.el rng-util.el rng-loc.el rng-uri.el \
9 rng-parse.el rng-maint.el xsd-regexp.el xmltok.el
10
11 ELC=nxml-rap.elc nxml-outln.elc nxml-mode.elc nxml-parse.elc nxml-enc.elc \
12 nxml-uchnm.elc nxml-glyph.elc nxml-maint.elc nxml-util.elc nxml-ns.elc \
13 rng-dt.elc rng-valid.elc rng-pttrn.elc rng-xsd.elc rng-cmpct.elc \
14 rng-match.elc rng-nxml.elc rng-util.elc rng-loc.elc rng-uri.elc \
15 rng-parse.elc rng-maint.elc xsd-regexp.elc xmltok.elc
16
17 FILESTOCLEAN=stamp-byte-compile $(ELC) VERSION TAGS \
18 nxml-mode.texi nxml-mode.info dir
19
20 EMACS=emacs
21 ETAGS=etags
22 MAKEINFO=makeinfo
23 INSTALL-INFO=install-info
24 PACKAGE=nxml-mode
25
26 stamp-byte-compile: $(SRC)
27 -rm -f $(ELC)
28 $(EMACS) -batch -l rng-auto.el -f rng-byte-compile-load
29 touch $(@)
30
31 all: stamp-byte-compile nxml-mode.info
32
33 dir: nxml-mode.info
34 rm -f $@
35 $(INSTALL-INFO) $< $@
36
37 info: nxml-mode.info
38
39 nxml-mode.info: nxml-mode.texi
40 $(MAKEINFO) $<
41
42 nxml-mode.texi: nxml-mode.xml
43 $(EMACS) -batch -l rng-auto.el -f rng-format-manual
44
45 VERSION: stamp-byte-compile rng-auto.el
46 $(EMACS) -batch -l rng-auto.el -f rng-write-version
47
48 TAGS: $(SRC)
49 $(ETAGS) $(SRC)
50
51 dist: stamp-byte-compile $(EXTRA)
52 @version=`cat VERSION`; \
53 set -e; \
54 echo Making $(PACKAGE)-$$version.tar.gz; \
55 rm -fr $(PACKAGE)-$$version; \
56 mkdir $(PACKAGE)-$$version; \
57 cd $(PACKAGE)-$$version; \
58 for f in $(EXTRA) $(SRC) $(ELC); do \
59 ln -s ../$$f .; \
60 done; \
61 mkdir schema; \
62 cd schema; \
63 for f in ../../schema/*.rnc ../../schema/*.xml; do \
64 ln -s $$f .; \
65 done; \
66 cd ..; \
67 mkdir char-name; \
68 mkdir char-name/unicode; \
69 cd char-name/unicode; \
70 for f in ../../../char-name/unicode/*-*.el; do \
71 ln -s $$f .; \
72 done; \
73 cd ../../..; \
74 tar cfhz $(PACKAGE)-$$version.tar.gz $(PACKAGE)-$$version; \
75 rm -fr $(PACKAGE)-$$version
76
77 clean:
78 -rm -f $(FILESTOCLEAN)
79
80 .PHONY: all clean info