mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-15 04:31:49 +08:00
228d9e5479
FSF preferences (format definitions, nee threecol.tex, and default font defs, nee rc-cm.tex, now both directly in this file). lpsrc.sed, psrc.sed: alternate font defs, now sed scripts to modify refcard.tex Makefile.in: use sed -f psrc.sed to produce refcard.ps target; new target lrefcard.ps for sites using long PS font names Removed old auxiliary TeX files, no longer necessary with this scheme.
296 lines
9.4 KiB
Makefile
296 lines
9.4 KiB
Makefile
##Copyright (C) 1991 Free Software Foundation, Inc.
|
|
|
|
# Makefile for GDB documentation.
|
|
# This file is part of GDB.
|
|
|
|
# This program is free software; you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation; either version 2 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program; if not, write to the Free Software
|
|
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
|
|
srcdir = .
|
|
|
|
prefix = /usr/local
|
|
|
|
bindir = $(prefix)/bin
|
|
datadir = $(prefix)/lib
|
|
libdir = $(prefix)/lib
|
|
mandir = $(datadir)/man
|
|
man1dir = $(mandir)/man1
|
|
man2dir = $(mandir)/man2
|
|
man3dir = $(mandir)/man3
|
|
man4dir = $(mandir)/man4
|
|
man5dir = $(mandir)/man5
|
|
man6dir = $(mandir)/man6
|
|
man7dir = $(mandir)/man7
|
|
man8dir = $(mandir)/man8
|
|
man9dir = $(mandir)/man9
|
|
infodir = $(datadir)/info
|
|
includedir = $(prefix)/include
|
|
docdir = $(datadir)/doc
|
|
|
|
SHELL = /bin/sh
|
|
|
|
INSTALL = install -c
|
|
INSTALL_PROGRAM = $(INSTALL)
|
|
INSTALL_DATA = $(INSTALL)
|
|
|
|
AR = ar
|
|
AR_FLAGS = qv
|
|
BISON = bison
|
|
RANLIB = ranlib
|
|
|
|
#### Host, target, and site specific Makefile fragments come in here.
|
|
###
|
|
# main GDB source directory
|
|
gdbdir = ..
|
|
|
|
# Documentation (gdb.dvi) needs either GNU m4 or SysV m4;
|
|
# Berkeley/Sun don't have quite enough.
|
|
#M4=/usr/5bin/m4
|
|
M4=gm4
|
|
|
|
# where to find texinfo; GDB dist should include a recent one
|
|
TEXIDIR=$(srcdir)/${gdbdir}/../texinfo/fsf
|
|
|
|
# where to find makeinfo, preferably one designed for texinfo-2
|
|
MAKEINFO=makeinfo
|
|
|
|
# where to find texi2roff, ditto
|
|
TEXI2ROFF=texi2roff
|
|
|
|
# Where is the source dir for the READLINE library? Traditionally in .. or .
|
|
# (For the binary library built from it, we use ${READLINE_DIR}${subdir}.)
|
|
READLINE_DIR = $(srcdir)/${gdbdir}/../readline
|
|
|
|
# Main GDB manual's source files
|
|
SFILES_DOCDIR = \
|
|
$(srcdir)/gdb.texinfo $(srcdir)/pretex.m4 $(srcdir)/none.m4 \
|
|
$(srcdir)/all.m4 gdbinv-m.m4 gdbinv-s.m4 gdbVN.m4
|
|
|
|
# Which version of GDB manual? default includes everything
|
|
CONFIG=all
|
|
|
|
all install:
|
|
|
|
info: gdb.info gdbint.info
|
|
all-doc: gdb.info gdb.dvi refcard.dvi gdb-internals gdbint.dvi
|
|
clean-info:
|
|
-rm -f *.info*
|
|
|
|
install-info: info
|
|
for i in *.info* ; do \
|
|
$(INSTALL_DATA) $$i $(infodir)/$$i ; \
|
|
done
|
|
|
|
STAGESTUFF = *.info* gdb-all.texi gdbVN.m4
|
|
|
|
# Copy the object files from a particular stage into a subdirectory.
|
|
stage1: force
|
|
-mkdir stage1
|
|
-mv $(STAGESTUFF) stage1
|
|
|
|
stage2: force
|
|
-mkdir stage2
|
|
-mv $(STAGESTUFF) stage2
|
|
|
|
stage3: force
|
|
-mkdir stage3
|
|
-mv $(STAGESTUFF) stage3
|
|
|
|
against=stage2
|
|
|
|
comparison: force
|
|
for i in $(STAGESTUFF) ; do cmp $$i $(against)/$$i ; done
|
|
|
|
de-stage1: force
|
|
-(cd stage1 ; mv -f * ..)
|
|
-rmdir stage1
|
|
|
|
de-stage2: force
|
|
-(cd stage2 ; mv -f * ..)
|
|
-rmdir stage2
|
|
|
|
de-stage3: force
|
|
-(cd stage3 ; mv -f * ..)
|
|
-rmdir stage3
|
|
|
|
clean:
|
|
rm -f gdb.dvi rluser.texinfo inc-hist.texi gdb-all* gdb.info* gdbVN.m4
|
|
rm -f gdb-internals gdbint.?? gdbint.??? gdbint.info
|
|
rm -f refcard.ps refcard.dvi refcard.log *~
|
|
|
|
# GDB QUICK REFERENCE (TeX dvi file, CM fonts)
|
|
refcard.dvi : $(srcdir)/refcard.tex
|
|
TEXINPUTS=$(srcdir):.:$$TEXINPUTS tex refcard.tex; rm -f refcard.log
|
|
rm -f rcfonts.tex
|
|
|
|
# GDB QUICK REFERENCE (PostScript output, common PS fonts)
|
|
refcard.ps : $(srcdir)/refcard.tex $(srcdir)/psrc.sed
|
|
sed -f $(srcdir)/psrc.sed refcard.tex >psref.tex
|
|
TEXINPUTS=$(srcdir):.:$$TEXINPUTS tex psref.tex
|
|
dvips -t landscape psref -o; mv psref.ps refcard.ps
|
|
rm -f psref.dvi psref.log
|
|
|
|
# GDB QUICK REFERENCE (PostScript output, common PS fonts w/long names)
|
|
lrefcard.ps : $(srcdir)/refcard.tex $(srcdir)/lpsrc.sed
|
|
sed -f $(srcdir)/lpsrc.sed refcard.tex >psref.tex
|
|
TEXINPUTS=$(srcdir):.:$$TEXINPUTS tex psref.tex
|
|
dvips -t landscape psref -o; mv psref.ps lrefcard.ps
|
|
rm -f psref.dvi psref.log
|
|
|
|
# "Readline" appendices. Get them here so both TeX and texi2roff can find.
|
|
rluser.texinfo: ${READLINE_DIR}/doc/rluser.texinfo
|
|
ln -s ${READLINE_DIR}/doc/rluser.texinfo . || \
|
|
ln ${READLINE_DIR}/doc/rluser.texinfo . || \
|
|
cp ${READLINE_DIR}/doc/rluser.texinfo .
|
|
|
|
inc-hist.texi: ${READLINE_DIR}/doc/inc-hist.texi
|
|
ln -s ${READLINE_DIR}/doc/inc-hist.texi . || \
|
|
ln ${READLINE_DIR}/doc/inc-hist.texi . || \
|
|
cp ${READLINE_DIR}/doc/inc-hist.texi .
|
|
|
|
# File to record current GDB version number (copied from main dir Makefile.in)
|
|
gdbVN.m4 : $(srcdir)/${gdbdir}/Makefile.in
|
|
echo "_define__(<_GDB_VN__>,`sed <$(srcdir)/../Makefile.in -n 's/VERSION = //p'`)" > ./gdbVN.m4
|
|
|
|
# GDB MANUAL: texinfo source, created by preprocessing w/m4
|
|
# If you want other configs in the makefile, add or modify instructions for
|
|
# building source here, then change CONFIG (that way you get info, dvi,
|
|
# roff targets automatically for your config).
|
|
# Be sure to not create a bad gdb-all.texi if ${M4} is missing or aborts...
|
|
# The nonsense with gdbVN.m4 is to get this to run with both Sun and GNU make.
|
|
# Note that we can *generate* gdbVN.m4, but since we distribute one in the
|
|
# source directory for the benefit of people who *don't* use this makefile,
|
|
# VPATH will often tell make not to bother building it, because the one
|
|
# in the srcdir is up to date. (if not, then make should build one here).
|
|
gdb-all.texi: ${SFILES_DOCDIR}
|
|
if [ ! -f ./gdbVN.m4 ]; then \
|
|
ln -s $(srcdir)/gdbVN.m4 . || \
|
|
ln $(srcdir)/gdbVN.m4 . || \
|
|
cp $(srcdir)/gdbVN.m4 . ; else true; fi
|
|
rm -f foobus.texinfo
|
|
${M4} $(srcdir)/pretex.m4 $(srcdir)/none.m4 $(srcdir)/all.m4 \
|
|
gdbVN.m4 $(srcdir)/gdb.texinfo >foobus.texinfo
|
|
rm -f gdb-all.texi
|
|
mv foobus.texinfo ./gdb-all.texi
|
|
|
|
# GDB MANUAL: TeX dvi file
|
|
gdb.dvi : gdb-${CONFIG}.texi rluser.texinfo inc-hist.texi
|
|
TEXINPUTS=${TEXIDIR}:.:$(srcdir):$$TEXINPUTS tex gdb-${CONFIG}.texi
|
|
texindex gdb-${CONFIG}.??
|
|
TEXINPUTS=${TEXIDIR}:.:$(srcdir):$$TEXINPUTS tex gdb-${CONFIG}.texi
|
|
mv gdb-${CONFIG}.dvi ./gdb.dvi
|
|
rm -f gdb-${CONFIG}.?? gdb-${CONFIG}.???
|
|
|
|
# GDB MANUAL: info file
|
|
# We're using texinfo2, and older makeinfo's may not be able to
|
|
# cope with all the markup. In the meantime, we distribute the info
|
|
# files
|
|
gdb.info: gdb-${CONFIG}.texi
|
|
$(MAKEINFO) -o ./gdb.info gdb-${CONFIG}.texi
|
|
|
|
# GDB MANUAL: roff translations
|
|
# Try to use a recent texi2roff. v2 was put on prep in jan91.
|
|
# If you want an index, see texi2roff doc for postprocessing
|
|
# and add -i to texi2roff invocations below.
|
|
# Workarounds for texi2roff-2 (probably fixed in later texi2roff's, delete
|
|
# corresponding -e lines when later texi2roff's are current)
|
|
# + @ifinfo's deleted explicitly due to texi2roff-2 bug w nested constructs.
|
|
# + @c's deleted explicitly because texi2roff sees texinfo commands in them
|
|
# + @ (that's at-BLANK) not recognized by texi2roff, turned into blank
|
|
# + @alphaenumerate is ridiculously new, turned into @enumerate
|
|
|
|
|
|
# gdb manual suitable for [tn]roff -mm
|
|
# '@noindent's removed due to texi2roff-2 mm bug; if yours is newer,
|
|
# try leaving them in
|
|
# ditto special treatment of @ftable in rluser.texinfo
|
|
gdb.mm: gdb-${CONFIG}.texi ${READLINE_DIR}/doc/rluser.texinfo inc-hist.texi
|
|
rm -f ./rluser.texinfo
|
|
sed -e 's/^@ftable/@table/g' \
|
|
-e 's/^@end ftable/@end table/g' \
|
|
${READLINE_DIR}/doc/rluser.texinfo > ./rluser.texinfo
|
|
sed -e '/\\input texinfo/d' \
|
|
-e '/@c TEXI2ROFF-KILL/,/@c END TEXI2ROFF-KILL/d' \
|
|
-e '/^@ifinfo/,/^@end ifinfo/d' \
|
|
-e '/^@c/d' \
|
|
-e 's/{.*,,/{/' \
|
|
-e '/@noindent/d' \
|
|
-e 's/@ / /g' \
|
|
-e 's/^@alphaenumerate/@enumerate/g' \
|
|
-e 's/^@end alphaenumerate/@end enumerate/g' \
|
|
gdb-${CONFIG}.texi | \
|
|
$(TEXI2ROFF) -mm | \
|
|
sed -e 's/---/\\(em/g' \
|
|
>gdb.mm
|
|
rm ./rluser.texinfo
|
|
|
|
# gdb manual suitable for [gtn]roff -me
|
|
gdb.me: gdb-${CONFIG}.texi ${READLINE_DIR}/doc/rluser.texinfo inc-hist.texi
|
|
rm -f ./rluser.texinfo
|
|
sed -e 's/^@ftable/@table/g' \
|
|
-e 's/^@end ftable/@end table/g' \
|
|
${READLINE_DIR}/doc/rluser.texinfo > ./rluser.texinfo
|
|
sed -e '/\\input texinfo/d' \
|
|
-e '/@c TEXI2ROFF-KILL/,/@c END TEXI2ROFF-KILL/d' \
|
|
-e '/^@ifinfo/,/^@end ifinfo/d' \
|
|
-e '/^@c/d' \
|
|
-e 's/{.*,,/{/' \
|
|
-e 's/@ / /g' \
|
|
-e 's/^@alphaenumerate/@enumerate/g' \
|
|
-e 's/^@end alphaenumerate/@end enumerate/g' \
|
|
gdb-${CONFIG}.texi | \
|
|
$(TEXI2ROFF) -me | \
|
|
sed -e 's/---/\\(em/g' \
|
|
>gdb.me
|
|
rm ./rluser.texinfo
|
|
|
|
# gdb manual suitable for [gtn]roff -ms
|
|
gdb.ms: gdb-${CONFIG}.texi ${READLINE_DIR}/doc/rluser.texinfo inc-hist.texi
|
|
rm -f ./rluser.texinfo
|
|
sed -e 's/^@ftable/@table/g' \
|
|
-e 's/^@end ftable/@end table/g' \
|
|
${READLINE_DIR}/doc/rluser.texinfo > ./rluser.texinfo
|
|
sed -e '/\\input texinfo/d' \
|
|
-e '/@c TEXI2ROFF-KILL/,/@c END TEXI2ROFF-KILL/d' \
|
|
-e '/^@ifinfo/,/^@end ifinfo/d' \
|
|
-e '/^@c/d' \
|
|
-e 's/{.*,,/{/' \
|
|
-e 's/@ / /g' \
|
|
-e 's/^@alphaenumerate/@enumerate/g' \
|
|
-e 's/^@end alphaenumerate/@end enumerate/g' \
|
|
gdb-${CONFIG}.texi | \
|
|
$(TEXI2ROFF) -ms | \
|
|
sed -e 's/---/\\(em/g' \
|
|
>gdb.ms
|
|
rm ./rluser.texinfo
|
|
|
|
# GDB INTERNALS MANUAL: TeX dvi file
|
|
gdbint.dvi : gdbint.texinfo
|
|
TEXINPUTS=${TEXIDIR}:.:$(srcdir):$$TEXINPUTS tex gdbint.texinfo
|
|
texindex gdbint.??
|
|
TEXINPUTS=${TEXIDIR}:.:$(srcdir):$$TEXINPUTS tex gdbint.texinfo
|
|
rm -f gdbint.?? gdbint.aux gdbint.cps gdbint.fns gdbint.kys \
|
|
gdbint.log gdbint.pgs gdbint.toc gdbint.tps gdbint.vrs
|
|
|
|
# GDB INTERNALS MANUAL: info file
|
|
gdb-internals: gdbint.info
|
|
|
|
gdbint.info: gdbint.texinfo
|
|
$(MAKEINFO) -o gdbint.info $(srcdir)/gdbint.texinfo
|
|
|
|
force:
|
|
|
|
Makefile: $(srcdir)/Makefile.in $(host_makefile_frag) $(target_makefile_frag)
|
|
$(SHELL) ./config.status
|