7270a5b79616288be627f738a0d4f43a51e3d4bb
[gnulib.git] / doc / Makefile
1 # Makefile for gnulib doc.
2 # Copyright (C) 2004, 2006-2008 Free Software Foundation, Inc.
3 #
4 # Copying and distribution of this file, with or without modification,
5 # are permitted in any medium without royalty provided the copyright
6 # notice and this notice are preserved.
7
8 doc = gnulib
9
10 MAKEINFO = env LANG= LC_MESSAGES= LC_ALL= LANGUAGE= makeinfo
11 TEXI2HTML = $(MAKEINFO) --no-split --reference-limit=2000 --html
12 %.html: %.texi
13         $(TEXI2HTML) -o $@ $<
14
15 %.info: %.texi
16         LANG= LC_MESSAGES= LC_ALL= LANGUAGE= makeinfo --no-split --reference-limit=2000 $<
17
18 %.pdf: %.texi
19         texi2pdf $< || { if texi2pdf $< 2>/dev/null | grep 'TeX capacity exceeded, sorry \[save size=' > /dev/null; then echo '*** You must increase the save_size in your texmf.cnf file.'; fi; exit 1; }
20
21 all: info html dvi
22 info: $(doc).info
23 html: $(doc).html
24 dvi: $(doc).dvi
25 pdf: $(doc).pdf
26
27 INSTALL: install.texi
28         { echo '@firstparagraphindent insert'; cat $<; } > tmp.texi
29         $(MAKEINFO) --plaintext --no-validate tmp.texi > $@
30         rm -f tmp.texi
31
32 GNULIB_TEXI_FILES = $(filter-out maintain.texi make-stds.texi standards.texi,$(wildcard *.texi)) $(wildcard posix-headers/*.texi) $(wildcard posix-functions/*.texi) $(wildcard glibc-headers/*.texi) $(wildcard glibc-functions/*.texi)
33
34 # Date of last update. Requires GNU date.
35 updated-stamp: $(GNULIB_TEXI_FILES)
36         date -u -r `ls -t $^ | sed 1q` +"@set UPDATED %F %T" > $@
37
38 # Dependencies. Search for @include to find them all.
39 gnulib.info gnulib.html gnulib.dvi gnulib.pdf: $(GNULIB_TEXI_FILES) updated-stamp
40 standards.info standards.html standards.dvi: standards.texi make-stds.texi fdl.texi
41
42 mostlyclean:
43         rm -f *.aux *.cp *.cps *.fn *.ky *.log *.pg *.toc *.tp *.vr *.vrs
44         rm -f updated-stamp
45
46 clean: mostlyclean
47         rm -f *.info *.html *.dvi *.ps *.pdf