From f1c177f9587a73e995b274d60babc763a4ed2f61 Mon Sep 17 00:00:00 2001 From: Matthew Burgess Date: Sun, 5 Aug 2012 14:25:02 +0000 Subject: Upgrade to Glibc-2.16.0. Fixes #3131. git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@9922 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689 --- chapter06/coreutils.xml | 2 +- chapter06/diffutils.xml | 4 ++++ chapter06/e2fsprogs.xml | 2 +- chapter06/gettext.xml | 4 ++++ chapter06/glibc.xml | 35 +++++++++++++++++++++-------------- chapter06/grub.xml | 4 ++++ chapter06/inetutils.xml | 6 ++++++ chapter06/libpipeline.xml | 4 ++++ chapter06/m4.xml | 4 ++++ chapter06/man-db.xml | 4 ++++ chapter06/patch.xml | 2 +- chapter06/perl.xml | 6 +++++- chapter06/tar.xml | 4 ++++ 13 files changed, 63 insertions(+), 18 deletions(-) (limited to 'chapter06') diff --git a/chapter06/coreutils.xml b/chapter06/coreutils.xml index d197e10e6..9a19aa5bd 100644 --- a/chapter06/coreutils.xml +++ b/chapter06/coreutils.xml @@ -105,7 +105,7 @@ Now run the tests: -su nobody -s /bin/bash -c "make RUN_EXPENSIVE_TESTS=yes check" +su nobody -s /bin/bash -c "make RUN_EXPENSIVE_TESTS=yes -k check || true" Remove the temporary group: diff --git a/chapter06/diffutils.xml b/chapter06/diffutils.xml index 0d8bd5c77..6c6400045 100644 --- a/chapter06/diffutils.xml +++ b/chapter06/diffutils.xml @@ -41,6 +41,10 @@ Installation of Diffutils + Fix an incompatibility between this package and Glibc-&glibc-version; + +sed -i -e '/gets is a/d' lib/stdio.in.h + Prepare Diffutils for compilation: ./configure --prefix=/usr diff --git a/chapter06/e2fsprogs.xml b/chapter06/e2fsprogs.xml index 1ebbe6a55..472740379 100644 --- a/chapter06/e2fsprogs.xml +++ b/chapter06/e2fsprogs.xml @@ -113,7 +113,7 @@ cd build To test the results, issue: -make check +make -k check One of the E2fsprogs tests will attempt to allocate 256 MB of memory. If you do not have significantly more RAM than this, it diff --git a/chapter06/gettext.xml b/chapter06/gettext.xml index 684cd3060..0fc5cb286 100644 --- a/chapter06/gettext.xml +++ b/chapter06/gettext.xml @@ -43,6 +43,10 @@ Installation of Gettext + Fix an incompatibility between this package and Glibc-&glibc-version;: + +sed -i -e '/gets is a/d' gettext-*/*/stdio.in.h + Prepare Gettext for compilation: ./configure --prefix=/usr \ diff --git a/chapter06/glibc.xml b/chapter06/glibc.xml index 984c7dcea..72a73115b 100644 --- a/chapter06/glibc.xml +++ b/chapter06/glibc.xml @@ -72,7 +72,11 @@ sed -i '/vi_VN.TCVN/d' localedata/SUPPORTED --> - When running make install, a script called + Fix a bug that causes the build to fail: + +sed -i 's#<rpc/types.h>#"rpc/types.h"#' sunrpc/rpc_clntout.c + + - In addition, there is a bug in the - test-installation.pl script in that it tries to link - a test program to a library that isn't installed by - make install. Issue the following sed - command to fix it: + When running make install, a script called + test-installation.pl performs a small sanity test on + our newly installed Glibc. However, it contains a bug that causes it to + fail, so prevent it from running by issuing the following command: - sed -i -e 's/"db1"/& \&\& $name ne "nss_test1"/' scripts/test-installation.pl +sed -i '/test-installation.pl/d' Makefile The ldd shell script contains Bash-specific syntax. Change its default program interpreter to /bin/bash @@ -100,12 +103,6 @@ unset DL sed -i 's|@BASH@|/bin/bash|' elf/ldd.bash.in - Fix a bug that causes several BLFS packages to segfault: -patch -Np1 -i ../&glibc-fixes-patch; - - Fix a bug that prevents Glibc from building with GCC-&gcc-version;: -patch -Np1 -i ../&glibc-gcc_fix-patch; - The Glibc documentation recommends building Glibc outside of the source directory in a dedicated build directory: @@ -315,6 +312,16 @@ rpc: files # End /etc/nsswitch.conf EOF + Install timezone data: +tar -xf ../tzdata&tzdata-version;.tar.gz + +for tz in etcetera southamerica northamerica europe africa antarctica \ + asia australasia backward pacificnew solar87 solar88 solar89 systemv; do + + zic -L leapseconds -d /usr/share/zoneinfo -y "sh yearistype.sh" ${tz} + +done + One way to determine the local time zone, run the following script: diff --git a/chapter06/grub.xml b/chapter06/grub.xml index 249447d1a..ea8f649da 100644 --- a/chapter06/grub.xml +++ b/chapter06/grub.xml @@ -40,6 +40,10 @@ Installation of GRUB + Fix an incompatibility between this package and Glibc-&glibc-version;: + +sed -i -e '/gets is a/d' grub-core/gnulib/stdio.in.h + Prepare GRUB for compilation: ./configure --prefix=/usr \ diff --git a/chapter06/inetutils.xml b/chapter06/inetutils.xml index 460fe98c7..471eaa0e2 100644 --- a/chapter06/inetutils.xml +++ b/chapter06/inetutils.xml @@ -40,6 +40,12 @@ Installation of Inetutils + Fix an incompatibility between this package and Glibc-&glibc-version; + +sed -i -e '/gets is a/d' lib/stdio.in.h + + Prepare Inetutils for compilation: + ./configure --prefix=/usr \ --libexecdir=/usr/sbin \ --localstatedir=/var \ diff --git a/chapter06/libpipeline.xml b/chapter06/libpipeline.xml index d9ecf4e55..060914c8d 100644 --- a/chapter06/libpipeline.xml +++ b/chapter06/libpipeline.xml @@ -41,6 +41,10 @@ Installation of Libpipeline + Fix an incompatibility between this package and Glibc-&glibc-version;: + +sed -i -e '/gets is a/d' gnulib/lib/stdio.in.h + Prepare Libpipeline for compilation: PKG_CONFIG_PATH=/tools/lib/pkgconfig ./configure --prefix=/usr diff --git a/chapter06/m4.xml b/chapter06/m4.xml index fcbb8f672..3a20da992 100644 --- a/chapter06/m4.xml +++ b/chapter06/m4.xml @@ -40,6 +40,10 @@ Installation of M4 + Fix an incompatibility between this package and Glibc-&glibc-version;: + +sed -i -e '/gets is a/d' lib/stdio.in.h + Prepare M4 for compilation: ./configure --prefix=/usr diff --git a/chapter06/man-db.xml b/chapter06/man-db.xml index 659934221..81faa9b2e 100644 --- a/chapter06/man-db.xml +++ b/chapter06/man-db.xml @@ -41,6 +41,10 @@ Installation of Man-DB + Fix an incompatibility between this package and Glibc-&glibc-version; + +sed -i -e '/gets is a/d' gnulib/lib/stdio.in.h + Prepare Man-DB for compilation: ./configure --prefix=/usr \ diff --git a/chapter06/patch.xml b/chapter06/patch.xml index f818a7cc9..2b52d142d 100644 --- a/chapter06/patch.xml +++ b/chapter06/patch.xml @@ -57,7 +57,7 @@ To test the results, issue: -make check +make -k check Install the package: diff --git a/chapter06/perl.xml b/chapter06/perl.xml index b0f0a4464..eff9a3a50 100644 --- a/chapter06/perl.xml +++ b/chapter06/perl.xml @@ -107,13 +107,17 @@ + Fix an incompatibility between this package and Glibc-&glibc-version;: + +sed -i '/test-installation.pl/d' Makefile + Compile the package: make To test the results (approximately 2.5 SBU), issue: -make test +make -k test Install the package: diff --git a/chapter06/tar.xml b/chapter06/tar.xml index 842b17156..ddac76af7 100644 --- a/chapter06/tar.xml +++ b/chapter06/tar.xml @@ -40,6 +40,10 @@ Installation of Tar + Fix an incompatibility between this package and Glibc-&glibc-version;: + +sed -i -e '/gets is a/d' gnu/stdio.in.h + Prepare Tar for compilation: FORCE_UNSAFE_CONFIGURE=1 \ -- cgit v1.2.3-54-g00ecf