Author: jhuntwork
Date: 2008-10-19 13:19:00 -0600 (Sun, 19 Oct 2008)
New Revision: 8674

Modified:
   branches/jh/BOOK/chapter01/changelog.xml
   branches/jh/BOOK/chapter05/gcc-pass1.xml
   branches/jh/BOOK/chapter05/gcc-pass2.xml
Log:
Moved gcc's bootstrap in the jh branch back to pass 1

Modified: branches/jh/BOOK/chapter01/changelog.xml
===================================================================
--- branches/jh/BOOK/chapter01/changelog.xml    2008-10-19 18:33:25 UTC (rev 
8673)
+++ branches/jh/BOOK/chapter01/changelog.xml    2008-10-19 19:19:00 UTC (rev 
8674)
@@ -38,6 +38,17 @@
 -->
 
     <listitem>
+      <para>2008-10-19</para>
+      <itemizedlist>
+        <listitem>
+          <para>[jhuntwork] - Move GCC's bootstrap back to pass 1 to 
correspond more closely
+         with trunk. Cross compilation methods in the future can address the 
issues originally
+         bypassed by moving the bootstrap to pass 2.</para>
+        </listitem>
+      </itemizedlist>
+    </listitem>
+
+    <listitem>
       <para>2008-10-18</para>
       <itemizedlist>
         <listitem>
@@ -48,7 +59,6 @@
       </itemizedlist>
     </listitem>
 
-
     <listitem>
       <para>2008-10-15</para>
       <itemizedlist>

Modified: branches/jh/BOOK/chapter05/gcc-pass1.xml
===================================================================
--- branches/jh/BOOK/chapter05/gcc-pass1.xml    2008-10-19 18:33:25 UTC (rev 
8673)
+++ branches/jh/BOOK/chapter05/gcc-pass1.xml    2008-10-19 19:19:00 UTC (rev 
8674)
@@ -112,18 +112,15 @@
         </listitem>
       </varlistentry>
 
-      <varlistentry>
-        <term><parameter>--disable-bootstrap</parameter></term>
-        <listitem>
-          <para>Bootstrapping the compiler is now the default for GCC. However,
-          bootstrapping now would mean using our new Binutils to link against
-         the host's libc, which in some cases produces unexpected 
results.</para>
-        </listitem>
-      </varlistentry>
-
     </variablelist>
 
-    <para>Continue with compiling by running:</para>
+    <para>The following command will compile GCC not once, but several times. 
It
+    uses the programs compiled in a first round to compile itself a second 
time,
+    and then again a third time. It then compares these second and third 
compiles
+    to make sure it can reproduce itself flawlessly. This is called
+    <quote>bootstrapping</quote>. Building GCC in this way ensures that it was
+    compiled correctly and is now the default configuration for the released
+    package. Continue with compiling by running:</para>
 
 <screen><userinput remap="make">make</userinput></screen>
 

Modified: branches/jh/BOOK/chapter05/gcc-pass2.xml
===================================================================
--- branches/jh/BOOK/chapter05/gcc-pass2.xml    2008-10-19 18:33:25 UTC (rev 
8673)
+++ branches/jh/BOOK/chapter05/gcc-pass2.xml    2008-10-19 19:19:00 UTC (rev 
8674)
@@ -80,6 +80,16 @@
 <screen><userinput remap="pre">cp -v gcc/Makefile.in{,.orig}
 sed '[EMAIL PROTECTED]/[EMAIL PROTECTED] true@' gcc/Makefile.in.orig &gt; 
gcc/Makefile.in</userinput></screen>
 
+    <para>The bootstrap build performed in <xref linkend="ch-tools-gcc-pass1"/>
+    built GCC with the <option>-fomit-frame-pointer</option> compiler flag.
+    Non-bootstrap builds omit this flag by default, so apply the following
+    <command>sed</command> to use it in order to ensure consistent compiler
+    builds:</para>
+
+<screen><userinput remap="pre">cp -v gcc/Makefile.in{,.tmp}
+sed 's/^XCFLAGS =$/&amp; -fomit-frame-pointer/' gcc/Makefile.in.tmp \
+  &gt; gcc/Makefile.in</userinput></screen>
+
     <para>The following command will change the location of GCC's default
     dynamic linker to use the one we installed in
     <filename class="directory">/tools</filename>. It also removes <filename
@@ -146,7 +156,8 @@
     --with-local-prefix=/tools --enable-clocale=gnu \
     --enable-shared --enable-threads=posix \
     --enable-__cxa_atexit --enable-languages=c,c++ \
-    --disable-libstdcxx-pch --disable-multilib</userinput></screen>
+    --disable-libstdcxx-pch --disable-multilib \
+    --disable-bootstrap</userinput></screen>
 
     <variablelist>
       <title>The meaning of the new configure options:</title>
@@ -201,15 +212,18 @@
         </listitem>
       </varlistentry>
 
+      <varlistentry>
+        <term><parameter>--disable-bootstrap</parameter></term>
+        <listitem>
+          <para>Bootstrapping the compiler is now the default for GCC. However,
+          our build method should provide us with a solid compiler without the
+          need to bootstrap each time.</para>
+        </listitem>
+      </varlistentry>
+
     </variablelist>
 
-    <para>The following command will compile GCC not once, but several times. 
It
-    uses the programs compiled in a first round to compile itself a second 
time,
-    and then again a third time. It then compares these second and third 
compiles
-    to make sure it can reproduce itself flawlessly. This is called
-    <quote>bootstrapping</quote>. Building GCC in this way ensures that it was
-    compiled correctly and is now the default configuration for the released
-    package. Continue with compiling by running:</para>
+    <para>Compile the package:</para>
 
 <screen><userinput remap="make">make</userinput></screen>
 

-- 
http://linuxfromscratch.org/mailman/listinfo/lfs-book
FAQ: http://www.linuxfromscratch.org/lfs/faq.html
Unsubscribe: See the above information page

Reply via email to