aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBruce Dubbs <bdubbs@linuxfromscratch.org>2014-01-20 01:18:30 +0000
committerBruce Dubbs <bdubbs@linuxfromscratch.org>2014-01-20 01:18:30 +0000
commitcb23c1a6ab0a3c279df1f453ef9585b062963ec4 (patch)
tree2b9d62f95bb276320d0631397722a57a1abacd0a
parentcde2ae7b0fd8f2f9de248a9a58094066d3b621b0 (diff)
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
-rw-r--r--appendices/dependencies.xml4
-rw-r--r--chapter01/changelog.xml17
-rw-r--r--chapter01/whatsnew.xml4
-rw-r--r--chapter05/chapter05.xml2
-rw-r--r--chapter05/ncurses.xml23
-rw-r--r--chapter05/util-linux-ng.xml78
-rw-r--r--chapter05/util-linux.xml71
-rw-r--r--chapter06/creatingdirs.xml2
-rw-r--r--chapter06/kernfs.xml16
-rw-r--r--chapter06/revisedchroot.xml2
-rw-r--r--general.ent4
-rw-r--r--packages.ent2
12 files changed, 125 insertions, 100 deletions
diff --git a/appendices/dependencies.xml b/appendices/dependencies.xml
index fb4c4f9d9..6b39cfc7d 100644
--- a/appendices/dependencies.xml
+++ b/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>
diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml
index a68688719..8a2d666db 100644
--- a/chapter01/changelog.xml
+++ b/chapter01/changelog.xml
@@ -36,6 +36,21 @@
</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>
<listitem>
@@ -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>
diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml
index 7b576327c..eafc29c54 100644
--- a/chapter01/whatsnew.xml
+++ b/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>
diff --git a/chapter05/chapter05.xml b/chapter05/chapter05.xml
index d858c9a98..e5bb196dc 100644
--- a/chapter05/chapter05.xml
+++ b/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"/>
diff --git a/chapter05/ncurses.xml b/chapter05/ncurses.xml
index 18da06aec..2db0a770c 100644
--- a/chapter05/ncurses.xml
+++ b/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>
diff --git a/chapter05/util-linux-ng.xml b/chapter05/util-linux-ng.xml
deleted file mode 100644
index d06249f4f..000000000
--- a/chapter05/util-linux-ng.xml
+++ /dev/null
@@ -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>
diff --git a/chapter05/util-linux.xml b/chapter05/util-linux.xml
new file mode 100644
index 000000000..c049150b4
--- /dev/null
+++ b/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>
diff --git a/chapter06/creatingdirs.xml b/chapter06/creatingdirs.xml
index aec7d25ec..65553e8d5 100644
--- a/chapter06/creatingdirs.xml
+++ b/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
diff --git a/chapter06/kernfs.xml b/chapter06/kernfs.xml
index bfd583455..860cdfc00 100644
--- a/chapter06/kernfs.xml
+++ b/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>
diff --git a/chapter06/revisedchroot.xml b/chapter06/revisedchroot.xml
index 6c4579a1e..8927a9f29 100644
--- a/chapter06/revisedchroot.xml
+++ b/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>
diff --git a/general.ent b/general.ent
index 993aa9e10..5c98a5afe 100644
--- a/general.ent
+++ b/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}]" -->
diff --git a/packages.ent b/packages.ent
index 9854a9789..331b3e472 100644
--- a/packages.ent
+++ b/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">