X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2Fdoc%2Finstall.texi;h=c8571ec066b7142c0ee9281bff10d1a22eaa9c43;hb=ab7102895d7be931dcc69fedf8f56ace19438648;hp=8913ec0c9234f2e9d4a8e0a988a55e57e523416d;hpb=27f1c610afc0bbcd4409b956bee1b129c49fd20b;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi index 8913ec0c923..c8571ec066b 100644 --- a/gcc/doc/install.texi +++ b/gcc/doc/install.texi @@ -45,7 +45,8 @@ @end ifset @c Copyright (C) 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, -@c 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +@c 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, +@c 2010 Free Software Foundation, Inc. @c *** Converted to texinfo by Dean Wakerley, dean@wakerley.com @c IMPORTANT: whenever you modify this file, run `install.texi2html' to @@ -70,11 +71,12 @@ @c Part 2 Summary Description and Copyright @copying -Copyright @copyright{} 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, -1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +Copyright @copyright{} 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, +1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, +2010 Free Software Foundation, Inc. @sp 1 Permission is granted to copy, distribute and/or modify this document -under the terms of the GNU Free Documentation License, Version 1.2 or +under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, the Front-Cover texts being (a) (see below), and with the Back-Cover Texts being (b) (see below). A copy of the @@ -301,25 +303,53 @@ Necessary (only on some platforms) to untar the source code. Many systems' @command{tar} programs will also work, only try GNU @command{tar} if you have problems. -@item GNU Multiple Precision Library (GMP) version 4.1 (or later) +@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 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}. +@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@. -@item MPFR Library version 2.3.0 (or later) +@item MPFR Library version 2.4.2 (or later) Necessary to build GCC@. It can be downloaded from -@uref{http://www.mpfr.org/}. The version of MPFR that is bundled with -GMP 4.1.x contains numerous bugs. Although GCC may appear to function -with the buggy versions of MPFR, there are a few bugs that will not be -fixed when using this version. It is strongly recommended to upgrade -to the recommended version of MPFR. +@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@. -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}. +@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@. + +@item Parma Polyhedra Library (PPL) version 0.10 + +Necessary to build GCC with the Graphite loop optimizations. +It can be downloaded from @uref{http://www.cs.unipr.it/ppl/Download/}. + +The @option{--with-ppl} configure option should be used if PPL is not +installed in your default library search path. + +@item CLooG-PPL version 0.15 + +Necessary to build GCC with the Graphite loop optimizations. It can +be downloaded from @uref{ftp://gcc.gnu.org/pub/gcc/infrastructure/}. +The code in @file{cloog-ppl-0.15.tar.gz} comes from a branch of CLooG +available from @uref{http://repo.or.cz/w/cloog-ppl.git}. CLooG-PPL +should be configured with @option{--with-ppl}. + +The @option{--with-cloog} configure option should be used if CLooG is +not installed in your default library search path. @item @command{jar}, or InfoZIP (@command{zip} and @command{unzip}) @@ -327,16 +357,15 @@ Necessary to build libgcj, the GCJ runtime. @end table - @heading Tools/packages necessary for modifying GCC @table @asis -@item autoconf version 2.59 -@itemx GNU m4 version 1.4 (or later) +@item autoconf version 2.64 +@itemx GNU m4 version 1.4.6 (or later) Necessary when modifying @file{configure.ac}, @file{aclocal.m4}, etc.@: to regenerate @file{configure} and @file{config.in} files. -@item automake version 1.9.6 +@item automake version 1.11.1 Necessary when modifying a @file{Makefile.am} file to regenerate its associated @file{Makefile.in}. @@ -347,8 +376,8 @@ file. Specifically this applies to the @file{gcc}, @file{intl}, as any of their subdirectories. For directories that use automake, GCC requires the latest release in -the 1.9.x series, which is currently 1.9.6. When regenerating a directory -to a newer version, please update all the directories using an older 1.9.x +the 1.11 series, which is currently 1.11.1. When regenerating a directory +to a newer version, please update all the directories using an older 1.11 to the latest released version. @item gettext version 0.14.5 (or later) @@ -386,7 +415,7 @@ Necessary to build GCC during development because the generated output files are not included in the SVN repository. They are included in releases. -@item Texinfo version 4.4 (or later) +@item Texinfo version 4.7 (or later) Necessary for running @command{makeinfo} when modifying @file{*.texi} files to test your changes. @@ -416,8 +445,13 @@ snapshots of the development sources are also available via FTP@. Necessary when regenerating @file{Makefile} dependencies in libiberty. Necessary when regenerating @file{libiberty/functions.texi}. Necessary when generating manpages from Texinfo manuals. -Necessary when targetting Darwin, building libstdc++, +Necessary when targetting Darwin, building @samp{libstdc++}, and not using @option{--disable-symvers}. +Necessary when targetting Solaris 2 with Sun @command{ld}, building +@samp{libstdc++}, and not using @option{--disable-symvers}. A helper +scripts needs @samp{Glob.pm}, which is missing from @command{perl} 5.005 +included in Solaris~8. The bundled @command{perl} in Solaris~9 and up +works. Used by various scripts to generate some files included in SVN (mainly Unicode-related and rarely changing) from source tables. @@ -441,6 +475,17 @@ the GCC-specific entry point. You can download a suitable jar from @uref{ftp://sourceware.org/pub/java/}, or by running the script @command{contrib/download_ecj}. +@item antlr.jar version 2.7.1 (or later) +@itemx antlr binary + +If you wish to build the @command{gjdoc} binary in libjava, you will +need to have an @file{antlr.jar} library available. The library is +searched in system locations but can be configured with +@option{--with-antlr-jar=} instead. When configuring with +@option{--enable-java-maintainer-mode}, you will need to have one of +the executables named @command{cantlr}, @command{runantlr} or +@command{antlr} in your path. + @end table @html @@ -495,6 +540,12 @@ components of the binutils you intend to build alongside the compiler (@file{bfd}, @file{binutils}, @file{gas}, @file{gprof}, @file{ld}, @file{opcodes}, @dots{}) to the directory containing the GCC sources. +Likewise the GMP, MPFR and MPC libraries can be automatically built +together with GCC. Unpack the GMP, MPFR and/or MPC source +distributions in the directory containing the GCC sources and rename +their directories to @file{gmp}, @file{mpfr} and @file{mpc}, +respectively (or use symbolic links with the same name). + @html
@@ -524,8 +575,8 @@ We use @var{srcdir} to refer to the toplevel source directory for GCC; we use @var{objdir} to refer to the toplevel build/object directory. If you obtained the sources via SVN, @var{srcdir} must refer to the top -@file{gcc} directory, the one where the @file{MAINTAINERS} can be found, -and not its @file{gcc} subdirectory, otherwise the build will fail. +@file{gcc} directory, the one where the @file{MAINTAINERS} file can be +found, and not its @file{gcc} subdirectory, otherwise the build will fail. If either @var{srcdir} or @var{objdir} is located on an automounted NFS file system, the shell's built-in @command{pwd} command will return @@ -536,7 +587,7 @@ variable to an automounter-aware @command{pwd} command, e.g., phases. First, we @strong{highly} recommend that GCC be built into a -separate directory than the sources which does @strong{not} reside +separate directory from the sources which does @strong{not} reside within the source tree. This is how we generally build GCC; building where @var{srcdir} == @var{objdir} should still work, but doesn't get extensive testing; building where @var{objdir} is a subdirectory @@ -572,9 +623,9 @@ affected by this requirement, see To configure GCC: @smallexample - % mkdir @var{objdir} - % cd @var{objdir} - % @var{srcdir}/configure [@var{options}] [@var{target}] +% mkdir @var{objdir} +% cd @var{objdir} +% @var{srcdir}/configure [@var{options}] [@var{target}] @end smallexample @heading Distributor options @@ -605,13 +656,13 @@ The default value refers to the FSF's GCC bug tracker. @itemize @bullet @item GCC has code to correctly determine the correct value for @var{target} -for nearly all native systems. Therefore, we highly recommend you not -provide a configure target when configuring a native compiler. +for nearly all native systems. Therefore, we highly recommend you do +not provide a configure target when configuring a native compiler. @item @var{target} must be specified as @option{--target=@var{target}} when configuring a cross compiler; examples of valid targets would be -m68k-coff, sh-elf, etc. +m68k-elf, sh-elf, etc. @item Specifying just @var{target} instead of @option{--target=@var{target}} @@ -667,25 +718,42 @@ The default is @file{@var{exec-prefix}/libexec}. Specify the installation directory for the shared libgcc library. The default is @file{@var{libdir}}. +@item --datarootdir=@var{dirname} +Specify the root of the directory tree for read-only architecture-independent +data files referenced by GCC@. The default is @file{@var{prefix}/share}. + @item --infodir=@var{dirname} Specify the installation directory for documentation in info format. -The default is @file{@var{prefix}/info}. +The default is @file{@var{datarootdir}/info}. @item --datadir=@var{dirname} Specify the installation directory for some architecture-independent -data files referenced by GCC@. The default is @file{@var{prefix}/share}. +data files referenced by GCC@. The default is @file{@var{datarootdir}}. + +@item --docdir=@var{dirname} +Specify the installation directory for documentation files (other +than Info) for GCC@. The default is @file{@var{datarootdir}/doc}. + +@item --htmldir=@var{dirname} +Specify the installation directory for HTML documentation files. +The default is @file{@var{docdir}}. + +@item --pdfdir=@var{dirname} +Specify the installation directory for PDF documentation files. +The default is @file{@var{docdir}}. @item --mandir=@var{dirname} Specify the installation directory for manual pages. The default is -@file{@var{prefix}/man}. (Note that the manual pages are only extracts from -the full GCC manuals, which are provided in Texinfo format. The manpages +@file{@var{datarootdir}/man}. (Note that the manual pages are only extracts +from the full GCC manuals, which are provided in Texinfo format. The manpages are derived by an automatic conversion process from parts of the full manual.) @item --with-gxx-include-dir=@var{dirname} Specify -the installation directory for G++ header files. The default is -@file{@var{prefix}/include/c++/@var{version}}. +the installation directory for G++ header files. The default depends +on other configuration options, and differs between cross and native +configurations. @end table @@ -816,7 +884,7 @@ only for the listed packages. For other packages, only static libraries will be built. Package names currently recognized in the GCC tree are @samp{libgcc} (also known as @samp{gcc}), @samp{libstdc++} (not @samp{libstdc++-v3}), @samp{libffi}, @samp{zlib}, @samp{boehm-gc}, -@samp{ada}, @samp{libada}, @samp{libjava} and @samp{libobjc}. +@samp{ada}, @samp{libada}, @samp{libjava}, @samp{libgo}, and @samp{libobjc}. Note @samp{libiberty} does not support shared libraries at all. Use @option{--disable-shared} to build only static libraries. Note that @@ -845,10 +913,6 @@ whether you use the GNU assembler. On any other system, @item @samp{sparc64-@var{any}-solaris2.@var{any}} @end itemize -On the systems listed above (except for the HP-PA, the SPARC, for ISC on -the 386, if you use the GNU assembler, you should also use the GNU linker -(and specify @option{--with-gnu-ld}). - @item @anchor{with-as}--with-as=@var{pathname} Specify that the compiler should use the assembler pointed to by @var{pathname}, rather than the one found by the standard rules to find @@ -950,6 +1014,57 @@ sysv, aix. @end table +@item --with-multilib-list=@var{list} +@itemx --without-multilib-list +Specify what multilibs to build. +Currently only implemented for sh*-*-*. + +@var{list} is a comma separated list of CPU names. These must be of the +form @code{sh*} or @code{m*} (in which case they match the compiler option +for that processor). The list should not contain any endian options - +these are handled by @option{--with-endian}. + +If @var{list} is empty, then there will be no multilibs for extra +processors. The multilib for the secondary endian remains enabled. + +As a special case, if an entry in the list starts with a @code{!} +(exclamation point), then it is added to the list of excluded multilibs. +Entries of this sort should be compatible with @samp{MULTILIB_EXCLUDES} +(once the leading @code{!} has been stripped). + +If @option{--with-multilib-list} is not given, then a default set of +multilibs is selected based on the value of @option{--target}. This is +usually the complete set of libraries, but some targets imply a more +specialized subset. + +Example 1: to configure a compiler for SH4A only, but supporting both +endians, with little endian being the default: +@smallexample +--with-cpu=sh4a --with-endian=little,big --with-multilib-list= +@end smallexample + +Example 2: to configure a compiler for both SH4A and SH4AL-DSP, but with +only little endian SH4AL: +@smallexample +--with-cpu=sh4a --with-endian=little,big --with-multilib-list=sh4al,!mb/m4al +@end smallexample + +@item --with-endian=@var{endians} +Specify what endians to use. +Currently only implemented for sh*-*-*. + +@var{endians} may be one of the following: +@table @code +@item big +Use big endian exclusively. +@item little +Use little endian exclusively. +@item big,little +Use big endian by default. Provide a multilib for little endian. +@item little,big +Use little endian by default. Provide a multilib for big endian. +@end table + @item --enable-threads Specify that the target supports threads. This affects the Objective-C compiler and runtime @@ -998,7 +1113,8 @@ RTEMS thread support. @item single Disable thread support, should work for all platforms. @item solaris -Sun Solaris 2 thread support. +Sun Solaris 2/Unix International thread support. Only use this if you +really need to use this legacy API instead of the default, @samp{posix}. @item vxworks VxWorks thread support. @item win32 @@ -1027,8 +1143,8 @@ Specify which cpu variant the compiler should generate code for by default. This option is only supported on some targets, including ARM, i386, M68k, PowerPC, and SPARC@. The @option{--with-cpu-32} and @option{--with-cpu-64} options specify separate default CPUs for -32-bit and 64-bit modes; these options are only supported for i386 and -x86-64. +32-bit and 64-bit modes; these options are only supported for i386, +x86-64 and PowerPC. @item --with-schedule=@var{cpu} @itemx --with-arch=@var{cpu} @@ -1050,6 +1166,12 @@ of the arguments depend on the target. Specify if the compiler should default to @option{-marm} or @option{-mthumb}. This option is only supported on ARM targets. +@item --with-fpmath=@var{isa} +This options sets @option{-mfpmath=sse} by default and specifies the default +ISA for floating-point arithmetics. You can select either @samp{sse} which +enables @option{-msse2} or @samp{avx} which enables @option{-mavx} by default. +This option is only supported on i386 and x86-64 targets. + @item --with-divide=@var{type} Specify how the compiler should generate code for checking for division by zero. This option is only supported on the MIPS target. @@ -1075,6 +1197,20 @@ not provide them. On MIPS targets, make @option{-mno-llsc} the default when no @option{-mllsc} option is passed. +@item --with-synci +On MIPS targets, make @option{-msynci} the default when no +@option{-mno-synci} option is passed. + +@item --without-synci +On MIPS targets, make @option{-mno-synci} the default when no +@option{-msynci} option is passed. This is the default. + +@item --with-mips-plt +On MIPS targets, make use of copy relocations and PLTs. +These features are extensions to the traditional +SVR4-based MIPS ABIs and require support from GNU binutils +and the runtime C library. + @item --enable-__cxa_atexit Define if you want to use __cxa_atexit, rather than atexit, to register C++ destructors for local statics and global objects. @@ -1083,18 +1219,23 @@ destructors, but requires __cxa_atexit in libc. This option is currently only available on systems with GNU libc. When enabled, this will cause @option{-fuse-cxa-atexit} to be passed by default. +@item --enable-indirect-function +Define if you want to enable the @code{ifunc} attribute. This option is +currently only available on systems with GNU libc on certain targets. + @item --enable-target-optspace Specify that target libraries should be optimized for code space instead of code speed. This is the default for the m32r platform. -@item --disable-cpp -Specify that a user visible @command{cpp} program should not be installed. - @item --with-cpp-install-dir=@var{dirname} Specify that the user visible @command{cpp} program should be installed in @file{@var{prefix}/@var{dirname}/cpp}, in addition to @var{bindir}. +@item --enable-comdat +Enable COMDAT group support. This is primarily used to override the +automatically detected value. + @item --enable-initfini-array Force the use of sections @code{.init_array} and @code{.fini_array} (instead of @code{.init} and @code{.fini}) for constructors and @@ -1103,9 +1244,13 @@ opposite effect. If neither option is specified, the configure script will try to guess whether the @code{.init_array} and @code{.fini_array} sections are supported and, if they are, use them. +@item --enable-build-with-cxx +Build GCC using a C++ compiler rather than a C compiler. This is an +experimental option which may become the default in a later release. + @item --enable-maintainer-mode -The build rules that -regenerate the GCC master message catalog @file{gcc.pot} are normally +The build rules that regenerate the Autoconf and Automake output files as +well as the GCC master message catalog @file{gcc.pot} are normally disabled. This is because it can only be rebuilt if the complete source tree is present. If you have changed the sources and want to rebuild the catalog, configuring with @option{--enable-maintainer-mode} will enable @@ -1121,7 +1266,7 @@ this process, you can configure with @option{--disable-bootstrap}. @item --enable-bootstrap In special cases, you may want to perform a 3-stage build even if the target and host triplets are different. -This could happen when the host can run code compiled for +This is possible when the host can run code compiled for the target (e.g.@: host is i686-linux, target is i486-linux). Starting from GCC 4.2, to do this you have to configure explicitly with @option{--enable-bootstrap}. @@ -1160,15 +1305,12 @@ their runtime libraries should be built. For a list of valid values for grep language= */config-lang.in @end smallexample Currently, you can use any of the following: -@code{all}, @code{ada}, @code{c}, @code{c++}, @code{fortran}, @code{java}, -@code{objc}, @code{obj-c++}. +@code{all}, @code{ada}, @code{c}, @code{c++}, @code{fortran}, +@code{go}, @code{java}, @code{objc}, @code{obj-c++}. Building the Ada compiler has special requirements, see below. If you do not pass this flag, or specify the option @code{all}, then all default languages available in the @file{gcc} sub-tree will be configured. -Ada and Objective-C++ are not default languages; the rest are. -Re-defining @code{LANGUAGES} when calling @samp{make} @strong{does not} -work anymore, as those language sub-directories might not have been -configured! +Ada, Go and Objective-C++ are not default languages; the rest are. @item --enable-stage1-languages=@var{lang1},@var{lang2},@dots{} Specify that a particular subset of compilers and their runtime @@ -1195,6 +1337,16 @@ do a @samp{make -C gcc gnatlib_and_tools}. Specify that the run-time libraries for stack smashing protection should not be built. +@item --disable-libquadmath +Specify that the GCC quad-precision math library should not be built. +On some systems, the library is required to be linkable when building +the Fortran front end, unless @option{--disable-libquadmath-support} +is used. + +@item --disable-libquadmath-support +Specify that the Fortran front end and @code{libgfortran} do not add +support for @code{libquadmath} on systems supporting it. + @item --disable-libgomp Specify that the run-time libraries used by GOMP should not be built. @@ -1211,8 +1363,10 @@ powerpc-linux for powerpc64-linux, only generates 32-bit code. This option enables the 32-bit target to be a bi-arch compiler, which is useful when you want a bi-arch compiler that defaults to 32-bit, and you are building a bi-arch or multi-arch binutils in a combined tree. -Currently, this option only affects sparc-linux, powerpc-linux and -x86-linux. +On mips-linux, this will build a tri-arch compiler (ABI o32/n32/64), +defaulted to o32. +Currently, this option only affects sparc-linux, powerpc-linux, x86-linux +and mips-linux. @item --enable-secureplt This option enables @option{-msecure-plt} by default for powerpc-linux. @@ -1275,7 +1429,8 @@ consistency checks of the requested complexity. This does not change the generated code, but adds error checking within the compiler. This will slow down the compiler and may only work properly if you are building the compiler with GCC@. This is @samp{yes} by default when building -from SVN or snapshots, but @samp{release} for releases. More control +from SVN or snapshots, but @samp{release} for releases. The default +for building the stage1 compiler is @samp{yes}. More control over the checks may be had by specifying @var{list}. The categories of checks available are @samp{yes} (most common checks @samp{assert,misc,tree,gc,rtlflag,runtime}), @samp{no} (no checks at @@ -1294,6 +1449,19 @@ assertions will make the compiler and runtime slightly faster but increase the risk of undetected internal errors causing wrong code to be generated. +@item --disable-stage1-checking +@itemx --enable-stage1-checking +@itemx --enable-stage1-checking=@var{list} +If no @option{--enable-checking} option is specified the stage1 +compiler will be built with @samp{yes} checking enabled, otherwise +the stage1 checking flags are the same as specified by +@option{--enable-checking}. To build the stage1 compiler with +different checking options use @option{--enable-stage1-checking}. +The list of checking options is the same as for @option{--enable-checking}. +If your system is too slow or too small to bootstrap a released compiler +with checking for stage1 enabled, you can use @samp{--disable-stage1-checking} +to disable checking for the stage1 compiler. + @item --enable-coverage @itemx --enable-coverage=@var{level} With this option, the compiler is built to collect self coverage @@ -1384,36 +1552,127 @@ When neither of these configure options are used, the default will be @itemx --with-mpfr=@var{pathname} @itemx --with-mpfr-include=@var{pathname} @itemx --with-mpfr-lib=@var{pathname} -If you do not have GMP (the GNU Multiple Precision library) and the -MPFR Libraries installed in a standard location and you want to build -GCC, you can explicitly specify the directory where they are installed -(@samp{--with-gmp=@var{gmpinstalldir}}, -@samp{--with-mpfr=@var{mpfrinstalldir}}). The +@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 +they are installed (@samp{--with-gmp=@var{gmpinstalldir}}, +@samp{--with-mpfr=@var{mpfrinstalldir}}, +@samp{--with-mpc=@var{mpcinstalldir}}). The @option{--with-gmp=@var{gmpinstalldir}} option is shorthand for @option{--with-gmp-lib=@var{gmpinstalldir}/lib} and @option{--with-gmp-include=@var{gmpinstalldir}/include}. Likewise the @option{--with-mpfr=@var{mpfrinstalldir}} option is shorthand for @option{--with-mpfr-lib=@var{mpfrinstalldir}/lib} and -@option{--with-mpfr-include=@var{mpfrinstalldir}/include}. If these +@option{--with-mpfr-include=@var{mpfrinstalldir}/include}, also the +@option{--with-mpc=@var{mpcinstalldir}} option is shorthand for +@option{--with-mpc-lib=@var{mpcinstalldir}/lib} and +@option{--with-mpc-include=@var{mpcinstalldir}/include}. If these +shorthand assumptions are not correct, you can use the explicit +include and lib options directly. You might also need to ensure the +shared libraries can be found by the dynamic linker when building and +using GCC, for example by setting the runtime shared library path +variable (@env{LD_LIBRARY_PATH} on GNU/Linux and Solaris systems). + +@item --with-ppl=@var{pathname} +@itemx --with-ppl-include=@var{pathname} +@itemx --with-ppl-lib=@var{pathname} +@itemx --with-cloog=@var{pathname} +@itemx --with-cloog-include=@var{pathname} +@itemx --with-cloog-lib=@var{pathname} +If you do not have PPL (the Parma Polyhedra Library) and the CLooG +libraries installed in a standard location and you want to build GCC, +you can explicitly specify the directory where they are installed +(@samp{--with-ppl=@var{pplinstalldir}}, +@samp{--with-cloog=@var{clooginstalldir}}). The +@option{--with-ppl=@var{pplinstalldir}} option is shorthand for +@option{--with-ppl-lib=@var{pplinstalldir}/lib} and +@option{--with-ppl-include=@var{pplinstalldir}/include}. Likewise the +@option{--with-cloog=@var{clooginstalldir}} option is shorthand for +@option{--with-cloog-lib=@var{clooginstalldir}/lib} and +@option{--with-cloog-include=@var{clooginstalldir}/include}. If these shorthand assumptions are not correct, you can use the explicit include and lib options directly. +@item --with-host-libstdcxx=@var{linker-args} +If you are linking with a static copy of PPL, you can use this option +to specify how the linker should find the standard C++ library used +internally by PPL. Typical values of @var{linker-args} might be +@samp{-lstdc++} or @samp{-Wl,-Bstatic,-lstdc++,-Bdynamic -lm}. If you are +linking with a shared copy of PPL, you probably do not need this +option; shared library dependencies will cause the linker to search +for the standard C++ library automatically. + +@item --with-stage1-ldflags=@var{flags} +This option may be used to set linker flags to be used when linking +stage 1 of GCC. These are also used when linking GCC if configured with +@option{--disable-bootstrap}. By default no special flags are used. + +@item --with-stage1-libs=@var{libs} +This option may be used to set libraries to be used when linking stage 1 +of GCC. These are also used when linking GCC if configured with +@option{--disable-bootstrap}. The default is the argument to +@option{--with-host-libstdcxx}, if specified. + +@item --with-boot-ldflags=@var{flags} +This option may be used to set linker flags to be used when linking +stage 2 and later when bootstrapping GCC. If neither --with-boot-libs +nor --with-host-libstdcxx is set to a value, then the default is +@samp{-static-libstdc++ -static-libgcc}. + +@item --with-boot-libs=@var{libs} +This option may be used to set libraries to be used when linking stage 2 +and later when bootstrapping GCC. The default is the argument to +@option{--with-host-libstdcxx}, if specified. + @item --with-debug-prefix-map=@var{map} Convert source directory names using @option{-fdebug-prefix-map} when building runtime libraries. @samp{@var{map}} is a space-separated list of maps of the form @samp{@var{old}=@var{new}}. +@item --enable-linker-build-id +Tells GCC to pass @option{--build-id} option to the linker for all final +links (links performed without the @option{-r} or @option{--relocatable} +option), if the linker supports it. If you specify +@option{--enable-linker-build-id}, but your linker does not +support @option{--build-id} option, a warning is issued and the +@option{--enable-linker-build-id} option is ignored. The default is off. + +@item --enable-gnu-unique-object +@itemx --disable-gnu-unique-object +Tells GCC to use the gnu_unique_object relocation for C++ template +static data members and inline function local statics. Enabled by +default for a native toolchain with an assembler that accepts it and +GLIBC 2.11 or above, otherwise disabled. + +@item --enable-lto +@itemx --disable-lto +Enable support for link-time optimization (LTO). This is enabled by +default, and may be disabled using @option{--disable-lto}. + +@item --enable-gold +Enable support for using @command{gold} as the linker. If gold support is +enabled together with @option{--enable-lto}, an additional directory +@file{lto-plugin} will be built. The code in this directory is a +plugin for gold that allows the link-time optimizer to extract object +files with LTO information out of library archives. See +@option{-flto} and @option{-fwhopr} for details. @end table @subheading Cross-Compiler-Specific Options The following options only apply to building cross compilers. + @table @code @item --with-sysroot @itemx --with-sysroot=@var{dir} -Tells GCC to consider @var{dir} as the root of a tree that contains a -(subset of) the root filesystem of the target operating system. +Tells GCC to consider @var{dir} as the root of a tree that contains +(a subset of) the root filesystem of the target operating system. Target system headers, libraries and run-time object files will be -searched in there. The specified directory is not copied into the +searched in there. More specifically, this acts as if +@option{--sysroot=@var{dir}} was added to the default options of the built +compiler. The specified directory is not copied into the install tree, unlike the options @option{--with-headers} and @option{--with-libs} that this option obsoletes. The default value, in case @option{--with-sysroot} is not given an argument, is @@ -1421,6 +1680,11 @@ in case @option{--with-sysroot} is not given an argument, is subdirectory of @option{$@{exec_prefix@}}, then it will be found relative to the GCC binaries if the installation tree is moved. +This option affects the system root for the compiler used to build +target libraries (which runs on the build system) and the compiler newly +installed with @code{make install}; it does not affect the compiler which is +used to build GCC itself. + @item --with-build-sysroot @itemx --with-build-sysroot=@var{dir} Tells GCC to consider @var{dir} as the system root (see @@ -1453,7 +1717,7 @@ compiler. When crossing to GNU/Linux, you need the headers so GCC can build the exception handling for libgcc. @item --with-libs -@itemx --with-libs=``@var{dir1} @var{dir2} @dots{} @var{dirN}'' +@itemx --with-libs="@var{dir1} @var{dir2} @dots{} @var{dirN}" Deprecated in favor of @option{--with-sysroot}. Specifies a list of directories which contain the target runtime libraries. These libraries will be copied into the @file{gcc} install @@ -1472,7 +1736,7 @@ that will be used while building GCC itself. This option can be useful if the directory layouts are different between the system you are building GCC on, and the system where you will deploy it. -For example, on a @option{ia64-hp-hpux} system, you may have the GNU +For example, on an @samp{ia64-hp-hpux} system, you may have the GNU assembler and linker in @file{/usr/bin}, and the native tools in a different path, and build a toolchain that expects to find the native tools in @file{/usr/bin}. @@ -1575,6 +1839,13 @@ these options. This allows the compile-time linker to resolve dependencies when statically linking to libgcj. However it makes it impossible to override the affected portions of libgcj at run-time. +@item --enable-reduced-reflection +Build most of libgcj with @option{-freduced-reflection}. This reduces +the size of libgcj at the expense of not being able to do accurate +reflection on the classes it contains. This option is safe if you +know that code using libgcj will never use reflection on the standard +runtime classes in libgcj (including using serialization, RMI or CORBA). + @item --with-ecos Enable runtime eCos target support. @@ -1646,6 +1917,9 @@ not specified, then the Python modules are installed in $(prefix)/share/python. @item --enable-aot-compile-rpm Adds aot-compile-rpm to the list of installed scripts. +@item --enable-browser-plugin +Build the gcjwebplugin web browser plugin. + @table @code @item ansi Use the single-byte @code{char} and the Win32 A functions natively, @@ -1704,6 +1978,36 @@ Do not try to compile and run a test libart program. @end table +@subsubheading Overriding @command{configure} test results + +Sometimes, it might be necessary to override the result of some +@command{configure} test, for example in order to ease porting to a new +system or work around a bug in a test. The toplevel @command{configure} +script provides three variables for this: + +@table @code + +@item build_configargs +@cindex @code{build_configargs} +The contents of this variable is passed to all build @command{configure} +scripts. + +@item host_configargs +@cindex @code{host_configargs} +The contents of this variable is passed to all host @command{configure} +scripts. + +@item target_configargs +@cindex @code{target_configargs} +The contents of this variable is passed to all target @command{configure} +scripts. + +@end table + +In order to avoid shell and @command{make} quoting issues for complex +overrides, you can pass a setting for @env{CONFIG_SITE} and set +variables in the site file. + @html
@@ -1765,7 +2069,7 @@ build machinery, not of GCC itself) that is used even if you only build the C front end. When building from SVN or snapshots, or if you modify Texinfo -documentation, you need version 4.4 or later of Texinfo installed if you +documentation, you need version 4.7 or later of Texinfo installed if you want Info documentation to be regenerated. Releases contain Info documentation pre-built for the unmodified documentation in the release. @@ -1816,7 +2120,7 @@ the bootstrap and the final installation. (Libraries will still contain debugging information.) @smallexample - make BOOT_CFLAGS='-O' bootstrap +make BOOT_CFLAGS='-O' bootstrap @end smallexample You can place non-default optimization flags into @code{BOOT_CFLAGS}; they @@ -1834,7 +2138,7 @@ bootstrapped, you can use @code{CFLAGS_FOR_TARGET} to modify their compilation flags, as for non-bootstrapped target libraries. Again, if the native compiler miscompiles the stage1 compiler, you may need to work around this by avoiding non-working parts of the stage1 -compiler. Use @code{STAGE1_LIBCFLAGS} to this end. +compiler. Use @code{STAGE1_TFLAGS} to this end. If you used the flag @option{--enable-languages=@dots{}} to restrict the compilers to be built, only those you've actually enabled will be @@ -1858,6 +2162,81 @@ the one you are building on: for example, you could build a @code{powerpc64-unknown-linux-gnu} host. In this case, pass @option{--enable-bootstrap} to the configure script. +@code{BUILD_CONFIG} can be used to bring in additional customization +to the build. It can be set to a whitespace-separated list of names. +For each such @code{NAME}, top-level @file{config/@code{NAME}.mk} will +be included by the top-level @file{Makefile}, bringing in any settings +it contains. The default @code{BUILD_CONFIG} can be set using the +configure option @option{--with-build-config=@code{NAME}...}. Some +examples of supported build configurations are: + +@table @asis +@item @samp{bootstrap-O1} +Removes any @option{-O}-started option from @code{BOOT_CFLAGS}, and adds +@option{-O1} to it. @samp{BUILD_CONFIG=bootstrap-O1} is equivalent to +@samp{BOOT_CFLAGS='-g -O1'}. + +@item @samp{bootstrap-O3} +Analogous to @code{bootstrap-O1}. + +@item @samp{bootstrap-lto} +Enables Link-Time Optimization for host tools during bootstrapping. +@samp{BUILD_CONFIG=bootstrap-lto} is equivalent to adding +@option{-flto} to @samp{BOOT_CFLAGS}. + +@item @samp{bootstrap-debug} +Verifies that the compiler generates the same executable code, whether +or not it is asked to emit debug information. To this end, this +option builds stage2 host programs without debug information, and uses +@file{contrib/compare-debug} to compare them with the stripped stage3 +object files. If @code{BOOT_CFLAGS} is overridden so as to not enable +debug information, stage2 will have it, and stage3 won't. This option +is enabled by default when GCC bootstrapping is enabled, if +@code{strip} can turn object files compiled with and without debug +info into identical object files. In addition to better test +coverage, this option makes default bootstraps faster and leaner. + +@item @samp{bootstrap-debug-big} +Rather than comparing stripped object files, as in +@code{bootstrap-debug}, this option saves internal compiler dumps +during stage2 and stage3 and compares them as well, which helps catch +additional potential problems, but at a great cost in terms of disk +space. It can be specified in addition to @samp{bootstrap-debug}. + +@item @samp{bootstrap-debug-lean} +This option saves disk space compared with @code{bootstrap-debug-big}, +but at the expense of some recompilation. Instead of saving the dumps +of stage2 and stage3 until the final compare, it uses +@option{-fcompare-debug} to generate, compare and remove the dumps +during stage3, repeating the compilation that already took place in +stage2, whose dumps were not saved. + +@item @samp{bootstrap-debug-lib} +This option tests executable code invariance over debug information +generation on target libraries, just like @code{bootstrap-debug-lean} +tests it on host programs. It builds stage3 libraries with +@option{-fcompare-debug}, and it can be used along with any of the +@code{bootstrap-debug} options above. + +There aren't @code{-lean} or @code{-big} counterparts to this option +because most libraries are only build in stage3, so bootstrap compares +would not get significant coverage. Moreover, the few libraries built +in stage2 are used in stage3 host programs, so we wouldn't want to +compile stage2 libraries with different options for comparison purposes. + +@item @samp{bootstrap-debug-ckovw} +Arranges for error messages to be issued if the compiler built on any +stage is run without the option @option{-fcompare-debug}. This is +useful to verify the full @option{-fcompare-debug} testing coverage. It +must be used along with @code{bootstrap-debug-lean} and +@code{bootstrap-debug-lib}. + +@item @samp{bootstrap-time} +Arranges for the run time of each program started by the GCC driver, +built in any stage, to be logged to @file{time.log}, in the top level of +the build tree. + +@end table @section Building a cross compiler @@ -1865,7 +2244,7 @@ When building a cross compiler, it is not generally possible to do a 3-stage bootstrap of the compiler. This makes for an interesting problem as parts of GCC can only be built with GCC@. -To build a cross compiler, we first recommend building and installing a +To build a cross compiler, we recommend first building and installing a native compiler. You can then use the native GCC compiler to build the cross compiler. The installed native compiler needs to be GCC version 2.95 or later. @@ -1945,7 +2324,7 @@ compilation options. Check your target's definition of @section Building in parallel -GNU Make 3.79 and above, which is necessary to build GCC, support +GNU Make 3.80 and above, which is necessary to build GCC, support building in parallel. To activate this, you can use @samp{make -j 2} instead of @samp{make}. You can also specify a bigger number, and in most cases using a value greater than the number of processors in @@ -1956,7 +2335,7 @@ and network filesystems. @section Building the Ada compiler In order to build GNAT, the Ada compiler, you need a working GNAT -compiler (GCC version 3.4 or later). +compiler (GCC version 4.0 or later). This includes GNAT tools such as @command{gnatmake} and @command{gnatlink}, since the Ada front end is written in Ada and uses some GNAT-specific extensions. @@ -2042,8 +2421,8 @@ environment variables appropriately, as in the following example (which assumes that DejaGnu has been installed under @file{/usr/local}): @smallexample - TCL_LIBRARY = /usr/local/share/tcl8.0 - DEJAGNULIBS = /usr/local/share/dejagnu +TCL_LIBRARY = /usr/local/share/tcl8.0 +DEJAGNULIBS = /usr/local/share/dejagnu @end smallexample (On systems such as Cygwin, these paths are required to be actual @@ -2053,7 +2432,7 @@ portability in the DejaGnu code.) Finally, you can run the testsuite (which may take a long time): @smallexample - cd @var{objdir}; make -k check +cd @var{objdir}; make -k check @end smallexample This will test various components of GCC, such as compiler @@ -2077,14 +2456,14 @@ A more selective way to just run all @command{gcc} execute tests in the testsuite is to use @smallexample - make check-gcc RUNTESTFLAGS="execute.exp @var{other-options}" +make check-gcc RUNTESTFLAGS="execute.exp @var{other-options}" @end smallexample Likewise, in order to run only the @command{g++} ``old-deja'' tests in the testsuite with filenames matching @samp{9805*}, you would use @smallexample - make check-g++ RUNTESTFLAGS="old-deja.exp=9805* @var{other-options}" +make check-g++ RUNTESTFLAGS="old-deja.exp=9805* @var{other-options}" @end smallexample The @file{*.exp} files are located in the testsuite directories of the GCC @@ -2102,7 +2481,7 @@ You can pass multiple options to the testsuite using the work outside the makefiles. For example, @smallexample - make check-g++ RUNTESTFLAGS="--target_board=unix/-O3/-fmerge-constants" +make check-g++ RUNTESTFLAGS="--target_board=unix/-O3/-fmerge-constants" @end smallexample will run the standard @command{g++} testsuites (``unix'' is the target name @@ -2114,7 +2493,7 @@ You can run the testsuites multiple times using combinations of options with a syntax similar to the brace expansion of popular shells: @smallexample - @dots{}"--target_board=arm-sim\@{-mhard-float,-msoft-float\@}\@{-O1,-O2,-O3,\@}" +@dots{}"--target_board=arm-sim\@{-mhard-float,-msoft-float\@}\@{-O1,-O2,-O3,\@}" @end smallexample (Note the empty option caused by the trailing comma in the final group.) @@ -2122,21 +2501,21 @@ The following will run each testsuite eight times using the @samp{arm-sim} target, as if you had specified all possible combinations yourself: @smallexample - --target_board=arm-sim/-mhard-float/-O1 - --target_board=arm-sim/-mhard-float/-O2 - --target_board=arm-sim/-mhard-float/-O3 - --target_board=arm-sim/-mhard-float - --target_board=arm-sim/-msoft-float/-O1 - --target_board=arm-sim/-msoft-float/-O2 - --target_board=arm-sim/-msoft-float/-O3 - --target_board=arm-sim/-msoft-float +--target_board=arm-sim/-mhard-float/-O1 +--target_board=arm-sim/-mhard-float/-O2 +--target_board=arm-sim/-mhard-float/-O3 +--target_board=arm-sim/-mhard-float +--target_board=arm-sim/-msoft-float/-O1 +--target_board=arm-sim/-msoft-float/-O2 +--target_board=arm-sim/-msoft-float/-O3 +--target_board=arm-sim/-msoft-float @end smallexample They can be combined as many times as you wish, in arbitrary ways. This list: @smallexample - @dots{}"--target_board=unix/-Wextra\@{-O3,-fno-strength\@}\@{-fomit-frame,\@}" +@dots{}"--target_board=unix/-Wextra\@{-O3,-fno-strength\@}\@{-fomit-frame,\@}" @end smallexample will generate four combinations, all involving @samp{-Wextra}. @@ -2149,13 +2528,13 @@ do the parallel runs. Instead of using @samp{--target_board}, use a special makefile target: @smallexample - make -j@var{N} check-@var{testsuite}//@var{test-target}/@var{option1}/@var{option2}/@dots{} +make -j@var{N} check-@var{testsuite}//@var{test-target}/@var{option1}/@var{option2}/@dots{} @end smallexample For example, @smallexample - make -j3 check-gcc//sh-hms-sim/@{-m1,-m2,-m3,-m3e,-m4@}/@{,-nofpu@} +make -j3 check-gcc//sh-hms-sim/@{-m1,-m2,-m3,-m3e,-m4@}/@{,-nofpu@} @end smallexample will run three concurrent ``make-gcc'' testsuites, eventually testing all @@ -2214,8 +2593,8 @@ If you want to report the results to the GCC project, use the @file{contrib/test_summary} shell script. Start it in the @var{objdir} with @smallexample - @var{srcdir}/contrib/test_summary -p your_commentary.txt \ - -m gcc-testresults@@gcc.gnu.org |sh +@var{srcdir}/contrib/test_summary -p your_commentary.txt \ + -m gcc-testresults@@gcc.gnu.org |sh @end smallexample This script uses the @command{Mail} program to send the results, so @@ -2246,7 +2625,7 @@ messages may be automatically processed. Now that GCC has been built (and optionally tested), you can install it with @smallexample -cd @var{objdir}; make install +cd @var{objdir} && make install @end smallexample We strongly recommend to install into a target directory where there is @@ -2282,7 +2661,8 @@ jail can be achieved with the command make DESTDIR=@var{path-to-rootdir} install @end smallexample -@noindent where @var{path-to-rootdir} is the absolute path of +@noindent +where @var{path-to-rootdir} is the absolute path of a directory relative to which all installation paths will be interpreted. Note that the directory specified by @code{DESTDIR} need not exist yet; it will be created if necessary. @@ -2296,6 +2676,12 @@ it will not be created otherwise. This is regarded as a feature, not as a bug, because it gives slightly more control to the packagers using the @code{DESTDIR} feature. +You can install stripped programs and libraries with + +@smallexample +make install-strip +@end smallexample + If you are bootstrapping a released version of GCC then please quickly review the build status page for your release, available from @uref{http://gcc.gnu.org/buildstat.html}. @@ -2359,17 +2745,17 @@ incomplete or out of date. Send a note to @email{gcc@@gcc.gnu.org} detailing how the information should be changed. If you find a bug, please report it following the -@uref{../bugs.html,,bug reporting guidelines}. +@uref{../bugs/,,bug reporting guidelines}. If you want to print the GCC manuals, do @samp{cd @var{objdir}; make -dvi}. You will need to have @command{texi2dvi} (version at least 4.4) +dvi}. You will need to have @command{texi2dvi} (version at least 4.7) and @TeX{} installed. This creates a number of @file{.dvi} files in subdirectories of @file{@var{objdir}}; these may be converted for printing with programs such as @command{dvips}. Alternately, by using @samp{make pdf} in place of @samp{make dvi}, you can create documentation in the form of @file{.pdf} files; this requires @command{texi2pdf}, which is included with Texinfo version 4.8 and later. You can also -@uref{http://www.gnu.org/order/order.html,,buy printed manuals from the +@uref{http://shop.fsf.org/,,buy printed manuals from the Free Software Foundation}, though such manuals may not be for the most recent version of GCC@. @@ -2415,10 +2801,10 @@ AIX: @uref{http://www.bullfreeware.com,,Bull's Freeware and Shareware Archive for AIX}; @item -@uref{http://pware.hvcc.edu,,Hudson Valley Community College Open Source Softeware for IBM System p}; +@uref{http://pware.hvcc.edu,,Hudson Valley Community College Open Source Software for IBM System p}; @item -@uref{http://www.perzl.org/aix,,AIX 5L and 6 Open Source Packages}. +@uref{http://www.perzl.org/aix/,,AIX 5L and 6 Open Source Packages}. @end itemize @item @@ -2432,7 +2818,7 @@ Development Tools for the Renesas H8/300[HS] Series}. HP-UX: @itemize @item -@uref{http://hpux.cs.utah.edu/,,HP-UX Porting Center}; +@uref{http://hpux.connect.org.uk/,,HP-UX Porting Center}; @item @uref{ftp://sunsite.informatik.rwth-aachen.de/pub/packages/gcc_hpux/,,Binaries for HP-UX 11.00 at Aachen University of Technology}. @@ -2447,10 +2833,30 @@ Development Tools for the Motorola 68HC11/68HC12}. OpenServer/Unixware}. @item -Solaris 2 (SPARC, Intel)---@uref{http://www.sunfreeware.com/,,Sunfreeware}. +Solaris 2 (SPARC, Intel): +@itemize +@item +@uref{http://www.sunfreeware.com/,,Sunfreeware} + +@item +@uref{http://www.blastwave.org/,,Blastwave} @item -SGI---@uref{http://freeware.sgi.com/,,SGI Freeware}. +@uref{http://www.opencsw.org/,,OpenCSW} + +@item +@uref{http://jupiterrise.com/tgcware/,,TGCware} +@end itemize + +@item +SGI IRIX: +@itemize +@item +@uref{http://nekochan.net/,,Nekoware} + +@item +@uref{http://jupiterrise.com/tgcware/,,TGCware} +@end itemize @item Microsoft Windows: @@ -2480,15 +2886,6 @@ The @uref{http://gcc.gnu.org/wiki/GFortranBinaries,,GFortran Wiki} has links to GNU Fortran binaries for several platforms. @end itemize -In addition to those specific offerings, you can get a binary -distribution CD-ROM from the -@uref{http://www.gnu.org/order/order.html,,Free Software Foundation}. -It contains binaries for a number of platforms, and -includes not only GCC, but other stuff as well. The current CD does -not contain the latest version of GCC, but it should allow -bootstrapping the compiler. An updated version of that disk is in the -works. - @html
@@ -2526,13 +2923,11 @@ information are. @item @uref{#alpha-x-x,,alpha*-*-*} @item -@uref{#alpha-dec-osf,,alpha*-dec-osf*} +@uref{#alpha-dec-osf51,,alpha*-dec-osf5.1} @item @uref{#arc-x-elf,,arc-*-elf} @item @uref{#arm-x-elf,,arm-*-elf} -@uref{#arm-x-coff,,arm-*-coff} -@uref{#arm-x-aout,,arm-*-aout} @item @uref{#avr,,avr} @item @@ -2554,6 +2949,8 @@ information are. @item @uref{#ix86-x-linux,,i?86-*-linux*} @item +@uref{#ix86-x-solaris289,,i?86-*-solaris2.[89]} +@item @uref{#ix86-x-solaris210,,i?86-*-solaris2.10} @item @uref{#ia64-x-linux,,ia64-*-linux} @@ -2564,6 +2961,10 @@ information are. @item @uref{#iq2000-x-elf,,iq2000-*-elf} @item +@uref{#lm32-x-elf,,lm32-*-elf} +@item +@uref{#lm32-x-uclinux,,lm32-*-uclinux} +@item @uref{#m32c-x-elf,,m32c-*-elf} @item @uref{#m32r-x-elf,,m32r-*-elf} @@ -2576,6 +2977,10 @@ information are. @item @uref{#m68k-uclinux,,m68k-uclinux} @item +@uref{#mep-x-elf,,mep-*-elf} +@item +@uref{#microblaze-x-elf,,microblaze-*-elf} +@item @uref{#mips-x-x,,mips-*-*} @item @uref{#mips-sgi-irix5,,mips-sgi-irix5} @@ -2610,9 +3015,11 @@ information are. @item @uref{#x-x-solaris2,,*-*-solaris2*} @item +@uref{#sparc-x-x,,sparc*-*-*} +@item @uref{#sparc-sun-solaris2,,sparc-sun-solaris2*} @item -@uref{#sparc-sun-solaris27,,sparc-sun-solaris2.7} +@uref{#sparc-sun-solaris210,,sparc-sun-solaris2.10} @item @uref{#sparc-x-linux,,sparc-*-linux*} @item @@ -2624,9 +3031,9 @@ information are. @item @uref{#x86-64-x-x,,x86_64-*-*, amd64-*-*} @item -@uref{#xtensa-x-elf,,xtensa-*-elf} +@uref{#xtensa-x-elf,,xtensa*-*-elf} @item -@uref{#xtensa-x-linux,,xtensa-*-linux*} +@uref{#xtensa-x-linux,,xtensa*-*-linux*} @item @uref{#windows,,Microsoft Windows} @item @@ -2634,7 +3041,7 @@ information are. @item @uref{#x-x-interix,,*-*-interix} @item -@uref{#x-x-mingw,,*-*-mingw} +@uref{#x-x-mingw32,,*-*-mingw32} @item @uref{#os2,,OS/2} @item @@ -2667,71 +3074,39 @@ shared libraries. @html