Эх сурвалжийг харах

Added a Chapter 5 build of util-linux in preparation for
moving the Chapter 6 build to after udev. This satisfies a circular
dependency. This is not the complete fix as this build has not yet
been incorporated into Chapter 6.

Mount /run as a tmpfs for Chapter 6. This allows use by test processes
during Chapter 6 without carying the files over to the new system.

Other minor cleanups.


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

Bruce Dubbs 11 жил өмнө
parent
commit
cb23c1a6ab

+ 2 - 2
appendices/dependencies.xml

@@ -2091,7 +2091,7 @@
 
         <seglistitem>
          <seg>Bash, Binutils, Coreutils, Diffutils, Findutils, Gawk, GCC,
-         Gettext, Glibc, Grep, Make, Ncurses, Sed, and Zlib</seg>
+         Gettext, Glibc, Grep, Make, Ncurses, Sed, Udev, and Zlib</seg>
         </seglistitem>
       </segmentedlist>
 
@@ -2099,7 +2099,7 @@
         <segtitle>&testsuites;</segtitle>
 
         <seglistitem>
-          <seg>No test suite available</seg>
+          <seg>None</seg>
         </seglistitem>
       </segmentedlist>
 

+ 16 - 1
chapter01/changelog.xml

@@ -35,6 +35,21 @@
       </itemizedlist>
     </listitem>
 -->
+    <listitem>
+      <para>2014-01-15</para>
+      <itemizedlist>
+        <listitem>
+          <para>[bdubbs] - Added a Chapter 5 build of util-linux after
+          udev to satify a circular dependency.  This is not the 
+          complete fix as this build has not yet been incorporated into
+          Chapter 6.</para>
+        </listitem>
+        <listitem>
+          <para>[bdubbs] - Moutn /run as a tmpfs for Chapter 6.</para>
+        </listitem>
+      </itemizedlist>
+    </listitem>
+
     <listitem>
       <para>2014-01-14</para>
       <itemizedlist>
@@ -46,7 +61,7 @@
         </listitem>
         <listitem>
           <para>[bdubbs] - Fix hardcoded reference to /tools in
-          Chapter 6 glibc.  Fixes
+          Chapter 6 gcc.  Fixes
           <ulink url="&lfs-ticket-root;3466">#3466</ulink>.</para>
         </listitem>
         <listitem>

+ 2 - 2
chapter01/whatsnew.xml

@@ -106,9 +106,9 @@
     <!--<listitem>
       <para>IANA-Etc &iana-etc-version;</para>
     </listitem>-->
-    <!--<listitem>
+    <listitem>
       <para>Inetutils &inetutils-version;</para>
-    </listitem>-->
+    </listitem>
     <listitem>
       <para>IPRoute2 &iproute2-version;</para>
     </listitem>

+ 1 - 1
chapter05/chapter05.xml

@@ -43,8 +43,8 @@
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="sed.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="tar.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="texinfo.xml"/>
+  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="util-linux.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="xz.xml"/>
-<!--  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="util-linux-ng.xml"/>-->
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="stripping.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="changingowner.xml"/>
 

+ 21 - 2
chapter05/ncurses.xml

@@ -45,8 +45,13 @@
 
     <para>Prepare Ncurses for compilation:</para>
 
-<screen><userinput remap="configure">./configure --prefix=/tools --with-shared \
-    --without-debug --without-ada --enable-overwrite</userinput></screen>
+<screen><userinput remap="configure">
+./configure --prefix=/tools \
+            --with-shared   \
+            --without-debug \
+            --without-ada   \
+            --enable-widec  \
+            --enable-overwrite</userinput></screen>
 
     <variablelist>
       <title>The meaning of the configure options:</title>
@@ -71,6 +76,20 @@
         </listitem>
       </varlistentry>
 
+      <varlistentry>
+        <term><parameter>--enable-widec</parameter></term>
+        <listitem>
+          <para>This switch causes wide-character libraries (e.g., <filename
+          class="libraryfile">libncursesw.so.&ncurses-version;</filename>)
+          to be built instead of normal ones (e.g., <filename
+          class="libraryfile">libncurses.so.&ncurses-version;</filename>).
+          These wide-character libraries are usable in both multibyte and
+          traditional 8-bit locales, while normal libraries work properly
+          only in 8-bit locales. Wide-character and normal libraries are
+          source-compatible, but not binary-compatible.</para>
+        </listitem>
+      </varlistentry>
+
     </variablelist>
 
     <para>Compile the package:</para>

+ 0 - 78
chapter05/util-linux-ng.xml

@@ -1,78 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-  "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../general.ent">
-  %general-entities;
-]>
-
-<sect1 id="ch-tools-util-linux-ng" role="wrap">
-  <?dbhtml filename="util-linux-ng.html"?>
-
-  <sect1info condition="script">
-    <productname>util-linux-ng</productname>
-    <productnumber>&util-linux-ng-version;</productnumber>
-    <address>&util-linux-ng-url;</address>
-  </sect1info>
-
-  <title>Util-linux-ng-&util-linux-ng-version;</title>
-
-  <indexterm zone="ch-tools-util-linux-ng">
-    <primary sortas="a-Util-linux-ng">Util-linux-ng</primary>
-    <secondary>tools</secondary>
-  </indexterm>
-
-  <sect2 role="package">
-    <title/>
-
-    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
-    href="../chapter06/util-linux-ng.xml"
-    xpointer="xpointer(/sect1/sect2[1]/para[1])"/>
-
-    <segmentedlist>
-      <segtitle>&buildtime;</segtitle>
-      <segtitle>&diskspace;</segtitle>
-
-      <seglistitem>
-        <seg>&util-linux-ng-ch5-sbu;</seg>
-        <seg>&util-linux-ng-ch5-du;</seg>
-      </seglistitem>
-    </segmentedlist>
-
-  </sect2>
-
-  <sect2 role="installation">
-    <title>Installation of Util-linux-ng</title>
-
-    <para>Prepare Util-linux-ng for compilation:</para>
-
-<screen><userinput remap="configure">./configure --prefix=/tools</userinput></screen>
-
-    <para>Only a few of the utilities contained in this package need to be
-    built:</para>
-
-<screen><userinput remap="make">make -C disk-utils mkswap
-make -C mount mount umount
-make -C text-utils more</userinput></screen>
-
-    <para>This package does not come with a test suite.</para>
-
-    <para>Install the shared libraries required by E2fsprogs:</para>
-
-<screen><userinput remap="install">make -C shlibs/uuid install
-make -C shlibs/blkid install</userinput></screen>
-
-    <para>Copy these programs to the temporary tools directory:</para>
-
-<screen><userinput remap="install">cp -v disk-utils/mkswap mount/{,u}mount text-utils/more /tools/bin</userinput></screen>
-
-  </sect2>
-
-  <sect2 role="content">
-    <title/>
-
-    <para>Details on this package are located in
-    <xref linkend="contents-utillinux" role="."/></para>
-
-  </sect2>
-
-</sect1>

+ 71 - 0
chapter05/util-linux.xml

@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+  "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+  <!ENTITY % general-entities SYSTEM "../general.ent">
+  %general-entities;
+]>
+
+<sect1 id="ch-tools-util-linux" role="wrap">
+  <?dbhtml filename="util-linux.html"?>
+
+  <sect1info condition="script">
+    <productname>util-linux</productname>
+    <productnumber>&util-linux-version;</productnumber>
+    <address>&util-linux-url;</address>
+  </sect1info>
+
+  <title>Util-linux-&util-linux-version;</title>
+
+  <indexterm zone="ch-tools-util-linux">
+    <primary sortas="a-Util-linux">Util-linux</primary>
+  </indexterm>
+
+  <sect2 role="package">
+    <title/>
+
+    <para>The Util-linux package contains miscellaneous utility programs.</para>
+
+    <segmentedlist>
+      <segtitle>&buildtime;</segtitle>
+      <segtitle>&diskspace;</segtitle>
+
+      <seglistitem>
+        <seg>&util-linux-ch5-sbu;</seg>
+        <seg>&util-linux-ch5-du;</seg>
+      </seglistitem>
+    </segmentedlist>
+
+  </sect2>
+
+  <sect2 role="installation">
+    <title>Installation of Util-linux</title>
+
+    <para>Prepare Util-linux for compilation:</para>
+
+<screen><userinput remap="configure">./configure --prefix=/tools --disable-makeinstall-chown</userinput></screen>
+
+    <variablelist>
+      <title>The meaning of the configure option:</title>
+
+      <varlistentry>
+        <term><parameter>--disable-makeinstall-chown</parameter></term>
+        <listitem>
+          <para>This switch disables using the <command>chown</command> command
+          during installation.  This is not needed when installing into the
+          /tools directory and avoids the necessity of installing as
+          root.</para>
+        </listitem>
+      </varlistentry>
+     </variablelist>
+
+    <para>Compile the package:</para>
+
+<screen><userinput remap="make">make</userinput></screen>
+
+    <para>Install the package:</para>
+
+<screen><userinput remap="install">make install</userinput></screen>
+
+  </sect2>
+
+</sect1>

+ 1 - 1
chapter06/creatingdirs.xml

@@ -13,7 +13,7 @@
   <para>It is time to create some structure in the LFS file system. Create a
   standard directory tree by issuing the following commands:</para>
 
-<screen><userinput>mkdir -pv /{bin,boot,etc/{opt,sysconfig},home,lib,mnt,opt,run}
+<screen><userinput>mkdir -pv /{bin,boot,etc/{opt,sysconfig},home,lib,mnt,opt}
 mkdir -pv /{media/{floppy,cdrom},sbin,srv,var}
 install -dv -m 0750 /root
 install -dv -m 1777 /tmp /var/tmp

+ 6 - 10
chapter06/kernfs.xml

@@ -22,7 +22,7 @@
     <para>Begin by creating directories onto which the file systems will be
     mounted:</para>
 
-<screen><userinput>mkdir -pv $LFS/{dev,proc,sys}</userinput></screen>
+<screen><userinput>mkdir -pv $LFS/{dev,proc,sys,run}</userinput></screen>
 
   <sect2>
     <title>Creating Initial Device Nodes</title>
@@ -70,7 +70,8 @@ mknod -m 666 $LFS/dev/null c 1 3</userinput></screen>
 
 <screen><userinput>mount -vt devpts devpts $LFS/dev/pts -o gid=5,mode=620
 mount -vt proc proc $LFS/proc
-mount -vt sysfs sysfs $LFS/sys</userinput></screen>
+mount -vt sysfs sysfs $LFS/sys
+mount -vt tmpfs tmpfs $LFS/run</userinput></screen>
 
     <variablelist>
       <title>The meaning of the mount options for devpts:</title>
@@ -102,16 +103,11 @@ mount -vt sysfs sysfs $LFS/sys</userinput></screen>
 
       <para>In some host systems, <filename>/dev/shm</filename> is a
       symbolic link to <filename class="directory">/run/shm</filename>.
-      Inside a chroot environment, this temporary file system needs
-      to be mounted separate from the host file system:</para>
+      The /run tmpfs was mounted above so in this case only a 
+      directory needs to be created.</para>
 
 <screen><userinput>if [ -h $LFS/dev/shm ]; then
-  link=$(readlink $LFS/dev/shm)
-  mkdir -pv $LFS/$link
-  mount -vt tmpfs shm $LFS/$link
-  unset link
-else
-  mount -vt tmpfs shm $LFS/dev/shm
+  mkdir -pv $LFS/$(readlink $LFS/dev/shm)
 fi</userinput></screen>
 
   </sect2>

+ 1 - 1
chapter06/revisedchroot.xml

@@ -12,7 +12,7 @@
 
   <para>Finally, clean up some extra files left around from running tests:</para>
 
-<screen><userinput>rm -rf /run/* /tmp/*</userinput></screen>
+<screen><userinput>rm -rf /tmp/*</userinput></screen>
 
   <para>From now on, when reentering the chroot environment after
   exiting, use the following modified chroot command:</para>

+ 2 - 2
general.ent

@@ -1,5 +1,5 @@
-<!ENTITY version         "SVN-20140114">
-<!ENTITY releasedate     "January 14, 2014">
+<!ENTITY version         "SVN-20140119">
+<!ENTITY releasedate     "January 19, 2014">
 <!ENTITY copyrightdate   "1999-2014"><!-- jhalfs needs a literal dash, not &ndash; -->
 <!ENTITY milestone       "7.5">
 <!ENTITY generic-version "development"> <!-- Use "development", "testing", or "x.y[-pre{x}]" -->

+ 2 - 0
packages.ent

@@ -565,6 +565,8 @@
 <!ENTITY util-linux-url "&kernel;linux/utils/util-linux/v2.24/util-linux-&util-linux-version;.tar.xz">
 <!ENTITY util-linux-md5 "4fac6443427f575fc5f3531a4ad2ca01">
 <!ENTITY util-linux-home "http://userweb.kernel.org/~kzak/util-linux/">
+<!ENTITY util-linux-ch5-du "89 MB">
+<!ENTITY util-linux-ch5-sbu "0.6 SBU">
 <!ENTITY util-linux-ch6-du "89 MB">
 <!ENTITY util-linux-ch6-sbu "0.6 SBU">