LogoopenSUSE Build Service > Projects
Sign Up | Log In

View File gcc44-rename-info-files.patch of Package gcc48 (Project devel:gcc)

#! /bin/sh -e

# DP: Allow transformations on info file names. Reference the
# DP: transformed info file names in the texinfo files.

dir=
if [ $# -eq 3 -a "$2" = '-d' ]; then
    pdir="-d $3"
    dir="$3/"
elif [ $# -ne 1 ]; then
    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
    exit 1
fi
case "$1" in
    -patch)
        patch $pdir -f --no-backup-if-mismatch -p0 < $0
        ;;
    -unpatch)
        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
        ;;
    *)
        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
        exit 1
esac
exit 0


gcc/ChangeLog:

2004-02-17  Matthias Klose  <doko@debian.org>

	* Makefile.in: Allow transformations on info file names.
	Define MAKEINFODEFS, macros to pass transformated info file
	names to makeinfo.
	* doc/cpp.texi: Use macros defined in MAKEINFODEFS for references.
	* doc/cppinternals.texi: Likewise.
	* doc/extend.texi: Likewise.
	* doc/gcc.texi: Likewise.
	* doc/gccint.texi: Likewise.
	* doc/invoke.texi: Likewise.
	* doc/libgcc.texi: Likewise.
	* doc/makefile.texi: Likewise.
	* doc/passes.texi: Likewise.
	* doc/sourcebuild.texi: Likewise.
	* doc/standards.texi: Likewise.
	* doc/trouble.texi: Likewise.

gcc/fortran/ChangeLog:
	* Make-lang.in: Allow transformations on info file names.
	Pass macros of transformated info file defined in MAKEINFODEFS
	names to makeinfo.
	* gfortran.texi: Use macros defined in MAKEINFODEFS for references.

gcc/java/ChangeLog:
	* Make-lang.in: Allow transformations on info file names.
	Pass macros of transformated info file defined in MAKEINFODEFS
	names to makeinfo.
	* gcj.texi: Use macros defined in MAKEINFODEFS for references.


---
 gcc/Makefile.in           |   74 ++++++++++++++++++++++++++++++++++++----------
 gcc/ada/gnat-style.texi   |    2 -
 gcc/ada/gnat_rm.texi      |    2 -
 gcc/ada/gnat_ugn.texi     |    2 -
 gcc/doc/cpp.texi          |    2 -
 gcc/doc/cppinternals.texi |    2 -
 gcc/doc/extend.texi       |    2 -
 gcc/doc/gcc.texi          |    8 ++--
 gcc/doc/gccint.texi       |    4 +-
 gcc/doc/install.texi      |    2 -
 gcc/doc/invoke.texi       |   10 +++---
 gcc/doc/libgcc.texi       |    2 -
 gcc/doc/makefile.texi     |    2 -
 gcc/doc/passes.texi       |    2 -
 gcc/doc/standards.texi    |    4 +-
 gcc/fortran/Make-lang.in  |   11 +++---
 gcc/fortran/gfortran.texi |    2 -
 gcc/java/Make-lang.in     |   19 +++++++++--
 gcc/java/gcj.texi         |   20 ++++++------
 libgomp/Makefile.am       |   13 ++++----
 libgomp/Makefile.in       |   14 ++++----
 libgomp/libgomp.texi      |    2 -
 22 files changed, 131 insertions(+), 70 deletions(-)

Index: gcc/Makefile.in
===================================================================
--- gcc/Makefile.in.orig	2014-01-09 10:08:11.204211248 +0100
+++ gcc/Makefile.in	2014-01-09 10:08:11.248211244 +0100
@@ -4269,8 +4269,27 @@ install-no-fixedincludes:
 
 doc: $(BUILD_INFO) $(GENERATED_MANPAGES)
 
-INFOFILES = doc/cpp.info doc/gcc.info doc/gccint.info \
-            doc/gccinstall.info doc/cppinternals.info
+INFO_CPP_NAME = $(shell echo cpp|sed '$(program_transform_name)')
+INFO_GCC_NAME = $(shell echo gcc|sed '$(program_transform_name)')
+INFO_GXX_NAME = $(shell echo g++|sed '$(program_transform_name)')
+INFO_GCCINT_NAME = $(shell echo gccint|sed '$(program_transform_name)')
+INFO_GCCINSTALL_NAME = $(shell echo gccinstall|sed '$(program_transform_name)')
+INFO_CPPINT_NAME = $(shell echo cppinternals|sed '$(program_transform_name)')
+
+INFO_FORTRAN_NAME = $(shell echo gfortran|sed '$(program_transform_name)')
+INFO_GCJ_NAME = $(shell echo gcj|sed '$(program_transform_name)')
+
+INFOFILES = doc/$(INFO_CPP_NAME).info doc/$(INFO_GCC_NAME).info \
+            doc/$(INFO_GCCINT_NAME).info \
+            doc/$(INFO_GCCINSTALL_NAME).info doc/$(INFO_CPPINT_NAME).info
+
+MAKEINFODEFS = -D 'fncpp $(INFO_CPP_NAME)' -D 'fngcc $(INFO_GCC_NAME)' \
+               -D 'fngxx $(INFO_GXX_NAME)' \
+               -D 'fngccint $(INFO_GCCINT_NAME)' \
+               -D 'fngccinstall $(INFO_GCCINSTALL_NAME)' \
+               -D 'fncppint $(INFO_CPPINT_NAME)' \
+               -D 'fngfortran $(INFO_FORTRAN_NAME)' \
+               -D 'fngcj $(INFO_GCJ_NAME)'
 
 info: $(INFOFILES) lang.info @GENINSRC@ srcinfo lang.srcinfo
 
@@ -4324,21 +4343,41 @@ gcc-vers.texi: $(BASEVER) $(DEVPHASE)
 # patterns.  To use them, put each of the specific targets with its
 # specific dependencies but no build commands.
 
-doc/cpp.info: $(TEXI_CPP_FILES)
-doc/gcc.info: $(TEXI_GCC_FILES)
-doc/gccint.info: $(TEXI_GCCINT_FILES)
-doc/cppinternals.info: $(TEXI_CPPINT_FILES)
-
+# Generic entry to handle info files, which are not renamed (currently Ada)
 doc/%.info: %.texi
 	if [ x$(BUILD_INFO) = xinfo ]; then \
 		$(MAKEINFO) $(MAKEINFOFLAGS) -I . -I $(gcc_docdir) \
 			-I $(gcc_docdir)/include -o $@ $<; \
 	fi
 
+doc/$(INFO_CPP_NAME).info: $(TEXI_CPP_FILES)
+	if [ x$(BUILD_INFO) = xinfo ]; then \
+		$(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) -I $(gcc_docdir) \
+			-I $(gcc_docdir)/include -o $@ $<; \
+	fi
+
+doc/$(INFO_GCC_NAME).info: $(TEXI_GCC_FILES)
+	if [ x$(BUILD_INFO) = xinfo ]; then \
+		$(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) -I $(gcc_docdir) \
+			-I $(gcc_docdir)/include -o $@ $<; \
+	fi
+
+doc/$(INFO_GCCINT_NAME).info: $(TEXI_GCCINT_FILES)
+	if [ x$(BUILD_INFO) = xinfo ]; then \
+		$(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) -I $(gcc_docdir) \
+			-I $(gcc_docdir)/include -o $@ $<; \
+	fi
+
+doc/$(INFO_CPPINT_NAME).info: $(TEXI_CPPINT_FILES)
+	if [ x$(BUILD_INFO) = xinfo ]; then \
+		$(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) -I $(gcc_docdir) \
+			-I $(gcc_docdir)/include -o $@ $<; \
+	fi
+
 # Duplicate entry to handle renaming of gccinstall.info
-doc/gccinstall.info: $(TEXI_GCCINSTALL_FILES)
+doc/$(INFO_GCCINSTALL_NAME).info: $(TEXI_GCCINSTALL_FILES)
 	if [ x$(BUILD_INFO) = xinfo ]; then \
-		$(MAKEINFO) $(MAKEINFOFLAGS) -I $(gcc_docdir) \
+		$(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) -I $(gcc_docdir) \
 			-I $(gcc_docdir)/include -o $@ $<; \
 	fi
 
@@ -4704,11 +4743,11 @@ install-driver: installdirs xgcc$(exeext
 # $(INSTALL_DATA) might be a relative pathname, so we can't cd into srcdir
 # to do the install.
 install-info:: doc installdirs \
-	$(DESTDIR)$(infodir)/cpp.info \
-	$(DESTDIR)$(infodir)/gcc.info \
-	$(DESTDIR)$(infodir)/cppinternals.info \
-	$(DESTDIR)$(infodir)/gccinstall.info \
-	$(DESTDIR)$(infodir)/gccint.info \
+	$(DESTDIR)$(infodir)/$(INFO_CPP_NAME).info \
+	$(DESTDIR)$(infodir)/$(INFO_GCC_NAME).info \
+	$(DESTDIR)$(infodir)/$(INFO_CPPINT_NAME).info \
+	$(DESTDIR)$(infodir)/$(INFO_GCCINSTALL_NAME).info \
+	$(DESTDIR)$(infodir)/$(INFO_GCCINT_NAME).info \
 	lang.install-info
 
 $(DESTDIR)$(infodir)/%.info: doc/%.info installdirs
@@ -4915,8 +4954,11 @@ uninstall: lang.uninstall
 	-rm -rf $(DESTDIR)$(bindir)/$(GCOV_INSTALL_NAME)$(exeext)
 	-rm -rf $(DESTDIR)$(man1dir)/$(GCC_INSTALL_NAME)$(man1ext)
 	-rm -rf $(DESTDIR)$(man1dir)/cpp$(man1ext)
-	-rm -f $(DESTDIR)$(infodir)/cpp.info* $(DESTDIR)$(infodir)/gcc.info*
-	-rm -f $(DESTDIR)$(infodir)/cppinternals.info* $(DESTDIR)$(infodir)/gccint.info*
+	-rm -f $(DESTDIR)$(infodir)/$(INFO_CPP_NAME).info*
+	-rm -f $(DESTDIR)$(infodir)/$(INFO_GCC_NAME).info*
+	-rm -f $(DESTDIR)$(infodir)/$(INFO_CPPINT_NAME).info*
+	-rm -f $(DESTDIR)$(infodir)/$(INFO_GCCINT_NAME).info*
+	-rm -f $(DESTDIR)$(infodir)/$(INFO_GCCINSTALL_NAME).info*
 	for i in ar nm ranlib ; do \
 	  install_name=`echo gcc-$$i|sed '$(program_transform_name)'`$(exeext) ;\
 	  target_install_name=$(target_noncanonical)-`echo gcc-$$i|sed '$(program_transform_name)'`$(exeext) ; \
Index: gcc/ada/gnat-style.texi
===================================================================
--- gcc/ada/gnat-style.texi.orig	2013-03-18 09:47:52.275730442 +0100
+++ gcc/ada/gnat-style.texi	2014-01-09 10:08:11.248211244 +0100
@@ -31,7 +31,7 @@ Texts.  A copy of the license is include
 
 @dircategory Software development
 @direntry
-* gnat-style: (gnat-style).      GNAT Coding Style
+* gnat-style: (gnat-style-4.8).      GNAT Coding Style
 @end direntry
 
 @macro syntax{element}
Index: gcc/ada/gnat_rm.texi
===================================================================
--- gcc/ada/gnat_rm.texi.orig	2013-03-18 09:47:52.283730528 +0100
+++ gcc/ada/gnat_rm.texi	2014-01-09 10:08:11.250211244 +0100
@@ -38,7 +38,7 @@ included in the section entitled ``GNU F
 
 @dircategory GNU Ada tools
 @direntry
-* GNAT Reference Manual: (gnat_rm).  Reference Manual for GNU Ada tools.
+* GNAT Reference Manual: (gnat_rm-4.8).  Reference Manual for GNU Ada tools.
 @end direntry
 
 @titlepage
Index: gcc/ada/gnat_ugn.texi
===================================================================
--- gcc/ada/gnat_ugn.texi.orig	2013-03-18 09:47:52.433732150 +0100
+++ gcc/ada/gnat_ugn.texi	2014-01-09 10:08:11.254211244 +0100
@@ -120,7 +120,7 @@ Texts.  A copy of the license is include
 @settitle @value{EDITION} User's Guide @value{TITLESUFFIX}
 @dircategory GNU Ada tools
 @direntry
-* @value{EDITION} User's Guide: (gnat_ugn). @value{PLATFORM}
+* @value{EDITION} User's Guide: (gnat_ugn-4.8). @value{PLATFORM}
 @end direntry
 
 @include gcc-common.texi
Index: gcc/doc/cpp.texi
===================================================================
--- gcc/doc/cpp.texi.orig	2013-09-10 15:12:27.610025632 +0200
+++ gcc/doc/cpp.texi	2014-01-09 10:08:11.255211244 +0100
@@ -50,7 +50,7 @@ This manual contains no Invariant Sectio
 @ifinfo
 @dircategory Software development
 @direntry
-* Cpp: (cpp).                  The GNU C preprocessor.
+* @value{fncpp}: (@value{fncpp}).                    The GNU C preprocessor.
 @end direntry
 @end ifinfo
 
Index: gcc/doc/cppinternals.texi
===================================================================
--- gcc/doc/cppinternals.texi.orig	2013-03-18 09:43:24.610834421 +0100
+++ gcc/doc/cppinternals.texi	2014-01-09 10:08:11.255211244 +0100
@@ -7,7 +7,7 @@
 @ifinfo
 @dircategory Software development
 @direntry
-* Cpplib: (cppinternals).      Cpplib internals.
+* @value{fncppint}: (@value{fncppint}).      Cpplib internals.
 @end direntry
 @end ifinfo
 
Index: gcc/doc/extend.texi
===================================================================
--- gcc/doc/extend.texi.orig	2013-10-15 10:04:20.895350728 +0200
+++ gcc/doc/extend.texi	2014-01-09 10:08:12.017211192 +0100
@@ -15450,7 +15450,7 @@ want to write code that checks whether t
 test for the GNU compiler the same way as for C programs: check for a
 predefined macro @code{__GNUC__}.  You can also use @code{__GNUG__} to
 test specifically for GNU C++ (@pxref{Common Predefined Macros,,
-Predefined Macros,cpp,The GNU C Preprocessor}).
+Predefined Macros,@value{fncpp},The GNU C Preprocessor}).
 
 @menu
 * C++ Volatiles::       What constitutes an access to a volatile object.
Index: gcc/doc/gcc.texi
===================================================================
--- gcc/doc/gcc.texi.orig	2013-03-18 09:43:24.609834410 +0100
+++ gcc/doc/gcc.texi	2014-01-09 10:08:11.257211244 +0100
@@ -63,9 +63,9 @@ Texts being (a) (see below), and with th
 @ifnottex
 @dircategory Software development
 @direntry
-* gcc: (gcc).                  The GNU Compiler Collection.
-* g++: (gcc).                  The GNU C++ compiler.
-* gcov: (gcc) Gcov.            @command{gcov}---a test coverage program.
+* @value{fngcc}: (@value{fngcc}).                  The GNU Compiler Collection.
+* @value{fngxx}: (@value{fngxx}).                  The GNU C++ compiler.
+* gcov: (@value{fngcc}) Gcov.            @command{gcov}---a test coverage program.
 @end direntry
 This file documents the use of the GNU compilers.
 @sp 1
@@ -125,7 +125,7 @@ version @value{version-GCC}.
 The internals of the GNU compilers, including how to port them to new
 targets and some information about how to write front ends for new
 languages, are documented in a separate manual.  @xref{Top,,
-Introduction, gccint, GNU Compiler Collection (GCC) Internals}.
+Introduction, @value{fngccint}, GNU Compiler Collection (GCC) Internals}.
 
 @menu
 * G++ and GCC::     You can compile C or C++ programs.
Index: gcc/doc/gccint.texi
===================================================================
--- gcc/doc/gccint.texi.orig	2013-03-18 09:43:24.611834432 +0100
+++ gcc/doc/gccint.texi	2014-01-09 10:08:11.257211244 +0100
@@ -49,7 +49,7 @@ Texts being (a) (see below), and with th
 @ifnottex
 @dircategory Software development
 @direntry
-* gccint: (gccint).            Internals of the GNU Compiler Collection.
+* @value{fngccint}: (@value{fngccint}).            Internals of the GNU Compiler Collection.
 @end direntry
 This file documents the internals of the GNU compilers.
 @sp 1
@@ -81,7 +81,7 @@ write front ends for new languages.  It
 @value{VERSION_PACKAGE}
 @end ifset
 version @value{version-GCC}.  The use of the GNU compilers is documented in a
-separate manual.  @xref{Top,, Introduction, gcc, Using the GNU
+separate manual.  @xref{Top,, Introduction, @value{fngcc}, Using the GNU
 Compiler Collection (GCC)}.
 
 This manual is mainly a reference manual rather than a tutorial.  It
Index: gcc/doc/install.texi
===================================================================
--- gcc/doc/install.texi.orig	2013-03-18 09:43:26.479854648 +0100
+++ gcc/doc/install.texi	2014-01-09 10:08:11.258211244 +0100
@@ -94,7 +94,7 @@ Free Documentation License}''.
 @end ifinfo
 @dircategory Software development
 @direntry
-* gccinstall: (gccinstall).    Installing the GNU Compiler Collection.
+* @value{fngccinstall}: (@value{fngccinstall}).    Installing the GNU Compiler Collection.
 @end direntry
 
 @c Part 3 Titlepage and Copyright
Index: gcc/doc/invoke.texi
===================================================================
--- gcc/doc/invoke.texi.orig	2013-12-02 14:12:04.760775164 +0100
+++ gcc/doc/invoke.texi	2014-01-09 10:08:12.025211191 +0100
@@ -6677,7 +6677,7 @@ the standard calling sequence automatica
 and nothing is saved by pretending it doesn't exist.  The
 machine-description macro @code{FRAME_POINTER_REQUIRED} controls
 whether a target machine supports this flag.  @xref{Registers,,Register
-Usage, gccint, GNU Compiler Collection (GCC) Internals}.
+Usage, @value{fngccint}, GNU Compiler Collection (GCC) Internals}.
 
 Starting with GCC version 4.6, the default setting (when not optimizing for
 size) for 32-bit GNU/Linux x86 and 32-bit Darwin x86 targets has been changed to
@@ -9886,7 +9886,7 @@ One of the standard libraries bypassed b
 @option{-nodefaultlibs} is @file{libgcc.a}, a library of internal subroutines
 which GCC uses to overcome shortcomings of particular machines, or special
 needs for some languages.
-(@xref{Interface,,Interfacing to GCC Output,gccint,GNU Compiler
+(@xref{Interface,,Interfacing to GCC Output,@value{fngccint},GNU Compiler
 Collection (GCC) Internals},
 for more discussion of @file{libgcc.a}.)
 In most cases, you need @file{libgcc.a} even when you want to avoid
@@ -9895,7 +9895,7 @@ or @option{-nodefaultlibs} you should us
 This ensures that you have no unresolved references to internal GCC
 library subroutines.
 (An example of such an internal subroutine is @samp{__main}, used to ensure C++
-constructors are called; @pxref{Collect2,,@code{collect2}, gccint,
+constructors are called; @pxref{Collect2,,@code{collect2}, @value{fngccint},
 GNU Compiler Collection (GCC) Internals}.)
 
 @item -pie
@@ -20736,7 +20736,7 @@ Note that you can also specify places to
 @option{-B}, @option{-I} and @option{-L} (@pxref{Directory Options}).  These
 take precedence over places specified using environment variables, which
 in turn take precedence over those specified by the configuration of GCC@.
-@xref{Driver,, Controlling the Compilation Driver @file{gcc}, gccint,
+@xref{Driver,, Controlling the Compilation Driver @file{gcc}, @value{fngccint},
 GNU Compiler Collection (GCC) Internals}.
 
 @table @env
@@ -20896,7 +20896,7 @@ the headers it contains change.
 
 A precompiled header file is searched for when @code{#include} is
 seen in the compilation.  As it searches for the included file
-(@pxref{Search Path,,Search Path,cpp,The C Preprocessor}) the
+(@pxref{Search Path,,Search Path,@value{fncpp},The C Preprocessor}) the
 compiler looks for a precompiled header in each directory just before it
 looks for the include file in that directory.  The name searched for is
 the name specified in the @code{#include} with @samp{.gch} appended.  If
Index: gcc/doc/libgcc.texi
===================================================================
--- gcc/doc/libgcc.texi.orig	2013-03-18 09:43:26.472854572 +0100
+++ gcc/doc/libgcc.texi	2014-01-09 10:08:11.261211244 +0100
@@ -24,7 +24,7 @@ that needs them.
 GCC will also generate calls to C library routines, such as
 @code{memcpy} and @code{memset}, in some cases.  The set of routines
 that GCC may possibly use is documented in @ref{Other
-Builtins,,,gcc, Using the GNU Compiler Collection (GCC)}.
+Builtins,,,@value{fngcc}, Using the GNU Compiler Collection (GCC)}.
 
 These routines take arguments and return values of a specific machine
 mode, not a specific C type.  @xref{Machine Modes}, for an explanation
Index: gcc/doc/makefile.texi
===================================================================
--- gcc/doc/makefile.texi.orig	2013-03-18 09:43:26.470854551 +0100
+++ gcc/doc/makefile.texi	2014-01-09 10:08:11.261211244 +0100
@@ -139,7 +139,7 @@ regardless of how it itself was compiled
 Builds a compiler with profiling feedback information.  In this case,
 the second and third stages are named @samp{profile} and @samp{feedback},
 respectively.  For more information, see
-@ref{Building,,Building with profile feedback,gccinstall,Installing GCC}.
+@ref{Building,,Building with profile feedback,@value{fngccinstall},Installing GCC}.
 
 @item restrap
 Restart a bootstrap, so that everything that was not built with
Index: gcc/doc/passes.texi
===================================================================
--- gcc/doc/passes.texi.orig	2013-03-18 09:43:24.609834410 +0100
+++ gcc/doc/passes.texi	2014-01-09 10:08:11.262211244 +0100
@@ -197,7 +197,7 @@ rid of it.  This pass is located in @fil
 @item Mudflap declaration registration
 
 If mudflap (@pxref{Optimize Options,,-fmudflap -fmudflapth
--fmudflapir,gcc,Using the GNU Compiler Collection (GCC)}) is
+-fmudflapir,@value{fngcc},Using the GNU Compiler Collection (GCC)}) is
 enabled, we generate code to register some variable declarations with
 the mudflap runtime.  Specifically, the runtime tracks the lifetimes of
 those variable declarations that have their addresses taken, or whose
Index: gcc/doc/standards.texi
===================================================================
--- gcc/doc/standards.texi.orig	2013-06-05 11:00:43.701771356 +0200
+++ gcc/doc/standards.texi	2014-01-09 10:08:11.262211244 +0100
@@ -289,8 +289,8 @@ described at @uref{http://golang.org/doc
 GNAT Reference Manual}, for information on standard
 conformance and compatibility of the Ada compiler.
 
-@xref{Standards,,Standards, gfortran, The GNU Fortran Compiler}, for details
+@xref{Standards,,Standards, @value{fngfortran}, The GNU Fortran Compiler}, for details
 of standards supported by GNU Fortran.
 
-@xref{Compatibility,,Compatibility with the Java Platform, gcj, GNU gcj},
+@xref{Compatibility,,Compatibility with the Java Platform, @value{fngcj}, GNU gcj},
 for details of compatibility between @command{gcj} and the Java Platform.
Index: gcc/fortran/Make-lang.in
===================================================================
--- gcc/fortran/Make-lang.in.orig	2013-03-18 09:48:20.345034062 +0100
+++ gcc/fortran/Make-lang.in	2014-01-09 10:08:11.262211244 +0100
@@ -117,7 +117,8 @@ fortran.tags: force
 	cd $(srcdir)/fortran; etags -o TAGS.sub *.c *.h; \
 	etags --include TAGS.sub --include ../TAGS.sub
 
-fortran.info: doc/gfortran.info doc/gfc-internals.info
+INFO_FORTRAN_NAME = $(shell echo gfortran|sed '$(program_transform_name)')
+fortran.info: doc/$(INFO_FORTRAN_NAME).info
 fortran.dvi: doc/gfortran.dvi doc/gfc-internals.dvi
 
 F95_HTMLFILES = $(build_htmldir)/gfortran
@@ -189,10 +190,10 @@ GFORTRAN_TEXI = \
   $(srcdir)/doc/include/gcc-common.texi \
   gcc-vers.texi
 
-doc/gfortran.info: $(GFORTRAN_TEXI)
+doc/$(INFO_FORTRAN_NAME).info: $(GFORTRAN_TEXI)
 	if [ x$(BUILD_INFO) = xinfo ]; then \
 	  rm -f doc/gfortran.info-*; \
-	  $(MAKEINFO) -I $(srcdir)/doc/include -I $(srcdir)/fortran \
+	  $(MAKEINFO) $(MAKEINFODEFS) -I $(srcdir)/doc/include -I $(srcdir)/fortran \
 	    -o $@ $<; \
 	else true; fi
 
@@ -260,7 +261,7 @@ fortran.install-common: install-finclude
 
 fortran.install-plugin:
 
-fortran.install-info: $(DESTDIR)$(infodir)/gfortran.info
+fortran.install-info: $(DESTDIR)$(infodir)/$(INFO_FORTRAN_NAME).info
 
 fortran.install-man: $(DESTDIR)$(man1dir)/$(GFORTRAN_INSTALL_NAME)$(man1ext)
 
@@ -278,7 +279,7 @@ fortran.uninstall:
 	rm -rf $(DESTDIR)$(bindir)/$(GFORTRAN_INSTALL_NAME)$(exeext); \
 	rm -rf $(DESTDIR)$(man1dir)/$(GFORTRAN_INSTALL_NAME)$(man1ext); \
 	rm -rf $(DESTDIR)$(bindir)/$(GFORTRAN_TARGET_INSTALL_NAME)$(exeext); \
-	rm -rf $(DESTDIR)$(infodir)/gfortran.info*
+	rm -rf $(DESTDIR)$(infodir)/$(INFO_FORTRAN_NAME).info*
 
 #
 # Clean hooks:
Index: gcc/fortran/gfortran.texi
===================================================================
--- gcc/fortran/gfortran.texi.orig	2013-03-18 09:48:20.343034040 +0100
+++ gcc/fortran/gfortran.texi	2014-01-09 10:08:11.263211243 +0100
@@ -101,7 +101,7 @@ Texts being (a) (see below), and with th
 @ifinfo
 @dircategory Software development
 @direntry
-* gfortran: (gfortran).                  The GNU Fortran Compiler.
+* @value{fngfortran}: (@value{fngfortran}).                  The GNU Fortran Compiler.
 @end direntry
 This file documents the use and the internals of
 the GNU Fortran compiler, (@command{gfortran}).
Index: gcc/java/Make-lang.in
===================================================================
--- gcc/java/Make-lang.in.orig	2013-03-18 09:43:32.801923065 +0100
+++ gcc/java/Make-lang.in	2014-01-09 10:08:11.263211243 +0100
@@ -126,11 +126,23 @@ java.tags: force
 	etags --include TAGS.sub --include ../TAGS.sub
 
 
-java.info: doc/gcj.info
+TEXI_GCJ_FILES = java/gcj.texi \
+		 $(gcc_docdir)/include/gpl_v3.texi $(gcc_docdir)/include/funding.texi \
+		 $(gcc_docdir)/include/fdl.texi $(gcc_docdir)/include/gcc-common.texi gcc-vers.texi
+INFO_GCJ_NAME = $(shell echo gcj|sed '$(program_transform_name)')
 
-java.srcinfo: doc/gcj.info
+java.info: doc/$(INFO_GCJ_NAME).info
+
+java.srcinfo: doc/$(INFO_GCJ_NAME).info
 	-cp -p $^ $(srcdir)/doc
 
+doc/$(INFO_GCJ_NAME).info: $(TEXI_GCJ_FILES)
+	if test "x$(BUILD_INFO)" = xinfo; then \
+	  rm -f $(@)*; \
+	  $(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) \
+	    -I$(gcc_docdir)/include -I$(srcdir)/f -o$@ $<; \
+	fi
+
 java.dvi: doc/gcj.dvi
 
 JAVA_PDFFILES = doc/gcj.pdf
@@ -193,8 +205,9 @@ java.uninstall:
 	-rm -rf $(DESTDIR)$(man1dir)/gcj-dbtool$(man1ext)
 	-rm -rf $(DESTDIR)$(man1dir)/aot-compile$(man1ext)
 	-rm -rf $(DESTDIR)$(man1dir)/rebuild-gcj-db$(man1ext)
+	-rm -f $(DESTDIR)$(infodir)/$(INFO_GCJ_NAME).info*
 
-java.install-info: $(DESTDIR)$(infodir)/gcj.info
+java.install-info: $(DESTDIR)$(infodir)/$(INFO_GCJ_NAME).info
 
 java.install-pdf: $(JAVA_PDFFILES)
 	@$(NORMAL_INSTALL)
Index: gcc/java/gcj.texi
===================================================================
--- gcc/java/gcj.texi.orig	2013-06-05 11:00:44.112776283 +0200
+++ gcc/java/gcj.texi	2014-01-09 10:08:11.264211243 +0100
@@ -55,25 +55,25 @@ man page gfdl(7).
 @format
 @dircategory Software development
 @direntry
-* Gcj: (gcj).               Ahead-of-time compiler for the Java language
+* @value{fngcj}: (@value{fngcj}).               Ahead-of-time compiler for the Java language
 @end direntry
 
 @dircategory Individual utilities
 @direntry
-* jcf-dump: (gcj)Invoking jcf-dump.
+* jcf-dump: (@value{fngcj}) Invoking jcf-dump.
                             Print information about Java class files
-* gij: (gcj)Invoking gij.   GNU interpreter for Java bytecode
-* gcj-dbtool: (gcj)Invoking gcj-dbtool.
+* gij: (@value{fngcj}) Invoking gij.   GNU interpreter for Java bytecode
+* gcj-dbtool: (@value{fngcj}) Invoking gcj-dbtool.
                             Tool for manipulating class file databases.
-* jv-convert: (gcj)Invoking jv-convert.
+* jv-convert: (@value{fngcj}) Invoking jv-convert.
                             Convert file from one encoding to another
-* grmic: (gcj)Invoking grmic.
+* grmic: (@value{fngcj}) Invoking grmic.
                             Generate stubs for Remote Method Invocation.
-* gc-analyze: (gcj)Invoking gc-analyze.
+* gc-analyze: (@value{fngcj}) Invoking gc-analyze.
                             Analyze Garbage Collector (GC) memory dumps.
-* aot-compile: (gcj)Invoking aot-compile.
+* aot-compile: (@value{fngcj})Invoking aot-compile.
                             Compile bytecode to native and generate databases.
-* rebuild-gcj-db: (gcj)Invoking rebuild-gcj-db.
+* rebuild-gcj-db: (@value{fngcj})Invoking rebuild-gcj-db.
                             Merge the per-solib databases made by aot-compile
                             into one system-wide database.
 @end direntry
@@ -159,7 +159,7 @@ and the Info entries for @file{gcj} and
 
 As @command{gcj} is just another front end to @command{gcc}, it supports many
 of the same options as gcc.  @xref{Option Summary, , Option Summary,
-gcc, Using the GNU Compiler Collection (GCC)}.  This manual only documents the
+@value{fngcc}, Using the GNU Compiler Collection (GCC)}.  This manual only documents the
 options specific to @command{gcj}.
 
 @c man end
Index: libffi/Makefile.am
===================================================================
--- libffi/Makefile.am.orig	2013-03-18 09:50:37.648519035 +0100
+++ libffi/Makefile.am	2014-01-09 10:08:12.063211188 +0100
@@ -50,6 +50,8 @@ TEXINFO_TEX   = ../gcc/doc/include/texin
 # Defines info, dvi, pdf and html targets
 MAKEINFOFLAGS = -I $(srcdir)/../gcc/doc/include
 info_TEXINFOS = doc/libffi.texi
+INFO_LIBFFI_NAME = $(shell echo libffi | sed '${program_transform_name}')
+INFO_DEPS = doc/$(INFO_LIBFFI_NAME).info
 
 # AM_CONDITIONAL on configure option --generated-files-in-srcdir
 if GENINSRC
@@ -67,18 +69,19 @@ endif
 
 all-local: $(STAMP_GENINSRC)
 
-stamp-geninsrc: doc/libffi.info
-	cp -p $(top_builddir)/doc/libffi.info $(srcdir)/doc/libffi.info
+$(srcdir)/doc/libffi.info: stamp-geninsrc
+stamp-geninsrc: doc/$(INFO_LIBFFI_NAME).info
+	cp -p $(top_builddir)/doc/$(INFO_LIBFFI_NAME).info $(srcdir)/doc/libffi.info
 	@touch $@
 
-doc/libffi.info: $(STAMP_BUILD_INFO)
+doc/$(INFO_LIBFFI_NAME).info: $(STAMP_BUILD_INFO)
 
 stamp-build-info: doc/libffi.texi $(srcdir)/doc/version.texi doc/$(am__dirstamp)
-	$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)/doc -o doc/libffi.info $(srcdir)/doc/libffi.texi
+	$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -D 'fnlibffi $(INFO_LIBFFI_NAME)' -I $(srcdir)/doc -o doc/$(INFO_LIBFFI_NAME).info $(srcdir)/doc/libffi.texi
 	@touch $@
 
 
-CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) doc/libffi.info
+CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) doc/$(INFO_LIBFFI_NAME).info
 MAINTAINERCLEANFILES = $(srcdir)/doc/libffi.info
 
 ## ################################################################
Index: libffi/Makefile.in
===================================================================
--- libffi/Makefile.in.orig	2013-06-05 11:01:56.781647128 +0200
+++ libffi/Makefile.in	2014-01-09 10:08:12.064211188 +0100
@@ -220,7 +220,6 @@ MULTIDIRS =
 MULTISUBDIR = 
 MULTIDO = true
 MULTICLEAN = true
-INFO_DEPS = doc/libffi.info
 am__TEXINFO_TEX_DIR = $(srcdir)/../gcc/doc/include
 DVIS = doc/libffi.dvi
 PDFS = doc/libffi.pdf
@@ -423,6 +422,8 @@ TEXINFO_TEX = ../gcc/doc/include/texinfo
 # Defines info, dvi, pdf and html targets
 MAKEINFOFLAGS = -I $(srcdir)/../gcc/doc/include
 info_TEXINFOS = doc/libffi.texi
+INFO_LIBFFI_NAME = $(shell echo libffi | sed '${program_transform_name}')
+INFO_DEPS = doc/$(INFO_LIBFFI_NAME).info
 @GENINSRC_FALSE@STAMP_GENINSRC = 
 
 # AM_CONDITIONAL on configure option --generated-files-in-srcdir
@@ -431,7 +432,7 @@ info_TEXINFOS = doc/libffi.texi
 
 # AM_CONDITIONAL on configure check ACX_CHECK_PROG_VER([MAKEINFO])
 @BUILD_INFO_TRUE@STAMP_BUILD_INFO = stamp-build-info
-CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) doc/libffi.info
+CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) doc/$(INFO_LIBFFI_NAME).info
 MAINTAINERCLEANFILES = $(srcdir)/doc/libffi.info
 
 # Work around what appears to be a GNU make bug handling MAKEFLAGS
@@ -1667,14 +1668,15 @@ uninstall-am: uninstall-dvi-am uninstall
 
 all-local: $(STAMP_GENINSRC)
 
-stamp-geninsrc: doc/libffi.info
-	cp -p $(top_builddir)/doc/libffi.info $(srcdir)/doc/libffi.info
+$(srcdir)/doc/libffi.info: stamp-geninsrc
+stamp-geninsrc: doc/$(INFO_LIBFFI_NAME).info
+	cp -p $(top_builddir)/doc/$(INFO_LIBFFI_NAME).info $(srcdir)/doc/libffi.info
 	@touch $@
 
-doc/libffi.info: $(STAMP_BUILD_INFO)
+doc/$(INFO_LIBFFI_NAME).info: $(STAMP_BUILD_INFO)
 
 stamp-build-info: doc/libffi.texi $(srcdir)/doc/version.texi doc/$(am__dirstamp)
-	$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)/doc -o doc/libffi.info $(srcdir)/doc/libffi.texi
+	$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -D 'fnlibffi $(INFO_LIBFFI_NAME)' -I $(srcdir)/doc -o doc/$(INFO_LIBFFI_NAME).info $(srcdir)/doc/libffi.texi
 	@touch $@
 
 # Multilib support.  Automake should provide these on its own.
Index: libffi/doc/libffi.texi
===================================================================
--- libffi/doc/libffi.texi.orig	2013-03-18 09:50:37.644518991 +0100
+++ libffi/doc/libffi.texi	2014-01-09 10:08:12.062211188 +0100
@@ -33,7 +33,7 @@ section entitled ``GNU General Public Li
 
 @dircategory Development
 @direntry
-* libffi: (libffi).             Portable foreign-function interface library.
+* libffi: (@value{fnlibffi}).             Portable foreign-function interface library.
 @end direntry
 
 @titlepage
Index: libgomp/Makefile.am
===================================================================
--- libgomp/Makefile.am.orig	2013-03-18 09:39:45.765465547 +0100
+++ libgomp/Makefile.am	2014-01-09 10:08:11.265211243 +0100
@@ -111,16 +111,19 @@ endif
 
 all-local: $(STAMP_GENINSRC)
 
-stamp-geninsrc: libgomp.info
-	cp -p $(top_builddir)/libgomp.info $(srcdir)/libgomp.info
+INFO_LIBGOMP_NAME = $(shell echo libgomp|sed '$(program_transform_name)')
+stamp-geninsrc: $(INFO_LIBGOMP_NAME).info
+	cp -p $(top_builddir)/$(INFO_LIBGOMP_NAME).info $(srcdir)/libgomp.info
 	@touch $@
 
-libgomp.info: $(STAMP_BUILD_INFO)
+libgomp.info: $(INFO_LIBGOMP_NAME).info
+	cp $(INFO_LIBGOMP_NAME).info libgomp.info
+$(INFO_LIBGOMP_NAME).info: $(STAMP_BUILD_INFO)
 
 stamp-build-info: libgomp.texi
-	$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) -o libgomp.info $(srcdir)/libgomp.texi
+	$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -D 'fnlibgomp $(INFO_LIBGOMP_NAME)' -I $(srcdir) -o $(INFO_LIBGOMP_NAME).info $(srcdir)/libgomp.texi
 	@touch $@
 
 
-CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) libgomp.info
+CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) $(INFO_LIBGOMP_NAME).info
 MAINTAINERCLEANFILES = $(srcdir)/libgomp.info
Index: libgomp/Makefile.in
===================================================================
--- libgomp/Makefile.in.orig	2013-03-18 15:00:31.812900621 +0100
+++ libgomp/Makefile.in	2014-01-09 10:08:11.274211243 +0100
@@ -345,7 +345,8 @@ info_TEXINFOS = libgomp.texi
 
 # AM_CONDITIONAL on configure check ACX_CHECK_PROG_VER([MAKEINFO])
 @BUILD_INFO_TRUE@STAMP_BUILD_INFO = stamp-build-info
-CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) libgomp.info
+INFO_LIBGOMP_NAME = $(shell echo libgomp|sed '$(program_transform_name)')
+CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) $(INFO_LIBGOMP_NAME).info
 MAINTAINERCLEANFILES = $(srcdir)/libgomp.info
 all: config.h
 	$(MAKE) $(AM_MAKEFLAGS) all-recursive
@@ -1092,15 +1093,16 @@ env.lo: libgomp_f.h
 env.o: libgomp_f.h
 
 all-local: $(STAMP_GENINSRC)
-
-stamp-geninsrc: libgomp.info
-	cp -p $(top_builddir)/libgomp.info $(srcdir)/libgomp.info
+stamp-geninsrc: $(INFO_LIBGOMP_NAME).info
+	cp -p $(top_builddir)/$(INFO_LIBGOMP_NAME).info $(srcdir)/libgomp.info
 	@touch $@
 
-libgomp.info: $(STAMP_BUILD_INFO)
+libgomp.info: $(INFO_LIBGOMP_NAME).info
+	cp $(INFO_LIBGOMP_NAME).info libgomp.info
+$(INFO_LIBGOMP_NAME).info: $(STAMP_BUILD_INFO)
 
 stamp-build-info: libgomp.texi
-	$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) -o libgomp.info $(srcdir)/libgomp.texi
+	$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -D 'fnlibgomp $(INFO_LIBGOMP_NAME)' -I $(srcdir) -o $(INFO_LIBGOMP_NAME).info $(srcdir)/libgomp.texi
 	@touch $@
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
Index: libgomp/libgomp.texi
===================================================================
--- libgomp/libgomp.texi.orig	2013-03-18 09:39:45.482462492 +0100
+++ libgomp/libgomp.texi	2014-01-09 10:08:11.279211242 +0100
@@ -31,7 +31,7 @@ texts being (a) (see below), and with th
 @ifinfo
 @dircategory GNU Libraries
 @direntry
-* libgomp: (libgomp).                    GNU OpenMP runtime library
+* @value{fnlibgomp}: (@value{fnlibgomp}).                    GNU OpenMP runtime library
 @end direntry
 
 This manual documents the GNU implementation of the OpenMP API for 
Index: libitm/libitm.texi
===================================================================
--- libitm/libitm.texi.orig	2013-03-18 09:39:42.815433617 +0100
+++ libitm/libitm.texi	2014-01-09 10:08:11.289211242 +0100
@@ -20,7 +20,7 @@ Free Documentation License''.
 @ifinfo
 @dircategory GNU Libraries
 @direntry
-* libitm: (libitm).                    GNU Transactional Memory Library
+* libitm: (libitm-4.8).                    GNU Transactional Memory Library
 @end direntry
 
 This manual documents the GNU Transactional Memory Library.
Index: libquadmath/libquadmath.texi
===================================================================
--- libquadmath/libquadmath.texi.orig	2013-03-18 09:39:47.307482254 +0100
+++ libquadmath/libquadmath.texi	2014-01-09 10:08:11.298211241 +0100
@@ -25,7 +25,7 @@ copy and modify this GNU manual.
 @ifinfo
 @dircategory GNU Libraries
 @direntry
-* libquadmath: (libquadmath).                  GCC Quad-Precision Math Library
+* libquadmath: (libquadmath-4.8).                  GCC Quad-Precision Math Library
 @end direntry
 
 This manual documents the GCC Quad-Precision Math Library API.