diff --git a/appendices/dependencies.xml b/appendices/dependencies.xml
index 158ed0f04..9d92de448 100644
--- a/appendices/dependencies.xml
+++ b/appendices/dependencies.xml
@@ -1047,7 +1047,15 @@
&external;
- libxml2
+
+
+ libunistring
+
+ and
+
+ libxml2
+
+
@@ -1566,7 +1574,9 @@
&external;
- None
+
+ Linux-PAM
+
@@ -2470,7 +2480,7 @@
&testsuites;
- Iana-Etc, Less. and Procps-ng
+ Iana-Etc, Less, and Procps-ng
diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml
index fa7fc12c4..72ef95ea8 100644
--- a/chapter01/changelog.xml
+++ b/chapter01/changelog.xml
@@ -40,6 +40,64 @@
appropriate for the entry or if needed the entire day's listitem.
-->
+
+ 2024-02-14
+
+
+ [bdubbs] - Update to meson-1.3.2. Fixes
+ #5442.
+
+
+
+
+
+ 2024-02-12
+
+
+ [bdubbs] - Update to shadow-4.14.5. Fixes
+ #5437.
+
+
+ [bdubbs] - Update to setuptools-69.1.0 (Python module). Fixes
+ #5439.
+
+
+ [bdubbs] - Update to python-3.12.2. Fixes
+ #5434.
+
+
+ [bdubbs] - Update to pkgconf-2.1.1. Fixes
+ #5432.
+
+
+ [bdubbs] - Update to MarkupSafe-2.1.5 (Python module). Fixes
+ #5431.
+
+
+ [bdubbs] - Update to man-pages-6.06. Fixes
+ #5438.
+
+
+ [bdubbs] - Update to expat-2.6.0. Fixes
+ #5435.
+
+
+ [bdubbs] - Update to linux-6.7.4. Fixes
+ #5433.
+
+
+
+
+
+ 2024-02-10
+
+
+ [xry111] - Fix a bug in systemd breaking running
+ systemd-analyze on an instantiated systemd unit.
+
+
+
+
2024-02-02
@@ -639,7 +697,8 @@
#5330.
- [bdubbs] - Update to procps-ng-4.0.4. Fixes
+ [bdubbs] - Update to procps-ng-4.0.4 (security fix
+ for 32-bit systems). Fixes
#5335.
diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml
index f84de485d..cccfc4a49 100644
--- a/chapter01/whatsnew.xml
+++ b/chapter01/whatsnew.xml
@@ -71,9 +71,9 @@
-
+
@@ -176,9 +176,9 @@
Man-DB-&man-db-version;
-
+
MarkupSafe-&markupsafe-version;
@@ -224,9 +224,9 @@
-
Setuptools-&setuptools-version;
- -->
+
Shadow-&shadow-version;
@@ -294,16 +294,16 @@
&bash-upstream-fixes-patch;
+
+ &readline-fixes-patch;
+
+
setuptools-&setuptools-version;
- &pkgconf-upstream-fix-patch;
-
-
-
- &readline-fixes-patch;
+ &systemd-upstream-patch;
diff --git a/chapter03/patches.xml b/chapter03/patches.xml
index f05fbd604..067dc9aea 100644
--- a/chapter03/patches.xml
+++ b/chapter03/patches.xml
@@ -117,7 +117,7 @@
-->
-
+
Readline Upstream Fix Patch - &readline-fixes-patch-size;:
@@ -142,15 +142,13 @@
-
+ understand it!
The test-getlogin test may fail in the LFS chroot environment.
+ 20240226: Commented out as it seems the upstream has root-caused and
+ fixed the issue. I've checked the fix is in Coreutils 9.4 release
+ tarball:
+
+ https://lists.gnu.org/archive/html/bug-gnulib/2022-06/msg00079.html
+-->
Remove the temporary group:
diff --git a/chapter08/expect.xml b/chapter08/expect.xml
index a3e8f0981..df6ff242e 100644
--- a/chapter08/expect.xml
+++ b/chapter08/expect.xml
@@ -63,7 +63,7 @@
other virtual kernel file systems) mounted correctly. Then reenter
the chroot environment following .
This issue needs to be resolved before continuing, or the test suites
- requring Expect (for example the test suites of Bash, Binutils, GCC,
+ requiring Expect (for example the test suites of Bash, Binutils, GCC,
GDBM, and of course Expect itself) will fail catastrophically, and other
subtle breakages may also happen.
diff --git a/chapter08/gcc.xml b/chapter08/gcc.xml
index ed9a7cac9..30670082f 100644
--- a/chapter08/gcc.xml
+++ b/chapter08/gcc.xml
@@ -188,14 +188,13 @@ su tester -c "PATH=$PATH make -k check"
are known to fail.
- With Glibc-2.38, the analyzer tests named
- data-model-4.c and
- conftest-1.c
- are known to fail.
- In the asan tests, several tests in asan_test.C
- are known to fail.
- The test named interception-malloc-test-1.C
- is known to fail.
+ Seven tests in the analyzer
+ directory are known to fail.
+
+ For g++, 21 tests (out of approximately 250,000): 14
+ AddressSanitizer*
+ tests and 7 interception-malloc-test-1.C tests, are
+ known to fail.
A few unexpected failures cannot always be avoided. The GCC developers
@@ -203,15 +202,6 @@ su tester -c "PATH=$PATH make -k check"
Unless the test results are vastly different from those at the above URL,
it is safe to continue.
-
-
Install the package:
make install
diff --git a/chapter08/glibc.xml b/chapter08/glibc.xml
index 64ed3b630..39923c03b 100644
--- a/chapter08/glibc.xml
+++ b/chapter08/glibc.xml
@@ -163,29 +163,34 @@ esac
is known to fail in the LFS chroot environment.
-
-
-
-
- The stdlib/tst-arc4random-thread
- test is known to fail if the host kernel is relatively old.
-
-
Some tests, for example
- nss/tst-nss-files-hosts-multi,
- are known to fail on relatively slow systems due to an internal
- timeout.
+ nss/tst-nss-files-hosts-multi and
+ nptl/tst-thread-affinity*
+ are known to fail due to a timeout (especially when the system is
+ relatively slow and/or running the test suite with multiple
+ parallel make jobs). These tests can be identified with:
+
+
+ grep "Timed out" -l $(find -name \*.out)
+
+ It's possible to re-run a single test with enlarged timeout
+ with
+ TIMEOUTFACTOR=<factor>
+ make test t=<test name>.
+ For example, TIMEOUTFACTOR=10 make test
+ t=nss/tst-nss-files-hosts-multi will re-run
+ nss/tst-nss-files-hosts-multi with ten times
+ the original timeout.
Additionally, some tests may fail with a relatively old CPU
- model or host kernel version.
+ model (for example
+ elf/tst-cpu-features-cpuinfo) or host kernel
+ version (for example
+ stdlib/tst-arc4random-thread).
@@ -235,7 +240,7 @@ esac
you MUST follow the note in Libxcrypt
section to install
libcrypt.so.1*
- (overwritting
+ (replacing
libcrypt.so.1 from the
prior Glibc installation).
@@ -253,7 +258,7 @@ esac
rm -f /usr/sbin/nscd
-
+
If this system (prior to LFS 12.1, exclusive) is based on
Systemd, it's also needed to disable and stop the
nscd service now:
@@ -530,7 +535,7 @@ unset ZONEINFO
zic ... -p ...
This creates the posixrules file. We use
- New York because POSIX requires the daylight savings time rules
+ New York because POSIX requires the daylight saving time rules
to be in accordance with US rules.
diff --git a/chapter08/libxcrypt.xml b/chapter08/libxcrypt.xml
index 7c6cc15ba..fb4c4adaa 100644
--- a/chapter08/libxcrypt.xml
+++ b/chapter08/libxcrypt.xml
@@ -110,7 +110,7 @@
--disable-static \
--disable-failure-tokens
make
-cp -av .libs/libcrypt.so.1* /usr/lib
+cp -av --remove-destination .libs/libcrypt.so.1* /usr/lib
diff --git a/chapter08/pkgconf.xml b/chapter08/pkgconf.xml
index 139e0c810..3e7e737fa 100644
--- a/chapter08/pkgconf.xml
+++ b/chapter08/pkgconf.xml
@@ -44,11 +44,6 @@
Installation of Pkgconf
-
- Fix a regression in pkgconf-2.1.0 breaking BLFS packages:
-
- patch -Np1 -i ../&pkgconf-upstream-fix-patch;
-
Prepare Pkgconf for compilation:
./configure --prefix=/usr \
diff --git a/chapter08/procps.xml b/chapter08/procps.xml
index 0d2537054..3f229c713 100644
--- a/chapter08/procps.xml
+++ b/chapter08/procps.xml
@@ -72,7 +72,20 @@
To run the test suite, run:
-make check
+make -k check
+
+ One test named
+ ps with output flag bsdtime,cputime,etime,etimes
+ is known to fail if the host kernel is not built with
+ CONFIG_BSD_PROCESS_ACCT enabled.
+
+ Two tests named
+ pmap X with unreachable process and
+ pmap XX with unreachable process are known to
+ fail occasionally.
Install the package:
diff --git a/chapter08/systemd.xml b/chapter08/systemd.xml
index 141a4b927..8e6952d14 100644
--- a/chapter08/systemd.xml
+++ b/chapter08/systemd.xml
@@ -50,10 +50,11 @@
Now fix a security vulnerability in the DNSSEC verification of
- systemd-resolved:
+ systemd-resolved and a bug breaking running
+ systemd-analyze verify on an instantiated systemd
+ unit:
-sed -e '/return FLAGS_SET.*AUTHENTICATED/s/(t/(dt/' \
- -i src/resolve/resolved-dns-transaction.c
+patch -Np1 -i ../&systemd-upstream-patch;
Prepare systemd for compilation:
diff --git a/chapter08/vim.xml b/chapter08/vim.xml
index 030c50442..88322132e 100644
--- a/chapter08/vim.xml
+++ b/chapter08/vim.xml
@@ -71,13 +71,16 @@
Now run the tests as user tester:
-su tester -c "LANG=en_US.UTF-8 make -j1 test" &> vim-test.log
+su tester -c "TERM=xterm-256color LANG=en_US.UTF-8 make -j1 test" \
+ &> vim-test.log
The test suite outputs a lot of binary data to the screen. This can
- cause issues with the settings of the current terminal. The problem can be
+ cause issues with the settings of the current terminal (especially while
+ we are overriding the TERM variable to satisify some
+ assumptions of the test suite). The problem can be
avoided by redirecting the output to a log file as shown above. A
- successful test will result in the words "ALL DONE" in the log file
- at completion.
+ successful test will result in the words ALL
+ DONE in the log file at completion.
Install the package:
diff --git a/chapter10/kernel.xml b/chapter10/kernel.xml
index 7761f4475..509c38c9e 100644
--- a/chapter10/kernel.xml
+++ b/chapter10/kernel.xml
@@ -87,7 +87,7 @@
un-tarring.
There are several ways to configure the kernel options. Usually,
- This is done through a menu-driven interface, for example:
+ this is done through a menu-driven interface, for example:
make menuconfig
diff --git a/packages.ent b/packages.ent
index 6d319968a..b085c0c5e 100644
--- a/packages.ent
+++ b/packages.ent
@@ -18,7 +18,7 @@
-
+
@@ -26,7 +26,7 @@
-
+
@@ -34,8 +34,8 @@
-
-
+
+
@@ -44,8 +44,8 @@
-
-
+
+
@@ -55,14 +55,14 @@
-
+
-
+
@@ -70,9 +70,9 @@
-
+
-
+
@@ -86,7 +86,7 @@
-
+
@@ -109,10 +109,10 @@
-
+
-
-
+
+
@@ -128,7 +128,7 @@
-
+
@@ -146,22 +146,22 @@
-
+
-
+
-
-
+
+
-
+
-
+
@@ -205,7 +205,7 @@
-
+
@@ -213,9 +213,9 @@
-
+
-
+
@@ -223,10 +223,10 @@
-
-
+
+
-
+
@@ -243,7 +243,7 @@
-
+
@@ -260,10 +260,10 @@
-
-
-
-
+
+
+
+
@@ -304,7 +304,7 @@
-
+
@@ -330,7 +330,7 @@
-
+
@@ -354,7 +354,7 @@
-
+
@@ -362,7 +362,7 @@
-
+
@@ -419,7 +419,7 @@
-
+
@@ -431,12 +431,12 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
-
-
-
+
+
+
+
-
-
+
+
@@ -631,20 +631,20 @@
-
+
-
+
-
-
+
+
-
-
+
+
-
+
-
+
@@ -669,7 +669,7 @@
-
+
@@ -677,7 +677,7 @@
-
+
@@ -688,7 +688,7 @@
-
+
@@ -707,9 +707,9 @@
-
-
-
+
+
+
@@ -718,7 +718,7 @@
-
+
@@ -733,9 +733,9 @@
-
+
-
+
@@ -746,8 +746,8 @@
-
-
+
+
@@ -762,7 +762,7 @@
-
+
@@ -772,7 +772,7 @@
-
+
@@ -784,7 +784,7 @@
-
+
@@ -793,5 +793,5 @@
-
+
diff --git a/patches.ent b/patches.ent
index a6e3a306e..17966e30c 100644
--- a/patches.ent
+++ b/patches.ent
@@ -26,10 +26,6 @@
-
-
-
-
@@ -38,3 +34,6 @@
+
+
+
diff --git a/stylesheets/lfs-xsl/lfs-l10n.xml b/stylesheets/lfs-xsl/lfs-l10n.xml
index 783bb1118..b47ee7f76 100644
--- a/stylesheets/lfs-xsl/lfs-l10n.xml
+++ b/stylesheets/lfs-xsl/lfs-l10n.xml
@@ -1,5 +1,5 @@
-
+