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
This commit is contained in:
Bruce Dubbs 2014-01-20 01:18:30 +00:00
parent cde2ae7b0f
commit cb23c1a6ab
12 changed files with 125 additions and 100 deletions

View File

@ -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>

View File

@ -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>

View File

@ -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>

View File

@ -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"/>

View File

@ -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>

View File

@ -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
chapter05/util-linux.xml Normal file
View File

@ -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>

View File

@ -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

View File

@ -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>

View File

@ -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>

View File

@ -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}]" -->

View File

@ -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">