浏览代码

Update bootscripts for eudev.
Add gcc patch for upstream changes.</para>
Change explanation for using omit-frame-pointer in gcc-pass2.


git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@10560 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

Bruce Dubbs 11 年之前
父节点
当前提交
f6fe5000d7

+ 1 - 1
appendices/dependencies.xml

@@ -97,7 +97,7 @@
         <segtitle>&before;</segtitle>
 
         <seglistitem>
-          <seg>Acli, Libcap</seg>
+          <seg>Acl, Libcap</seg>
         </seglistitem>
       </segmentedlist>
 

+ 1 - 2
bootscripts/Makefile

@@ -28,8 +28,7 @@ create-dirs:
 	install -d -m ${DIRMODE}  ${MAN8}
 	install -d -m ${DIRMODE}  ${SBIN}
 	ln -sfn       services    ${LIBDIR}/lsb
-	ln -sfn       rc.d/init.d ${ETCDIR}/init.d-sysv
-	ln -sfn       init.d-sysv ${ETCDIR}/init.d
+	ln -sfn       rc.d/init.d ${ETCDIR}/init.d
 
 files: create-dirs 
 	install -m ${MODE} lfs/init.d/checkfs       ${ETCDIR}/rc.d/init.d/

+ 5 - 5
bootscripts/lfs/init.d/udev

@@ -49,17 +49,17 @@ case "${1}" in
 
       # Start the udev daemon to continually watch for, and act on,
       # uevents
-      /lib/systemd/systemd-udevd --daemon
+      /sbin/udevd --daemon
 
       # Now traverse /sys in order to "coldplug" devices that have
       # already been discovered
-      /bin/udevadm trigger --action=add    --type=subsystems
-      /bin/udevadm trigger --action=add    --type=devices
-      /bin/udevadm trigger --action=change --type=devices
+      /sbin/udevadm trigger --action=add    --type=subsystems
+      /sbin/udevadm trigger --action=add    --type=devices
+      /sbin/udevadm trigger --action=change --type=devices
 
       # Now wait for udevd to process the uevents we triggered
       if ! is_true "$OMIT_UDEV_SETTLE"; then
-         /bin/udevadm settle
+         /sbin/udevadm settle
       fi
 
       # If any LVM based partitions are on the system, ensure they

+ 3 - 3
bootscripts/lfs/init.d/udev_retry

@@ -35,7 +35,7 @@ case "${1}" in
       log_info_msg "Retrying failed uevents, if any..."
 
       # As of udev-186, the --run option is no longer valid
-      #rundir=$(/bin/udevadm info --run)
+      #rundir=$(/sbin/udevadm info --run)
       rundir=/run/udev
       # From Debian: "copy the rules generated before / was mounted
       # read-write":
@@ -52,13 +52,13 @@ case "${1}" in
       /bin/sed -e 's/#.*$//' /etc/sysconfig/udev_retry | /bin/grep -v '^$' | \
       while read line ; do
          for subsystem in $line ; do
-            /bin/udevadm trigger --subsystem-match=$subsystem --action=add
+            /sbin/udevadm trigger --subsystem-match=$subsystem --action=add
          done
       done
 
       # Now wait for udevd to process the uevents we triggered
       if ! is_true "$OMIT_UDEV_RETRY_SETTLE"; then
-         /bin/udevadm settle
+         /sbin/udevadm settle
       fi
 
       evaluate_retval

+ 17 - 0
chapter01/changelog.xml

@@ -35,6 +35,23 @@
       </itemizedlist>
     </listitem>
 -->
+    <listitem>
+      <para>2014-05-11</para>
+      <itemizedlist>
+        <listitem>
+          <para>[bdubbs] - Update bootscripts for eudev.</para>
+        </listitem>
+        <listitem>
+          <para>[bdubbs] - Add gcc patch for upstream changes.</para>
+        </listitem>
+        <listitem>
+          <para>[bdubbs] - Change explanation for using 
+          omit-frame-pointer in gcc-pass2. Fixes
+          <ulink url="&lfs-ticket-root;3562">#3562</ulink>.</para>
+        </listitem>
+      </itemizedlist>
+    </listitem>
+
     <listitem>
       <para>2014-05-10</para>
       <itemizedlist>

+ 8 - 0
chapter03/patches.xml

@@ -58,6 +58,14 @@
       </listitem>
     </varlistentry>
 
+    <varlistentry>
+      <term>Gcc Upstream Patch - <token>&gcc-upstream-patch-size;</token>:</term>
+      <listitem>
+        <para>Download: <ulink url="&patches-root;&gcc-upstream-patch;"/></para>
+        <para>MD5 sum: <literal>&gcc-upstream-patch-md5;</literal></para>
+      </listitem>
+    </varlistentry>
+
     <varlistentry>
       <term>Glibc FHS Patch - <token>&glibc-fhs-patch-size;</token>:</term>
       <listitem>

+ 3 - 5
chapter05/gcc-pass2.xml

@@ -58,11 +58,9 @@
 <screen><userinput remap="pre">cat gcc/limitx.h gcc/glimits.h gcc/limity.h &gt; \
   `dirname $($LFS_TGT-gcc -print-libgcc-file-name)`/include-fixed/limits.h</userinput></screen>
 
-    <para>For x86 machines, a bootstrap build of GCC uses the
-    <option>-fomit-frame-pointer</option> compiler flag.  Non-bootstrap builds
-    omit this flag by default, and the goal should be to produce a compiler
-    that is exactly the same as if it were bootstrapped.  Apply the following
-    <command>sed</command> command to force the build to use the flag:</para>
+    <para>For x86 machines, the limited number of registers is a bottleneck
+    for the system.  Free one up by not using a fram pointer that is not
+    needed:</para>
 
 <screen><userinput remap="pre">case `uname -m` in
   i?86) sed -i 's/^T_CFLAGS =$/&amp; -fomit-frame-pointer/' gcc/Makefile.in ;;

+ 5 - 0
chapter06/gcc.xml

@@ -41,6 +41,11 @@
   <sect2 role="installation">
     <title>Installation of GCC</title>
 
+    <para>First fix a problem identified upstream that causes some 
+    programs to fail:</para>
+
+<screen><userinput remap="pre">patch -Np1 -i ../&gcc-upstream-patch;</userinput></screen>
+
     <para>As in <xref linkend="ch-tools-gcc-pass2"/>, apply the following
     <command>sed</command> to force the build to use the
     <option>-fomit-frame-pointer</option> compiler flag in order to ensure

+ 2 - 2
packages.ent

@@ -153,7 +153,7 @@
 <!ENTITY eudev-md5 "c2fbf420a50d07b80158a0185cbb08f7">
 <!ENTITY eudev-manpages-size "9 KB">
 <!ENTITY eudev-manpages-url "&anduin-other;eudev-&eudev-version;-manpages.tar.bz2">
-<!ENTITY eudev-manpages-md5 "c2fbf420a50d07b80158a0185cbb08f7">
+<!ENTITY eudev-manpages-md5 "eaa5b9af344e958c29288e5376b97a28">
 
 <!ENTITY eudev-ch6-du "7.5 MB">
 <!ENTITY eudev-ch6-sbu "0.1 SBU">
@@ -370,7 +370,7 @@
 <!ENTITY less-ch6-du "3.6 MB">
 <!ENTITY less-ch6-sbu "less than 0.1 SBU">
 
-<!ENTITY lfs-bootscripts-version "20140510">              <!-- Scripts depend on this format -->
+<!ENTITY lfs-bootscripts-version "20140511">              <!-- Scripts depend on this format -->
 <!ENTITY lfs-bootscripts-size "BOOTSCRIPTS-SIZE KB">         <!-- Updated in Makefile -->
 <!ENTITY lfs-bootscripts-url "&downloads-root;lfs-bootscripts-&lfs-bootscripts-version;.tar.bz2">
 <!ENTITY lfs-bootscripts-md5 "BOOTSCRIPTS-MD5SUM">           <!-- Updated in Makefile -->

+ 4 - 0
patches.ent

@@ -22,6 +22,10 @@
 <!ENTITY coreutils-shuf-segfault-patch-md5 "f1b5b35392914e327b1b6bbbb454d256">
 <!ENTITY coreutils-shuf-segfault-patch-size "4 KB">
 
+<!ENTITY gcc-upstream-patch "gcc-&gcc-version;-upstream_fixes-1.patch">
+<!ENTITY gcc-upstream-patch-md5 "f070aae5f5f92259ed167539725e6241">
+<!ENTITY gcc-upstream-patch-size "4.0 KB">
+
 <!ENTITY glibc-fhs-patch "glibc-&glibc-version;-fhs-1.patch">
 <!ENTITY glibc-fhs-patch-md5 "9a5997c3452909b1769918c759eff8a2">
 <!ENTITY glibc-fhs-patch-size "2.8 KB">