constify ui_out_impl
[deliverable/binutils-gdb.git] / gdb / doc / Makefile.in
CommitLineData
ecd75fc8 1##Copyright (C) 1991-2014 Free Software Foundation, Inc.
c906108c
SS
2
3# Makefile for GDB documentation.
4# This file is part of GDB.
5
6# This program is free software; you can redistribute it and/or modify
7# it under the terms of the GNU General Public License as published by
a1715244 8# the Free Software Foundation; either version 3 of the License, or
c906108c 9# (at your option) any later version.
a1715244 10#
c906108c
SS
11# This program is distributed in the hope that it will be useful,
12# but WITHOUT ANY WARRANTY; without even the implied warranty of
13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14# GNU General Public License for more details.
a1715244 15#
c906108c 16# You should have received a copy of the GNU General Public License
a1715244 17# along with this program. If not, see <http://www.gnu.org/licenses/>.
c906108c
SS
18
19srcdir = @srcdir@
20VPATH = @srcdir@
21
22prefix = @prefix@
23
24infodir = @infodir@
26e251b6
JM
25datarootdir = @datarootdir@
26docdir = @docdir@
89a34d1b
JM
27pdfdir = @pdfdir@
28htmldir = @htmldir@
43662968
JK
29mandir = @mandir@
30man1dir = $(mandir)/man1
31man5dir = $(mandir)/man5
c906108c
SS
32
33SHELL = @SHELL@
34
39ec5655
EZ
35LN_S = @LN_S@
36
c906108c
SS
37INSTALL = @INSTALL@
38INSTALL_PROGRAM = @INSTALL_PROGRAM@
39INSTALL_DATA = @INSTALL_DATA@
40
43662968
JK
41SYSTEM_GDBINIT = @SYSTEM_GDBINIT@
42
9453113a
DJ
43mkinstalldirs = $(SHELL) $(srcdir)/../../mkinstalldirs
44
c906108c
SS
45# main GDB source directory
46gdbdir = $(srcdir)/..
47
48# where to find texinfo; GDB dist should include a recent one
49TEXIDIR=${gdbdir}/../texinfo
50
51# where to find makeinfo, preferably one designed for texinfo-2
5048e516
JK
52MAKEINFO = @MAKEINFO@
53MAKEINFOFLAGS = @MAKEINFOFLAGS@
54MAKEINFO_EXTRA_FLAGS = @MAKEINFO_EXTRA_FLAGS@
55MAKEINFO_CMD = $(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFO_EXTRA_FLAGS)
c906108c 56
5048e516 57MAKEHTML = $(MAKEINFO_CMD) --html
2b831889 58MAKEHTMLFLAGS =
085dd6e6 59
c906108c
SS
60# where to find texi2roff, ditto
61TEXI2ROFF=texi2roff
62
be298bcc
AC
63# where to find texi2dvi, ditto
64TEXI2DVI=texi2dvi
65
c16158bc
JM
66# Package version and bug-reporting URL.
67PKGVERSION = @PKGVERSION@
68BUGURL_TEXI = @REPORT_BUGS_TEXI@
69
c906108c
SS
70# Where is the source dir for the READLINE library doc?
71# Traditionally readline is in .. or .
72READLINE_DIR = ${gdbdir}/../readline/doc
39037522 73READLINE_TEXI_INCFLAG = @READLINE_TEXI_INCFLAG@
c906108c 74
7162c0ca
EZ
75# The GDB/MI docs come from a sibling directory ../mi
76GDBMI_DIR = ${gdbdir}/mi
77
78SET_TEXINPUTS = \
79 TEXINPUTS=${TEXIDIR}:.:$(srcdir):$(READLINE_DIR):$(GDBMI_DIR):$$TEXINPUTS
c906108c 80
63ac3005 81# Files which should be generated via 'info' and installed by 'install-info'
0a7cfe2c 82INFO_DEPS = gdb.info stabs.info annotate.info
63ac3005 83
9453113a 84# Files which should be generated via 'pdf' and installed by 'install-pdf'
0a7cfe2c 85PDFFILES = gdb.pdf stabs.pdf refcard.pdf annotate.pdf
2b831889 86# Files which should be generated via 'html' and installed by 'install-html'
0a7cfe2c
SS
87HTMLFILES = gdb/index.html stabs/index.html annotate/index.html
88HTMLFILES_INSTALL = gdb stabs annotate
9453113a 89
c906108c
SS
90# There may be alternate predefined collections of switches to configure
91# the GDB manual. Normally this is not done in synch with the software
92# config system, since this choice tends to be independent; most people
93# want a doc config of `all' for a generic manual, regardless of sw config.
94DOC_CONFIG = all
95
96# This list of sed edits will edit the GDB reference card
97# for what fonts and what papersize to use.
98# By default (NO edits applied), the refcard uses:
99# - Computer Modern (CM) fonts
100# - US letter paper (8.5x11in)
101# List some of the following files for alternative fonts and paper:
102# a4rc.sed use A4 paper (297 x 210 mm)
103# psrc.sed use PostScript fonts (Karl Berry short TeX names)
104# lpsrc.sed use PostScript fonts (full PostScript names in TeX)
105# e.g. for A4, Postscript: REFEDITS = a4rc.sed psrc.sed
106# for A4, CM fonts: REFEDITS = a4rc.sed
107# for US, PS fonts: REFEDITS = psrc.sed
108# for default:
109REFEDITS =
110
111# Don Knuth's TeX formatter
112TEX = tex
9453113a 113PDFTEX = pdftex
c906108c 114
c906108c
SS
115# Program to generate Postscript files from DVI files.
116DVIPS = dvips
117
b0787093 118# Main GDB manual
39037522
TT
119# Note that this unconditionally includes the readline texi files,
120# even when --with-system-readline is used. This is harmless because
121# these are only used as dependencies.
b0787093 122GDB_DOC_SOURCE_INCLUDES = \
aab4e0ec 123 $(srcdir)/fdl.texi \
b0787093 124 $(srcdir)/gpl.texi \
f418dd93 125 $(srcdir)/agentexpr.texi \
5bdf8622 126 $(READLINE_DIR)/rluser.texi \
cc88a640 127 $(READLINE_DIR)/hsuser.texi
b0787093
AC
128GDB_DOC_BUILD_INCLUDES = \
129 gdb-cfg.texi \
130 GDBvn.texi
131GDB_DOC_FILES = \
132 $(srcdir)/gdb.texinfo \
ed3ef339 133 $(srcdir)/guile.texi \
329baa95 134 $(srcdir)/python.texi \
b0787093
AC
135 $(GDB_DOC_SOURCE_INCLUDES) \
136 $(GDB_DOC_BUILD_INCLUDES)
137
b0787093 138# Stabs manual: All files
e5249f67
AC
139STABS_DOC_SOURCE_INCLUDES = \
140 $(srcdir)/fdl.texi
b0787093
AC
141STABS_DOC_BUILD_INCLUDES =
142STABS_DOC_FILES = \
143 $(srcdir)/stabs.texinfo \
144 $(STABS_DOC_SOURCE_INCLUDES) \
145 $(STABS_DOC_BUILD_INCLUDES)
c906108c 146
e6f672d2
AC
147# Annotate migration document
148ANNOTATE_DOC_SOURCE_INCLUDES = \
149 $(srcdir)/fdl.texi
150ANNOTATE_DOC_BUILD_INCLUDES = \
23db03a6
JZ
151 gdb-cfg.texi \
152 GDBvn.texi
e6f672d2
AC
153ANNOTATE_DOC_FILES = \
154 $(srcdir)/annotate.texinfo \
155 $(ANNOTATE_DOC_SOURCE_INCLUDES) \
156 $(ANNOTATE_DOC_BUILD_INCLUDES)
157
43662968
JK
158# Options to extract the man page from gdb.texinfo
159MANCONF = -Dman
160
161TEXI2POD = perl $(srcdir)/../../etc/texi2pod.pl \
162 $(MAKEINFOFLAGS) $(MAKEINFO_EXTRA_FLAGS)
163
164POD2MAN1 = pod2man --center="GNU Development Tools" \
01208463 165 --release="gdb-`sed q version.subst`" --section=1
43662968 166POD2MAN5 = pod2man --center="GNU Development Tools" \
01208463 167 --release="gdb-`sed q version.subst`" --section=5
43662968
JK
168
169# List of man pages generated from gdb.texi
b292c783 170MAN1S = gdb.1 gdbserver.1 gcore.1
43662968
JK
171MAN5S = gdbinit.5
172MANS = $(MAN1S) $(MAN5S)
173
b292c783
JK
174# Host-dependent makefile fragment comes in here.
175@host_makefile_frag@
176# End of host-dependent makefile fragment
177HAVE_NATIVE_GCORE_TARGET = @HAVE_NATIVE_GCORE_TARGET@
178
c906108c
SS
179###
180
35db0260 181all:
c906108c 182
63ac3005 183info: $(INFO_DEPS)
0a7cfe2c
SS
184dvi: gdb.dvi stabs.dvi refcard.dvi annotate.dvi
185ps: gdb.ps stabs.ps refcard.ps annotate.ps
2b831889 186html: $(HTMLFILES)
9453113a 187pdf: $(PDFFILES)
43662968 188man: $(MANS)
1e0a5178
SS
189
190DOXYGEN = doxygen
191doxyedit = sed -e 's,@srcdir\@,$(srcdir),g'
192
193doxy: doxy/index.html \
194 doxy/gdb-api/index.html \
195 doxy/gdb-xref/index.html \
196 doxy/gdbserver/index.html
197
198doxy/index.html: $(srcdir)/doxy-index.in
199 -mkdir -p doxy
200 cp $(srcdir)/doxy-index.in doxy/index.html
201
202doxy/gdb-api/index.html: Doxyfile-gdb-api Doxyfile-base
203 -mkdir -p doxy
204 $(DOXYGEN) Doxyfile-gdb-api
205
206doxy/gdb-xref/index.html: Doxyfile-gdb-xref Doxyfile-base
207 -mkdir -p doxy
208 $(DOXYGEN) Doxyfile-gdb-xref
209
210doxy/gdbserver/index.html: Doxyfile-gdbserver Doxyfile-base
211 -mkdir -p doxy
212 $(DOXYGEN) Doxyfile-gdbserver
213
214Doxyfile-base: $(srcdir)/Doxyfile-base.in
215 $(doxyedit) $(srcdir)/Doxyfile-base.in >Doxyfile-base
216
217Doxyfile-gdb-api: $(srcdir)/Doxyfile-gdb-api.in
218 $(doxyedit) $(srcdir)/Doxyfile-gdb-api.in >Doxyfile-gdb-api
219
220Doxyfile-gdb-xref: $(srcdir)/Doxyfile-gdb-xref.in
221 $(doxyedit) $(srcdir)/Doxyfile-gdb-xref.in >Doxyfile-gdb-xref
222
223Doxyfile-gdbserver: $(srcdir)/Doxyfile-gdbserver.in
224 $(doxyedit) $(srcdir)/Doxyfile-gdbserver.in >Doxyfile-gdbserver
225
449f3b6c 226all-doc: info dvi ps # pdf
43662968 227diststuff: info man
42ea3d7a 228 rm -f gdb-cfg.texi GDBvn.texi
c906108c 229
63ac3005 230install-info: $(INFO_DEPS)
c938e9b0 231 $(SHELL) $(srcdir)/../../mkinstalldirs $(DESTDIR)$(infodir)
63ac3005
EZ
232 @list='$(INFO_DEPS)'; \
233 for file in $$list; do \
234 if test -f $$file; then d=.; else d=$(srcdir); fi; \
235 for ifile in `cd $$d && echo $$file $$file-[0-9] $$file-[0-9][0-9]`; do \
236 if test -f $$d/$$ifile; then \
c938e9b0
L
237 echo " $(INSTALL_DATA) $$d/$$ifile $(DESTDIR)$(infodir)/$$ifile"; \
238 $(INSTALL_DATA) $$d/$$ifile $(DESTDIR)$(infodir)/$$ifile; \
63ac3005
EZ
239 else : ; fi; \
240 done; \
241 done
c166cdc7 242 $(POST_INSTALL)
d3229ae3 243 @if $(SHELL) -c 'install-info --version | sed 1q | fgrep -s -v -i debian' >/dev/null 2>&1; then \
63ac3005 244 list='$(INFO_DEPS)'; \
d3229ae3 245 for file in $$list; do \
5843504f
EZ
246 echo " install-info --info-dir=$(DESTDIR)$(infodir) $(DESTDIR)$(infodir)/$$file";\
247 install-info --info-dir=$(DESTDIR)$(infodir) $(DESTDIR)$(infodir)/$$file || :;\
d3229ae3
EZ
248 done; \
249 else : ; fi
c906108c 250
c166cdc7
EZ
251uninstall-info:
252 $(PRE_UNINSTALL)
253 @if $(SHELL) -c 'install-info --version | sed 1q | fgrep -s -v -i debian' >/dev/null 2>&1; then \
254 ii=yes; \
255 else ii=; fi; \
256 list='$(INFO_DEPS)'; \
257 for file in $$list; do \
258 test -z "$$ii" \
259 || install-info --info-dir=$(DESTDIR)$(infodir) --remove $$file; \
260 done
261 $(NORMAL_UNINSTALL)
262 list='$(INFO_DEPS)'; \
263 for file in $$list; do \
264 (cd $(DESTDIR)$(infodir) && rm -f $$file $$file-[0-9] $$file-[0-9][0-9]); \
265 done
266
2b831889
JM
267html__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
268
269install-html: $(HTMLFILES)
270 @$(NORMAL_INSTALL)
271 test -z "$(htmldir)" || $(mkinstalldirs) "$(DESTDIR)$(htmldir)"
272 @list='$(HTMLFILES_INSTALL)'; for p in $$list; do \
273 if test -f "$$p" || test -d "$$p"; then d=""; else d="$(srcdir)/"; fi; \
274 f=$(html__strip_dir) \
275 if test -d "$$d$$p"; then \
276 echo " $(mkinstalldirs) '$(DESTDIR)$(htmldir)/$$f'"; \
277 $(mkinstalldirs) "$(DESTDIR)$(htmldir)/$$f" || exit 1; \
278 echo " $(INSTALL_DATA) '$$d$$p'/* '$(DESTDIR)$(htmldir)/$$f'"; \
279 $(INSTALL_DATA) "$$d$$p"/* "$(DESTDIR)$(htmldir)/$$f"; \
280 else \
281 echo " $(INSTALL_DATA) '$$d$$p' '$(DESTDIR)$(htmldir)/$$f'"; \
282 $(INSTALL_DATA) "$$d$$p" "$(DESTDIR)$(htmldir)/$$f"; \
283 fi; \
085dd6e6
JM
284 done
285
9453113a
DJ
286pdf__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
287
288install-pdf: $(PDFFILES)
289 @$(NORMAL_INSTALL)
290 test -z "$(pdfdir)" || $(mkinstalldirs) "$(DESTDIR)$(pdfdir)"
291 @list='$(PDFFILES)'; for p in $$list; do \
292 if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
293 f=$(pdf__strip_dir) \
294 echo " $(INSTALL_DATA) '$$d$$p' '$(DESTDIR)$(pdfdir)/$$f'"; \
295 $(INSTALL_DATA) "$$d$$p" "$(DESTDIR)$(pdfdir)/$$f"; \
296 done
297
43662968
JK
298install-man: install-man1 install-man5
299
300install-man1: $(MAN1S)
301 test -z "$(man1dir)" || $(mkinstalldirs) "$(DESTDIR)$(man1dir)"
0ed630cb 302 @list='$(MAN1S)'; for p in $$list; do \
b292c783
JK
303 if test "x$(HAVE_NATIVE_GCORE_TARGET)$(HAVE_NATIVE_GCORE_HOST)" = x \
304 -a "$$p" = gcore.1; then \
305 continue; \
306 fi; \
43662968
JK
307 if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
308 f=`echo $$p | sed -e 's|^.*/||'`; \
309 echo " $(INSTALL_DATA) '$$d$$p' '$(DESTDIR)$(man1dir)/$$f'"; \
310 $(INSTALL_DATA) "$$d$$p" "$(DESTDIR)$(man1dir)/$$f"; \
311 done
312
313install-man5: $(MAN5S)
314 test -z "$(man5dir)" || $(mkinstalldirs) "$(DESTDIR)$(man5dir)"
0ed630cb 315 @list='$(MAN5S)'; for p in $$list; do \
43662968
JK
316 if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
317 f=`echo $$p | sed -e 's|^.*/||'`; \
318 echo " $(INSTALL_DATA) '$$d$$p' '$(DESTDIR)$(man5dir)/$$f'"; \
319 $(INSTALL_DATA) "$$d$$p" "$(DESTDIR)$(man5dir)/$$f"; \
320 done
321
322uninstall-man: uninstall-man1 uninstall-man5
323
324uninstall-man1:
325 @test -n "$(man1dir)" || exit 0; \
b292c783
JK
326 files=`{ l2='$(MAN1S)'; for i in $$l2; do \
327 if test "x$(HAVE_NATIVE_GCORE_TARGET)$(HAVE_NATIVE_GCORE_HOST)" = x \
328 -a "$$i" = gcore.1; then \
329 continue; \
330 fi; \
331 echo "$$i"; \
332 done | \
43662968
JK
333 sed -n '/\.1[a-z]*$$/p'; \
334 } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
335 -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
336 test -z "$$files" || { \
337 echo " ( cd '$(DESTDIR)$(man1dir)' && rm -f" $$files ")"; \
338 cd "$(DESTDIR)$(man1dir)" && rm -f $$files; }
339
340uninstall-man5:
341 @test -n "$(man5dir)" || exit 0; \
0ed630cb 342 files=`{ l2='$(MAN5S)'; for i in $$l2; do echo "$$i"; done | \
43662968
JK
343 sed -n '/\.5[a-z]*$$/p'; \
344 } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^5][0-9a-z]*$$,5,;x' \
345 -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
346 test -z "$$files" || { \
347 echo " ( cd '$(DESTDIR)$(man5dir)' && rm -f" $$files ")"; \
348 cd "$(DESTDIR)$(man5dir)" && rm -f $$files; }
349
350STAGESTUFF = *.info* gdb-all.texi GDBvn.texi *.ps *.dvi *.pdf *.1 *.5
c906108c
SS
351
352# Copy the object files from a particular stage into a subdirectory.
353stage1: force
354 -mkdir stage1
355 -mv $(STAGESTUFF) stage1
356
357stage2: force
358 -mkdir stage2
359 -mv $(STAGESTUFF) stage2
360
361stage3: force
362 -mkdir stage3
363 -mv $(STAGESTUFF) stage3
364
365against=stage2
366
367comparison: force
368 for i in $(STAGESTUFF) ; do cmp $$i $(against)/$$i ; done
369
370de-stage1: force
371 -(cd stage1 ; mv -f * ..)
372 -rmdir stage1
373
374de-stage2: force
375 -(cd stage2 ; mv -f * ..)
376 -rmdir stage2
377
378de-stage3: force
379 -(cd stage3 ; mv -f * ..)
380 -rmdir stage3
381
c906108c
SS
382# GDB QUICK REFERENCE (dvi output)
383refcard.dvi : refcard.tex $(REFEDITS)
dfa249fb
AC
384 echo > tmp.sed
385 for f in x $(REFEDITS) ; do \
386 test x$$f = xx && continue ; \
387 cat $(srcdir)/$$f >>tmp.sed ; \
388 done
389 sed -f tmp.sed $(srcdir)/refcard.tex >sedref.tex
c906108c
SS
390 $(SET_TEXINPUTS) $(TEX) sedref.tex
391 mv sedref.dvi refcard.dvi
392 rm -f sedref.log sedref.tex tmp.sed
393
394refcard.ps : refcard.dvi
395 $(DVIPS) -t landscape -o $@ $?
396
9453113a
DJ
397refcard.pdf : refcard.tex $(REFEDITS)
398 echo > tmp.sed
399 for f in x $(REFEDITS) ; do \
400 test x$$f = xx && continue ; \
401 cat $(srcdir)/$$f >>tmp.sed ; \
402 done
403 sed -f tmp.sed $(srcdir)/refcard.tex >sedref.tex
404 $(SET_TEXINPUTS) $(PDFTEX) sedref.tex
405 mv sedref.pdf refcard.pdf
406 rm -f sedref.log sedref.tex tmp.sed
407
01208463
TT
408# File to record current GDB version number.
409GDBvn.texi : version.subst
410 echo "@set GDBVN `sed q version.subst`" > ./GDBvn.new
c16158bc
JM
411 if [ -n "$(PKGVERSION)" ]; then \
412 echo "@set VERSION_PACKAGE $(PKGVERSION)" >> ./GDBvn.new; \
413 fi
414 echo "@set BUGURL $(BUGURL_TEXI)" >> ./GDBvn.new
415 if [ "$(BUGURL_TEXI)" = "@uref{http://www.gnu.org/software/gdb/bugs/}" ]; then \
416 echo "@set BUGURL_DEFAULT" >> ./GDBvn.new; \
417 fi
39037522
TT
418 if test -z "$(READLINE_TEXI_INCFLAG)"; then \
419 echo "@set SYSTEM_READLINE" >> ./GDBvn.new; \
420 fi
43662968
JK
421 if [ -n "$(SYSTEM_GDBINIT)" ]; then \
422 echo "@set SYSTEM_GDBINIT $(SYSTEM_GDBINIT)" >> ./GDBvn.new; \
423 fi
c906108c
SS
424 mv GDBvn.new GDBvn.texi
425
d6c2da54 426version.subst: $(gdbdir)/version.in $(gdbdir)/../bfd/version.h
01208463 427 date=`sed -n -e 's/^.* BFD_VERSION_DATE \(.*\)$$/\1/p' $(gdbdir)/../bfd/version.h`; \
d6c2da54 428 sed -e "s/DATE/$$date/" < $(gdbdir)/version.in > version.subst
01208463 429
c906108c
SS
430# Updated atomically
431.PRECIOUS: GDBvn.texi
432
433# Choose configuration for GDB manual (normally `all'; normally not tied into
434# `configure' script because most users prefer generic version of manual,
435# not one for their binary config---which may not be specifically
436# defined anyways).
437gdb-cfg.texi: ${srcdir}/${DOC_CONFIG}-cfg.texi
44e2be90 438 (test "$(LN_S)" = "ln -s" && \
39ec5655 439 ln -s ${srcdir}/${DOC_CONFIG}-cfg.texi gdb-cfg.texi) || \
c906108c
SS
440 ln ${srcdir}/${DOC_CONFIG}-cfg.texi gdb-cfg.texi || \
441 cp ${srcdir}/${DOC_CONFIG}-cfg.texi gdb-cfg.texi
442
443# GDB MANUAL: texinfo source, using @set/@clear/@value/@ifset/@ifclear
444# If your texinfo or makeinfo don't support these, get a new texinfo release
445#
446# The nonsense with GDBvn.texi gets this to run with both Sun and GNU make.
447# Note that we can *generate* GDBvn.texi, but since we distribute one in the
448# source directory for the benefit of people who *don't* use this makefile,
449# VPATH will often tell make not to bother building it, because the one
450# in the srcdir is up to date. (if not, then make should build one here).
451
46d8b1c3
AC
452# Clean these up before each run. Avoids a catch 22 with not being
453# able to re-generate these files (to fix a corruption) because these
454# files contain a corruption.
b0787093
AC
455GDB_TEX_TMPS = gdb.aux gdb.cp* gdb.fn* gdb.ky* gdb.log gdb.pg* gdb.toc \
456 gdb.tp* gdb.vr*
457
c906108c 458# GDB MANUAL: TeX dvi file
b0787093 459gdb.dvi: ${GDB_DOC_FILES}
c906108c 460 if [ ! -f ./GDBvn.texi ]; then \
44e2be90 461 (test "$(LN_S)" = "ln -s" && ln -s $(srcdir)/GDBvn.texi .) || \
c906108c
SS
462 ln $(srcdir)/GDBvn.texi . || \
463 cp $(srcdir)/GDBvn.texi . ; else true; fi
b0787093 464 rm -f $(GDB_TEX_TMPS)
39037522 465 $(TEXI2DVI) $(READLINE_TEXI_INCFLAG) -I ${GDBMI_DIR} -I $(srcdir) \
26e251b6 466 $(srcdir)/gdb.texinfo
c906108c
SS
467
468gdb.ps: gdb.dvi
469 $(DVIPS) -o $@ $?
470
b0787093 471gdb.pdf: ${GDB_DOC_FILES}
449f3b6c 472 if [ ! -f ./GDBvn.texi ]; then \
44e2be90 473 (test "$(LN_S)" = "ln -s" && ln -s $(srcdir)/GDBvn.texi .) || \
449f3b6c
AC
474 ln $(srcdir)/GDBvn.texi . || \
475 cp $(srcdir)/GDBvn.texi . ; else true; fi
b0787093 476 rm -f $(GDB_TEX_TMPS)
39037522 477 $(TEXI2DVI) --pdf $(READLINE_TEXI_INCFLAG) -I ${GDBMI_DIR} -I $(srcdir) \
26e251b6 478 $(srcdir)/gdb.texinfo
449f3b6c 479
c906108c 480# GDB MANUAL: info file
b0787093 481gdb.info: ${GDB_DOC_FILES}
5048e516 482 $(MAKEINFO_CMD) $(READLINE_TEXI_INCFLAG) -I ${GDBMI_DIR} -I $(srcdir) \
a7b40f07 483 -o gdb.info $(srcdir)/gdb.texinfo
c906108c
SS
484
485# GDB MANUAL: roff translations
486# Try to use a recent texi2roff. v2 was put on prep in jan91.
487# If you want an index, see texi2roff doc for postprocessing
488# and add -i to texi2roff invocations below.
489# Workarounds for texi2roff-2 (probably fixed in later texi2roff's, delete
490# corresponding -e lines when later texi2roff's are current)
491# + @ifinfo's deleted explicitly due to texi2roff-2 bug w nested constructs.
492# + @c's deleted explicitly because texi2roff sees texinfo commands in them
493# + @ (that's at-BLANK) not recognized by texi2roff, turned into blank
494# + @alphaenumerate is ridiculously new, turned into @enumerate
495
496# texi2roff doesn't have a notion of include dirs, so we have to fake
497# it out for gdb manual's include files---but only if not configured
498# in main sourcedir.
b0787093 499links2roff: $(GDB_DOC_SOURCE_INCLUDES)
c906108c 500 if [ ! -f gdb.texinfo ]; then \
44e2be90 501 (test "$(LN_S)" = "ln -s" && ln -s $(GDB_DOC_SOURCE_INCLUDES) .) || \
b0787093
AC
502 ln $(GDB_DOC_SOURCE_INCLUDES) . || \
503 cp $(GDB_DOC_SOURCE_INCLUDES) . ; \
c906108c
SS
504 fi
505 touch links2roff
506
c906108c 507# gdb manual suitable for [gtn]roff -me
b0787093 508gdb.me: $(GDB_DOC_FILES) links2roff
c906108c
SS
509 sed -e '/\\input texinfo/d' \
510 -e '/@c TEXI2ROFF-KILL/,/@c END TEXI2ROFF-KILL/d' \
511 -e '/^@ifinfo/,/^@end ifinfo/d' \
512 -e '/^@c /d' \
513 -e 's/{.*,,/{/' \
514 -e 's/@ / /g' \
515 -e 's/^@alphaenumerate/@enumerate/g' \
516 -e 's/^@end alphaenumerate/@end enumerate/g' \
517 $(srcdir)/gdb.texinfo | \
518 $(TEXI2ROFF) -me | \
519 sed -e 's/---/\\(em/g' \
520 >gdb.me
521
522# gdb manual suitable for [gtn]roff -ms
b0787093 523gdb.ms: $(GDB_DOC_FILES) links2roff
c906108c
SS
524 sed -e '/\\input texinfo/d' \
525 -e '/@c TEXI2ROFF-KILL/,/@c END TEXI2ROFF-KILL/d' \
526 -e '/^@ifinfo/,/^@end ifinfo/d' \
527 -e '/^@c /d' \
528 -e 's/{.*,,/{/' \
529 -e 's/@ / /g' \
530 -e 's/^@alphaenumerate/@enumerate/g' \
531 -e 's/^@end alphaenumerate/@end enumerate/g' \
532 $(srcdir)/gdb.texinfo | \
533 $(TEXI2ROFF) -ms | \
534 sed -e 's/---/\\(em/g' \
535 >gdb.ms
536
537# gdb manual suitable for [tn]roff -mm
538# '@noindent's removed due to texi2roff-2 mm bug; if yours is newer,
539# try leaving them in
b0787093 540gdb.mm: $(GDB_DOC_FILES) links2roff
c906108c
SS
541 sed -e '/\\input texinfo/d' \
542 -e '/@c TEXI2ROFF-KILL/,/@c END TEXI2ROFF-KILL/d' \
543 -e '/^@ifinfo/,/^@end ifinfo/d' \
544 -e '/^@c /d' \
545 -e 's/{.*,,/{/' \
546 -e '/@noindent/d' \
547 -e 's/@ / /g' \
548 -e 's/^@alphaenumerate/@enumerate/g' \
549 -e 's/^@end alphaenumerate/@end enumerate/g' \
550 $(srcdir)/gdb.texinfo | \
551 $(TEXI2ROFF) -mm | \
552 sed -e 's/---/\\(em/g' \
553 >gdb.mm
554
085dd6e6
JM
555# GDB MANUAL: HTML file
556
2b831889 557gdb/index.html: ${GDB_DOC_FILES}
39037522 558 $(MAKEHTML) $(MAKEHTMLFLAGS) $(READLINE_TEXI_INCFLAG) -I ${GDBMI_DIR} -I $(srcdir) $(srcdir)/gdb.texinfo
085dd6e6 559
b0787093 560stabs.info: $(STABS_DOC_FILES)
5048e516 561 $(MAKEINFO_CMD) -I $(srcdir) -o stabs.info $(srcdir)/stabs.texinfo
c906108c 562
085dd6e6
JM
563# STABS DOCUMENTATION: HTML file
564
2b831889 565stabs/index.html: $(STABS_DOC_FILES)
26e251b6 566 $(MAKEHTML) $(MAKEHTMLFLAGS) -I $(srcdir) $(srcdir)/stabs.texinfo
085dd6e6 567
46d8b1c3
AC
568# Clean these up before each run. Avoids a catch 22 with not being
569# able to re-generate these files (to fix a corruption) because these
570# files contain a corruption.
b0787093
AC
571STABS_TEX_TMPS = stabs.aux stabs.cp* stabs.fn* stabs.ky* \
572 stabs.log stabs.pg* stabs.toc stabs.tp* stabs.vr*
573
c906108c 574# STABS DOCUMENTATION: TeX dvi file
b0787093
AC
575stabs.dvi : $(STABS_DOC_FILES)
576 rm -f $(STABS_TEX_TMPS)
26e251b6 577 $(TEXI2DVI) -I $(srcdir) $(srcdir)/stabs.texinfo
c906108c
SS
578
579stabs.ps: stabs.dvi
580 $(DVIPS) -o $@ $?
581
b0787093
AC
582stabs.pdf: $(STABS_DOC_FILES)
583 rm -f $(STABS_TEX_TMPS)
26e251b6 584 $(TEXI2DVI) --pdf -I $(srcdir) $(srcdir)/stabs.texinfo
449f3b6c 585
e6f672d2
AC
586# Clean these up before each run. Avoids a catch 22 with not being
587# able to re-generate these files (to fix a corruption) because these
588# files contain a corruption.
589ANNOTATE_TEX_TMPS = annotate.aux annotate.cp* annotate.fn* annotate.ky* \
590 annotate.log annotate.pg* annotate.toc annotate.tp* annotate.vr*
591
592# ANNOTATE DOCUMENTATION: TeX dvi file
593annotate.dvi : $(ANNOTATE_DOC_FILES)
594 rm -f $(ANNOTATE_TEX_TMPS)
26e251b6 595 $(TEXI2DVI) -I $(srcdir) $(srcdir)/annotate.texinfo
e6f672d2
AC
596
597annotate.ps: annotate.dvi
598 $(DVIPS) -o $@ $?
599
600annotate.pdf: $(ANNOTATE_DOC_FILES)
601 rm -f $(ANNOTATE_TEX_TMPS)
26e251b6 602 $(TEXI2DVI) --pdf -I $(srcdir) $(srcdir)/annotate.texinfo
e6f672d2
AC
603
604annotate.info: $(ANNOTATE_DOC_FILES)
5048e516 605 $(MAKEINFO_CMD) -I $(srcdir) -o annotate.info $(srcdir)/annotate.texinfo
e6f672d2 606
2b831889 607annotate/index.html: $(ANNOTATE_DOC_FILES)
26e251b6 608 $(MAKEHTML) $(MAKEHTMLFLAGS) -I $(srcdir) $(srcdir)/annotate.texinfo
e6f672d2 609
43662968
JK
610# Man pages
611gdb.1: $(GDB_DOC_FILES)
612 touch $@
afe1492b 613 -$(TEXI2POD) $(MANCONF) -Dgdb < $(srcdir)/gdb.texinfo > gdb.pod
43662968
JK
614 -($(POD2MAN1) gdb.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
615 mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
616 rm -f gdb.pod
617
618gdbserver.1: $(GDB_DOC_FILES)
619 touch $@
afe1492b 620 -$(TEXI2POD) $(MANCONF) -Dgdbserver < $(srcdir)/gdb.texinfo > gdbserver.pod
43662968
JK
621 -($(POD2MAN1) gdbserver.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
622 mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
623 rm -f gdbserver.pod
624
b292c783
JK
625gcore.1: $(GDB_DOC_FILES)
626 touch $@
627 -$(TEXI2POD) $(MANCONF) -Dgcore < $(srcdir)/gdb.texinfo > gcore.pod
628 -($(POD2MAN1) gcore.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
629 mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
630 rm -f gcore.pod
631
43662968
JK
632gdbinit.5: $(GDB_DOC_FILES)
633 touch $@
afe1492b 634 -$(TEXI2POD) $(MANCONF) -Dgdbinit < $(srcdir)/gdb.texinfo > gdbinit.pod
43662968
JK
635 -($(POD2MAN5) gdbinit.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
636 mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
637 rm -f gdbinit.pod
638
c906108c
SS
639force:
640
5ae98d25
TT
641Makefile: Makefile.in $(host_makefile_frag) ../config.status
642 cd .. && $(SHELL) ./config.status doc/Makefile
46d8b1c3
AC
643
644
645# The "least clean" level of cleaning. Get rid of files which are
646# automatically generated files that are just intermediate files,
647
648mostlyclean:
649 rm -f gdb.mm gdb.ms gdb.me links2roff
650 rm -f $(GDB_TEX_TMPS)
46d8b1c3 651 rm -f $(STABS_TEX_TMPS)
e6f672d2 652 rm -f $(ANNOTATE_TEX_TMPS)
46d8b1c3 653 rm -f sedref.dvi sedref.tex tmp.sed
01208463 654 rm -f version.subst
46d8b1c3
AC
655
656clean: mostlyclean
42ea3d7a 657 rm -f gdb-cfg.texi GDBvn.texi
46d8b1c3
AC
658
659distclean: clean
5ae98d25 660 rm -f Makefile
46d8b1c3
AC
661
662# GDBvn.texi, the dvi files, the info files, and the postscript files,
663# are all part of the distribution, so it should not be removed by
664# "clean" or "distclean". Use maintainer-clean to remove them.
665
666maintainer-clean realclean: distclean
43662968 667 rm -f GDBvn.texi *.info* *.dvi *.ps *.html *.pdf $(MANS)
46d8b1c3 668
43662968 669install: install-info install-man
c166cdc7 670
43662968 671uninstall: uninstall-info uninstall-man
This page took 0.929906 seconds and 4 git commands to generate.