1 # Copyright (C) 2002 Free Software Foundation, Inc.
2 # Written by Werner Lemberg <wl@gnu.org>
4 # This file is part of groff.
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
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
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.
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 version=`cat $(top_srcdir)/VERSION`
39 # No additional number if revision is zero.
40 revision=`sed -e 's/^0$$//' -e 's/^[1-9].*$$/.&/' $(top_srcdir)/REVISION`
42 FFLAG=-F$(top_builddir)/font -F$(top_srcdir)/font
43 TFLAG=-M$(top_builddir)/tmac -M$(top_srcdir)/tmac
45 GROFF=GROFF_BIN_PATH=$(groff_bin_path); \
46 export GROFF_BIN_PATH; \
47 sed -e "s;@VERSION@;$(version)$(revision);" $< \
48 | $(top_builddir)/src/roff/groff/groff $(TFLAG) $(FFLAG) -Upet -ww
71 PROCESSEDEXAMPLEFILES=\
82 htmldocimagedir=$(htmldocdir)/$(imagedir)
83 exampleimagedir=$(exampledir)/$(imagedir)
86 `if test $(srcdir) = .; then :; \
87 else echo grnexmpl.g groff groff-*; fi` \
88 $(PROCESSEDDOCFILES) \
89 $(PROCESSEDEXAMPLEFILES)
94 .SUFFIXES: .me .ms .ps .html
96 # For simplicity, we always call grn and eqn.
98 $(GROFF) -Tps -ge -me >$@
101 $(GROFF) -P-p -P-b -P-I`basename $< | sed -e 's|.ms$$||'` \
102 -P-D$(imagedir) -Thtml -ms >$@
104 $(GROFF) -Tps -ms -mwww >$@
107 all: groff $(PROCESSEDDOCFILES) prepare_examples \
108 $(PROCESSEDEXAMPLEFILES) $(HTMLDOCFILES)
110 prepare_examples: grnexmpl.g
111 test -f grnexmpl.g || cp $(srcdir)/grnexmpl.g .
114 $(MAKEINFO) -I$(srcdir) $(srcdir)/groff.texinfo
117 xpmtoppm $(srcdir)/gnu.xpm | pnmdepth 15 | pnmtops -noturn >$@
119 xpmtoppm $(srcdir)/gnu.xpm | pnmdepth 15 | pnmtopng >$@
121 webpage.html: webpage.ms gnu.png
124 grnexmpl.ps: grnexmpl.me grnexmpl.g
129 install_data: groff $(DOCFILES) $(PROCESSEDDOCFILES) $(HTMLDOCFILES) \
130 $(EXAMPLEFILES) $(PROCESSEDEXAMPLEFILES)
131 -test -d $(infodir) || $(mkinstalldirs) $(infodir)
132 # Prefer info files in builddir over srcdir; we test for
133 # the existence of `groff'.
135 test -f "groff" || d=$(srcdir); \
136 for f in $$d/groff $$d/groff-*; do \
137 rm -f $(infodir)/`basename $$f`; \
138 $(INSTALL_DATA) $$f $(infodir)/`basename $$f`; \
140 $(INSTALL_INFO) --info-dir=$(infodir) $(infodir)/groff
141 -test -d $(docdir) || $(mkinstalldirs) $(docdir)
142 for f in $(DOCFILES); do \
143 rm -f $(docdir)/$$f; \
144 $(INSTALL_DATA) $(srcdir)/$$f $(docdir)/$$f; \
146 for f in $(PROCESSEDDOCFILES); do \
147 rm -f $(docdir)/$$f; \
148 $(INSTALL_DATA) $$f $(docdir)/$$f; \
150 -test -d $(htmldocdir) || $(mkinstalldirs) $(htmldocdir)
151 for f in $(HTMLDOCFILES); do \
152 rm -f $(htmldocdir)/$$f; \
153 $(INSTALL_DATA) $$f $(htmldocdir)/$$f; \
155 -test -d $(htmldocimagedir) || $(mkinstalldirs) $(htmldocimagedir)
156 rm -f $(htmldocimagedir)/$(HTMLDOCIMAGEFILES)
157 $(INSTALL_DATA) $(imagedir)/$(HTMLDOCIMAGEFILES) $(htmldocimagedir)
158 -test -d $(exampledir) || $(mkinstalldirs) $(exampledir)
159 for f in $(EXAMPLEFILES); do \
160 rm -f $(exampledir)/$$f; \
161 $(INSTALL_DATA) $(srcdir)/$$f $(exampledir)/$$f; \
163 for f in $(PROCESSEDEXAMPLEFILES); do \
164 rm -f $(exampledir)/$$f; \
165 $(INSTALL_DATA) $$f $(exampledir)/$$f; \
167 -test -d $(exampleimagedir) || $(mkinstalldirs) $(exampleimagedir)
168 rm -f $(exampleimagedir)/$(EXAMPLEIMAGEFILES)
169 $(INSTALL_DATA) $(imagedir)/$(EXAMPLEIMAGEFILES) $(exampleimagedir)
172 -for f in groff groff-*; do \
173 rm -f $(infodir)/$$f; \
175 $(INSTALL_INFO) --delete --info-dir=$(infodir) $(infodir)/groff
176 -for f in $(DOCFILES) $(PROCESSEDDOCFILES); do \
177 rm -f $(docdir)/$$f; \
179 -for f in $(HTMLDOCFILES); do \
180 rm -f $(htmldocdir)/$$f; \
182 -rm -f $(htmldocimagedir)/$(HTMLDOCIMAGEFILES)
183 -rmdir $(htmldocimagedir)
184 -for f in $(EXAMPLEFILES) $(PROCESSEDEXAMPLEFILES); do \
185 rm -f $(exampledir)/$$f; \
187 -rm -f $(exampleimagedir)/$(EXAMPLEIMAGEFILES)
188 -rmdir $(exampleimagedir)