From 9317498c0347ee924ca81ae57f13b74ccb9d373d Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Thu, 11 Apr 2024 16:38:50 +0800 Subject: [PATCH 01/30] packages: SSL-ize two URLs --- packages.ent | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages.ent b/packages.ent index 69ff0b3e5..220b05c73 100644 --- a/packages.ent +++ b/packages.ent @@ -144,7 +144,7 @@ - + @@ -703,7 +703,7 @@ - + From 185b76381229fb2e5d72f00689cdcdee8c752911 Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Mon, 15 Apr 2024 11:16:44 -0500 Subject: [PATCH 02/30] Package updates. Update to setuptools-69.5.1. Update to python3-3.12.3. Update to openssl-3.3.0. Update to ninja-1.12.0. Update to man-db-2.12.1. Update to linux-6.8.6. Update to iana-etc-20240412. Update to vim-9.1.0330. --- appendices/dependencies.xml | 2 +- chapter01/changelog.xml | 38 +++++++++++++++++++++++++++ chapter01/whatsnew.xml | 16 ++++++------ chapter08/ninja.xml | 6 ++++- packages.ent | 52 ++++++++++++++++++------------------- 5 files changed, 78 insertions(+), 36 deletions(-) diff --git a/appendices/dependencies.xml b/appendices/dependencies.xml index 8c3c29ad3..b808cf7a3 100644 --- a/appendices/dependencies.xml +++ b/appendices/dependencies.xml @@ -2395,7 +2395,7 @@ &testsuites; - None + cmake diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 58c013bdf..63b81485c 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -40,6 +40,44 @@ appropriate for the entry or if needed the entire day's listitem. --> + + 2024-04-15 + + + [bdubbs] - Update to setuptools-69.5.1. Fixes + #5478. + + + [bdubbs] - Update to python3-3.12.3. Fixes + #5476. + + + [bdubbs] - Update to openssl-3.3.0. Fixes + #5475. + + + [bdubbs] - Update to ninja-1.12.0. Fixes + #5477. + + + [bdubbs] - Update to man-db-2.12.1. Fixes + #5474. + + + [bdubbs] - Update to linux-6.8.6. Fixes + #5472. + + + [bdubbs] - Update to iana-etc-20240412. Addresses + #5006. + + + [bdubbs] - Update to vim-9.1.0330. Addresses + #4500. + + + + 2024-03-31 diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml index f856866bd..83c7cd6d5 100644 --- a/chapter01/whatsnew.xml +++ b/chapter01/whatsnew.xml @@ -176,9 +176,9 @@ - + Man-pages-&man-pages-version; @@ -197,12 +197,12 @@ - - + @@ -218,9 +218,9 @@ Psmisc-&psmisc-version; - + diff --git a/chapter08/ninja.xml b/chapter08/ninja.xml index 106e63970..f63490eae 100644 --- a/chapter08/ninja.xml +++ b/chapter08/ninja.xml @@ -82,10 +82,14 @@ + The package tests cannot run in the chroot environment. They require + require cmake. + Install the package: diff --git a/packages.ent b/packages.ent index 69ff0b3e5..72f9b60d2 100644 --- a/packages.ent +++ b/packages.ent @@ -317,10 +317,10 @@ - - + + - + @@ -431,12 +431,12 @@ - + - + - + - + - + - + - - + + @@ -639,10 +639,10 @@ - - + + - + @@ -746,13 +746,13 @@ - + - + - + From 340891bca1566134f575302328591e615df54e48 Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Tue, 16 Apr 2024 10:59:48 -0500 Subject: [PATCH 03/30] Make minor change to ifup script output text. Remove blank output line generated in ifup script when bringing up wireless interface. --- bootscripts/ChangeLog | 4 ++++ bootscripts/lfs/sbin/ifup | 2 +- chapter01/changelog.xml | 9 +++++++++ packages.ent | 2 +- 4 files changed, 15 insertions(+), 2 deletions(-) diff --git a/bootscripts/ChangeLog b/bootscripts/ChangeLog index 3853ff83a..37680aff5 100644 --- a/bootscripts/ChangeLog +++ b/bootscripts/ChangeLog @@ -1,3 +1,7 @@ +2024-04-16 Bruce Dubbs + * Remove blank output line generated in ifup script when bringing + up wireless interface. + 2023-10-04 Pierre Labastie * After the changes done on 2022-03-24, several "halt stop" should have been changed to "halt start". Done now. Fortunately, those diff --git a/bootscripts/lfs/sbin/ifup b/bootscripts/lfs/sbin/ifup index 4c70810cd..070d25cdc 100755 --- a/bootscripts/lfs/sbin/ifup +++ b/bootscripts/lfs/sbin/ifup @@ -110,7 +110,7 @@ for S in ${SERVICE}; do fi done -if [ "${SERVICE}" = "wpa" ]; then log_success_msg; fi +#if [ "${SERVICE}" = "wpa" ]; then log_success_msg; fi # Create/configure the interface for S in ${SERVICE}; do diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 63b81485c..d9ea4043e 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -40,6 +40,15 @@ appropriate for the entry or if needed the entire day's listitem. --> + + 2024-04-16 + + + [bdubbs] - Make minor change to ifup script output text. + + + + 2024-04-15 diff --git a/packages.ent b/packages.ent index 169832760..fb7a51939 100644 --- a/packages.ent +++ b/packages.ent @@ -381,7 +381,7 @@ - + From ba1a9cf303ad4c6c94e4fd7f74871ffb357e367d Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Thu, 18 Apr 2024 10:19:03 -0500 Subject: [PATCH 04/30] Typo --- chapter08/ninja.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter08/ninja.xml b/chapter08/ninja.xml index f63490eae..5bccea1ea 100644 --- a/chapter08/ninja.xml +++ b/chapter08/ninja.xml @@ -83,7 +83,7 @@ The package tests cannot run in the chroot environment. They require - require cmake. + cmake. + + 2024-05-01 + + + [bdubbs] - Add security fix to glibc. Fixes + #5481. + + + [bdubbs] - Update to linux-6.8.8. Fixes + #5480. + + + [bdubbs] - Update to ncurses-6.5. Fixes + #5483. + + + + 2024-04-16 diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml index 83c7cd6d5..6bfc51b25 100644 --- a/chapter01/whatsnew.xml +++ b/chapter01/whatsnew.xml @@ -194,9 +194,9 @@ - + Ninja-&ninja-version; @@ -294,6 +294,9 @@ Lz4-&lz4-version; + + glibc-2.39-upstream_fix-1.patch + diff --git a/chapter03/patches.xml b/chapter03/patches.xml index 067dc9aea..0f78dcfa5 100644 --- a/chapter03/patches.xml +++ b/chapter03/patches.xml @@ -76,15 +76,15 @@ MD5 sum: &gcc-upstream-fixes-patch-md5; - +--> - Glibc Upstream Fixes Patch - &glibc-upstream-fixes-patch-size;: + Glibc Upstream Fix Patch - &glibc-upstream-patch-size;: - Download: - MD5 sum: &glibc-upstream-fixes-patch-md5; + Download: + MD5 sum: &glibc-upstream-patch-md5; ---> + Glibc FHS Patch - &glibc-fhs-patch-size;: diff --git a/chapter08/glibc.xml b/chapter08/glibc.xml index 6d1be66ae..1984a4444 100644 --- a/chapter08/glibc.xml +++ b/chapter08/glibc.xml @@ -49,12 +49,11 @@ store their runtime data in the FHS-compliant locations: patch -Np1 -i ../&glibc-fhs-patch; - + Now fix a security vulnerability: + +patch -Np1 -i ../&glibc-upstream-patch; + The Glibc documentation recommends building Glibc in a dedicated build directory: diff --git a/chapter08/ncurses.xml b/chapter08/ncurses.xml index 40589c58a..a825f63c9 100644 --- a/chapter08/ncurses.xml +++ b/chapter08/ncurses.xml @@ -50,9 +50,9 @@ --without-normal \ --with-cxx-shared \ --enable-pc-files \ - --enable-widec \ --with-pkg-config-libdir=/usr/lib/pkgconfig + The meaning of the new configure options: @@ -94,9 +94,9 @@ - + Compile the package: @@ -127,7 +127,7 @@ make will spawn new shell processes during "make install". --> The installation of this package will overwrite - libncursesw.so.&ncurses-release; + libncursesw.so.&ncurses-version; in-place. It may crash the shell process which is using code and data from the library file. Install the package with DESTDIR, and replace the library file correctly using @@ -137,8 +137,8 @@ ): make DESTDIR=$PWD/dest install -install -vm755 dest/usr/lib/libncursesw.so.&ncurses-release; /usr/lib -rm -v dest/usr/lib/libncursesw.so.&ncurses-release; +install -vm755 dest/usr/lib/libncursesw.so.&ncurses-version; /usr/lib +rm -v dest/usr/lib/libncursesw.so.&ncurses-version; sed -e 's/^#if.*XOPEN.*$/#if 1/' \ -i dest/usr/include/curses.h cp -av dest/* / diff --git a/chapter08/sysklogd.xml b/chapter08/sysklogd.xml index 131b7e7fc..26382f8c1 100644 --- a/chapter08/sysklogd.xml +++ b/chapter08/sysklogd.xml @@ -55,7 +55,7 @@ sed -i 's/union wait/int/' syslogd.c Install the package: -make BINDIR=/sbin install +make install diff --git a/packages.ent b/packages.ent index fb7a51939..81a747019 100644 --- a/packages.ent +++ b/packages.ent @@ -431,12 +431,12 @@ - + - + - + - - - + + - + diff --git a/patches.ent b/patches.ent index fabb2f7ad..d4969adfb 100644 --- a/patches.ent +++ b/patches.ent @@ -17,11 +17,11 @@ - + + + + + From 5a661c39b0322e7ec46f566a729a287c16844a7f Mon Sep 17 00:00:00 2001 From: Thomas Trepl Date: Wed, 1 May 2024 08:16:22 +0200 Subject: [PATCH 08/30] Fix changing entity name --- chapter06/ncurses.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/chapter06/ncurses.xml b/chapter06/ncurses.xml index 7f79b5129..0a8c7e166 100644 --- a/chapter06/ncurses.xml +++ b/chapter06/ncurses.xml @@ -137,9 +137,9 @@ popd --enable-widec This switch causes wide-character libraries (e.g., libncursesw.so.&ncurses-release;) + class="libraryfile">libncursesw.so.&ncurses-version;) to be built instead of normal ones (e.g., libncurses.so.&ncurses-release;). + class="libraryfile">libncurses.so.&ncurses-version;). 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 From 3abde5946b237bcfd09af72acefff799356b9802 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Wed, 1 May 2024 15:49:51 +0800 Subject: [PATCH 09/30] ncurses: Remove explicit --enable-widec in chapter 6 like chapter 8 --- chapter06/ncurses.xml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/chapter06/ncurses.xml b/chapter06/ncurses.xml index 0a8c7e166..29d406b57 100644 --- a/chapter06/ncurses.xml +++ b/chapter06/ncurses.xml @@ -69,8 +69,7 @@ popd --with-cxx-shared \ --without-debug \ --without-ada \ - --disable-stripping \ - --enable-widec + --disable-stripping The meaning of the new configure options: @@ -132,9 +131,9 @@ popd Using host tools on cross-compiled programs can cause failure. - + Compile the package: From e1f27cd97b074a15235dccb9331aa5a1a6c34fe0 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Wed, 1 May 2024 15:50:45 +0800 Subject: [PATCH 10/30] changelog: The ifup change is sysv-only --- chapter01/changelog.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 9f1dea86b..131a8cd1c 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -58,7 +58,7 @@ - + 2024-04-16 From 9b39be4268ba3a6b9e1015766767c02d74858f8a Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Thu, 2 May 2024 18:38:35 +0800 Subject: [PATCH 11/30] glibc: Revise glibc-2.39 upstream fix patch The glibc-2.39-upstream_fix-1.patch file contains a broken tst-iconv-iso-2022-cn-ext.c file. It causes: FAIL: iconvdata/tst-iconv-iso-2022-cn-ext Revise the patch to fix it. --- patches.ent | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/patches.ent b/patches.ent index d4969adfb..bad4710b0 100644 --- a/patches.ent +++ b/patches.ent @@ -18,8 +18,8 @@ - - + + From a9cbf6ff0c5d1fee58aa708a20707aa9712b524d Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Fri, 3 May 2024 11:55:27 +0800 Subject: [PATCH 12/30] Revert "python: Document test failures with recent expat" This reverts commit 6a75210c6d8e2346068dd097fb1b3d4edd3cd0da. In Python >= 3.12.3, these tests are disabled with expat >= 2.6.0. Link: https://github.com/python/cpython/commit/c4fa79b924a1 --- chapter08/python.xml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/chapter08/python.xml b/chapter08/python.xml index d60378abb..0f22ab2a9 100644 --- a/chapter08/python.xml +++ b/chapter08/python.xml @@ -90,10 +90,6 @@ automatically re-run failed tests. If a test failed but then passed when re-run, it should be considered as passed. - Two tests named test_xml_etree and - test_xml_etree_c are known to fail with expat-2.6.0 - or newer. - Install the package: make install From 1e7341fd3532d21f59870a077551d664627c5e8f Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Fri, 3 May 2024 13:39:48 +0800 Subject: [PATCH 13/30] systemd: Enable test suite (again) With systemd-255, I get only 1 failure out of 1206. Thus it seems a good idea to run the test suite. We can always revert if something bad happens. --- chapter08/systemd.xml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/chapter08/systemd.xml b/chapter08/systemd.xml index 2d325d5cd..0de3af24b 100644 --- a/chapter08/systemd.xml +++ b/chapter08/systemd.xml @@ -226,6 +226,18 @@ meson setup \ ninja + Some tests need a basic /etc/os-release file. + To test the results, issue: + +echo 'NAME="Linux From Scratch"' > /etc/os-release +ninja test + + + One test named systemd:core / test-namespace + is known to fail in the LFS chroot environment. Some other tests may + fail because they depend on various kernel configuration options. + Install the package: ninja install From f65f3b993c355b34ecd59444b64aa63ea86ad1dd Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Fri, 3 May 2024 14:07:22 +0800 Subject: [PATCH 14/30] [systemd] clock: Captitalize the title All other titles in the book are capitalized by David. --- chapter09/clock.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter09/clock.xml b/chapter09/clock.xml index be60684fb..c5aaa9a7a 100644 --- a/chapter09/clock.xml +++ b/chapter09/clock.xml @@ -8,7 +8,7 @@ - Configuring the system clock + Configuring the System Clock clock From c5a1240233c10fa1cecfb2bcaeb2023e918339a8 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Sun, 5 May 2024 17:04:56 +0800 Subject: [PATCH 15/30] dependencies: Bison building system needs diffutils A recent lfs-support discussion revealed if diffutils is forgotten, bison building system can fail in a way very difficult to diagnose. --- appendices/dependencies.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/appendices/dependencies.xml b/appendices/dependencies.xml index b808cf7a3..46bdfac0a 100644 --- a/appendices/dependencies.xml +++ b/appendices/dependencies.xml @@ -326,8 +326,8 @@ &dependencies; - Bash, Binutils, Coreutils, GCC, Gettext, Glibc, Grep, M4, Make, - Perl, and Sed + Bash, Binutils, Coreutils, Diffutils, GCC, Gettext, Glibc, + Grep, M4, Make, Perl, and Sed From 6dfdf036991e21053d6b8c6e8e13ea670059f688 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Thu, 9 May 2024 14:52:44 +0800 Subject: [PATCH 16/30] coreutils: Add -k for make check Two tests are known to fail, so without -k a part of the test suite is not executed. --- chapter08/coreutils.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/chapter08/coreutils.xml b/chapter08/coreutils.xml index 1f935809b..ca02058b5 100644 --- a/chapter08/coreutils.xml +++ b/chapter08/coreutils.xml @@ -127,7 +127,8 @@ FORCE_UNSAFE_CONFIGURE=1 ./configure \ node for such a PTY cannot be accessed from the LFS chroot environment): -su tester -c "PATH=$PATH make RUN_EXPENSIVE_TESTS=yes check" < /dev/null +su tester -c "PATH=$PATH make -k RUN_EXPENSIVE_TESTS=yes check" \ + < /dev/null Remove the temporary group: From 1a7ac41bcc04ebc7e2e57a7f5870a8d6aba40c87 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Sat, 11 May 2024 08:15:09 +0800 Subject: [PATCH 17/30] grub: Update the note about UEFI for recent BLFS change --- chapter08/grub.xml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/chapter08/grub.xml b/chapter08/grub.xml index aa13ce3b0..19cc9674a 100644 --- a/chapter08/grub.xml +++ b/chapter08/grub.xml @@ -43,10 +43,12 @@ If your system has UEFI support and you wish to boot LFS with UEFI, - you can skip this package in LFS, - and install GRUB with UEFI support (and its dependencies) by following - the instructions on + you need to install GRUB with UEFI support (and its dependencies) by + following the instructions on the BLFS page. + You may skip this package, or install this package and the BLFS + GRUB for UEFI package without conflict (the BLFS page provides + instructions for both cases). From 340e17adc67a1d7dc050fed51e384122f425e458 Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Sat, 11 May 2024 15:17:56 -0500 Subject: [PATCH 18/30] Package updates. Update to vim-9.1.0405. Update to util-linux-2.40.1. Update to linux-6.8.9. Update to jinja2-3.1.4 (Python mpdule). Update to iana-etc-20240502. Update to gcc-14.1.0. --- chapter01/changelog.xml | 28 +++++++++++++++++++-------- chapter01/whatsnew.xml | 15 ++++++-------- chapter03/patches.xml | 20 +++++++++---------- chapter06/bash.xml | 3 ++- chapter08/automake.xml | 3 ++- chapter08/bash.xml | 1 + chapter08/expect.xml | 4 ++++ chapter08/gcc.xml | 39 +++++++++++++++++-------------------- chapter08/glibc.xml | 9 +++++---- chapter08/inetutils.xml | 4 ++++ packages.ent | 43 ++++++++++++++++++++++------------------- patches.ent | 14 +++++++++----- 12 files changed, 104 insertions(+), 79 deletions(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 131a8cd1c..0a83d018b 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -41,24 +41,36 @@ --> - 2024-05-01 + 2024-05-11 - [bdubbs] - Add security fix to glibc. Fixes - #5481. + [bdubbs] - Update to vim-9.1.0405. Addresses + #4500. - [bdubbs] - Update to linux-6.8.8. Fixes - #5480. + [bdubbs] - Update to util-linux-2.40.1. Fixes + #5482. - [bdubbs] - Update to ncurses-6.5. Fixes - #5483. + [bdubbs] - Update to linux-6.8.9. Fixes + #5484. + + + [bdubbs] - Update to jinja2-3.1.4 (Python mpdule). Fixes + #5485. + + + [bdubbs] - Update to iana-etc-20240502. Addresses + #5006. + + + [bdubbs] - Update to gcc-14.1.0. Fixes + #5486. - + 2024-04-16 diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml index 6bfc51b25..8bd40c0c1 100644 --- a/chapter01/whatsnew.xml +++ b/chapter01/whatsnew.xml @@ -92,9 +92,9 @@ - + @@ -134,9 +134,9 @@ IPRoute2-&iproute2-version; - + @@ -194,9 +194,9 @@ - + Ninja-&ninja-version; @@ -294,9 +294,6 @@ Lz4-&lz4-version; - - glibc-2.39-upstream_fix-1.patch - diff --git a/chapter03/patches.xml b/chapter03/patches.xml index 0f78dcfa5..19402ac9e 100644 --- a/chapter03/patches.xml +++ b/chapter03/patches.xml @@ -59,15 +59,15 @@ MD5 sum: &coreutils-i18n-patch-md5; - + + - Glibc Upstream Fix Patch - &glibc-upstream-patch-size;: + Glibc Upstream Fixes Patch - &glibc-upstream-fixes-patch-size;: - Download: - MD5 sum: &glibc-upstream-patch-md5; + Download: + MD5 sum: &glibc-upstream-fixes-patch-md5; - +--> Glibc FHS Patch - &glibc-fhs-patch-size;: diff --git a/chapter06/bash.xml b/chapter06/bash.xml index 54fa6f444..66c6ef3fc 100644 --- a/chapter06/bash.xml +++ b/chapter06/bash.xml @@ -48,7 +48,8 @@ ./configure --prefix=/usr \ --build=$(sh support/config.guess) \ --host=$LFS_TGT \ - --without-bash-malloc + --without-bash-malloc \ + bash_cv_strtold_broken=no The meaning of the configure options: diff --git a/chapter08/automake.xml b/chapter08/automake.xml index ed1907c55..6c7aa2582 100644 --- a/chapter08/automake.xml +++ b/chapter08/automake.xml @@ -62,7 +62,8 @@ Replace $((...)) with the number of logical cores you want to use if you don't want to use all. - The test t/subobj.sh is known to fail. + Out of 2926 tests, 52 are known to fail due to incompatibilities in the + test scripts with gcc-14.1 or later. Install the package: diff --git a/chapter08/bash.xml b/chapter08/bash.xml index 1490e7791..c217d5576 100644 --- a/chapter08/bash.xml +++ b/chapter08/bash.xml @@ -49,6 +49,7 @@ ./configure --prefix=/usr \ --without-bash-malloc \ --with-installed-readline \ + bash_cv_strtold_broken=no \ --docdir=/usr/share/doc/bash-&bash-version; diff --git a/chapter08/expect.xml b/chapter08/expect.xml index 76795782d..5b5047cda 100644 --- a/chapter08/expect.xml +++ b/chapter08/expect.xml @@ -67,6 +67,10 @@ GDBM, and of course Expect itself) will fail catastrophically, and other subtle breakages may also happen. + Now, make some changes to allow the package with gcc-14.1 or later: + +patch -Np1 -i ../expect-&expect-version;-gcc14-1.patch + Prepare Expect for compilation: ./configure --prefix=/usr \ diff --git a/chapter08/gcc.xml b/chapter08/gcc.xml index 66f803273..971394527 100644 --- a/chapter08/gcc.xml +++ b/chapter08/gcc.xml @@ -40,20 +40,7 @@ Installation of GCC - - If building on x86_64, change the default directory name for 64-bit libraries to lib: @@ -76,6 +63,7 @@ cd build --enable-languages=c,c++ \ --enable-default-pie \ --enable-default-ssp \ + --enable-host-pie \ --disable-multilib \ --disable-bootstrap \ --disable-fixincludes \ @@ -147,8 +135,8 @@ cd build In this section, the test suite for GCC is considered important, but it takes a long time. First-time builders are encouraged to run the test suite. The time to run the tests can be - reduced significantly by adding -jx to the make -k check command below, - where x is the number of CPU cores on your system. + reduced significantly by adding -jx to the make -k check + command below, where x is the number of CPU cores on your system. One set of tests in the GCC test suite is known to exhaust the default @@ -156,6 +144,14 @@ cd build ulimit -s 32768 + Now remove/fix several known test failures: + +sed -e '/cpython/d' -i ../gcc/testsuite/gcc.dg/plugin/plugin.exp +sed -e 's/no-pic /&-no-pie /' -i ../gcc/testsuite/gcc.target/i386/pr113689-1.c +sed -e 's/300000/(1|300000)/' -i ../libgomp/testsuite/libgomp.c-c++-common/pr109062.c +sed -e 's/{ target nonpic } //' \ + -e '/GOTPCREL/d' -i ../gcc/testsuite/gcc.target/i386/fentryname3.c + Test the results as a non-privileged user, but do not stop at errors: chown -R tester . @@ -171,14 +167,14 @@ su tester -c "PATH=$PATH make -k check" Results can be compared with those located at and . - +pr56837.c + pr56837.c and seven tests in the analyzer directory are known to fail. - + One libstdc++ test (out of over 15000), copy.cc, is known to fail. @@ -190,9 +186,10 @@ su tester -c "PATH=$PATH make -k check" Additionally, several tests in the vect directory are known to fail if the hardware does not support AVX. - - A few unexpected failures cannot always be avoided. The GCC developers - are usually aware of these issues, but have not resolved them yet. +--> + A few unexpected failures cannot always be avoided. In some cases + test failures depend on the specific hardware of the system. Unless the test results are vastly different from those at the above URL, it is safe to continue. diff --git a/chapter08/glibc.xml b/chapter08/glibc.xml index 1984a4444..6d1be66ae 100644 --- a/chapter08/glibc.xml +++ b/chapter08/glibc.xml @@ -49,11 +49,12 @@ store their runtime data in the FHS-compliant locations: patch -Np1 -i ../&glibc-fhs-patch; + The Glibc documentation recommends building Glibc in a dedicated build directory: diff --git a/chapter08/inetutils.xml b/chapter08/inetutils.xml index 468ccb25e..693c08405 100644 --- a/chapter08/inetutils.xml +++ b/chapter08/inetutils.xml @@ -40,6 +40,10 @@ Installation of Inetutils + First, make the package build with gcc-14.1 or later:: + +sed -i 's/def HAVE_TERMCAP_TGETENT/ 1/' telnet/telnet.c + Prepare Inetutils for compilation: ./configure --prefix=/usr \ diff --git a/packages.ent b/packages.ent index 81a747019..6f6ab89b2 100644 --- a/packages.ent +++ b/packages.ent @@ -218,10 +218,10 @@ - - + + - + @@ -317,10 +317,10 @@ - + - + @@ -349,10 +349,10 @@ - - - - + + + + @@ -431,12 +431,12 @@ - + - + - + + + + - + @@ -733,17 +736,17 @@ - - + + - + - + diff --git a/patches.ent b/patches.ent index bad4710b0..7bf0177a2 100644 --- a/patches.ent +++ b/patches.ent @@ -14,14 +14,18 @@ + + + + - - - - - + From c7ed0b0fb84ab226ea1b1b3d72e5cd1651b80f26 Mon Sep 17 00:00:00 2001 From: Thomas Trepl Date: Sun, 12 May 2024 12:14:25 +0200 Subject: [PATCH 19/30] Fix chksum of vim-9.1.0405 --- packages.ent | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages.ent b/packages.ent index 6f6ab89b2..13c328b76 100644 --- a/packages.ent +++ b/packages.ent @@ -752,7 +752,7 @@ - + From ddbe15d5131a6f2c26a68b5008db700fd8792a52 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Sun, 12 May 2024 21:38:34 +0800 Subject: [PATCH 20/30] changelog: Fix a typo --- chapter01/changelog.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 0a83d018b..3ca65e9f2 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -56,7 +56,7 @@ #5484. - [bdubbs] - Update to jinja2-3.1.4 (Python mpdule). Fixes + [bdubbs] - Update to jinja2-3.1.4 (Python module). Fixes #5485. From 043e9bdb4611a5684ccfe9e27893ab260503b118 Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Sun, 12 May 2024 09:55:19 -0500 Subject: [PATCH 21/30] Fix currency for jinja2 --- lfs-latest-git.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lfs-latest-git.php b/lfs-latest-git.php index 95abb7c28..52eb501b4 100644 --- a/lfs-latest-git.php +++ b/lfs-latest-git.php @@ -147,7 +147,7 @@ if ( $package == "Python" ) $dirpath = "https://www.python.org/downloads/sou if ( $package == "shadow" ) $dirpath = github("shadow-maint/shadow"); if ( $package == "sysvinit" ) $dirpath = github("slicer69/sysvinit"); if ( $package == "MarkupSafe" ) $dirpath = "https://pypi.python.org/pypi/MarkupSafe/"; -if ( $package == "Jinja" ) $dirpath = "https://pypi.python.org/pypi/Jinja2/"; +if ( $package == "jinja" ) $dirpath = "https://pypi.python.org/pypi/Jinja2/"; if ( $package == "systemd" ) $dirpath = github("systemd/systemd"); //if ( $package == "tcl" ) $dirpath = "https://sourceforge.net/projects/tcl/files"; if ( $package == "tcl" ) $dirpath = "https://www.tcl.tk/software/tcltk/download.html"; @@ -263,7 +263,7 @@ if ( $package == "zstd" ) $dirpath = github("facebook/zstd"); if ( $package == "grub" ) return find_max( $lines, "/grub/", "/^.*grub-([\d\.]+).tar.xz.*$/" ); - if ( $package == "Jinja" ) + if ( $package == "jinja" ) return find_max( $lines, "/Jinja/", "/^.*Jinja2 ([\d\.]+).*$/" ); if ( $package == "lz" ) From 46e985d8af9a9c065fbab74f97d76d60f648f8d6 Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Sun, 12 May 2024 10:05:27 -0500 Subject: [PATCH 22/30] Make vim md5sum consistent with the version on anduin. --- packages.ent | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages.ent b/packages.ent index 13c328b76..6f6ab89b2 100644 --- a/packages.ent +++ b/packages.ent @@ -752,7 +752,7 @@ - + From 760d28c80946f1688cb50afea55a0bef7fc4b4e7 Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Sun, 12 May 2024 10:16:12 -0500 Subject: [PATCH 23/30] e anduin for vim. The github version of the vim tarball is not always available. Keep it on anduin. --- packages.ent | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages.ent b/packages.ent index 6f6ab89b2..aea4ef2b0 100644 --- a/packages.ent +++ b/packages.ent @@ -750,8 +750,8 @@ - - + + From f70694dce2e14eb997ff9d63969a67bf61f72a7e Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Tue, 30 Apr 2024 12:42:03 -0500 Subject: [PATCH 24/30] PAckage updates and a security fix. Add security fix to glibc. Update to linux-6.8.8. Update to ncurses-6.5. (cherry picked from commit d0ca5ead4668649d96eb6a9ed9e0269c15dfbe01) Reapply this change which is mistakenly reverted in 340e17adc67a1d7dc050fed51e384122f425e458. --- chapter01/changelog.xml | 18 ++++++++++++++++++ chapter01/whatsnew.xml | 7 +++++-- chapter03/patches.xml | 10 +++++----- chapter08/glibc.xml | 9 ++++----- packages.ent | 11 ++++------- patches.ent | 10 +++++----- 6 files changed, 41 insertions(+), 24 deletions(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 3ca65e9f2..440ecac5f 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -70,6 +70,24 @@ + + 2024-05-01 + + + [bdubbs] - Add security fix to glibc. Fixes + #5481. + + + [bdubbs] - Update to linux-6.8.8. Fixes + #5480. + + + [bdubbs] - Update to ncurses-6.5. Fixes + #5483. + + + + 2024-04-16 diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml index 8bd40c0c1..2bd18a3e4 100644 --- a/chapter01/whatsnew.xml +++ b/chapter01/whatsnew.xml @@ -194,9 +194,9 @@ - + Ninja-&ninja-version; @@ -294,6 +294,9 @@ Lz4-&lz4-version; + + glibc-2.39-upstream_fix-1.patch + diff --git a/chapter03/patches.xml b/chapter03/patches.xml index 19402ac9e..87645f532 100644 --- a/chapter03/patches.xml +++ b/chapter03/patches.xml @@ -76,15 +76,15 @@ MD5 sum: &gcc-upstream-fixes-patch-md5; - +--> - Glibc Upstream Fixes Patch - &glibc-upstream-fixes-patch-size;: + Glibc Upstream Fix Patch - &glibc-upstream-patch-size;: - Download: - MD5 sum: &glibc-upstream-fixes-patch-md5; + Download: + MD5 sum: &glibc-upstream-patch-md5; ---> + Glibc FHS Patch - &glibc-fhs-patch-size;: diff --git a/chapter08/glibc.xml b/chapter08/glibc.xml index 6d1be66ae..1984a4444 100644 --- a/chapter08/glibc.xml +++ b/chapter08/glibc.xml @@ -49,12 +49,11 @@ store their runtime data in the FHS-compliant locations: patch -Np1 -i ../&glibc-fhs-patch; - + Now fix a security vulnerability: + +patch -Np1 -i ../&glibc-upstream-patch; + The Glibc documentation recommends building Glibc in a dedicated build directory: diff --git a/packages.ent b/packages.ent index aea4ef2b0..1645b5e4e 100644 --- a/packages.ent +++ b/packages.ent @@ -526,15 +526,12 @@ - - + - - - - + + - + diff --git a/patches.ent b/patches.ent index 7bf0177a2..ae0f5d3c2 100644 --- a/patches.ent +++ b/patches.ent @@ -21,11 +21,11 @@ - + + + + + From 99056a6d6942818e03805beb8dbecd1809814a65 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Thu, 2 May 2024 18:38:35 +0800 Subject: [PATCH 25/30] glibc: Revise glibc-2.39 upstream fix patch The glibc-2.39-upstream_fix-1.patch file contains a broken tst-iconv-iso-2022-cn-ext.c file. It causes: FAIL: iconvdata/tst-iconv-iso-2022-cn-ext Revise the patch to fix it. (cherry picked from commit 9b39be4268ba3a6b9e1015766767c02d74858f8a) Reapply this change which is mistakenly reverted in 340e17adc67a1d7dc050fed51e384122f425e458. --- patches.ent | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/patches.ent b/patches.ent index ae0f5d3c2..447287ec7 100644 --- a/patches.ent +++ b/patches.ent @@ -22,8 +22,8 @@ - - + + From 74dfcff3747d842940fdc2d77bfd78159caf9793 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Mon, 13 May 2024 13:28:11 +0800 Subject: [PATCH 26/30] Revert "e anduin for vim." This reverts commit 760d28c80946f1688cb50afea55a0bef7fc4b4e7. As we've discussed in #5490: LFS 9.0 (released 2019) downloads vim-8.1.1846 from GitHub directly, and the URL still works today and results a tarball with the same md5 as LFS 9.0 documents. Thus GitHub download seems stable enough from vim. Also note that "vim-9.1.0405.tar.gz" on anduin is actually a vim-9.1.0330 release tarball. --- packages.ent | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages.ent b/packages.ent index 1645b5e4e..82b643511 100644 --- a/packages.ent +++ b/packages.ent @@ -747,8 +747,8 @@ - - + + From 6a97bf00d7ef9831e9d1648ddf66509c6ce2140e Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Mon, 13 May 2024 13:30:51 +0800 Subject: [PATCH 27/30] Revert "Make vim md5sum consistent with the version on anduin." This reverts commit 46e985d8af9a9c065fbab74f97d76d60f648f8d6. --- packages.ent | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages.ent b/packages.ent index 82b643511..2af5b17ae 100644 --- a/packages.ent +++ b/packages.ent @@ -749,7 +749,7 @@ - + From 31c839da2d25117c86aa03b8a399859520ce7e07 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Mon, 13 May 2024 13:35:48 +0800 Subject: [PATCH 28/30] packages: Document why not to use anduin for vim --- packages.ent | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/packages.ent b/packages.ent index 2af5b17ae..e78e6387c 100644 --- a/packages.ent +++ b/packages.ent @@ -748,6 +748,17 @@ + From 5ff2f2e47227e0997bc81e2505bcc52a7b8ede3b Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Mon, 13 May 2024 20:16:54 +0800 Subject: [PATCH 29/30] creatingfilesystem: Remove reference to ReiserFS It's deprecated by the kernel developers and we've archived the tools for it in BLFS as well. --- chapter02/creatingfilesystem.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter02/creatingfilesystem.xml b/chapter02/creatingfilesystem.xml index 9b1a08b2a..74970e226 100644 --- a/chapter02/creatingfilesystem.xml +++ b/chapter02/creatingfilesystem.xml @@ -50,7 +50,7 @@ - Other file systems, including FAT32, NTFS, ReiserFS, JFS, and XFS are + Other file systems, including FAT32, NTFS, JFS, and XFS are useful for specialized purposes. More information about these file systems, and many others, can be found at . From 923fb4854866215850c4f222f36d7fbcf2b298c0 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Tue, 14 May 2024 03:41:34 +0800 Subject: [PATCH 30/30] coreutils: Revise i18n patch --- chapter01/changelog.xml | 12 ++++++++++++ patches.ent | 6 +++--- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 440ecac5f..fd5645dc5 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -40,6 +40,18 @@ appropriate for the entry or if needed the entire day's listitem. --> + + 2024-05-13 + + + [xry111] - Synchronize coreutils i18n patch from Fedora + to fix a build failure on 32-bit x86 and an alarming compiler + warning on both 32-bit x86 and x86_64 with GCC 14.1 or + later. + + + + 2024-05-11 diff --git a/patches.ent b/patches.ent index 447287ec7..426cc36df 100644 --- a/patches.ent +++ b/patches.ent @@ -10,9 +10,9 @@ - - - + + +