Patchwork [doc] GCC 4.7 Solaris updates to install.texi

login
register
mail settings
Submitter Rainer Orth
Date March 12, 2012, 3:01 p.m.
Message ID <yddhaxtlv6l.fsf@manam.CeBiTec.Uni-Bielefeld.DE>
Download mbox | patch
Permalink /patch/146117/
State New
Headers show

Comments

Rainer Orth - March 12, 2012, 3:01 p.m.
The following patch updates install.texi for Solaris, and applies
equally to the 4.7 branch and mainline.

Tested with make doc/gccinstall.info doc/gccinstall.pdf, ok for mainline
and 4.7 branch?

	Rainer


2012-03-11  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	* doc/install.texi (Specific, i?86-*-solaris2.[89]): Update
	binutils reference.
	(Specific, i?86-*-solaris2.10): Remove GCC 4.0 reference.
	Update binutils references.
	(Specific, *-*-solaris2*): Mention bundled GCC in Solaris 10 and 11.
	Update binutils reference.
	Update Sun as/GNU ld caveat.
	Document binutils largefile requirement for LTO plugin.
	Remove referent to alternate libpthread.
Richard Guenther - March 12, 2012, 3:28 p.m.
On Mon, 12 Mar 2012, Rainer Orth wrote:

> The following patch updates install.texi for Solaris, and applies
> equally to the 4.7 branch and mainline.
> 
> Tested with make doc/gccinstall.info doc/gccinstall.pdf, ok for mainline
> and 4.7 branch?

Ok.

Thanks,
Richard.

> 	Rainer
> 
> 
> 2012-03-11  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
> 
> 	* doc/install.texi (Specific, i?86-*-solaris2.[89]): Update
> 	binutils reference.
> 	(Specific, i?86-*-solaris2.10): Remove GCC 4.0 reference.
> 	Update binutils references.
> 	(Specific, *-*-solaris2*): Mention bundled GCC in Solaris 10 and 11.
> 	Update binutils reference.
> 	Update Sun as/GNU ld caveat.
> 	Document binutils largefile requirement for LTO plugin.
> 	Remove referent to alternate libpthread.
> 
>
Gerald Pfeifer - March 12, 2012, 9:08 p.m.
On Mon, 12 Mar 2012, Rainer Orth wrote:
> Tested with make doc/gccinstall.info doc/gccinstall.pdf, ok for mainline
> and 4.7 branch?

+Sun does not ship a C compiler with Solaris 2 before Solaris 10, though
+you can download the Sun Studio compilers for free.  In Solaris 10 and
+11, GCC 3.4.3 is available in @command{/usr/sfw/bin/gcc}.  Solaris 11
+also provides GCC 4.5.2 in @command{/usr/gcc/4.5/bin/gcc}.  Alternatively,

I see Richi has approved, just wonder whether "as @command" would
be more appropriate than "in @command", twice?

Gerald

Patch

# HG changeset patch
# Parent 87d293abd3111de02ec54b8b863d495e7bf7e1f8
GCC 4.7 Solaris updates to install.texi

diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
--- a/gcc/doc/install.texi
+++ b/gcc/doc/install.texi
@@ -3612,7 +3612,7 @@  The Sun assembler in Solaris 8 and 9 has
 While GCC works around them, several features are missing, so it is
 @c FIXME: which ones?
 recommended to use the GNU assembler instead.  There is no bundled
-version, but the current version, from GNU binutils 2.21, is known to
+version, but the current version, from GNU binutils 2.22, is known to
 work.
 
 Solaris@tie{}2/x86 doesn't support the execution of SSE/SSE2 instructions
@@ -3628,8 +3628,7 @@  you have the patch installed, you can co
 <hr />
 @end html
 @heading @anchor{ix86-x-solaris210}i?86-*-solaris2.10
-Use this for Solaris 10 or later on x86 and x86-64 systems.  This
-configuration is supported by GCC 4.0 and later versions only.  Starting
+Use this for Solaris 10 or later on x86 and x86-64 systems.  Starting
 with GCC 4.7, there is also a 64-bit @samp{amd64-*-solaris2.1[0-9]*} or
 @samp{x86_64-*-solaris2.1[0-9]*} configuration that corresponds to
 @samp{sparcv9-sun-solaris2*}.
@@ -3638,7 +3637,7 @@  It is recommended that you configure GCC
 @file{/usr/sfw/bin/gas}.  The versions included in Solaris 10, from GNU
 binutils 2.15, and Solaris 11, from GNU binutils 2.19, work fine,
 although the current version, from GNU binutils
-2.21, is known to work, too.  Recent versions of the Sun assembler in
+2.22, is known to work, too.  Recent versions of the Sun assembler in
 @file{/usr/ccs/bin/as} work almost as well, though.
 @c FIXME: as patch requirements?
 
@@ -3646,7 +3645,7 @@  For linking, the Sun linker, is preferre
 linker instead, which is available in @file{/usr/sfw/bin/gld}, note that
 due to a packaging bug the version in Solaris 10, from GNU binutils
 2.15, cannot be used, while the version in Solaris 11, from GNU binutils
-2.19, works, as does the latest version, from GNU binutils 2.21.
+2.19, works, as does the latest version, from GNU binutils 2.22.
 
 To use GNU @command{as}, configure with the options
 @option{--with-gnu-as --with-as=@//usr/@/sfw/@/bin/@/gas}.  It may be necessary
@@ -4217,8 +4216,10 @@  Support for Solaris 8 has been obsoleted
 enabled by configuring with @option{--enable-obsolete}.  Support will be
 removed in GCC 4.8.  Support for Solaris 7 has been removed in GCC 4.6.
 
-Sun does not ship a C compiler with Solaris 2, though you can download
-the Sun Studio compilers for free.  Alternatively,
+Sun does not ship a C compiler with Solaris 2 before Solaris 10, though
+you can download the Sun Studio compilers for free.  In Solaris 10 and
+11, GCC 3.4.3 is available in @command{/usr/sfw/bin/gcc}.  Solaris 11
+also provides GCC 4.5.2 in @command{/usr/gcc/4.5/bin/gcc}.  Alternatively,
 you can install a pre-built GCC to bootstrap and install GCC.  See the
 @uref{binaries.html,,binaries page} for details.
 
@@ -4261,17 +4262,19 @@  We recommend the use of the Sun assemble
 conjunction with the Sun linker.  The GNU @command{as}
 versions included in Solaris 10, from GNU binutils 2.15, and Solaris 11,
 from GNU binutils 2.19, are known to work.  They can be found in
-@file{/usr/sfw/bin/gas}.  Current versions of GNU binutils (2.21)
+@file{/usr/sfw/bin/gas}.  Current versions of GNU binutils (2.22)
 are known to work as well.  Note that your mileage may vary
 if you use a combination of the GNU tools and the Sun tools: while the
 combination GNU @command{as} + Sun @command{ld} should reasonably work,
-the reverse combination Sun @command{as} + GNU @command{ld} is known to
-cause memory corruption at runtime in some cases for C++ programs.
+the reverse combination Sun @command{as} + GNU @command{ld} may fail to
+build or cause memory corruption at runtime in some cases for C++ programs.
 @c FIXME: still?
 GNU @command{ld} usually works as well, although the version included in
 Solaris 10 cannot be used due to several bugs.  Again, the current
-version (2.21) is known to work, but generally lacks platform specific
-features, so better stay with Sun @command{ld}.
+version (2.22) is known to work, but generally lacks platform specific
+features, so better stay with Sun @command{ld}.  To use the LTO linker
+plugin (@option{-fuse-linker-plugin}) with GNU @command{ld}, GNU
+binutils @emph{must} be configured with @option{--enable-largefile}.
 
 To enable symbol versioning in @samp{libstdc++} with Sun @command{ld},
 you need to have any version of GNU @command{c++filt}, which is part of
@@ -4302,10 +4305,10 @@  There are patches for Solaris 8 (117350-
 117351-12 or newer for Intel) and Solaris 9 (117171-11 or newer for
 SPARC, 117172-11 or newer for Intel) that address this problem.
 
-Solaris@tie{}8 provides an alternate implementation of the thread libraries,
-@samp{libpthread} and @samp{libthread}.  They are required for TLS
-support and have been made the default in Solaris@tie{}9, so they are always
-used on Solaris@tie{}8.
+Solaris@tie{}8 provides an alternate implementation of the thread
+library @samp{libthread}.  It is required for TLS support and has
+been made the default in Solaris@tie{}9, so it is always used on
+Solaris@tie{}8.
 
 Thread-local storage (TLS) is supported in Solaris@tie{}8 and 9, but requires
 some patches.  The @samp{libthread} patches provide the