aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Burgess <matthew@linuxfromscratch.org>2011-03-30 20:24:53 +0000
committerMatthew Burgess <matthew@linuxfromscratch.org>2011-03-30 20:24:53 +0000
commit8aad43851e5620aca6ffff1e9bf94a64a60ca410 (patch)
tree26d96ed3bbb0e7a59fb6aca9ee774b0ba285f4be
parent2285de1012ba392f5c0e88c0f0589f8f3d9af029 (diff)
Upgrade to GCC-4.6.0. Fixes #2847.
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@9493 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
-rw-r--r--chapter01/changelog.xml4
-rw-r--r--chapter01/whatsnew.xml7
-rw-r--r--chapter03/patches.xml8
-rw-r--r--chapter05/gcc-pass1.xml35
-rw-r--r--chapter05/gcc-pass2.xml1
-rw-r--r--chapter06/binutils.xml2
-rw-r--r--chapter06/grub.xml3
-rw-r--r--packages.ent6
-rw-r--r--patches.ent4
9 files changed, 41 insertions, 29 deletions
diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml
index a4b802abf..63403ef8a 100644
--- a/chapter01/changelog.xml
+++ b/chapter01/changelog.xml
@@ -40,6 +40,10 @@
<para>2011-03-30</para>
<itemizedlist>
<listitem>
+ <para>[matthew] - Upgrade to GCC-4.6.0. Fixes
+ <ulink url="&lfs-ticket-root;2848">#2848</ulink>.</para>
+ </listitem>
+ <listitem>
<para>[matthew] - Upgrade to Linux-2.6.38.2. Fixes
<ulink url="&lfs-ticket-root;2847">#2847</ulink>.</para>
</listitem>
diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml
index cfeb8d05e..65bde1784 100644
--- a/chapter01/whatsnew.xml
+++ b/chapter01/whatsnew.xml
@@ -73,9 +73,9 @@
<!--<listitem>
<para>Gawk &gawk-version;</para>
</listitem>-->
- <!--<listitem>
+ <listitem>
<para>GCC &gcc-version;</para>
- </listitem>-->
+ </listitem>
<!--<listitem>
<para>GDBM &gdbm-version;</para>
</listitem>-->
@@ -225,6 +225,9 @@
<para>coreutils-&coreutils-version;-sparse_fiemap-1.patch</para>
</listitem>
<listitem>
+ <para>&gcc-crosscompile-patch;</para>
+ </listitem>
+ <listitem>
<para>readline-&readline-version;-fixes-1.patch</para>
</listitem>
<listitem>
diff --git a/chapter03/patches.xml b/chapter03/patches.xml
index 9057463ed..4d70b0527 100644
--- a/chapter03/patches.xml
+++ b/chapter03/patches.xml
@@ -67,6 +67,14 @@
</varlistentry>
<varlistentry>
+ <term>GCC Cross Compile Patch - <token>&gcc-crosscompile-patch-size;</token>:</term>
+ <listitem>
+ <para>Download: <ulink url="&patches-root;&gcc-crosscompile-patch;"/></para>
+ <para>MD5 sum: <literal>&gcc-crosscompile-patch-md5;</literal></para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
<term>GCC Startfiles Fix Patch - <token>&gcc-startfiles-patch-size;</token>:</term>
<listitem>
<para>Download: <ulink url="&patches-root;&gcc-startfiles-patch;"/></para>
diff --git a/chapter05/gcc-pass1.xml b/chapter05/gcc-pass1.xml
index 9420e5df6..5d21228ef 100644
--- a/chapter05/gcc-pass1.xml
+++ b/chapter05/gcc-pass1.xml
@@ -56,6 +56,12 @@ mv -v gmp-&gmp-version; gmp
tar -zxf ../mpc-&mpc-version;.tar.gz
mv -v mpc-&mpc-version; mpc</userinput></screen>
+<para>Apply a patch that will allow the building of the libiberty and zlib
+target libraries to be disabled as these do not build correctly in a
+cross-compiled environment:</para>
+
+<screen><userinput remap="pre">patch -Np1 -i ../&gcc-crosscompile-patch;</userinput></screen>
+
<para>The GCC documentation recommends building GCC outside of the
source directory in a dedicated build directory:</para>
@@ -69,9 +75,9 @@ cd ../gcc-build</userinput></screen>
--disable-nls --disable-shared --disable-multilib \
--disable-decimal-float --disable-threads \
--disable-libmudflap --disable-libssp \
- --disable-libgomp --enable-languages=c \
- --with-gmp-include=$(pwd)/gmp --with-gmp-lib=$(pwd)/gmp/.libs \
- --without-ppl --without-cloog</userinput></screen>
+ --disable-libgomp --disable-libquadmath \
+ --disable-target-libiberty --disable-target-zlib \
+ --enable-languages=c --without-ppl --without-cloog</userinput></screen>
<variablelist>
<title>The meaning of the configure options:</title>
@@ -86,11 +92,12 @@ cd ../gcc-build</userinput></screen>
</varlistentry>
<varlistentry>
- <term><parameter>--disable-decimal-float, --disable-threads, --disable-libmudflap, --disable-libssp, --disable-libgomp</parameter></term>
+ <term><parameter>--disable-decimal-float, --disable-threads, --disable-libmudflap, --disable-libssp, --disable-libgomp, --disable-libquadmath --disable-target-libiberty --disable-target-zlib</parameter></term>
<listitem>
- <para>These switches disable support for the decimal floating point extension,
- threading, libmudflap, libssp and libgomp respectively. These features will fail
- to compile when building a cross-compiler and are not necessary for the task of
+ <para>These switches disable support for the decimal floating point
+ extension, threading, libmudflap, libssp and libgomp, libquadmath,
+ libiberty and zlib 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>
</listitem>
</varlistentry>
@@ -112,20 +119,6 @@ cd ../gcc-build</userinput></screen>
</varlistentry>
<varlistentry>
- <term><parameter>--with-gmp-include=...</parameter></term>
- <listitem>
- <para>This option tells GCC where the GMP headers are located.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term><parameter>--with-gmp-lib=...</parameter></term>
- <listitem>
- <para>This option tells GCC where the GMP library is located.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
<term><parameter>--without-ppl, --without-cloog</parameter></term>
<listitem>
<para>These switches prevent GCC from building against the PPL and
diff --git a/chapter05/gcc-pass2.xml b/chapter05/gcc-pass2.xml
index e191e7b84..85c1a5763 100644
--- a/chapter05/gcc-pass2.xml
+++ b/chapter05/gcc-pass2.xml
@@ -157,7 +157,6 @@ cd ../gcc-build</userinput></screen>
--enable-__cxa_atexit --enable-languages=c,c++ \
--disable-libstdcxx-pch --disable-multilib \
--disable-bootstrap --disable-libgomp \
- --with-gmp-include=$(pwd)/gmp --with-gmp-lib=$(pwd)/gmp/.libs \
--without-ppl --without-cloog</userinput></screen>
<variablelist>
diff --git a/chapter06/binutils.xml b/chapter06/binutils.xml
index 9f11bacee..521eb659a 100644
--- a/chapter06/binutils.xml
+++ b/chapter06/binutils.xml
@@ -108,7 +108,7 @@ cd ../binutils-build</userinput></screen>
<para>Test the results:</para>
-<screen><userinput remap="test">make check</userinput></screen>
+<screen><userinput remap="test">make -j check || true</userinput></screen>
<para>Install the package:</para>
diff --git a/chapter06/grub.xml b/chapter06/grub.xml
index 6544a5217..dcea697d6 100644
--- a/chapter06/grub.xml
+++ b/chapter06/grub.xml
@@ -46,7 +46,8 @@
--sysconfdir=/etc \
--disable-grub-emu-usb \
--disable-grub-fstest \
- --disable-efiemu</userinput></screen>
+ --disable-efiemu \
+ --disable-werror</userinput></screen>
<para>The --disable switches minimize what is built by disabling features
and testing programs not really needed for LFS.</para>
diff --git a/packages.ent b/packages.ent
index c2658cd56..363566e50 100644
--- a/packages.ent
+++ b/packages.ent
@@ -161,10 +161,10 @@
<!ENTITY gawk-ch6-du "19 MB">
<!ENTITY gawk-ch6-sbu "0.2 SBU">
-<!ENTITY gcc-version "4.5.2">
-<!ENTITY gcc-size "64,774 KB">
+<!ENTITY gcc-version "4.6.0">
+<!ENTITY gcc-size "69,902 KB">
<!ENTITY gcc-url "&gnu;gcc/gcc-&gcc-version;/gcc-&gcc-version;.tar.bz2">
-<!ENTITY gcc-md5 "d6559145853fbaaa0fd7556ed93bce9a">
+<!ENTITY gcc-md5 "93d1c436bf991564524701259b6285a2">
<!ENTITY gcc-home "http://gcc.gnu.org/">
<!ENTITY gcc-ch5p1-du "809 MB">
<!ENTITY gcc-ch5p1-sbu "5.0 SBU">
diff --git a/patches.ent b/patches.ent
index cbf2a7a9e..060023ff8 100644
--- a/patches.ent
+++ b/patches.ent
@@ -35,6 +35,10 @@
<!ENTITY flex-gcc-patch-size "1 KB">
+<!ENTITY gcc-crosscompile-patch "gcc-&gcc-version;-cross_compile-1.patch">
+<!ENTITY gcc-crosscompile-patch-md5 "1b7886a7a4df3a48617e88a481862264">
+<!ENTITY gcc-crosscompile-patch-size "1.8 KB">
+
<!ENTITY gcc-startfiles-patch "gcc-&gcc-version;-startfiles_fix-1.patch">
<!ENTITY gcc-startfiles-patch-md5 "799ef1971350d2e3c794f2123f247cc6">
<!ENTITY gcc-startfiles-patch-size "1.5 KB">