Browse Source

Updated GCC to 3.3.1 with Zack's mini-hint

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@2700 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
Jeremy Utley 22 years ago
parent
commit
40b88c2601

+ 4 - 0
chapter01/changelog.xml

@@ -6,6 +6,10 @@
 
 
 <itemizedlist>
 <itemizedlist>
 
 
+<listitem><para>August 29, 2003 [jeremy] - Updated GCC
+to version 3.3.1, including fixes based on Zack's mini-hint
+for GCC 3.3, and patches from his docs.
+
 <listitem><para>August 28, 2003 [matt] - Updated packages
 <listitem><para>August 28, 2003 [matt] - Updated packages
 to linux-2.4.22, man-pages-1.60, expect-5.39.0,
 to linux-2.4.22, man-pages-1.60, expect-5.39.0,
 findutils-4.1.20 and tcl-8.4.4</para></listitem>
 findutils-4.1.20 and tcl-8.4.4</para></listitem>

+ 2 - 4
chapter04/chapter04.xml

@@ -245,11 +245,9 @@ GCC Patch (&gcc-2953-patch-version;) - &gcc-2953-patch-size;:
 <ulink url="&http;/gcc-&gcc-2953-patch-version;.patch"/>
 <ulink url="&http;/gcc-&gcc-2953-patch-version;.patch"/>
 
 
 GCC Specs Patch:
 GCC Specs Patch:
-<ulink url="&http;/gcc-3.2.3-specs-4.patch"/>
-GCC MMap Test Patch:
-<ulink url="&http;/gcc-3.2.3-mmap_test.patch"/>
+<ulink url="&http;/gcc-3.3.1-specs.patch"/>
 GCC No Fixincludes Patch:
 GCC No Fixincludes Patch:
-<ulink url="&http;/gcc-3.2.3-no_fixincludes.patch"/>
+<ulink url="&http;/gcc-3.3.1-no_fixincludes.patch"/>
 
 
 Kbd Patch (&kbd-patch-version;) - &kbd-patch-size;:
 Kbd Patch (&kbd-patch-version;) - &kbd-patch-size;:
 <ulink url="&http;/kbd-&kbd-patch-version;.patch"/>
 <ulink url="&http;/kbd-&kbd-patch-version;.patch"/>

+ 0 - 3
chapter05/gcc-pass1-inst.xml

@@ -12,9 +12,6 @@ Therefore, if you have defined any environment variables that override
 default optimizations, such as CFLAGS and CXXFLAGS, we recommend unsetting
 default optimizations, such as CFLAGS and CXXFLAGS, we recommend unsetting
 or modifying them when building GCC.</para>
 or modifying them when building GCC.</para>
 
 
-<para><screen><userinput>patch -Np1 -i ../gcc-&gcc-version;-mmap_test.patch
-patch -Np1 -i ../gcc-&gcc-version;-no_fixincludes.patch</userinput></screen></para>
-
 <para>It is recommended by the GCC installation documentation to build
 <para>It is recommended by the GCC installation documentation to build
 GCC outside of the source directory in a dedicated directory:</para>
 GCC outside of the source directory in a dedicated directory:</para>
 
 

+ 2 - 3
chapter05/gcc-pass2-inst.xml

@@ -7,10 +7,9 @@
 They will all unfold into a single <filename>gcc-&gcc-version;/</filename>
 They will all unfold into a single <filename>gcc-&gcc-version;/</filename>
 subdir.</para>
 subdir.</para>
 
 
-<para>First correct two problems and make an essential adjustment:</para>
+<para>First correct one problem and make an essential adjustment:</para>
 
 
-<para><screen><userinput>patch -Np1 -i ../gcc-&gcc-version;-mmap_test.patch
-patch -Np1 -i ../gcc-&gcc-version;-no_fixincludes.patch
+<para><screen><userinput>patch -Np1 -i ../gcc-&gcc-version;-no_fixincludes.patch
 patch -Np1 -i ../gcc-&gcc-specs-version;.patch</userinput></screen></para>
 patch -Np1 -i ../gcc-&gcc-specs-version;.patch</userinput></screen></para>
 
 
 <para>The last patch changes GCC's default location of the dynamic linker,
 <para>The last patch changes GCC's default location of the dynamic linker,

+ 12 - 0
chapter05/lockingglibc.xml

@@ -35,6 +35,18 @@ unset SPECFILE</userinput></screen></para>
 it all in. Or you can edit the specs file by hand if you want to: just replace
 it all in. Or you can edit the specs file by hand if you want to: just replace
 "/lib/ld-linux.so.2" with "/stage1/lib/ld-linux.so.2".</para>
 "/lib/ld-linux.so.2" with "/stage1/lib/ld-linux.so.2".</para>
 
 
+<para>Also, because we allowed GCC's "Fixincludes" script to modify our host's
+header files (and this was necessary because of improper use of the __thread
+keyword in some older software), we want to get rid of those modified header
+files, and replace them with pristine ones.</para>
+
+<para><screen><userinput>GCCDIR=/stage1/lib/gcc-lib/*/*
+rm -rf $GCCDIR/include/*
+cp $GCCDIR/install-tools/include/* $GCCDIR/include
+cp $GCCDIR/install-tools/gsyslimits.h \
+   $GCCDIR/include/syslimits.h
+unset GCCDIR</userinput></screen></para>
+
 <para>This completes the installation of the self-contained toolchain, which
 <para>This completes the installation of the self-contained toolchain, which
 can now be used to build the rest of the temporary tools.</para>
 can now be used to build the rest of the temporary tools.</para>
 
 

+ 3 - 2
chapter06/gcc-inst.xml

@@ -11,12 +11,13 @@ or modifying them when building GCC.</para>
 
 
 <para>This time we will build both the C and the C++ compiler, so you'll have
 <para>This time we will build both the C and the C++ compiler, so you'll have
 to unpack the GCC-core <emphasis>and</emphasis> the GCC-g++ tarball -- they
 to unpack the GCC-core <emphasis>and</emphasis> the GCC-g++ tarball -- they
-will unfold into the same directory. The full GCC package contains even more
+will unfold into the same directory. You should likewise extract the
+GCC-testsuite package. The full GCC package contains even more
 compilers. Instructions for building these can be found at
 compilers. Instructions for building these can be found at
 <ulink url="&blfs-root;view/cvs/general/gcc.html"/>.</para>
 <ulink url="&blfs-root;view/cvs/general/gcc.html"/>.</para>
 
 
 <para><screen><userinput>patch -Np1 -i ../gcc-&gcc-version;-no_fixincludes.patch
 <para><screen><userinput>patch -Np1 -i ../gcc-&gcc-version;-no_fixincludes.patch
-patch -Np1 -i ../gcc-&gcc-version;-mmap_test.patch</userinput></screen></para>
+</userinput></screen></para>
 
 
 <para>GCC's installation documentation recommends to build the package in a
 <para>GCC's installation documentation recommends to build the package in a
 dedicated directory separate from the source tree. Create this build
 dedicated directory separate from the source tree. Create this build

+ 2 - 2
entities/gcc.ent

@@ -16,8 +16,8 @@
 <!ENTITY aa-gcc-dep SYSTEM "../appendixa/gcc-dep.xml">
 <!ENTITY aa-gcc-dep SYSTEM "../appendixa/gcc-dep.xml">
 <!ENTITY aa-gcc-down SYSTEM "../appendixa/gcc-down.xml">
 <!ENTITY aa-gcc-down SYSTEM "../appendixa/gcc-down.xml">
 
 
-<!ENTITY gcc-version "3.2.3">
-<!ENTITY gcc-specs-version "3.2.3-specs-4">
+<!ENTITY gcc-version "3.3.1">
+<!ENTITY gcc-specs-version "3.3.1-specs">
 <!ENTITY gcc-depversion "2.95.3">
 <!ENTITY gcc-depversion "2.95.3">
 <!ENTITY gcc-contversion "3.1">
 <!ENTITY gcc-contversion "3.1">
 <!ENTITY gcc-core-size "13,140 KB">
 <!ENTITY gcc-core-size "13,140 KB">