gdb/doc: Remove duplicate description of lookup_global_symbol
[deliverable/binutils-gdb.git] / gdb / doc / Makefile.in
index b57f6a5e43842a8af89a4cf684914f74edea37ba..6588a0c9fe7cb041dbfd269ee11bda08973d9802 100644 (file)
@@ -1,5 +1,4 @@
-##Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1999, 2000, 2002, 2003,
-##2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
+##Copyright (C) 1991-2019 Free Software Foundation, Inc.
 
 # Makefile for GDB documentation.
 # This file is part of GDB.
@@ -27,6 +26,11 @@ datarootdir = @datarootdir@
 docdir = @docdir@
 pdfdir = @pdfdir@
 htmldir = @htmldir@
+mandir = @mandir@
+man1dir = $(mandir)/man1
+man5dir = $(mandir)/man5
+
+transform = @program_transform_name@
 
 SHELL = @SHELL@
 
@@ -36,6 +40,9 @@ INSTALL = @INSTALL@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
 INSTALL_DATA = @INSTALL_DATA@
 
+SYSTEM_GDBINIT = @SYSTEM_GDBINIT@
+SYSTEM_GDBINIT_DIR = @SYSTEM_GDBINIT_DIR@
+
 mkinstalldirs = $(SHELL) $(srcdir)/../../mkinstalldirs
 
 # main GDB source directory
@@ -45,9 +52,12 @@ gdbdir = $(srcdir)/..
 TEXIDIR=${gdbdir}/../texinfo
 
 # where to find makeinfo, preferably one designed for texinfo-2
-MAKEINFO=makeinfo
+MAKEINFO = @MAKEINFO@
+MAKEINFOFLAGS = @MAKEINFOFLAGS@
+MAKEINFO_EXTRA_FLAGS = @MAKEINFO_EXTRA_FLAGS@
+MAKEINFO_CMD = $(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFO_EXTRA_FLAGS)
 
-MAKEHTML = $(MAKEINFO) --html 
+MAKEHTML = $(MAKEINFO_CMD) --html
 MAKEHTMLFLAGS =
 
 # where to find texi2roff, ditto
@@ -56,13 +66,16 @@ TEXI2ROFF=texi2roff
 # 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
@@ -72,13 +85,13 @@ SET_TEXINPUTS = \
    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
@@ -117,31 +130,23 @@ GDB_DOC_SOURCE_INCLUDES = \
        $(srcdir)/gpl.texi \
        $(srcdir)/agentexpr.texi \
        $(READLINE_DIR)/rluser.texi \
-       $(READLINE_DIR)/inc-hist.texinfo
+       $(READLINE_DIR)/hsuser.texi
 GDB_DOC_BUILD_INCLUDES = \
        gdb-cfg.texi \
        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) \
@@ -158,18 +163,73 @@ ANNOTATE_DOC_FILES = \
        $(ANNOTATE_DOC_SOURCE_INCLUDES) \
        $(ANNOTATE_DOC_BUILD_INCLUDES)
 
-#### Host, target, and site specific Makefile fragments come in here.
+# Options to extract the man page from gdb.texinfo
+MANCONF = -Dman
+
+TEXI2POD = perl $(srcdir)/../../etc/texi2pod.pl \
+               $(MAKEINFOFLAGS) $(MAKEINFO_EXTRA_FLAGS)
+
+POD2MAN1 = pod2man --center="GNU Development Tools" \
+                  --release="gdb-`sed q version.subst`" --section=1
+POD2MAN5 = pod2man --center="GNU Development Tools" \
+                  --release="gdb-`sed q version.subst`" --section=5
+
+# List of man pages generated from gdb.texi
+MAN1S = gdb.1 gdbserver.1 gcore.1 gdb-add-index.1
+MAN5S = gdbinit.5
+MANS = $(MAN1S) $(MAN5S)
+
+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
+diststuff: info man
        rm -f gdb-cfg.texi GDBvn.texi
 
 install-info: $(INFO_DEPS)
@@ -240,7 +300,59 @@ install-pdf: $(PDFFILES)
          $(INSTALL_DATA) "$$d$$p" "$(DESTDIR)$(pdfdir)/$$f"; \
        done
 
-STAGESTUFF = *.info* gdb-all.texi GDBvn.texi *.ps *.dvi *.pdf
+install-man: install-man1 install-man5
+
+install-man1: $(MAN1S)
+       test -z "$(man1dir)" || $(mkinstalldirs) "$(DESTDIR)$(man1dir)"
+       @list='$(MAN1S)'; for p in $$list; do \
+         if test "x$(HAVE_NATIVE_GCORE_TARGET)$(HAVE_NATIVE_GCORE_HOST)" = x \
+                 -a "$$p" = gcore.1; then \
+           continue; \
+         fi; \
+         if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+         f=`echo $$p | sed -e 's|^.*/||' -e '$(transform)'`; \
+         echo " $(INSTALL_DATA) '$$d$$p' '$(DESTDIR)$(man1dir)/$$f'"; \
+         $(INSTALL_DATA) "$$d$$p" "$(DESTDIR)$(man1dir)/$$f"; \
+       done
+
+install-man5: $(MAN5S)
+       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|^.*/||' -e '$(transform)'`; \
+         echo " $(INSTALL_DATA) '$$d$$p' '$(DESTDIR)$(man5dir)/$$f'"; \
+         $(INSTALL_DATA) "$$d$$p" "$(DESTDIR)$(man5dir)/$$f"; \
+       done
+
+uninstall-man: uninstall-man1 uninstall-man5
+
+uninstall-man1:
+       @test -n "$(man1dir)" || exit 0; \
+       files=`{ l2='$(MAN1S)'; for i in $$l2; do \
+         if test "x$(HAVE_NATIVE_GCORE_TARGET)$(HAVE_NATIVE_GCORE_HOST)" = x \
+                 -a "$$i" = gcore.1; then \
+           continue; \
+         fi; \
+         echo "$$i"; \
+       done | \
+         sed -n '/\.1[a-z]*$$/p'; \
+       } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
+             -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
+       test -z "$$files" || { \
+         echo " ( cd '$(DESTDIR)$(man1dir)' && rm -f" $$files ")"; \
+         cd "$(DESTDIR)$(man1dir)" && rm -f $$files; }
+
+uninstall-man5:
+       @test -n "$(man5dir)" || exit 0; \
+       files=`{ l2='$(MAN5S)'; for i in $$l2; do echo "$$i"; done | \
+         sed -n '/\.5[a-z]*$$/p'; \
+       } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^5][0-9a-z]*$$,5,;x' \
+             -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
+       test -z "$$files" || { \
+         echo " ( cd '$(DESTDIR)$(man5dir)' && rm -f" $$files ")"; \
+         cd "$(DESTDIR)$(man5dir)" && rm -f $$files; }
+
+STAGESTUFF = *.info* gdb-all.texi GDBvn.texi *.ps *.dvi *.pdf *.1 *.5
 
 # Copy the object files from a particular stage into a subdirectory.
 stage1: force
@@ -298,9 +410,9 @@ refcard.pdf : refcard.tex $(REFEDITS)
        mv sedref.pdf refcard.pdf
        rm -f sedref.log sedref.tex tmp.sed
 
-# File to record current GDB version number (copied from main dir version.in)
-GDBvn.texi : ${gdbdir}/version.in
-       echo "@set GDBVN `sed q $(srcdir)/../version.in`" > ./GDBvn.new
+# File to record current GDB version number.
+GDBvn.texi : version.subst
+       echo "@set GDBVN `sed q version.subst`" > ./GDBvn.new
        if [ -n "$(PKGVERSION)" ]; then \
          echo "@set VERSION_PACKAGE $(PKGVERSION)" >> ./GDBvn.new; \
        fi
@@ -311,8 +423,18 @@ GDBvn.texi : ${gdbdir}/version.in
        if test -z "$(READLINE_TEXI_INCFLAG)"; then \
          echo "@set SYSTEM_READLINE" >> ./GDBvn.new; \
        fi
+       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)/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)/version.in > version.subst
+
 # Updated atomically
 .PRECIOUS: GDBvn.texi
 
@@ -365,7 +487,7 @@ gdb.pdf: ${GDB_DOC_FILES}
 
 # GDB MANUAL: info file
 gdb.info: ${GDB_DOC_FILES}
-       $(MAKEINFO) $(READLINE_TEXI_INCFLAG) -I ${GDBMI_DIR} -I $(srcdir) \
+       $(MAKEINFO_CMD) $(READLINE_TEXI_INCFLAG) -I ${GDBMI_DIR} -I $(srcdir) \
                -o gdb.info $(srcdir)/gdb.texinfo
 
 # GDB MANUAL: roff translations
@@ -443,36 +565,8 @@ gdb.mm: $(GDB_DOC_FILES) links2roff
 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) -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) -I $(srcdir) -o stabs.info $(srcdir)/stabs.texinfo
+       $(MAKEINFO_CMD) -I $(srcdir) -o stabs.info $(srcdir)/stabs.texinfo
 
 # STABS DOCUMENTATION: HTML file
 
@@ -516,11 +610,47 @@ annotate.pdf: $(ANNOTATE_DOC_FILES)
        $(TEXI2DVI) --pdf -I $(srcdir) $(srcdir)/annotate.texinfo
 
 annotate.info: $(ANNOTATE_DOC_FILES)
-       $(MAKEINFO -I $(srcdir) -o annotate.info $(srcdir)/annotate.texinfo
+       $(MAKEINFO_CMD) -I $(srcdir) -o annotate.info $(srcdir)/annotate.texinfo
 
 annotate/index.html: $(ANNOTATE_DOC_FILES)
        $(MAKEHTML) $(MAKEHTMLFLAGS) -I $(srcdir) $(srcdir)/annotate.texinfo
 
+# Man pages
+gdb.1: $(GDB_DOC_FILES)
+       touch $@
+       -$(TEXI2POD) $(MANCONF) -Dgdb < $(srcdir)/gdb.texinfo > gdb.pod
+       -($(POD2MAN1) gdb.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+               mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+       rm -f gdb.pod
+
+gdbserver.1: $(GDB_DOC_FILES)
+       touch $@
+       -$(TEXI2POD) $(MANCONF) -Dgdbserver < $(srcdir)/gdb.texinfo > gdbserver.pod
+       -($(POD2MAN1) gdbserver.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+               mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+       rm -f gdbserver.pod
+
+gcore.1: $(GDB_DOC_FILES)
+       touch $@
+       -$(TEXI2POD) $(MANCONF) -Dgcore < $(srcdir)/gdb.texinfo > gcore.pod
+       -($(POD2MAN1) gcore.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+               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
+       -($(POD2MAN5) gdbinit.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+               mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+       rm -f gdbinit.pod
+
 force:
 
 Makefile: Makefile.in $(host_makefile_frag) ../config.status
@@ -533,10 +663,10 @@ Makefile: Makefile.in $(host_makefile_frag) ../config.status
 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
+       rm -f version.subst
 
 clean: mostlyclean
        rm -f gdb-cfg.texi GDBvn.texi
@@ -549,8 +679,11 @@ distclean: clean
 # "clean" or "distclean".  Use maintainer-clean to remove them.
 
 maintainer-clean realclean: distclean
-       rm -f GDBvn.texi *.info* *.dvi *.ps *.html *.pdf
+       rm -f GDBvn.texi *.info* *.dvi *.ps *.html *.pdf $(MANS)
+
+install: install-info install-man
 
-install: install-info
+uninstall: uninstall-info uninstall-man
 
-uninstall: uninstall-info
+# Disable implicit make rules.
+include $(srcdir)/../disable-implicit-rules.mk
This page took 0.031214 seconds and 4 git commands to generate.