[committed] hppa: Update install documentation

John David Anglin dave@parisc-linux.org
Mon Nov 18 01:42:17 GMT 2024


Committed to trunk.

Dave
---

hppa: Update install documentation

2024-11-17  John David Anglin  <danglin@gcc.gnu.org>

gcc/ChangeLog:

	PR target/69374
	* doc/install.texi (Specific) <hppa*-hp-hpux11>: Update anchor
	and heading to reflect removal of 32-bit hppa support on HP-UX.
	Trim 32-bit related text.

diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
index fc74ee3d0e1..03bbfece0ec 100644
--- a/gcc/doc/install.texi
+++ b/gcc/doc/install.texi
@@ -1145,8 +1145,7 @@ whether you use the GNU assembler.  On any other system,
 @option{--with-gnu-as} has no effect.
 
 @itemize @bullet
-@item @samp{hppa1.0-@var{any}-@var{any}}
-@item @samp{hppa1.1-@var{any}-@var{any}}
+@item @samp{hppa*-@var{any}-@var{any}}
 @item @samp{*-*-solaris2.11}
 @end itemize
 
@@ -3675,13 +3674,6 @@ AIX 7.1)}.
 @item
 DOS---@uref{http://www.delorie.com/djgpp/,,DJGPP}.
 
-@item
-HP-UX:
-@itemize
-@item
-@uref{http://hpux.connect.org.uk/,,HP-UX Porting Center};
-@end itemize
-
 @item
 macOS:
 @itemize
@@ -3773,9 +3765,9 @@ information have to.
 @item
 @uref{#h8300-hms,,h8300-hms}
 @item
-@uref{#hppa-hp-hpux,,hppa*-hp-hpux*}
+@uref{#hppa-x-linux,,hppa-*-linux}
 @item
-@uref{#hppa-hp-hpux11,,hppa*-hp-hpux11}
+@uref{#hppa64-hp-hpux11,,hppa64-hp-hpux11*}
 @item
 @uref{#x-x-linux-gnu,,*-*-linux-gnu}
 @item
@@ -4131,113 +4123,28 @@ Renesas H8/300 series of processors.
 @html
 <hr />
 @end html
-@anchor{hppa-hp-hpux}
-@heading hppa*-hp-hpux*
-We require using gas on all hppa platforms.  Version 2.19 or
-later is recommended.
+@anchor{hppa64-hp-hpux11}
+@heading hppa64-hp-hpux11*
+Only the 64-bit @samp{hppa} target is supported on HP-UX.  Support
+for 32-bit @samp{hppa} was discontinued in GCC 13.
+ 
+We require using gas on all hppa platforms.
 
 It may be helpful to configure GCC with the
 @uref{./configure.html#with-gnu-as,,@option{--with-gnu-as}} and
 @option{--with-as=@dots{}} options to ensure that GCC can find GAS@.
 
-There are two default scheduling models for instructions.  These are
-PROCESSOR_7100LC and PROCESSOR_8000.  They are selected from the pa-risc
-architecture specified for the target machine when configuring.
-PROCESSOR_8000 is the default.  PROCESSOR_7100LC is selected when
-the target is a @samp{hppa1*} machine.
-
-The PROCESSOR_8000 model is not well suited to older processors.  Thus,
-it is important to completely specify the machine architecture when
-configuring if you want a model other than PROCESSOR_8000.  The macro
-TARGET_SCHED_DEFAULT can be defined in BOOT_CFLAGS if a different
-default scheduling model is desired.
-
-As of GCC 4.0, GCC uses the UNIX 95 namespace for HP-UX 10.10
-through 11.00, and the UNIX 98 namespace for HP-UX 11.11 and later.
-This namespace change might cause problems when bootstrapping with
-an earlier version of GCC or the HP compiler as essentially the same
-namespace is required for an entire build.  This problem can be avoided
-in a number of ways.  With HP cc, @env{UNIX_STD} can be set to @samp{95}
-or @samp{98}.  Another way is to add an appropriate set of predefines
-to @env{CC}.  The description for the @option{munix=} option contains
-a list of the predefines used with each standard.
-
-More specific information to @samp{hppa*-hp-hpux*} targets follows.
+Only the HP linker is supported.  Thus, it is best to explicitly
+configure the target with the @option{--with-ld=@dots{}} option.
 
-@html
-<hr />
-@end html
-@anchor{hppa-hp-hpux11}
-@heading hppa*-hp-hpux11
-Refer to @uref{binaries.html,,binaries} for information about obtaining
-precompiled GCC binaries for HP-UX@.  Precompiled binaries must be obtained
-to build the Ada language as it cannot be bootstrapped using C@.  Ada is
-only available for the 32-bit PA-RISC runtime.
-
-Starting with GCC 3.4 an ISO C compiler is required to bootstrap.  The
-bundled compiler supports only traditional C; you will need either HP's
-unbundled compiler, or a binary distribution of GCC@.
-
-It is possible to build GCC 3.3 starting with the bundled HP compiler,
-but the process requires several steps.  GCC 3.3 can then be used to
-build later versions.
-
-There are several possible approaches to building the distribution.
-Binutils can be built first using the HP tools.  Then, the GCC
-distribution can be built.  The second approach is to build GCC
-first using the HP tools, then build binutils, then rebuild GCC@.
-There have been problems with various binary distributions, so it
-is best not to start from a binary distribution.
-
-On 64-bit capable systems, there are two distinct targets.  Different
-installation prefixes must be used if both are to be installed on
-the same system.  The @samp{hppa[1-2]*-hp-hpux11*} target generates code
-for the 32-bit PA-RISC runtime architecture and uses the HP linker.
-The @samp{hppa64-hp-hpux11*} target generates 64-bit code for the
-PA-RISC 2.0 architecture.
-
-The script config.guess now selects the target type based on the compiler
-detected during configuration.  You must define @env{PATH} or @env{CC} so
-that configure finds an appropriate compiler for the initial bootstrap.
-When @env{CC} is used, the definition should contain the options that are
-needed whenever @env{CC} is used.
-
-Specifically, options that determine the runtime architecture must be
-in @env{CC} to correctly select the target for the build.  It is also
-convenient to place many other compiler options in @env{CC}.  For example,
-@env{CC="cc -Ac +DA2.0W -Wp,-H16376 -D_CLASSIC_TYPES -D_HPUX_SOURCE"}
-can be used to bootstrap the GCC 3.3 branch with the HP compiler in
-64-bit K&R/bundled mode.  The @option{+DA2.0W} option will result in
-the automatic selection of the @samp{hppa64-hp-hpux11*} target.  The
-macro definition table of cpp needs to be increased for a successful
-build with the HP compiler.  _CLASSIC_TYPES and _HPUX_SOURCE need to
-be defined when building with the bundled compiler, or when using the
-@option{-Ac} option.  These defines aren't necessary with @option{-Ae}.
-
-It is best to explicitly configure the @samp{hppa64-hp-hpux11*} target
-with the @option{--with-ld=@dots{}} option.  This overrides the standard
-search for ld.  The two linkers supported on this target require different
-commands.  The default linker is determined during configuration.  As a
-result, it's not possible to switch linkers in the middle of a GCC build.
-This has been reported to sometimes occur in unified builds of binutils
-and GCC@.
-
-Only the HP linker is supported for the @samp{hppa64-hp-hpux11*} target.
-
-At this time, the GNU linker does not support the creation of long
-branch stubs.  As a result, it cannot successfully link binaries
-containing branch offsets larger than 8 megabytes.  In addition,
-there are problems linking shared libraries, linking executables
-with @option{-static}, and with dwarf2 unwind and exception support.
-It also doesn't provide stubs for internal calls to global functions
-in shared libraries, so these calls cannot be overloaded.
-
-The HP dynamic loader does not support GNU symbol versioning, so symbol
-versioning is not supported.  It may be necessary to disable symbol
-versioning with @option{--disable-symvers} when using GNU ld.
-
-POSIX threads are the default.  The optional DCE thread library is not
-supported, so @option{--enable-threads=dce} does not work.
+The DCE thread library is not supported, so @option{--enable-threads=dce}
+does not work.
+
+Currently, there are no precompiled binaries for 64-bit HP-UX.
+
+Binutils and other required tools can be built using the HP tools.
+Then, the GCC distribution can be built.  This is challenging due
+to the many dependencies.
 
 @html
 <hr />
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <https://gcc.gnu.org/pipermail/gcc-patches/attachments/20241117/e3a83c0b/attachment.sig>


More information about the Gcc-patches mailing list