aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--appendixa/glibc-down.xml5
-rw-r--r--appendixa/man-down.xml9
-rw-r--r--chapter01/changelog.xml19
-rw-r--r--chapter04/glibc-patch.xml7
-rw-r--r--chapter04/man-patch.xml10
-rw-r--r--chapter06/glibc-inst.xml17
-rw-r--r--chapter06/man-exp.xml16
-rw-r--r--chapter06/man-inst.xml4
-rw-r--r--entities/glibc.ent8
-rw-r--r--entities/man.ent10
10 files changed, 77 insertions, 28 deletions
diff --git a/appendixa/glibc-down.xml b/appendixa/glibc-down.xml
index 8b6b10118..f6dd1ecd4 100644
--- a/appendixa/glibc-down.xml
+++ b/appendixa/glibc-down.xml
@@ -7,6 +7,9 @@
Glibc-linuxthreads (&glibc-version;):
<ulink url="ftp://ftp.gnu.org/gnu/glibc/"/>
-Glibc Patch (&glibc-patch-version;):
+Glibc Root/Perl Patch (&glibc-rootperl-patch-version;):
+<ulink url="&http;/"/>
+
+Glibc Libnss Patch (&glibc-libnss-patch-version;):
<ulink url="&http;/"/></literallayout></para>
</sect2>
diff --git a/appendixa/man-down.xml b/appendixa/man-down.xml
index 47916e03a..9ed474f8b 100644
--- a/appendixa/man-down.xml
+++ b/appendixa/man-down.xml
@@ -4,7 +4,12 @@
<para><literallayout>Man (&man-version;):
<ulink url="ftp://ftp.win.tue.nl/pub/linux-local/utils/man/"/>
-Man Patch (&man-patch-version;):
-<ulink url="&ftp;/"/>
+Man 80Cols Patch (&man-80cols-patch-version;):
+<ulink url="&http;/"/>
+
+Man Manpath Patch (&man-manpath-patch-version;):
+<ulink url="&http;/"/>
+
+Man Pager Patch (&man-pager-patch-version;):
<ulink url="&http;/"/></literallayout></para>
</sect2>
diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml
index 7fc14b0cd..9fb63b731 100644
--- a/chapter01/changelog.xml
+++ b/chapter01/changelog.xml
@@ -37,22 +37,37 @@
<listitem><para>Added:
<itemizedlist>
<listitem><para>findutils-4.1-segfault.patch</para></listitem>
+<listitem><para>glibc-2.3.1-libnss.patch</para></listitem>
+<listitem><para>glibc-2.3.2-root-perl.patch</para></listitem>
<listitem><para>kbd-1.08.patch</para></listitem>
+<listitem><para>man-1.5k-80cols.patch</para></listitem>
+<listitem><para>man-1.5k-manpath.patch</para></listitem>
+<listitem><para>man-1.5k-pager.patch</para></listitem>
</itemizedlist>
</para></listitem>
<listitem><para>Removed:
<itemizedlist>
<listitem><para>gcc-3.2.1-nofixincludes-2.patch</para></listitem>
+<listitem><para>glibc-2.3.1.patch</para></listitem>
<listitem><para>kbd-1.06-3.patch</para></listitem>
+<listitem><para>man-1.5k-2.patch</para></listitem>
<listitem><para>ncurses-5.2-2.patch</para></listitem>
</itemizedlist>
</para></listitem>
-<listitem><para>January 1st, 2002 [gerard]: Chapter 06 - Glibc Second Pass:
+<listitem><para>January 2nd, 2003 [gerard]: Replaced the glibc-2.3.1
+mega-patch with two seperate patches (glibc-2.3.1-root-perl.patch and
+glibc-2.3.1-libnss.patch).</para></listitem>
+
+<listitem><para>January 2nd, 2003 [gerard]: Replaced the man-1.5k
+mega-patch with three seperate patches (man-1.5k-80cols.patch,
+man-1.5k-manpath.patch and man-1.5k-pager.patch).</para></listitem>
+
+<listitem><para>January 1st, 2003 [gerard]: Chapter 06 - Glibc Second Pass:
Fixec typo in linuxthreads man pages installation.</para></listitem>
-<listitem><para>January 1st, 2002 [gerard]: Chapter 06 - Linux Kernel: The
+<listitem><para>January 1st, 2003 [gerard]: Chapter 06 - Linux Kernel: The
man pages can't be installed here because it requires Perl. Moved to end of
chapter 6.</para></listitem>
diff --git a/chapter04/glibc-patch.xml b/chapter04/glibc-patch.xml
index 50ef5073a..b83dd7e22 100644
--- a/chapter04/glibc-patch.xml
+++ b/chapter04/glibc-patch.xml
@@ -1,2 +1,5 @@
-Glibc Patch (&glibc-patch-version;) - &glibc-patch-size;:
-<ulink url="&http;/glibc-&glibc-patch-version;.patch"/>
+Glibc Root/Perl Patch: (&glibc-rootperl-patch-version;) - &glibc-rootperl-patch-size;:
+<ulink url="&http;/glibc-&glibc-rootperl-patch-version;-root-perl.patch"/>
+
+Glibc Libnss Patch: (&glibc-libnss-patch-version;) - &glibc-libnss-patch-size;:
+<ulink url="&http;/glibc-&glibc-libnss-patch-version;-libnss.patch"/>
diff --git a/chapter04/man-patch.xml b/chapter04/man-patch.xml
index 53ab1106b..c4d5dbf01 100644
--- a/chapter04/man-patch.xml
+++ b/chapter04/man-patch.xml
@@ -1,2 +1,8 @@
-Man Patch (&man-patch-version;) - &man-patch-size;:
-<ulink url="&http;/man-&man-patch-version;.patch"/>
+Man 80Cols Patch (&man-80cols-patch-version;) - &man-80cols-patch-size;:
+<ulink url="&http;/man-&man-80cols-patch-version;-80cols.patch"/>
+
+Man Manpath Patch (&man-manpath-patch-version;) - &man-manpath-patch-size;:
+<ulink url="&http;/man-&man-manpath-patch-version;-manpath.patch"/>
+
+Man Pager Patch (&man-pager-patch-version;) - &man-pager-patch-size;:
+<ulink url="&http;/man-&man-pager-patch-version;-pager.patch"/>
diff --git a/chapter06/glibc-inst.xml b/chapter06/glibc-inst.xml
index b89ecb312..384b86577 100644
--- a/chapter06/glibc-inst.xml
+++ b/chapter06/glibc-inst.xml
@@ -35,7 +35,11 @@ username to userid resolving isn't working yet, so a
if you use the numeric IDs (such as <userinput>chown 0
file</userinput>).</para></listitem>
-<listitem><para>It fixes a problem that causes statically linked binaries
+</itemizedlist>
+
+<para><screen><userinput>patch -Np1 -i ../glibc-&glibc-rootperl-patch-version;-root-perl.patch</userinput></screen></para>
+
+<para>There is a potential problem that causes statically linked binaries
to crash that were linked against Glibc-2.2 libraries. Even though static
binaries have all the necessary parts of Glibc built-in, they still rely
on one external library: Glibc's NSS libraries. These libraries, among
@@ -50,12 +54,13 @@ will load these new NSS libraries and start to abort with
<emphasis>segmentation faults</emphasis>. This patch undoes a few of the
changes to overcome the problem.</para>
-<para>We will install Glibc again at the end of this chapter to remove this
-patch so you'll have a pristine Glibc as the developers intended
-it.</para></listitem>
-</itemizedlist>
+<para>So, if you started chapter 5 with a host system that uses Glibc-2.2.x
+you must apply the following patch. We will install Glibc again at the end
+of this chapter to remove this patch so you'll have a pristine Glibc as the
+developers intended
+it.</para>
-<para><screen><userinput>patch -Np1 -i ../glibc-&glibc-patch-version;.patch</userinput></screen></para>
+<para><screen><userinput>patch -Np1 -i ../glibc-&glibc-libnss-patch-version;-libnss.patch</userinput></screen></para>
<para>Glibc will check for the <filename>/etc/ld.so.conf</filename> file
and abort with an error if the file is missing, so we must create it.</para>
diff --git a/chapter06/man-exp.xml b/chapter06/man-exp.xml
index b858cb824..8d4f97011 100644
--- a/chapter06/man-exp.xml
+++ b/chapter06/man-exp.xml
@@ -8,14 +8,14 @@ where a program is found. By appending /usr/bin:/bin to PATH for the
./configure command, we make sure that man doesn't use the /static versions
of our programs.</para>
-<para><userinput>patch -Np1 -i ../man-&man-patch-version;.patch:</userinput>
-This patch comments out one of the files in the <filename>man.conf</filename>
-file (MANPATH /usr/man) because it will create redundant results when using
-programs like <userinput>whatis</userinput>. It also adds the
-<emphasis>-R</emphasis> option to the <emphasis>PAGER</emphasis> variable so
-man pages are displayed properly. Lastly, the patch fixes the problem where
-man pages are not formatted with more than 80 columns when used with the
-recent groff versions.</para>
+<para><userinput>patch...:</userinput>
+These three patches comment out one of the lines in the
+<filename>man.conf</filename> file (MANPATH /usr/man) because it will create
+redundant results when using programs like <userinput>whatis</userinput>.
+It also adds the <emphasis>-R</emphasis> option to the
+<emphasis>PAGER</emphasis> variable so man pages are displayed properly.
+Lastly, the patch fixes the problem where man pages are not formatted with
+more than 80 columns when used with the recent groff versions.</para>
</sect2>
diff --git a/chapter06/man-inst.xml b/chapter06/man-inst.xml
index ad73cabdb..f07ee1615 100644
--- a/chapter06/man-inst.xml
+++ b/chapter06/man-inst.xml
@@ -3,7 +3,9 @@
<para>Run the following commands to install man:</para>
-<para><screen><userinput>patch -Np1 -i ../man-&man-patch-version;.patch &amp;&amp;
+<para><screen><userinput>patch -Np1 -i ../man-&man-80cols-patch-version;-80cols.patch &amp;&amp;
+patch -Np1 -i ../man-&man-manpath-patch-version;-manpath.patch &amp;&amp;
+patch -Np1 -i ../man-&man-pager-patch-version;-pager.patch &amp;&amp;
PATH=$PATH:/usr/bin:/bin \
&nbsp;&nbsp;&nbsp;&nbsp;./configure -default -confdir=/etc &amp;&amp;
make &amp;&amp;
diff --git a/entities/glibc.ent b/entities/glibc.ent
index 8a4fe9df6..b96e74bd7 100644
--- a/entities/glibc.ent
+++ b/entities/glibc.ent
@@ -20,8 +20,12 @@
<!ENTITY glibc-contversion "2.2.5">
<!ENTITY glibc-size "17,463 KB">
<!ENTITY glibc-threads-size "238 KB">
-<!ENTITY glibc-patch-size "4 KB">
-<!ENTITY glibc-patch-version "2.3.1">
+
+<!ENTITY glibc-rootperl-patch-size "1 KB">
+<!ENTITY glibc-rootperl-patch-version "2.3.1">
+<!ENTITY glibc-libnss-patch-size "1 KB">
+<!ENTITY glibc-libnss-patch-version "2.3.1">
+
<!ENTITY glibc-dir "glibc-&glibc-version;">
<!ENTITY glibc-threads-dir "linuxthreads, linuxthreads_db">
<!ENTITY glibc-package "glibc-&glibc-version;.tar.bz2">
diff --git a/entities/man.ent b/entities/man.ent
index f501db361..e00e454f2 100644
--- a/entities/man.ent
+++ b/entities/man.ent
@@ -14,8 +14,14 @@
<!ENTITY man-depversion "1.5i2">
<!ENTITY man-contversion "1.5k">
<!ENTITY man-size "189 KB">
-<!ENTITY man-patch-version "1.5k-2">
-<!ENTITY man-patch-size "1 KB">
+
+<!ENTITY man-80cols-patch-version "1.5k">
+<!ENTITY man-80cols-patch-size "1 KB">
+<!ENTITY man-manpath-patch-version "1.5k">
+<!ENTITY man-manpath-patch-size "1 KB">
+<!ENTITY man-pager-patch-version "1.5k">
+<!ENTITY man-pager-patch-size "1 KB">
+
<!ENTITY man-dir "man-&man-version;">
<!ENTITY man-package "man-&man-version;.tar.bz2">