* fixes of groffer 0.9.2
[s-roff.git] / doc / Makefile.sub
blobc72293f679e61be4e563917955a3497442fd9765
1 # Copyright (C) 2002 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.
10
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.
15
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, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
20 # Since info files are distributed within the groff package, no
21 # autoconf test for the makeinfo binary is done.
22 MAKEINFO=makeinfo
24 groff_bin_dirs=\
25   $(top_builddir)/src/roff/groff \
26   $(top_builddir)/src/roff/troff \
27   $(top_builddir)/src/preproc/pic \
28   $(top_builddir)/src/preproc/eqn \
29   $(top_builddir)/src/preproc/tbl \
30   $(top_builddir)/src/preproc/grn \
31   $(top_builddir)/src/preproc/refer \
32   $(top_builddir)/src/preproc/soelim \
33   $(top_builddir)/src/preproc/html \
34   $(top_builddir)/src/devices/grops \
35   $(top_builddir)/src/devices/grohtml
36 groff_bin_path=`echo $(groff_bin_dirs) | sed -e 's|  *|:|g'`
38 FFLAG=-F$(top_builddir)/font -F$(top_srcdir)/font
39 TFLAG=-M$(top_builddir)/tmac -M$(top_srcdir)/tmac
41 GROFF=\
42   GROFF_COMMAND_PREFIX=''; \
43   export GROFF_COMMAND_PREFIX; \
44   GROFF_BIN_PATH=$(groff_bin_path); \
45   export GROFF_BIN_PATH; \
46   sed -e "s;@VERSION@;$(version)$(revision);" $< \
47   | $(top_builddir)/src/roff/groff/groff $(TFLAG) $(FFLAG) -Upet -ww
49 DOCFILES=\
50   meref.me \
51   meintro.me \
52   pic.ms
54 PROCESSEDDOCFILES=\
55   meref.ps \
56   meintro.ps \
57   pic.ps
59 HTMLDOCFILES=\
60   pic.html
62 HTMLDOCIMAGEFILES=\
63   pic*
65 EXAMPLEFILES=\
66   webpage.ms \
67   grnexmpl.g \
68   grnexmpl.me
70 PROCESSEDEXAMPLEFILES=\
71   webpage.ps \
72   grnexmpl.ps
74 HTMLEXAMPLEFILES=\
75   webpage.html
77 HTMLEXAMPLEIMAGEFILES=\
78   webpage*
80 imagedir=img
81 htmldocimagedir=$(htmldocdir)/$(imagedir)
82 exampleimagedir=$(exampledir)/$(imagedir)
84 CLEANADD=\
85   $(PROCESSEDDOCFILES) \
86   $(PROCESSEDEXAMPLEFILES) \
87   $(HTMLEXAMPLEFILES) \
88   $(HTMLDOCFILES)
90 CLEANDIRADD=\
91   $(imagedir)
93 CLEANNOTSRCDIRADD=\
94   grnexmpl.g \
95   groff \
96   groff-* \
97   gnu.eps \
98   gnu.png
100 .SUFFIXES: .me .ms .ps .html
102 # For simplicity, we always call grn and eqn.
103 .me.ps:
104         $(GROFF) -Tps -ge -me >$@
106 .ms.html:
107         $(GROFF) -P-p -P-b -P-I`basename $< | sed -e 's|.ms$$||'` \
108                  -P-D$(imagedir) -Thtml -ms >$@
109 .ms.ps:
110         $(GROFF) -Tps -ms -mwww >$@
113 all: groff $(PROCESSEDDOCFILES) prepare_examples \
114      $(PROCESSEDEXAMPLEFILES) $(make_html)
116 html: $(HTMLDOCFILES) $(HTMLEXAMPLEFILES)
118 prepare_examples: grnexmpl.g
119         test -f grnexmpl.g || cp $(srcdir)/grnexmpl.g .
121 groff: groff.texinfo
122         $(MAKEINFO) -I$(srcdir) $(srcdir)/groff.texinfo
124 gnu.eps: gnu.xpm
125         xpmtoppm $(srcdir)/gnu.xpm | pnmdepth 15 | pnmtops -noturn -rle >$@
126 gnu.png: gnu.xpm
127         xpmtoppm $(srcdir)/gnu.xpm | pnmdepth 15 | pnmtopng >$@
129 webpage.html: webpage.ms gnu.png
130 webpage.ps: gnu.eps
132 grnexmpl.ps: grnexmpl.me grnexmpl.g
134 distfiles: groff gnu.eps gnu.png
136 install_data: groff $(DOCFILES) $(PROCESSEDDOCFILES) $(make_install_html) \
137               $(EXAMPLEFILES) $(PROCESSEDEXAMPLEFILES)
138         -test -d $(infodir) || $(mkinstalldirs) $(infodir)
139 # Prefer info files in builddir over srcdir; we test for
140 # the existence of `groff'.
141         d=.; \
142           test -f "groff" || d=$(srcdir); \
143           for f in $$d/groff $$d/groff-*; do \
144             rm -f $(infodir)/`basename $$f`; \
145             $(INSTALL_DATA) $$f $(infodir)/`basename $$f`; \
146           done
147         $(INSTALL_INFO) --info-dir=$(infodir) $(infodir)/groff
148         -test -d $(docdir) || $(mkinstalldirs) $(docdir)
149         for f in $(DOCFILES); do \
150           rm -f $(docdir)/$$f; \
151           $(INSTALL_DATA) $(srcdir)/$$f $(docdir)/$$f; \
152         done
153         for f in $(PROCESSEDDOCFILES); do \
154           rm -f $(docdir)/$$f; \
155           $(INSTALL_DATA) $$f $(docdir)/$$f; \
156         done
157         -test -d $(exampledir) || $(mkinstalldirs) $(exampledir)
158         for f in $(EXAMPLEFILES); do \
159           rm -f $(exampledir)/$$f; \
160           $(INSTALL_DATA) $(srcdir)/$$f $(exampledir)/$$f; \
161         done
162         for f in $(PROCESSEDEXAMPLEFILES); do \
163           rm -f $(exampledir)/$$f; \
164           $(INSTALL_DATA) $$f $(exampledir)/$$f; \
165         done
167 install_html: $(HTMLDOCFILES) $(HTMLEXAMPLEFILES)
168         -test -d $(htmldocdir) || $(mkinstalldirs) $(htmldocdir)
169         for f in $(HTMLDOCFILES); do \
170           rm -f $(htmldocdir)/$$f; \
171           $(INSTALL_DATA) $$f $(htmldocdir)/$$f; \
172         done
173         -test -d $(htmldocimagedir) || $(mkinstalldirs) $(htmldocimagedir)
174         rm -f $(htmldocimagedir)/$(HTMLDOCIMAGEFILES)
175         $(INSTALL_DATA) $(imagedir)/$(HTMLDOCIMAGEFILES) $(htmldocimagedir)
176         -test -d $(exampledir) || $(mkinstalldirs) $(exampledir)
177         for f in $(HTMLEXAMPLEFILES); do \
178           rm -f $(exampledir)/$$f; \
179           $(INSTALL_DATA) $$f $(exampledir)/$$f; \
180         done
181         -test -d $(exampleimagedir) || $(mkinstalldirs) $(exampleimagedir)
182         rm -f $(exampleimagedir)/$(HTMLEXAMPLEIMAGEFILES)
183         $(INSTALL_DATA) $(imagedir)/$(HTMLEXAMPLEIMAGEFILES) $(exampleimagedir)
185 uninstall_sub:
186         -for f in groff groff-*; do \
187           rm -f $(infodir)/$$f; \
188         done
189         $(INSTALL_INFO) --delete --info-dir=$(infodir) $(infodir)/groff
190         -for f in $(DOCFILES) $(PROCESSEDDOCFILES); do \
191           rm -f $(docdir)/$$f; \
192         done
193         -for f in $(HTMLDOCFILES); do \
194           rm -f $(htmldocdir)/$$f; \
195         done
196         -rm -f $(htmldocimagedir)/$(HTMLDOCIMAGEFILES)
197         -rmdir $(htmldocimagedir)
198         -for f in $(EXAMPLEFILES) $(PROCESSEDEXAMPLEFILES); do \
199           rm -f $(exampledir)/$$f; \
200         done
201         -rm -f $(exampleimagedir)/$(HTMLEXAMPLEIMAGEFILES)
202         -rmdir $(exampleimagedir)