# DP: Allow transformations on info file names. Reference the # DP: transformed info file names in the texinfo files. 2004-02-17 Matthias Klose gcc/ChangeLog: * 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 Index: b/src/gcc/fortran/gfortran.texi =================================================================== --- a/src/gcc/fortran/gfortran.texi +++ b/src/gcc/fortran/gfortran.texi @@ -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: b/src/gcc/fortran/Make-lang.in =================================================================== --- a/src/gcc/fortran/Make-lang.in +++ b/src/gcc/fortran/Make-lang.in @@ -114,7 +114,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 @@ -186,10 +187,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 @@ -252,7 +253,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) @@ -270,7 +271,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: b/src/gcc/Makefile.in =================================================================== --- a/src/gcc/Makefile.in +++ b/src/gcc/Makefile.in @@ -2781,8 +2781,31 @@ 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)') +INFO_GCCGO_NAME = $(shell echo gccgo|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 'fngcov $(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)' \ + -D 'fngccgo $(INFO_GCCGO_NAME)' info: $(INFOFILES) lang.info @GENINSRC@ srcinfo lang.srcinfo @@ -2829,7 +2852,19 @@ gcc-vers.texi: $(BASEVER) $(DEVPHASE) if [ -n "$(PKGVERSION)" ]; then \ echo "@set VERSION_PACKAGE $(PKGVERSION)" >> $@T; \ fi - echo "@set BUGURL $(BUGURL_TEXI)" >> $@T; \ + echo "@set BUGURL $(BUGURL_TEXI)" >> $@T + ( \ + echo '@set fncpp $(INFO_CPP_NAME)'; \ + echo '@set fngcc $(INFO_GCC_NAME)'; \ + echo '@set fngcov $(INFO_GCC_NAME)'; \ + echo '@set fngxx $(INFO_GXX_NAME)'; \ + echo '@set fngccint $(INFO_GCCINT_NAME)'; \ + echo '@set fngccinstall $(INFO_GCCINSTALL_NAME)'; \ + echo '@set fncppint $(INFO_CPPINT_NAME)'; \ + echo '@set fngfortran $(INFO_FORTRAN_NAME)'; \ + echo '@set fngcj $(INFO_GCJ_NAME)'; \ + echo '@set fngccgo $(INFO_GCCGO_NAME)'; \ + ) >> $@T mv -f $@T $@ @@ -2837,21 +2872,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 @@ -3229,11 +3284,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 @@ -3440,8 +3495,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: b/src/gcc/java/gcj.texi =================================================================== --- a/src/gcc/java/gcj.texi +++ b/src/gcc/java/gcj.texi @@ -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: b/src/gcc/java/Make-lang.in =================================================================== --- a/src/gcc/java/Make-lang.in +++ b/src/gcc/java/Make-lang.in @@ -122,9 +122,10 @@ java.tags: force etags --include TAGS.sub --include ../TAGS.sub -java.info: doc/gcj.info +INFO_GCJ_NAME = $(shell echo gcj|sed '$(program_transform_name)') +java.info: doc/$(INFO_GCJ_NAME).info -java.srcinfo: doc/gcj.info +java.srcinfo: doc/$(INFO_GCJ_NAME).info -cp -p $^ $(srcdir)/doc java.dvi: doc/gcj.dvi @@ -190,7 +191,7 @@ java.uninstall: -rm -rf $(DESTDIR)$(man1dir)/aot-compile$(man1ext) -rm -rf $(DESTDIR)$(man1dir)/rebuild-gcj-db$(man1ext) -java.install-info: $(DESTDIR)$(infodir)/gcj.info +java.install-info: $(DESTDIR)$(infodir)/$(INFO_GCJ_NAME).info java.install-pdf: $(JAVA_PDFFILES) @$(NORMAL_INSTALL) @@ -273,10 +274,10 @@ TEXI_JAVA_FILES = java/gcj.texi $(gcc_do gcc-vers.texi # Documentation -doc/gcj.info: $(TEXI_JAVA_FILES) +doc/$(INFO_GCJ_NAME).info: $(TEXI_JAVA_FILES) if test "x$(BUILD_INFO)" = xinfo; then \ - rm -f doc/gcj.info*; \ - $(MAKEINFO) $(MAKEINFOFLAGS) -I $(gcc_docdir) \ + rm -f doc/$(INFO_GCJ_NAME).info*; \ + $(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) -I $(gcc_docdir) \ -I $(gcc_docdir)/include -o $@ $<; \ else true; fi Index: b/src/gcc/ada/gnat-style.texi =================================================================== --- a/src/gcc/ada/gnat-style.texi +++ b/src/gcc/ada/gnat-style.texi @@ -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.9). GNAT Coding Style @end direntry @macro syntax{element} Index: b/src/gcc/ada/gnat_rm.texi =================================================================== --- a/src/gcc/ada/gnat_rm.texi +++ b/src/gcc/ada/gnat_rm.texi @@ -36,7 +36,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.9). Reference Manual for GNU Ada tools. @end direntry @titlepage Index: b/src/gcc/doc/invoke.texi =================================================================== --- a/src/gcc/doc/invoke.texi +++ b/src/gcc/doc/invoke.texi @@ -10319,7 +10319,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 @@ -10328,7 +10328,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 @@ -22609,7 +22609,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 @@ -22769,7 +22769,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: b/src/gcc/doc/extend.texi =================================================================== --- a/src/gcc/doc/extend.texi +++ b/src/gcc/doc/extend.texi @@ -17106,7 +17106,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: b/src/gcc/doc/standards.texi =================================================================== --- a/src/gcc/doc/standards.texi +++ b/src/gcc/doc/standards.texi @@ -288,8 +288,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: b/src/gcc/doc/libgcc.texi =================================================================== --- a/src/gcc/doc/libgcc.texi +++ b/src/gcc/doc/libgcc.texi @@ -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: b/src/gcc/doc/gccint.texi =================================================================== --- a/src/gcc/doc/gccint.texi +++ b/src/gcc/doc/gccint.texi @@ -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: b/src/gcc/doc/cpp.texi =================================================================== --- a/src/gcc/doc/cpp.texi +++ b/src/gcc/doc/cpp.texi @@ -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: b/src/gcc/doc/gcc.texi =================================================================== --- a/src/gcc/doc/gcc.texi +++ b/src/gcc/doc/gcc.texi @@ -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{fngcc}). The GNU C++ compiler. +* @value{fngcov}: (@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: b/src/gcc/doc/makefile.texi =================================================================== --- a/src/gcc/doc/makefile.texi +++ b/src/gcc/doc/makefile.texi @@ -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: b/src/gcc/doc/install.texi =================================================================== --- a/src/gcc/doc/install.texi +++ b/src/gcc/doc/install.texi @@ -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: b/src/gcc/doc/cppinternals.texi =================================================================== --- a/src/gcc/doc/cppinternals.texi +++ b/src/gcc/doc/cppinternals.texi @@ -7,7 +7,7 @@ @ifinfo @dircategory Software development @direntry -* Cpplib: (cppinternals). Cpplib internals. +* @value{fncppint}: (@value{fncppint}). Cpplib internals. @end direntry @end ifinfo Index: b/src/libgomp/libgomp.texi =================================================================== --- a/src/libgomp/libgomp.texi +++ b/src/libgomp/libgomp.texi @@ -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: b/src/libgomp/Makefile.in =================================================================== --- a/src/libgomp/Makefile.in +++ b/src/libgomp/Makefile.in @@ -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 @@ -1093,15 +1094,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 + [ "$(INFO_LIBGOMP_NAME).info" = libgomp.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: b/src/libgomp/Makefile.am =================================================================== --- a/src/libgomp/Makefile.am +++ b/src/libgomp/Makefile.am @@ -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: b/src/libitm/libitm.texi =================================================================== --- a/src/libitm/libitm.texi +++ b/src/libitm/libitm.texi @@ -20,7 +20,7 @@ Free Documentation License''. @ifinfo @dircategory GNU Libraries @direntry -* libitm: (libitm). GNU Transactional Memory Library +* @value{fnlibitm}: (@value{fnlibitm}). GNU Transactional Memory Library @end direntry This manual documents the GNU Transactional Memory Library. Index: b/src/libitm/Makefile.am =================================================================== --- a/src/libitm/Makefile.am +++ b/src/libitm/Makefile.am @@ -107,14 +107,17 @@ endif all-local: $(STAMP_GENINSRC) -stamp-geninsrc: libitm.info - cp -p $(top_builddir)/libitm.info $(srcdir)/libitm.info +INFO_LIBITM_NAME = $(shell echo libitm|sed '$(program_transform_name)') +stamp-geninsrc: $(INFO_LIBITM_NAME).info + cp -p $(top_builddir)/$(INFO_LIBITM_NAME).info $(srcdir)/libitm.info @touch $@ -libitm.info: $(STAMP_BUILD_INFO) +libitm.info: $(INFO_LIBITM_NAME).info + cp $(INFO_LIBITM_NAME).info libitm.info +$(INFO_LIBITM_NAME).info: $(STAMP_BUILD_INFO) stamp-build-info: libitm.texi - $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) -o libitm.info $(srcdir)/libitm.texi + $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) -D 'fnlibitm $(INFO_LIBITM_NAME)'-o $(INFO_LIBITM_NAME).info $(srcdir)/libitm.texi @touch $@ Index: b/src/libitm/Makefile.in =================================================================== --- a/src/libitm/Makefile.in +++ b/src/libitm/Makefile.in @@ -1057,14 +1057,17 @@ vpath % $(strip $(search_path)) all-local: $(STAMP_GENINSRC) -stamp-geninsrc: libitm.info - cp -p $(top_builddir)/libitm.info $(srcdir)/libitm.info +INFO_LIBITM_NAME = $(shell echo libitm|sed '$(program_transform_name)') +stamp-geninsrc: $(INFO_LIBITM_NAME).info + cp -p $(top_builddir)/$(INFO_LIBITM_NAME).info $(srcdir)/libitm.info @touch $@ -libitm.info: $(STAMP_BUILD_INFO) +libitm.info: $(INFO_LIBITM_NAME).info + cp $(INFO_LIBITM_NAME).info libitm.info +$(INFO_LIBITM_NAME).info: $(STAMP_BUILD_INFO) stamp-build-info: libitm.texi - $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) -o libitm.info $(srcdir)/libitm.texi + $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) -D 'fnlibitm $(INFO_LIBITM_NAME)' -o $(INFO_LIBITM_NAME).info $(srcdir)/libitm.texi @touch $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. Index: b/src/gcc/go/Make-lang.in =================================================================== --- a/src/gcc/go/Make-lang.in +++ b/src/gcc/go/Make-lang.in @@ -86,10 +86,11 @@ GO_TEXI_FILES = \ $(gcc_docdir)/include/gcc-common.texi \ gcc-vers.texi -doc/gccgo.info: $(GO_TEXI_FILES) +INFO_GCCGO_NAME = $(shell echo gccgo|sed '$(program_transform_name)') +doc/$(INFO_GCCGO_NAME).info: $(GO_TEXI_FILES) if test "x$(BUILD_INFO)" = xinfo; then \ - rm -f doc/gccgo.info*; \ - $(MAKEINFO) $(MAKEINFOFLAGS) -I $(gcc_docdir) \ + rm -f doc/$(INFO_GCCGO_NAME).info*; \ + $(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) -I $(gcc_docdir) \ -I $(gcc_docdir)/include -o $@ $<; \ else true; fi @@ -115,7 +116,7 @@ gccgo.pod: go/gccgo.texi go.all.cross: gccgo-cross$(exeext) go.start.encap: gccgo$(exeext) go.rest.encap: -go.info: doc/gccgo.info +go.info: doc/$(INFO_GCCGO_NAME).info go.dvi: doc/gccgo.dvi go.pdf: doc/gccgo.pdf go.html: $(build_htmldir)/go/index.html @@ -155,7 +156,7 @@ go.install-common: installdirs go.install-plugin: -go.install-info: $(DESTDIR)$(infodir)/gccgo.info +go.install-info: $(DESTDIR)$(infodir)/$(INFO_GCCGO_NAME).info go.install-pdf: doc/gccgo.pdf @$(NORMAL_INSTALL) @@ -195,7 +196,7 @@ go.uninstall: rm -rf $(DESTDIR)$(bindir)/$(GCCGO_INSTALL_NAME)$(exeext) rm -rf $(DESTDIR)$(man1dir)/$(GCCGO_INSTALL_NAME)$(man1ext) rm -rf $(DESTDIR)$(bindir)/$(GCCGO_TARGET_INSTALL_NAME)$(exeext) - rm -rf $(DESTDIR)$(infodir)/gccgo.info* + rm -rf $(DESTDIR)$(infodir)/$(INFO_GCCGO_NAME).info* # Clean hooks. Index: b/src/gcc/go/gccgo.texi =================================================================== --- a/src/gcc/go/gccgo.texi +++ b/src/gcc/go/gccgo.texi @@ -50,7 +50,7 @@ man page gfdl(7). @format @dircategory Software development @direntry -* Gccgo: (gccgo). A GCC-based compiler for the Go language +* @value{fngccgo}: (@value{fngccgo}). A GCC-based compiler for the Go language @end direntry @end format @@ -123,7 +123,7 @@ and the Info entries for @file{gccgo} an The @command{gccgo} command is a frontend to @command{gcc} and supports many of the same options. @xref{Option Summary, , Option -Summary, gcc, Using the GNU Compiler Collection (GCC)}. This manual +Summary, @value{fngcc}, Using the GNU Compiler Collection (GCC)}. This manual only documents the options specific to @command{gccgo}. The @command{gccgo} command may be used to compile Go source code into Index: b/src/libquadmath/libquadmath.texi =================================================================== --- a/src/libquadmath/libquadmath.texi +++ b/src/libquadmath/libquadmath.texi @@ -25,7 +25,7 @@ copy and modify this GNU manual. @ifinfo @dircategory GNU Libraries @direntry -* libquadmath: (libquadmath). GCC Quad-Precision Math Library +* @value{fnlibquadmath}: (@value{fnlibquadmath}). GCC Quad-Precision Math Library @end direntry This manual documents the GCC Quad-Precision Math Library API. Index: b/src/libquadmath/Makefile.am =================================================================== --- a/src/libquadmath/Makefile.am +++ b/src/libquadmath/Makefile.am @@ -133,22 +133,24 @@ endif all-local: $(STAMP_GENINSRC) -stamp-geninsrc: libquadmath.info - cp -p $(top_builddir)/libquadmath.info $(srcdir)/libquadmath.info +INFO_LIBQMATH_NAME = $(shell echo libquadmath|sed '$(program_transform_name)') + +stamp-geninsrc: $(INFO_LIBQMATH_NAME).info + cp -p $(top_builddir)/$(INFO_LIBQMATH_NAME).info $(srcdir)/libquadmath.info @touch $@ stamp-build-info: libquadmath.texi $(libquadmath_TEXINFOS) - $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) -o libquadmath.info $(srcdir)/libquadmath.texi + $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) -o $(INFO_LIBQMATH_NAME).info $(srcdir)/libquadmath.texi @touch $@ -CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) libquadmath.info -MAINTAINERCLEANFILES = $(srcdir)/libquadmath.info +CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) $(INFO_LIBQMATH_NAME).info +MAINTAINERCLEANFILES = $(srcdir)/$(INFO_LIBQMATH_NAME).info endif BUILD_LIBQUADMATH # Unconditionally override this target, so that automake's definition # does not wrongly interfere. -libquadmath.info: $(STAMP_BUILD_INFO) +$(INFO_LIBQMATH_NAME).info: $(STAMP_BUILD_INFO) # Automake Documentation: Index: b/src/libquadmath/Makefile.in =================================================================== --- a/src/libquadmath/Makefile.in +++ b/src/libquadmath/Makefile.in @@ -169,7 +169,8 @@ MULTIDIRS = MULTISUBDIR = MULTIDO = true MULTICLEAN = true -INFO_DEPS = libquadmath.info +INFO_LIBQMATH_NAME = $(shell echo libquadmath|sed '$(program_transform_name)') +INFO_DEPS = $(INFO_LIBQMATH_NAME).info am__TEXINFO_TEX_DIR = $(srcdir)/../gcc/doc/include DVIS = libquadmath.dvi PDFS = libquadmath.pdf @@ -406,8 +407,8 @@ AUTOMAKE_OPTIONS = 1.8 foreign # AM_CONDITIONAL on configure check ACX_CHECK_PROG_VER([MAKEINFO]) @BUILD_INFO_TRUE@@BUILD_LIBQUADMATH_TRUE@STAMP_BUILD_INFO = stamp-build-info -@BUILD_LIBQUADMATH_TRUE@CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) libquadmath.info -@BUILD_LIBQUADMATH_TRUE@MAINTAINERCLEANFILES = $(srcdir)/libquadmath.info +@BUILD_LIBQUADMATH_TRUE@CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) $(INFO_LIBQMATH_NAME).info +@BUILD_LIBQUADMATH_TRUE@MAINTAINERCLEANFILES = $(srcdir)/$(INFO_LIBQMATH_NAME).info # Automake Documentation: # If your package has Texinfo files in many directories, you can use the @@ -1465,17 +1466,17 @@ uninstall-am: uninstall-dvi-am uninstall @BUILD_LIBQUADMATH_TRUE@all-local: $(STAMP_GENINSRC) -@BUILD_LIBQUADMATH_TRUE@stamp-geninsrc: libquadmath.info -@BUILD_LIBQUADMATH_TRUE@ cp -p $(top_builddir)/libquadmath.info $(srcdir)/libquadmath.info +@BUILD_LIBQUADMATH_TRUE@stamp-geninsrc: $(INFO_LIBQMATH_NAME).info +@BUILD_LIBQUADMATH_TRUE@ cp -p $(top_builddir)/$(INFO_LIBQMATH_NAME).info $(srcdir)/$(INFO_LIBQMATH_NAME).info @BUILD_LIBQUADMATH_TRUE@ @touch $@ @BUILD_LIBQUADMATH_TRUE@stamp-build-info: libquadmath.texi $(libquadmath_TEXINFOS) -@BUILD_LIBQUADMATH_TRUE@ $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) -o libquadmath.info $(srcdir)/libquadmath.texi +@BUILD_LIBQUADMATH_TRUE@ $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) -o $(INFO_LIBQMATH_NAME).info $(srcdir)/libquadmath.texi @BUILD_LIBQUADMATH_TRUE@ @touch $@ # Unconditionally override this target, so that automake's definition # does not wrongly interfere. -libquadmath.info: $(STAMP_BUILD_INFO) +$(INFO_LIBQMATH_NAME).info: $(STAMP_BUILD_INFO) libquadmath-vers.texi: echo "@set BUGURL $(REPORT_BUGS_TEXI)" > $@