aboutsummaryrefslogtreecommitdiffstats
path: root/chapter05/gcc-pass2.xml
diff options
context:
space:
mode:
Diffstat (limited to 'chapter05/gcc-pass2.xml')
-rw-r--r--chapter05/gcc-pass2.xml45
1 files changed, 33 insertions, 12 deletions
diff --git a/chapter05/gcc-pass2.xml b/chapter05/gcc-pass2.xml
index 6083c2fad..f2bff6f2a 100644
--- a/chapter05/gcc-pass2.xml
+++ b/chapter05/gcc-pass2.xml
@@ -3,7 +3,7 @@
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
-<sect1 id="ch-tools-gcc-pass2">
+<sect1 id="ch-tools-gcc-pass2" role="wrap">
<title>GCC-&gcc-version; - Pass 2</title>
<?dbhtml filename="gcc-pass2.html"?>
@@ -11,11 +11,17 @@
<primary sortas="a-GCC">GCC</primary>
<secondary>tools, pass 2</secondary></indexterm>
-<screen>&buildtime; 11.0 SBU
-&diskspace; 274 MB</screen>
+<sect2 role="package"><title/>
+<segmentedlist>
+<segtitle>&buildtime;</segtitle>
+<segtitle>&diskspace;</segtitle>
+<seglistitem><seg>11.0 SBU</seg><seg>274 MB</seg></seglistitem>
+</segmentedlist>
-<sect2>
+</sect2>
+
+<sect2 role="installation">
<title>Re-installation of GCC</title>
<para>The tools required to test GCC and Binutils are installed now: Tcl,
@@ -90,32 +96,47 @@ variables that override the default optimization flags.</para>
<para>The meaning of the new configure options:</para>
-<itemizedlist>
-<listitem><para><userinput>--enable-clocale=gnu</userinput>: This option
+<variablelist>
+<varlistentry>
+<term><userinput>--enable-clocale=gnu</userinput></term>
+<listitem><para>This option
ensures the correct locale model is selected for the C++ libraries under all
circumstances. If the configure script finds the <emphasis>de_DE</emphasis>
locale installed, it will select the correct <emphasis>gnu</emphasis> locale
model. However, people who don't install the <emphasis>de_DE</emphasis> locale
would run the risk of building ABI incompatible C++ libraries due to the wrong
<emphasis>generic</emphasis> locale model being selected.</para></listitem>
+</varlistentry>
-<listitem><para><userinput>--enable-threads=posix</userinput>: This enables
+<varlistentry>
+<term><userinput>--enable-threads=posix</userinput></term>
+<listitem><para>This enables
C++ exception handling for multi-threaded code.</para></listitem>
+</varlistentry>
-<listitem><para><userinput>--enable-__cxa_atexit</userinput>: This option
+<varlistentry>
+<term><userinput>--enable-__cxa_atexit</userinput></term>
+<listitem><para>This option
allows use of __cxa_atexit, rather than atexit, to register C++ destructors for
local statics and global objects and is essential for fully standards-compliant
handling of destructors. It also affects the C++ ABI and therefore results in
C++ shared libraries and C++ programs that are interoperable with other Linux
distributions.</para></listitem>
+</varlistentry>
-<listitem><para><userinput>--enable-languages=c,c++</userinput>: This option
+<varlistentry>
+<term><userinput>--enable-languages=c,c++</userinput></term>
+<listitem><para>This option
ensures that both the C and C++ compilers are built.</para></listitem>
+</varlistentry>
-<listitem><para><userinput>--disable-libstdcxx-pch</userinput>: Don't build the
+<varlistentry>
+<term><userinput>--disable-libstdcxx-pch</userinput></term>
+<listitem><para>Don't build the
PCH (pre-compiled header) for libstdc++. It takes up a ton of space, and we
have no use for it.</para></listitem>
-</itemizedlist>
+</varlistentry>
+</variablelist>
<para>Compile the package:</para>
@@ -164,7 +185,7 @@ GCC Specs patch.</para></note>
</sect2>
-<sect2><title/>
+<sect2 role="content"><title/>
<para>The details on this package are found in <xref linkend="contents-gcc"/>.</para>
</sect2>