o Makefile.sub (HTMLDOCFILES): Add `refer.html'
[s-roff.git] / doc / Makefile.in
blob05fb5bc2a7981e4d509a3620ce9b5951f908dd2c
1 # Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
2 # Written by Werner Lemberg <wl@gnu.org>
3 #
4 # This file is part of groff.
5 #
6 # groff is free software; you can redistribute it and/or modify it under
7 # the terms of the GNU General Public License as published by the Free
8 # Software Foundation; either version 2, or (at your option) any later
9 # version.
11 # groff is distributed in the hope that it will be useful, but WITHOUT ANY
12 # WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 # for more details.
16 # You should have received a copy of the GNU General Public License along
17 # with groff; see the file COPYING. If not, write to the Free Software
18 # Foundation, 51 Franklin St - Fifth Floor, Boston, MA 02110-1301, USA.
21 # Use this file to produce documentation in various formats; e.g. you can
22 # say
24 # make groff.pdf
26 # to get the groff texinfo manual as a PDF file.
28 # Note that you have to compile the groff package first.
31 srcdir=@srcdir@
32 top_srcdir=@abs_top_srcdir@
33 VPATH=@srcdir@
34 top_builddir=@abs_top_builddir@
35 pnmtops=@pnmtops_nosetpage@
37 # These may be overridden if cross-compiling.
38 TROFFBIN=$(top_builddir)/src/roff/troff/troff
39 GROFFBIN=$(top_builddir)/src/roff/groff/groff
40 GROFF_BIN_PATH=`echo $(groff_bin_dirs) | sed -e 's| *|:|g'`
42 # info files are distributed with the groff package, so makeinfo is
43 # usually not needed (however, to build from CVS you NEED it!)
44 # FIXME: Add autoconf test to check whether makeinfo exists.
45 MAKEINFO=makeinfo
47 # Users who want to print out the groff manual are expected to have
48 # a working TeX installation.
49 TEXI2DVI=texi2dvi
51 groff_bin_dirs=\
52 $(top_builddir)/src/roff/groff \
53 $(top_builddir)/src/roff/troff \
54 $(top_builddir)/src/preproc/pic \
55 $(top_builddir)/src/preproc/eqn \
56 $(top_builddir)/src/preproc/tbl \
57 $(top_builddir)/src/preproc/grn \
58 $(top_builddir)/src/preproc/refer \
59 $(top_builddir)/src/preproc/soelim \
60 $(top_builddir)/src/preproc/html \
61 $(top_builddir)/src/devices/grops \
62 $(top_builddir)/src/devices/grodvi \
63 $(top_builddir)/src/devices/grotty \
64 $(top_builddir)/src/devices/grolj4 \
65 $(top_builddir)/src/devices/grolbp \
66 $(top_builddir)/src/devices/grohtml
68 version=`cat $(top_srcdir)/VERSION`
69 # No additional number if revision is zero.
70 revision=`sed -e 's/^0$$//' -e 's/^[1-9].*$$/.&/' $(top_srcdir)/REVISION`
72 FFLAG=-F$(top_builddir)/font -F$(top_srcdir)/font
73 TFLAG=-M$(top_builddir)/tmac -M$(top_srcdir)/tmac
75 TROFF=$(TROFFBIN) $(TFLAG) $(FFLAG) -ww
76 GROFF=GROFF_COMMAND_PREFIX=''; \
77 export GROFF_COMMAND_PREFIX; \
78 GROFF_BIN_PATH=$(GROFF_BIN_PATH); \
79 export GROFF_BIN_PATH; \
80 sed -e "s;@VERSION@;$(version)$(revision);" $< \
81 | $(GROFFBIN) $(TFLAG) $(FFLAG) -Upet -ww
83 imagedir=img
85 .SUFFIXES: .me .ms .ps .html .txt .texinfo .dvi .pdf
86 .PHONY: all prepare_examples clean distclean realclean extraclean
88 # For simplicity, we always call grn and eqn.
89 .me.txt:
90 $(GROFF) -Tascii -ge -me >$@
91 .me.ps:
92 $(GROFF) -Tps -ge -me >$@
94 .ms.html:
95 $(GROFF) -P-p -P-b -P-I`basename $< | sed -e 's|.ms$$||'` \
96 -P-D$(imagedir) -Thtml -ms >$@
97 .ms.txt:
98 $(GROFF) -Tascii -ms -mwww >$@
99 .ms.ps:
100 $(GROFF) -Tps -ms -mwww >$@
102 .texinfo.dvi:
103 $(TEXI2DVI) -e $<
104 .texinfo.pdf:
105 $(TEXI2DVI) -e --pdf $<
106 .texinfo.html:
107 $(MAKEINFO) --enable-encoding -I$(srcdir) --html --no-split $< \
108 && $(SHELL) $(srcdir)/fixinfo.sh $@
111 all: prepare_examples
113 prepare_examples: grnexmpl.g groff.css
114 test -f grnexmpl.g || cp $(srcdir)/grnexmpl.g .
115 test -f groff.css || cp $(srcdir)/groff.css .
117 groff: groff.texinfo
118 $(MAKEINFO) --enable-encoding -I$(srcdir) $(srcdir)/groff.texinfo
120 gnu.eps: gnu.xpm
121 xpmtoppm $(srcdir)/gnu.xpm | pnmdepth 15 | $(pnmtops) -noturn >$@
122 gnu.png: gnu.xpm
123 xpmtoppm $(srcdir)/gnu.xpm | pnmdepth 15 | pnmtopng >$@
125 pic.html: pic.ms
126 $(GROFF) -P-p -P-b -P-I`basename $< | sed -e 's|.ms$$||'` \
127 -P-D$(imagedir) -P-j`basename $< | sed -e 's|.ms$$||'` \
128 -Thtml -ms >$@
130 webpage.html: webpage.ms gnu.png gnu.eps groff.css
131 webpage.ps: gnu.eps
133 grnexmpl.ps: grnexmpl.me grnexmpl.g
136 clean:
137 -rm -f *.ps *.html *.txt core
138 -rm -f *.aux *.dvi *.pdf *.log *.toc texput.log
139 -rm -f *.cp *.cps *.cv *.cn *.es *.ess *.fn *.fns *.ky *.kys \
140 *.ma *.mas *.op *.ops *.pg *.pgs *.rq *.rqs *.st *.sts \
141 *.tp *.tps *.tr *.vr *.vrs
142 -rm -rf img
144 distclean: clean
146 realclean: distclean
147 -rm -f *.png *.eps
149 extraclean: distclean
150 -rm -f core *~ \#* junk temp grot