Patchwork adjust installation docs to discourage installing GMP, MPFR and MPC separately

login
register
mail settings
Submitter Jonathan Wakely
Date Feb. 4, 2012, 6:16 p.m.
Message ID <CAH6eHdQtq8KJzRz8xpB0iwM2OJG8F8DcfF+E4aqY-oV7esO6zQ@mail.gmail.com>
Download mbox | patch
Permalink /patch/139587/
State New
Headers show

Comments

Jonathan Wakely - Feb. 4, 2012, 6:16 p.m.
On 31 January 2012 15:13, Jonathan Wakely wrote:
>> Can we at least recommend using the OS vendors versions of the
>> libraries in case they match our minimum (not recommended) version
>> requirements?  Is our in-tree build support robust enough against
>> newer/older OS vendor installed copies?
>
> Arguably the minimum versions are recommended by "Newer versions may
> work in some cases, but it's safer to use the exact versions
> documented."
>
> I will revise the patch to suggest vendor-supplied versions first,
> then in-tree, then finally using --with-gmp (which is the method that
> causes the most frequently asked questions)

The attached patch suggests using vendor packages as the simplest way
to install the support libs.

OK for trunk?

       * doc/install.texi (Prerequisites): Suggest building GMP, MPFR and
       MPC as part of GCC before describing configuring with --with-gmp etc.
       (Installing GCC: Configuration): State that --with-gmp etc. aren't
       needed if sources are present.
Gerald Pfeifer - Feb. 12, 2012, 11:41 p.m.
On Sat, 4 Feb 2012, Jonathan Wakely wrote:
>        * doc/install.texi (Prerequisites): Suggest building GMP, MPFR and
>        MPC as part of GCC before describing configuring with --with-gmp etc.
>        (Installing GCC: Configuration): State that --with-gmp etc. aren't
>        needed if sources are present.

For the ChangeLog I would just say "--with-gmp etc. are not needed
if...", omitting the "State that" which is implied for docs.

+subdirectory of your GCC sources named @file{gmp}, it will be built
+together with GCC, this avoids the need to build GMP separately.
+Alternatively, if GMP is already installed but it is not in your

How about "GCC(full stop). This avoids the need", that is, making
the latter a sentence of its own?  Or just omit this?

Same for the other two libraries.

-If you do not have GMP (the GNU Multiple Precision library), the MPFR
-library and/or the MPC library installed in a standard location and
-you want to build GCC, you can explicitly specify the directory where
+If you want to build GCC but do not have GMP (the GNU Multiple Precision
+library), the MPFR library and/or the MPC library installed in a
+standard location and don't have their sources present in the GCC
+source tree then you can explicitly specify the directory where

"don't" -> "do not"

And I would avoid the expansion of GMP in parenthesis, given how late
we are in the document and all the prior uses.  I acknowledge this
predates you changes, but while we are at it. :-)

The patch is fine with these changes.

Thank you!

Gerald

Patch

diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
index da84758..2dcaef7 100644
--- a/gcc/doc/install.texi
+++ b/gcc/doc/install.texi
@@ -328,37 +328,42 @@  others optional.  While any sufficiently new version of required tools
 usually work, library requirements are generally stricter.  Newer
 versions may work in some cases, but it's safer to use the exact
 versions documented.  We appreciate bug reports about problems with
-newer versions, though.
+newer versions, though.  If your OS vendor provides packages for the
+support libraries then using those packages may be the simplest way to
+install the libraries.
 
 @table @asis
 @item GNU Multiple Precision Library (GMP) version 4.3.2 (or later)
 
-Necessary to build GCC@.  If you do not have it installed in your
+Necessary to build GCC@.  If a GMP source distribution is found in a
+subdirectory of your GCC sources named @file{gmp}, it will be built
+together with GCC, this avoids the need to build GMP separately.
+Alternatively, if GMP is already installed but it is not in your
 library search path, you will have to configure with the
 @option{--with-gmp} configure option.  See also @option{--with-gmp-lib}
-and @option{--with-gmp-include}.  Alternatively, if a GMP source
-distribution is found in a subdirectory of your GCC sources named
-@file{gmp}, it will be built together with GCC@.
+and @option{--with-gmp-include}.
 
 @item MPFR Library version 2.4.2 (or later)
 
 Necessary to build GCC@.  It can be downloaded from
-@uref{http://www.mpfr.org/}.  The @option{--with-mpfr} configure
-option should be used if your MPFR Library is not installed in your
-default library search path.  See also @option{--with-mpfr-lib} and
-@option{--with-mpfr-include}.  Alternatively, if a MPFR source
-distribution is found in a subdirectory of your GCC sources named
-@file{mpfr}, it will be built together with GCC@.
+@uref{http://www.mpfr.org/}.  If an MPFR source distribution is found
+in a subdirectory of your GCC sources named @file{mpfr}, it will be
+built together with GCC, this avoids the need to build MPFR separately.
+Alternatively, if MPFR is already installed but it is not in your
+default library search path, the @option{--with-mpfr} configure
+option should be used.  See also @option{--with-mpfr-lib} and
+@option{--with-mpfr-include}.
 
 @item MPC Library version 0.8.1 (or later)
 
 Necessary to build GCC@.  It can be downloaded from
-@uref{http://www.multiprecision.org/}.  The @option{--with-mpc}
-configure option should be used if your MPC Library is not installed
-in your default library search path.  See also @option{--with-mpc-lib}
-and @option{--with-mpc-include}.  Alternatively, if an MPC source
-distribution is found in a subdirectory of your GCC sources named
-@file{mpc}, it will be built together with GCC@.
+@uref{http://www.multiprecision.org/}.  If an MPC source distribution
+is found in a subdirectory of your GCC sources named @file{mpc}, it
+will be built together with GCC, this avoids the need to build MPC
+separately.  Alternatively, if MPC is already installed but it is
+not in your default library search path, the @option{--with-mpc}
+configure option should be used.  See also @option{--with-mpc-lib}
+and @option{--with-mpc-include}.
 
 @item Parma Polyhedra Library (PPL) version 0.11
 
@@ -1608,9 +1613,10 @@  When neither of these configure options are used, the default will be
 @itemx --with-mpc=@var{pathname}
 @itemx --with-mpc-include=@var{pathname}
 @itemx --with-mpc-lib=@var{pathname}
-If you do not have GMP (the GNU Multiple Precision library), the MPFR
-library and/or the MPC library installed in a standard location and
-you want to build GCC, you can explicitly specify the directory where
+If you want to build GCC but do not have GMP (the GNU Multiple Precision
+library), the MPFR library and/or the MPC library installed in a
+standard location and don't have their sources present in the GCC
+source tree then you can explicitly specify the directory where
 they are installed (@samp{--with-gmp=@var{gmpinstalldir}},
 @samp{--with-mpfr=@/@var{mpfrinstalldir}},
 @samp{--with-mpc=@/@var{mpcinstalldir}}).  The