-##Copyright (C) 1991-2013 Free Software Foundation, Inc.
+##Copyright (C) 1991-2019 Free Software Foundation, Inc.
# Makefile for GDB documentation.
# This file is part of GDB.
man1dir = $(mandir)/man1
man5dir = $(mandir)/man5
+transform = @program_transform_name@
+
SHELL = @SHELL@
LN_S = @LN_S@
INSTALL_DATA = @INSTALL_DATA@
SYSTEM_GDBINIT = @SYSTEM_GDBINIT@
+SYSTEM_GDBINIT_DIR = @SYSTEM_GDBINIT_DIR@
mkinstalldirs = $(SHELL) $(srcdir)/../../mkinstalldirs
# where to find texi2dvi, ditto
TEXI2DVI=texi2dvi
+# Package to install the docs under
+PACKAGE = @PACKAGE@
+
# Package version and bug-reporting URL.
PKGVERSION = @PKGVERSION@
BUGURL_TEXI = @REPORT_BUGS_TEXI@
# Where is the source dir for the READLINE library doc?
# Traditionally readline is in .. or .
-READLINE_DIR = ${gdbdir}/../readline/doc
+READLINE_DIR = ${gdbdir}/../readline/readline/doc
READLINE_TEXI_INCFLAG = @READLINE_TEXI_INCFLAG@
# The GDB/MI docs come from a sibling directory ../mi
TEXINPUTS=${TEXIDIR}:.:$(srcdir):$(READLINE_DIR):$(GDBMI_DIR):$$TEXINPUTS
# Files which should be generated via 'info' and installed by 'install-info'
-INFO_DEPS = gdb.info gdbint.info stabs.info annotate.info
+INFO_DEPS = gdb.info stabs.info annotate.info
# Files which should be generated via 'pdf' and installed by 'install-pdf'
-PDFFILES = gdb.pdf gdbint.pdf stabs.pdf refcard.pdf annotate.pdf
+PDFFILES = gdb.pdf stabs.pdf refcard.pdf annotate.pdf
# Files which should be generated via 'html' and installed by 'install-html'
-HTMLFILES = gdb/index.html gdbint/index.html stabs/index.html annotate/index.html
-HTMLFILES_INSTALL = gdb gdbint stabs annotate
+HTMLFILES = gdb/index.html stabs/index.html annotate/index.html
+HTMLFILES_INSTALL = gdb stabs annotate
# There may be alternate predefined collections of switches to configure
# the GDB manual. Normally this is not done in synch with the software
GDBvn.texi
GDB_DOC_FILES = \
$(srcdir)/gdb.texinfo \
+ $(srcdir)/guile.texi \
+ $(srcdir)/python.texi \
$(GDB_DOC_SOURCE_INCLUDES) \
$(GDB_DOC_BUILD_INCLUDES)
-# Internals Manual
-GDBINT_DOC_SOURCE_INCLUDES = \
- $(srcdir)/fdl.texi \
- $(srcdir)/observer.texi
-GDBINT_DOC_BUILD_INCLUDES = \
- gdb-cfg.texi \
- GDBvn.texi
-GDBINT_DOC_FILES = \
- $(srcdir)/gdbint.texinfo \
- $(GDBINT_DOC_SOURCE_INCLUDES) \
- $(GDBINT_DOC_BUILD_INCLUDES)
-
# Stabs manual: All files
STABS_DOC_SOURCE_INCLUDES = \
$(srcdir)/fdl.texi
-STABS_DOC_BUILD_INCLUDES =
+STABS_DOC_BUILD_INCLUDES = \
+ gdb-cfg.texi \
+ GDBvn.texi
STABS_DOC_FILES = \
$(srcdir)/stabs.texinfo \
$(STABS_DOC_SOURCE_INCLUDES) \
--release="gdb-`sed q version.subst`" --section=5
# List of man pages generated from gdb.texi
-MAN1S = gdb.1 gdbserver.1 gcore.1
+MAN1S = gdb.1 gdbserver.1 gcore.1 gdb-add-index.1
MAN5S = gdbinit.5
MANS = $(MAN1S) $(MAN5S)
-# Host-dependent makefile fragment comes in here.
-@host_makefile_frag@
-# End of host-dependent makefile fragment
HAVE_NATIVE_GCORE_TARGET = @HAVE_NATIVE_GCORE_TARGET@
###
-all:
+all: info
info: $(INFO_DEPS)
-dvi: gdb.dvi gdbint.dvi stabs.dvi refcard.dvi annotate.dvi
-ps: gdb.ps gdbint.ps stabs.ps refcard.ps annotate.ps
+dvi: gdb.dvi stabs.dvi refcard.dvi annotate.dvi
+ps: gdb.ps stabs.ps refcard.ps annotate.ps
html: $(HTMLFILES)
pdf: $(PDFFILES)
man: $(MANS)
+
+DOXYGEN = doxygen
+doxyedit = sed -e 's,@srcdir\@,$(srcdir),g'
+
+doxy: doxy/index.html \
+ doxy/gdb-api/index.html \
+ doxy/gdb-xref/index.html \
+ doxy/gdbserver/index.html
+
+doxy/index.html: $(srcdir)/doxy-index.in
+ -mkdir -p doxy
+ cp $(srcdir)/doxy-index.in doxy/index.html
+
+doxy/gdb-api/index.html: Doxyfile-gdb-api Doxyfile-base
+ -mkdir -p doxy
+ $(DOXYGEN) Doxyfile-gdb-api
+
+doxy/gdb-xref/index.html: Doxyfile-gdb-xref Doxyfile-base
+ -mkdir -p doxy
+ $(DOXYGEN) Doxyfile-gdb-xref
+
+doxy/gdbserver/index.html: Doxyfile-gdbserver Doxyfile-base
+ -mkdir -p doxy
+ $(DOXYGEN) Doxyfile-gdbserver
+
+Doxyfile-base: $(srcdir)/Doxyfile-base.in
+ $(doxyedit) $(srcdir)/Doxyfile-base.in >Doxyfile-base
+
+Doxyfile-gdb-api: $(srcdir)/Doxyfile-gdb-api.in
+ $(doxyedit) $(srcdir)/Doxyfile-gdb-api.in >Doxyfile-gdb-api
+
+Doxyfile-gdb-xref: $(srcdir)/Doxyfile-gdb-xref.in
+ $(doxyedit) $(srcdir)/Doxyfile-gdb-xref.in >Doxyfile-gdb-xref
+
+Doxyfile-gdbserver: $(srcdir)/Doxyfile-gdbserver.in
+ $(doxyedit) $(srcdir)/Doxyfile-gdbserver.in >Doxyfile-gdbserver
+
all-doc: info dvi ps # pdf
diststuff: info man
rm -f gdb-cfg.texi GDBvn.texi
continue; \
fi; \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
- f=`echo $$p | sed -e 's|^.*/||'`; \
+ f=`echo $$p | sed -e 's|^.*/||' -e '$(transform)'`; \
echo " $(INSTALL_DATA) '$$d$$p' '$(DESTDIR)$(man1dir)/$$f'"; \
$(INSTALL_DATA) "$$d$$p" "$(DESTDIR)$(man1dir)/$$f"; \
done
test -z "$(man5dir)" || $(mkinstalldirs) "$(DESTDIR)$(man5dir)"
@list='$(MAN5S)'; for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
- f=`echo $$p | sed -e 's|^.*/||'`; \
+ f=`echo $$p | sed -e 's|^.*/||' -e '$(transform)'`; \
echo " $(INSTALL_DATA) '$$d$$p' '$(DESTDIR)$(man5dir)/$$f'"; \
$(INSTALL_DATA) "$$d$$p" "$(DESTDIR)$(man5dir)/$$f"; \
done
if [ -n "$(SYSTEM_GDBINIT)" ]; then \
echo "@set SYSTEM_GDBINIT $(SYSTEM_GDBINIT)" >> ./GDBvn.new; \
fi
+ if [ -n "$(SYSTEM_GDBINIT_DIR)" ]; then \
+ echo "@set SYSTEM_GDBINIT_DIR $(SYSTEM_GDBINIT_DIR)" >> ./GDBvn.new; \
+ fi
mv GDBvn.new GDBvn.texi
-version.subst: $(gdbdir)/common/version.in $(gdbdir)/../bfd/version.h
+version.subst: $(gdbdir)/version.in $(gdbdir)/../bfd/version.h
date=`sed -n -e 's/^.* BFD_VERSION_DATE \(.*\)$$/\1/p' $(gdbdir)/../bfd/version.h`; \
- sed -e "s/DATE/$$date/" < $(gdbdir)/common/version.in > version.subst
+ sed -e "s/DATE/$$date/" < $(gdbdir)/version.in > version.subst
# Updated atomically
.PRECIOUS: GDBvn.texi
gdb/index.html: ${GDB_DOC_FILES}
$(MAKEHTML) $(MAKEHTMLFLAGS) $(READLINE_TEXI_INCFLAG) -I ${GDBMI_DIR} -I $(srcdir) $(srcdir)/gdb.texinfo
-# Clean these up before each run. Avoids a catch 22 with not being
-# able to re-generate these files (to fix a corruption) because these
-# files contain a corruption.
-GDBINT_TEX_TMPS = gdbint.aux gdbint.cp* gdbint.fn* gdbint.ky* \
- gdbint.log gdbint.pg* gdbint.toc gdbint.tp* gdbint.vr*
-
-# GDB INTERNALS MANUAL: TeX dvi file
-gdbint.dvi: $(GDBINT_DOC_FILES)
- rm -f $(GDBINT_TEX_TMPS)
- $(TEXI2DVI) -I $(srcdir) $(srcdir)/gdbint.texinfo
-
-gdbint.ps : gdbint.dvi
- $(DVIPS) -o $@ $?
-
-gdbint.pdf: $(GDBINT_DOC_FILES)
- rm -f $(GDBINT_TEX_TMPS)
- $(TEXI2DVI) --pdf -I $(srcdir) $(srcdir)/gdbint.texinfo
-
-# GDB INTERNALS MANUAL: info file
-
-gdbint.info: $(GDBINT_DOC_FILES)
- $(MAKEINFO_CMD) -I $(srcdir) -o gdbint.info $(srcdir)/gdbint.texinfo
-
-# GDB INTERNALS MANUAL: HTML file
-
-gdbint/index.html: $(GDBINT_DOC_FILES)
- $(MAKEHTML) $(MAKEHTMLFLAGS) -I $(srcdir) $(srcdir)/gdbint.texinfo
-
stabs.info: $(STABS_DOC_FILES)
$(MAKEINFO_CMD) -I $(srcdir) -o stabs.info $(srcdir)/stabs.texinfo
mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
rm -f gcore.pod
+gdb-add-index.1: $(GDB_DOC_FILES)
+ touch $@
+ -$(TEXI2POD) $(MANCONF) -Dgdb-add-index < $(srcdir)/gdb.texinfo > gdb-add-index.pod
+ -($(POD2MAN1) gdb-add-index.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+ mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+ rm -f gdb-add-index.pod
+
gdbinit.5: $(GDB_DOC_FILES)
touch $@
-$(TEXI2POD) $(MANCONF) -Dgdbinit < $(srcdir)/gdb.texinfo > gdbinit.pod
mostlyclean:
rm -f gdb.mm gdb.ms gdb.me links2roff
rm -f $(GDB_TEX_TMPS)
- rm -f $(GDBINT_TEX_TMPS)
rm -f $(STABS_TEX_TMPS)
rm -f $(ANNOTATE_TEX_TMPS)
rm -f sedref.dvi sedref.tex tmp.sed
install: install-info install-man
uninstall: uninstall-info uninstall-man
+
+# Disable implicit make rules.
+include $(srcdir)/../disable-implicit-rules.mk