Jelajahi Sumber

Upgrade to GCC-4.8.0. Fixes #3312.

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@10220 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
Matthew Burgess 12 tahun lalu
induk
melakukan
908077d7f8

+ 5 - 0
chapter01/changelog.xml

@@ -39,6 +39,11 @@
     <listitem>
       <para>2013-03-28</para>
       <itemizedlist>
+        <listitem>
+          <para>[matthew] - Upgrade to GCC-4.8.0. Fixes
+          <ulink url="&lfs-ticket-root;3312">#3312</ulink>. Thanks to Pierre
+          Labastie for the patch on which this was based.</para>
+        </listitem>
         <listitem>
           <para>[matthew] - Upgrade to Linux-3.8.4. Fixes
           <ulink url="&lfs-ticket-root;3310">#3310</ulink>.</para>

+ 2 - 2
chapter01/whatsnew.xml

@@ -76,9 +76,9 @@
     <!--<listitem>
       <para>Gawk &gawk-version;</para>
     </listitem>-->
-    <!--<listitem>
+    <listitem>
       <para>GCC &gcc-version;</para>
-    </listitem>-->
+    </listitem>
     <!--<listitem>
       <para>GDBM &gdbm-version;</para>
     </listitem>-->

+ 1 - 0
chapter05/chapter05.xml

@@ -18,6 +18,7 @@
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="gcc-pass1.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="linux-headers.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="glibc.xml"/>
+  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="libstdc++.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="binutils-pass2.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="gcc-pass2.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="tcl.xml"/>

+ 16 - 8
chapter05/gcc-pass1.xml

@@ -131,11 +131,15 @@ cd ../gcc-build</userinput></screen>
     --disable-multilib         \
     --disable-decimal-float    \
     --disable-threads          \
-    --disable-libmudflap       \
-    --disable-libssp           \
+    --disable-libatomic        \
     --disable-libgomp          \
+    --disable-libitm           \
+    --disable-libmudflap       \
     --disable-libquadmath      \
-    --enable-languages=c       \
+    --disable-libsanitizer     \
+    --disable-libssp           \
+    --disable-libstdc++-v3     \
+    --enable-languages=c,c++   \
     --with-mpfr-include=$(pwd)/../gcc-&gcc-version;/mpfr/src \
     --with-mpfr-lib=$(pwd)/mpfr/src/.libs</userinput></screen>
 
@@ -193,10 +197,14 @@ cd ../gcc-build</userinput></screen>
       </varlistentry>
 
       <varlistentry>
-        <term><parameter>--disable-decimal-float, --disable-threads, --disable-libmudflap, --disable-libssp, --disable-libgomp, --disable-libquadmath</parameter></term>
+        <term><parameter>--disable-decimal-float, --disable-threads,
+        --disable-libatomic, --disable-libgomp, --disable-libitm,
+        --disable-libmudflap, --disable-libquadmath, --disable-libsanitizer,
+        --disable-libssp, --disable-libstdc++-v3</parameter></term>
         <listitem>
           <para>These switches disable support for the decimal floating point
-          extension, threading, libmudflap, libssp and libgomp and libquadmath
+          extension, threading, libatomic, libgomp, libitm, libmudflap,
+          libquadmath, libsanitizer, libssp and the C++ standard library
           respectively. These features will fail to compile when building a
           cross-compiler and are not necessary for the task of cross-compiling
           the temporary libc.</para>
@@ -212,10 +220,10 @@ cd ../gcc-build</userinput></screen>
       </varlistentry>
 
       <varlistentry>
-        <term><parameter>--enable-languages=c</parameter></term>
+        <term><parameter>--enable-languages=c,c++</parameter></term>
         <listitem>
-          <para>This option ensures that only the C compiler is built.
-          This is the only language needed now.</para>
+          <para>This option ensures that only the C and C++ compilers are built.
+          These are the only languages needed now.</para>
         </listitem>
       </varlistentry>
 

+ 1 - 0
chapter05/gcc-pass2.xml

@@ -113,6 +113,7 @@ cd ../gcc-build</userinput></screen>
     <para>Now prepare GCC for compilation:</para>
 
 <screen><userinput remap="configure">CC=$LFS_TGT-gcc \
+CXX=$LFS_TGT-g++                \
 AR=$LFS_TGT-ar                  \
 RANLIB=$LFS_TGT-ranlib          \
 ../gcc-&gcc-version;/configure          \

+ 6 - 3
packages.ent

@@ -166,10 +166,10 @@
 <!ENTITY gawk-ch6-du "30 MB">
 <!ENTITY gawk-ch6-sbu "0.2 SBU">
 
-<!ENTITY gcc-version "4.7.2">
-<!ENTITY gcc-size "80,942 KB">
+<!ENTITY gcc-version "4.8.0">
+<!ENTITY gcc-size "84,633 KB">
 <!ENTITY gcc-url "&gnu;gcc/gcc-&gcc-version;/gcc-&gcc-version;.tar.bz2">
-<!ENTITY gcc-md5 "cc308a0891e778cfda7a151ab8a6e762">
+<!ENTITY gcc-md5 "e6040024eb9e761c3bea348d1fa5abb0">
 <!ENTITY gcc-home "http://gcc.gnu.org/">
 <!ENTITY gcc-ch5p1-du "1.4 GB">
 <!ENTITY gcc-ch5p1-sbu "5.5 SBU">
@@ -318,6 +318,9 @@
 <!ENTITY libpipeline-ch6-du "7.4 MB">
 <!ENTITY libpipeline-ch6-sbu "0.2 SBU">
 
+<!ENTITY libstdcpp-ch5-du "734 MB">
+<!ENTITY libstdcpp-ch5-sbu "0.4 SBU">
+
 <!ENTITY libtool-version "2.4.2">
 <!ENTITY libtool-size "2,571 KB">
 <!ENTITY libtool-url "&gnu;libtool/libtool-&libtool-version;.tar.gz">

+ 2 - 1
prologue/hostreqs.xml

@@ -61,7 +61,7 @@
     </listitem>
 
     <listitem>
-      <para><emphasis role="strong">Gcc-4.1.2</emphasis> (Versions
+      <para><emphasis role="strong">GCC-4.1.2</emphasis> (Versions
       greater than &gcc-version; are not recommended as they have not
       been tested)</para>
     </listitem>
@@ -170,6 +170,7 @@ if [ -e /usr/bin/awk ];
   else echo "awk not found"; fi
 
 gcc --version | head -n1
+g++ --version | head -n1
 ldd --version | head -n1 | cut -d" " -f2-  # glibc version
 grep --version | head -n1
 gzip --version | head -n1