aboutsummaryrefslogtreecommitdiffstats
path: root/chapter05
diff options
context:
space:
mode:
authorBruce Dubbs <bdubbs@linuxfromscratch.org>2015-04-24 03:19:38 +0000
committerBruce Dubbs <bdubbs@linuxfromscratch.org>2015-04-24 03:19:38 +0000
commitbb189b08be8e84e1f7cccb1b47371b5ca5acb94c (patch)
tree9f8ed69172c230699bbd6c714eba549f4a07fb64 /chapter05
parent4172728913ba9c6c0a43282abded047190b50367 (diff)
Added a fix for security issue in Glibc (CVE-2015-1781).
Thanks to Ken Moffat for identifying the proplem and the fix. Fixed Ncurses and Perl build with GCC 5. Thanks to Ken Moffat and Douglas R. Reno for providing the patches. Updated to GCC-5.1.0. Imported changes from systemd version. git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@10903 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
Diffstat (limited to 'chapter05')
-rw-r--r--chapter05/glibc.xml13
-rw-r--r--chapter05/libstdc++.xml3
-rw-r--r--chapter05/ncurses.xml5
3 files changed, 18 insertions, 3 deletions
diff --git a/chapter05/glibc.xml b/chapter05/glibc.xml
index 974a7292f..9916b4fb2 100644
--- a/chapter05/glibc.xml
+++ b/chapter05/glibc.xml
@@ -43,6 +43,7 @@
<sect2 role="installation">
<title>Installation of Glibc</title>
+<!-- The enable-obsolete-rpc should handle this just fine.
<para>In some cases, particularly LFS 7.1, the rpc headers were not
installed properly. Test to see if they are installed in the host system
and install if they are not:</para>
@@ -51,7 +52,7 @@
su -c 'mkdir -pv /usr/include/rpc'
su -c 'cp -v sunrpc/rpc/*.h /usr/include/rpc'
fi</userinput></screen>
-
+-->
<para>Fix a regression in the package that affects 32-bit architectures:</para>
<screen><userinput remap="pre">sed -e '/ia32/s/^/1:/' \
@@ -87,6 +88,7 @@ esac</userinput></screen>
--build=$(../glibc-&glibc-version;/scripts/config.guess) \
--disable-profile \
--enable-kernel=&min-kernel; \
+ --enable-obsolete-rpc \
--with-headers=/tools/include \
libc_cv_forced_unwind=yes \
libc_cv_ctors_header=yes \
@@ -122,6 +124,15 @@ esac</userinput></screen>
</varlistentry>
<varlistentry>
+ <term><parameter>--enable-obsolete-rpc</parameter></term>
+ <listitem>
+ <para>This installs NIS and RPC related headers that are not
+ installed by default. They are required to build GCC and by
+ several BLFS packages.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
<term><parameter>--with-headers=/tools/include</parameter></term>
<listitem>
<para>This tells Glibc to compile itself against the headers recently
diff --git a/chapter05/libstdc++.xml b/chapter05/libstdc++.xml
index 9af130f4b..29d7f2739 100644
--- a/chapter05/libstdc++.xml
+++ b/chapter05/libstdc++.xml
@@ -50,7 +50,7 @@
<para>Create a directory for Libstdc++ and enter it:</para>
-<screen><userinput remap="pre">mkdir -pv ../gcc-build
+<screen><userinput remap="pre">mkdir -v ../gcc-build
cd ../gcc-build</userinput></screen>
<para>Prepare Libstdc++ for compilation:</para>
@@ -59,7 +59,6 @@ cd ../gcc-build</userinput></screen>
--host=$LFS_TGT \
--prefix=/tools \
--disable-multilib \
- --disable-shared \
--disable-nls \
--disable-libstdcxx-threads \
--disable-libstdcxx-pch \
diff --git a/chapter05/ncurses.xml b/chapter05/ncurses.xml
index a18a9c819..336172b59 100644
--- a/chapter05/ncurses.xml
+++ b/chapter05/ncurses.xml
@@ -43,6 +43,11 @@
<sect2 role="installation">
<title>Installation of Ncurses</title>
+ <para>First, apply a patch to prevent a build failure
+ when building with GCC 5:</para>
+
+<screen><userinput remap="pre">patch -Np1 -i ../&ncurses-gcc5-buildfixes-patch;</userinput></screen>
+
<para>Prepare Ncurses for compilation:</para>
<screen><userinput remap="configure">./configure --prefix=/tools \