This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: 3.0.1 PATCH: install.texi updates for Solaris 2


Gerald Pfeifer writes:

> > * a way to refer to individual releases, like Solaris 2.5.1 or Solaris 7.
> >   Instead of using e.g. Solaris 2.7 here (which doesn't exist), I'd like to
> >   use the `real' name here.
> 
> Okay. For the target triplets we have to use sparc-sun-solaris2.7, though.
> Perhaps we could add "(Solaris 7)" after the first occurrence of the
> target triplets, like in the table of contents, for example?

We don't `explain' other target triplets there, either, so I'd leave this
as is for the moment.

> Would it make sense to split your patch into smaller parts, so that we
> can install parts of it immediately, and also because some parts are
> applicable both to the 3.0-branch and mainline, while others should go
> to one of these only?

Sure.  That would be two parts: one with the Solaris 2 canonicalization and
other corrections and updates (both branch and trunk, included below,
incorporating your previous comments and suggestions) and another one
(branch only) with the SPARC V9 status info.  Unfortunately, I haven't
received any comments on this one yet ;-(  I'll wait a few days longer and
resubmit it separately.

The patch below has been tested with makeinfo, texi2dvi and
install.texi2html.  Ok for branch and mainline?

	Rainer

-----------------------------------------------------------------------------
Rainer Orth, Faculty of Technology, Bielefeld University

Email: ro@TechFak.Uni-Bielefeld.DE


Mon Sep 24 15:02:39 2001  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

	* doc/install.texi: Markup fixes.
	Use Solaris 2, SunOS 4 as appropriate.
	(Specific, *-*-solaris2*): Explain this.
	Unconditionally warn against /usr/ucb tools.
	Remove Sun as warning, obsolete.
	Move X11 header bug workaround here, update patches.
	(Specific, sparc-sun-solaris2*): Detail Sun as fix status.
	(Specific, sparc-sun-solaris2.7): Update patch 106950 status.
	
Index: install.texi
===================================================================
RCS file: /cvs/gcc/gcc/gcc/doc/install.texi,v
retrieving revision 1.1.2.56
diff -u -p -r1.1.2.56 install.texi
--- install.texi	2001/09/16 05:29:25	1.1.2.56
+++ install.texi	2001/09/24 13:00:27
@@ -455,7 +455,7 @@ target system triple, such as @samp{spar
 @var{version} denotes the GCC version, such as 3.0.
 @item
 Check operating system specific directories (e.g.@: @file{/usr/ccs/bin} on
-Sun Solaris).
+Sun Solaris 2).
 @end itemize
 Note that these rules do not check for the value of @env{PATH}.  You may
 want to use @option{--with-as} if no assembler is installed in the
@@ -1193,7 +1193,7 @@ HP-UX:
 OpenServer/Unixware};
 
 @item
-Solaris (SPARC, Intel)---@uref{http://www.sunfreeware.com/,,Sunfreeware};
+Solaris 2 (SPARC, Intel)---@uref{http://www.sunfreeware.com/,,Sunfreeware};
 
 @item
 SGI---@uref{http://freeware.sgi.com/,,SGI Freeware};
@@ -1428,15 +1428,15 @@ as new information becomes available.
 @item
 @uref{#s390x-*-linux*}
 @item
-@uref{#*-*-solaris*,,*-*-solaris*}
+@uref{#*-*-solaris2*,,*-*-solaris2*}
 @item
-@uref{#sparc-sun-solaris*,,sparc-sun-solaris*}
+@uref{#sparc-sun-solaris2*,,sparc-sun-solaris2*}
 @item
 @uref{#sparc-sun-solaris2.7,,sparc-sun-solaris2.7}
 @item
-@uref{#*-sun-solaris2.8,,*-sun-solaris2.8}
+@uref{#*-*-solaris2.8,,*-*-solaris2.8}
 @item
-@uref{#sparc-sun-sunos*,,sparc-sun-sunos*}
+@uref{#sparc-sun-sunos4*,,sparc-sun-sunos4*}
 @item
 @uref{#sparc-unknown-linux-gnulibc1,,sparc-unknown-linux-gnulibc1}
 @item
@@ -1457,7 +1457,7 @@ as new information becomes available.
 
 @itemize
 @item
-@uref{#elf_targets,,all ELF targets} (SVR4, Solaris, etc.)
+@uref{#elf_targets,,all ELF targets} (SVR4, Solaris 2, etc.)
 @end itemize
 @end ifhtml
 
@@ -3031,59 +3031,73 @@ IBM zSeries system (64 bit) running Linu
 </p>
 <hr>
 @end html
-@heading @anchor{*-*-solaris*}*-*-solaris*
+@c Please use Solaris 2 to refer to all release of Solaris, starting
+@c with 2.0 until 2.6, 7, and 8.  Solaris 1 was a marketing name for
+@c SunOS 4 releases which we don't use to avoid confusion.  Solaris
+@c alone is too unspecific and must be avoided.
+@heading @anchor{*-*-solaris2*}*-*-solaris2*
 
-Sun does not ship a C compiler with Solaris.  To bootstrap and install
+Sun does not ship a C compiler with Solaris 2.  To bootstrap and install
 GCC you first have to install a pre-built compiler, see our
 @uref{binaries.html,,binaries page} for details.
 
-Solaris' @file{/bin/sh} will often fail to configure @file{libstdc++-v3}, @file{boehm-gc} or
+The Solaris 2 @command{/bin/sh} will often fail to configure
+@file{libstdc++-v3}, @file{boehm-gc} or
 @file{libjava}.  If you encounter this problem, set @env{CONFIG_SHELL} to
-@file{/bin/ksh} in your environment and run @command{make bootstrap} again.
+@command{/bin/ksh} in your environment and run @command{make bootstrap} again.
 Another possibility that sometimes helps is to remove
-@file{*-*-solaris*/config.cache}.
+@file{*-*-solaris2*/config.cache}.
 
 Solaris 2 comes with a number of optional OS packages.  Some of these
 packages are needed to use GCC fully, namely @code{SUNWarc},
 @code{SUNWbtool}, @code{SUNWesu}, @code{SUNWhea}, @code{SUNWlibm},
 @code{SUNWsprot}, and @code{SUNWtoo}.  If you did not install all
-optional packages when installing Solaris, you will need to verify that
+optional packages when installing Solaris 2, you will need to verify that
 the packages that GCC needs are installed.
 
 To check whether an optional package is installed, use
 the @command{pkginfo} command.  To add an optional package, use the
-@command{pkgadd} command.  For further details, see the Solaris
+@command{pkgadd} command.  For further details, see the Solaris 2
 documentation.
 
-On some versions of Solaris, trying to use the linker and other tools in
+Trying to use the linker and other tools in
 @file{/usr/ucb} to install GCC has been observed to cause trouble.
 For example, the linker may hang indefinitely.  The fix is to remove
-@file{/usr/ucb} from your @code{PATH}.
+@file{/usr/ucb} from your @env{PATH}.
 
 All releases of GNU binutils prior to 2.11.2 have known bugs on this
 platform.  We recommend the use of GNU binutils 2.11.2 or the vendor
 tools (Sun @command{as}, Sun @command{ld}).
 
-Unfortunately, C++ shared libraries, including @samp{libstdc++}, won't work
-properly if assembled with Sun @command{as}: the linker will complain about
-relocations in read-only sections, in the definition of virtual
-tables.  Also, Sun @command{as} fails to process long symbols resulting from
-mangling template-heavy C++ function names.
+Sun bug 4296832 turns up when compiling X11 headers with GCC 2.95 or
+newer: @command{g++} will complain that types are missing.  These headers assume
+that omitting the type means @code{int}; this assumption worked for C89 but
+is wrong for C++, and is now wrong for C99 also.
 
+@command{g++} accepts such (illegal) constructs with the option
+@option{-fpermissive}; it
+will assume that any missing type is @code{int} (as defined by C89).
+
+There are patches for Solaris 2.6 (105633-56 or newer for SPARC,
+106248-42 or newer for Intel), Solaris 7 (108376-21 or newer for SPARC,
+108377-20 for Intel), and Solaris 8 (108652-24 or newer for SPARC,
+108653-22 for Intel) that fix this bug.
+
 @html
 </p>
 <hr>
 @end html
-@heading @anchor{sparc-sun-solaris*}sparc-sun-solaris*
+@heading @anchor{sparc-sun-solaris2*}sparc-sun-solaris2*
 
-Sun @command{as} 4.X is broken in that it cannot cope with long symbol names.
+Sun @command{as} 4.x is broken in that it cannot cope with long symbol names.
 A typical error message might look similar to the following:
 
 @samp{/usr/ccs/bin/as: "/var/tmp/ccMsw135.s", line 11041:
 error: can't compute value of an expression involving an external symbol.}
 
-This is Sun bug 4237974.  This is fixed with patch 108908-02 and has
-been fixed in later (5.x) versions of the assembler.
+This is Sun bug 4237974.  This is fixed with patch 108908-02 for Solaris
+2.6 and has been fixed in later (5.x) versions of the assembler,
+starting with Solaris 7.
 
 @html
 </p>
@@ -3091,7 +3105,7 @@ been fixed in later (5.x) versions of th
 @end html
 @heading @anchor{sparc-sun-solaris2.7}sparc-sun-solaris2.7
 
-Sun patch 107058-01 (1999-01-13) for SPARC Solaris 7 triggers a bug in
+Sun patch 107058-01 (1999-01-13) for Solaris 7/SPARC triggers a bug in
 the dynamic linker.  This problem (Sun bug 4210064) affects GCC 2.8
 and later, including all EGCS releases.  Sun formerly recommended
 107058-01 for all Solaris 7 users, but around 1999-09-01 it started to
@@ -3103,7 +3117,7 @@ Here are some workarounds to this proble
 Do not install Sun patch 107058-01 until after Sun releases a
 complete patch for bug 4210064.  This is the simplest course to take,
 unless you must also use Sun's C compiler.  Unfortunately 107058-01
-is preinstalled on some new Solaris-based hosts, so you may have to
+is preinstalled on some new Solaris 7-based hosts, so you may have to
 back it out.
 
 @item
@@ -3122,32 +3136,21 @@ run code generated by GCC; it doesn't su
 the hosts that run GCC itself.  Second, Sun says that 106950-03 is
 only a partial fix for bug 4210064, but Sun doesn't know whether the
 partial fix is adequate for GCC@.  Revision -08 or later should fix
-the bug, but (as of 1999-10-06) it is still being tested.
+the bug.  The current (as of 2001-09-24) revision is -14, and is included in
+the Solaris 7 Recommended Patch Cluster. 
 @end itemize
 
 
 @html
 <p>
 <hr>
-<!-- ripped from the same FAQ that I answered -->
 @end html
-@heading @anchor{*-sun-solaris2.8}*-sun-solaris2.8
-
-Sun bug 4296832 turns up when compiling X11 headers with GCC 2.95 or
-newer: @command{g++} will complain that types are missing.  These headers assume
-that omitting the type means @code{int}; this assumption worked for C89 but
-is wrong for C++, and is now wrong for C99 also.
-
-@command{g++} accepts such (illegal) constructs with the option @option{-fpermissive}; it
-will assume that any missing type is @code{int} (as defined by C89).
-
-For Solaris 8, this is fixed by revision 24 or later of patch 108652
-(for SPARCs) or 108653 (for Intels).
+@heading @anchor{*-*-solaris2.8}*-*-solaris2.8
 
-Solaris 8's linker fails to link some @samp{libjava} programs if
+The Solaris 8 linker fails to link some @samp{libjava} programs if
 previously-installed GCC java libraries already exist in the configured
 prefix.  For this reason, @samp{libgcj} is disabled by default on Solaris 8.
-If you use GNU ld, or if you don't have a previously-installed @samp{libgcj} in
+If you use GNU @command{ld}, or if you don't have a previously-installed @samp{libgcj} in
 the same prefix, use @option{--enable-libgcj} to build and install the
 Java libraries.
 
@@ -3155,7 +3158,7 @@ Java libraries.
 <p>
 <hr>
 @end html
-@heading @anchor{sparc-sun-sunos*}sparc-sun-sunos*
+@heading @anchor{sparc-sun-sunos4*}sparc-sun-sunos4*
 
 A bug in the SunOS 4 linker will cause it to crash when linking
 @option{-fPIC} compiled objects (and will therefore not allow you to build
@@ -3350,7 +3353,7 @@ current GCC) is to be found in the GCC t
 </p>
 <hr>
 @end html
-@heading @anchor{elf_targets}all ELF targets (SVR4, Solaris, etc.)
+@heading @anchor{elf_targets}all ELF targets (SVR4, Solaris 2, etc.)
 
 C++ support is significantly better on ELF targets if you use the
 @uref{./configure.html#with-gnu-ld,,GNU linker}; duplicate copies of


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]