From 178d268fbff1dc96aaac1ad94fa03dc5da0e6ff9 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Sun, 15 Jan 2023 12:27:47 +0800 Subject: [PATCH 01/47] dependency: add po4a as external dependency for man-db If po4a is installed, man-db will install translated man pages man(1) etc. --- appendices/dependencies.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/appendices/dependencies.xml b/appendices/dependencies.xml index 03eed010f..69232f239 100644 --- a/appendices/dependencies.xml +++ b/appendices/dependencies.xml @@ -2027,7 +2027,8 @@ &external; - libseccomp + libseccomp and + po4a From 3b6f5e2c5f14d6ee013f4f309af536b1a7a9c335 Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Sun, 15 Jan 2023 13:50:48 -0600 Subject: [PATCH 02/47] Package updates. Update to iana-etc-20230109. Update to binutils-2.40. Update to bc-6.2.2. Update to linux-6.1.6. Update to man-db-2.11.2. Update to mpfr-4.2.0. Update to ncurses-6.4. Update to xz-5.4.1. --- chapter01/changelog.xml | 38 ++++++++++++++++++++++++++++++++++ chapter01/whatsnew.xml | 12 +++++------ chapter08/binutils.xml | 19 +++++++++++++---- packages.ent | 46 ++++++++++++++++++++--------------------- 4 files changed, 82 insertions(+), 33 deletions(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 196c32fe5..be1d7e037 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -39,6 +39,44 @@ or as appropriate for the entry or if needed the entire day's listitem. --> + + 2023-01-15 + + + [bdubbs] - Update to iana-etc-20230109. Addresses + #5006. + + + [bdubbs] - Update to binutils-2.40. Fixes + #5198. + + + [bdubbs] - Update to bc-6.2.2. Fixes + #5192. + + + [bdubbs] - Update to linux-6.1.6. Fixes + #5193. + + + [bdubbs] - Update to man-db-2.11.2. Fixes + #5196. + + + [bdubbs] - Update to mpfr-4.2.0. Fixes + #5195. + + + [bdubbs] - Update to ncurses-6.4. Fixes + #5194. + + + [bdubbs] - Update to xz-5.4.1. Fixes + #5197. + + + + 2023-01-01 diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml index 86992592b..d7bfb4d38 100644 --- a/chapter01/whatsnew.xml +++ b/chapter01/whatsnew.xml @@ -52,9 +52,9 @@ Bc &bc-version; - + @@ -196,12 +196,12 @@ MPC-&mpc-version; - - + Ninja-&ninja-version; diff --git a/chapter08/binutils.xml b/chapter08/binutils.xml index f2061d5b8..2c5056fa2 100644 --- a/chapter08/binutils.xml +++ b/chapter08/binutils.xml @@ -179,9 +179,9 @@ cd build some gas tests may fail if parallel jobs are used. If you are not assured of the correctness of gas, invoke make check-gas to run the gas test suite separately and - all tests should pass. Three gprofng tests yield the + all tests should pass. Install the package: @@ -189,7 +189,7 @@ cd build Remove useless static libraries and an empty man page: -rm -fv /usr/lib/lib{bfd,ctf,ctf-nobfd,opcodes}.a +rm -fv /usr/lib/lib{bfd,ctf,ctf-nobfd,libsframe,opcodes}.a rm -fv /usr/share/man/man1/gprofng.1 @@ -205,7 +205,7 @@ rm -fv /usr/share/man/man1/gprofng.1 addr2line, ar, as, c++filt, dwp, elfedit, gprof, gprofng, ld, ld.bfd, ld.gold, nm, objcopy, objdump, ranlib, readelf, size, strings, and strip - libbfd.so, libctf.so, libctf-nobfd.so, and libopcodes.so + libbfd.so, libctf.so, libctf-nobfd.so, libopcodes.so, and libsframe.so /usr/lib/ldscripts @@ -466,6 +466,17 @@ rm -fv /usr/share/man/man1/gprofng.1 + + libsframe + + A library to support online backtracing using a + simple unwinder. + + libsframe + + + + diff --git a/packages.ent b/packages.ent index eade4c846..cb99fd1b5 100644 --- a/packages.ent +++ b/packages.ent @@ -58,18 +58,18 @@ - + - + - - - - + + + + @@ -317,10 +317,10 @@ - + - + @@ -424,12 +424,12 @@ - + - + - + + + 2023-01-22 + + + [bdubbs] - Update to MarkupSafe-2.1.2. Fixes + #5200. + + + + 2023-01-15 diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml index d7bfb4d38..f3a220b73 100644 --- a/chapter01/whatsnew.xml +++ b/chapter01/whatsnew.xml @@ -187,9 +187,9 @@ Man-pages-&man-pages-version; - + Meson-&meson-version; diff --git a/packages.ent b/packages.ent index 7634c21ba..5793a2d9c 100644 --- a/packages.ent +++ b/packages.ent @@ -479,10 +479,10 @@ - - + + - + From 69854d2a873d74a7956e34d3f29f28aafa5c07f7 Mon Sep 17 00:00:00 2001 From: David Bryant Date: Wed, 25 Jan 2023 13:10:44 -0600 Subject: [PATCH 09/47] Edit systemd chapters for grammar and idiom. --- chapter08/dbus.xml | 4 +-- chapter08/markupsafe.xml | 2 +- chapter08/systemd.xml | 62 ++++++++++++++++++++-------------------- 3 files changed, 34 insertions(+), 34 deletions(-) diff --git a/chapter08/dbus.xml b/chapter08/dbus.xml index 71a93e5cb..8f3c80f7a 100644 --- a/chapter08/dbus.xml +++ b/chapter08/dbus.xml @@ -67,9 +67,9 @@ --with-system-socket=/run/dbus/system_bus_socket - These set the location of the PID file and the system bus socket + These cause the PID file and the system bus socket to be in /run, instead of - deprecated /var/run. + the deprecated /var/run. diff --git a/chapter08/markupsafe.xml b/chapter08/markupsafe.xml index 9481a194a..27fdb1627 100644 --- a/chapter08/markupsafe.xml +++ b/chapter08/markupsafe.xml @@ -23,7 +23,7 @@ - <para>MarkupSafe is a Python module that implements a XML/HTML/XHTML Markup + <para>MarkupSafe is a Python module that implements an XML/HTML/XHTML Markup safe string.</para> <segmentedlist> diff --git a/chapter08/systemd.xml b/chapter08/systemd.xml index 2c5c0e11b..60b5f3605 100644 --- a/chapter08/systemd.xml +++ b/chapter08/systemd.xml @@ -60,7 +60,7 @@ cd build meson --prefix=/usr \ - --buildtype=release \ + --buildtype=release \location of the -Ddefault-dnssec=no \ -Dfirstboot=false \ -Dinstall-tests=false \ @@ -82,7 +82,7 @@ meson --prefix=/usr \ <term><parameter>--buildtype=release</parameter></term> <listitem> <para>This switch overrides the default buildtype - (<quote>debug</quote>), which would produce unoptimized + (<quote>debug</quote>), which produces unoptimized binaries.</para> </listitem> </varlistentry> @@ -99,7 +99,7 @@ meson --prefix=/usr \ <listitem> <para>This switch prevents installation of systemd services responsible for setting up the system for - the first time. They are not useful for LFS because + the first time. These are not useful in LFS, because everything is done manually.</para> </listitem> </varlistentry> @@ -115,9 +115,9 @@ meson --prefix=/usr \ <term><parameter>-Dldconfig=false</parameter></term> <listitem> <para>This switch prevents installation of a systemd unit that runs - <command>ldconfig</command> at boot, which is not useful for source - distributions such as LFS and makes the boot time longer. Remove it - if the described feature is desired.</para> + <command>ldconfig</command> at boot; this is not useful for source + distributions such as LFS, and makes the boot time longer. Remove + this option to enable running <command>ldconfig</command> at boot.</para> </listitem> </varlistentry> @@ -137,15 +137,15 @@ meson --prefix=/usr \ <term><parameter>-Drpmmacrosdir=no</parameter></term> <listitem> <para>This switch disables installation of RPM Macros - for use with systemd because LFS does not support RPM.</para> + for use with systemd, because LFS does not support RPM.</para> </listitem> </varlistentry> <varlistentry> <term><parameter>-D{userdb,homed}=false</parameter></term> <listitem> - <para>Remove two daemons that have dependencies that do not fit - the scope of LFS.</para> + <para>Remove two daemons with dependencies that do not fit + within the scope of LFS.</para> </listitem> </varlistentry> @@ -154,7 +154,7 @@ meson --prefix=/usr \ <listitem> <para>Prevent the generation of man pages to avoid extra dependencies. We will install pre-generated man pages for systemd - from a tarball later.</para> + from a tarball.</para> </listitem> </varlistentry> @@ -194,12 +194,12 @@ meson --prefix=/usr \ <screen><userinput remap="adjust">systemd-machine-id-setup</userinput></screen> - <para>Setup the basic target structure:</para> + <para>Set up the basic target structure:</para> <screen><userinput remap="adjust">systemctl preset-all</userinput></screen> <para>Disable two services for upgrading binary distros. They are useless for - a basic Linux system built from source, and both will report an error if + a basic Linux system built from source, and each one will report an error if it's enabled but not configured:</para> <screen><userinput remap="adjust">systemctl disable systemd-sysupdate{,-reboot}</userinput></screen> @@ -244,7 +244,7 @@ meson --prefix=/usr \ libnss_resolve.so.2, libnss_systemd.so.2, libsystemd.so, libsystemd-shared-&systemd-version;.so (in /usr/lib/systemd), and libudev.so</seg> - <seg>/etc/binfmt.d, /etc/init.d, /etc/kernel, /etc/modules-load.d, + <seg>/etc/binfmt.d, /etc/init.d, /etc/kernel, /etc/modules-load.d,both /etc/sysctl.d, /etc/systemd, /etc/tmpfiles.d, /etc/udev, /etc/xdg/systemd, /usr/lib/systemd, /usr/lib/udev, /usr/include/systemd, /usr/lib/binfmt.d, /usr/lib/environment.d, /usr/lib/kernel, @@ -285,7 +285,7 @@ meson --prefix=/usr \ <listitem> <para>Normally invokes <command>shutdown</command> with the <parameter>-h</parameter> option, except when already in run-level 0, - then it tells the kernel to halt the system; it notes in the + when it tells the kernel to halt the system; it notes in the file <filename>/var/log/wtmp</filename> that the system is being brought down</para> <indexterm zone="ch-system-systemd halt"> @@ -308,9 +308,9 @@ meson --prefix=/usr \ <varlistentry id="init"> <term><command>init</command></term> <listitem> - <para>Is the first process to be started when the kernel has initialized - the hardware which takes over the boot process and starts all - processes according to its configuration files. In this case, it starts + <para>Is the first process to be started after the kernel has initialized + the hardware; <command>init</command> takes over the boot process and starts the + processes specified by its configuration files; in this case, it starts systemd</para> <indexterm zone="ch-system-systemd init"> <primary sortas="b-init">init</primary> @@ -332,7 +332,7 @@ meson --prefix=/usr \ <term><command>kernel-install</command></term> <listitem> <para>Is used to add and remove kernel and initramfs images to and - from /boot. In LFS, this is done manually</para> + from /boot; in LFS, this is done manually</para> <indexterm zone="ch-system-systemd kernel-install"> <primary sortas="b-kernel-install">kernel-install</primary> </indexterm> @@ -485,8 +485,8 @@ meson --prefix=/usr \ <varlistentry id="systemd-analyze"> <term><command>systemd-analyze</command></term> <listitem> - <para>Is used to determine system startup performance of the current - boot, as well as identify troublesome systemd units</para> + <para>Is used to analyze system startup performance, + as well as identify troublesome systemd units</para> <indexterm zone="ch-system-systemd systemd-analyze"> <primary sortas="b-systemd-analyze">systemd-analyze</primary> </indexterm> @@ -497,7 +497,7 @@ meson --prefix=/usr \ <term><command>systemd-ask-password</command></term> <listitem> <para>Is used to query a system password or passphrase from the user, - using a question message specified on the command line</para> + using a message specified on the Linux command line</para> <indexterm zone="ch-system-systemd systemd-ask-password"> <primary sortas="b-systemd-ask-password">systemd-ask-password</primary> </indexterm> @@ -531,7 +531,7 @@ meson --prefix=/usr \ <term><command>systemd-cgtop</command></term> <listitem> <para>Shows the top control groups of the local Linux control group - hierarchy, ordered by their CPU, memory and disk I/O load</para> + hierarchy, ordered by their CPU, memory and disk I/O loads</para> <indexterm zone="ch-system-systemd systemd-cgtop"> <primary sortas="b-systemd-cgtop">systemd-cgtop</primary> </indexterm> @@ -552,8 +552,8 @@ meson --prefix=/usr \ <term><command>systemd-delta</command></term> <listitem> <para>Is used to identify and compare configuration files in - <filename class="directory">/etc</filename> that override default - counterparts in <filename class="directory">/usr</filename></para> + <filename class="directory">/etc</filename> that override the defaults + in <filename class="directory">/usr</filename></para> <indexterm zone="ch-system-systemd systemd-delta"> <primary sortas="b-systemd-delta">systemd-delta</primary> </indexterm> @@ -605,7 +605,7 @@ meson --prefix=/usr \ <varlistentry id="systemd-id128"> <term><command>systemd-id128</command></term> <listitem> - <para>Generates and prints id128 strings</para> + <para>Generates and prints id128 (UUID) strings</para> <indexterm zone="ch-system-systemd systemd-id128"> <primary sortas="b-systemd-id128">systemd-id128</primary> </indexterm> @@ -649,7 +649,7 @@ meson --prefix=/usr \ <varlistentry id="systemd-notify"> <term><command>systemd-notify</command></term> <listitem> - <para>Is used by daemon scripts to notify the init system about status + <para>Is used by daemon scripts to notify the init system of status changes</para> <indexterm zone="ch-system-systemd systemd-notify"> <primary sortas="b-systemd-notify">systemd-notify</primary> @@ -660,7 +660,7 @@ meson --prefix=/usr \ <varlistentry id="systemd-nspawn"> <term><command>systemd-nspawn</command></term> <listitem> - <para>Is used to run a command or OS in a light-weight namespace + <para>Is used to run a command, or an entire OS, in a light-weight namespace container</para> <indexterm zone="ch-system-systemd systemd-nspawn"> <primary sortas="b-systemd-nspawn">systemd-nspawn</primary> @@ -682,7 +682,7 @@ meson --prefix=/usr \ <term><command>systemd-repart</command></term> <listitem> <para>Is used to grow and add partitions to a partition table when - systemd is used in an OS image (e.g. a container)</para> + systemd is used with an OS image (e.g. a container)</para> <indexterm zone="ch-system-systemd systemd-repart"> <primary sortas="b-systemd-repart">systemd-repart</primary> </indexterm> @@ -704,7 +704,7 @@ meson --prefix=/usr \ <term><command>systemd-run</command></term> <listitem> <para>Is used to create and start a transient .service or a .scope - unit and run the specified command in it. This is useful for + unit and run the specified command in it; this is useful for validating systemd units</para> <indexterm zone="ch-system-systemd systemd-run"> <primary sortas="b-systemd-run">systemd-run</primary> @@ -736,7 +736,7 @@ meson --prefix=/usr \ <varlistentry id="systemd-tmpfiles"> <term><command>systemd-tmpfiles</command></term> <listitem> - <para>Creates, deletes and cleans up volatile and temporary files and + <para>Creates, deletes, and cleans up volatile and temporary files and directories, based on the configuration file format and location specified in <filename class="directory">tmpfiles.d</filename> directories</para> @@ -793,7 +793,7 @@ meson --prefix=/usr \ <term><command>udevadm</command></term> <listitem> <para>Is a generic udev administration tool which controls the udevd - daemon, provides info from the Udev hardware database, monitors + daemon, provides info from the udev hardware database, monitors uevents, waits for uevents to finish, tests udev configuration, and triggers uevents for a given device</para> <indexterm zone="ch-system-systemd udevadm"> From c349b4a2b33dfe085b7f7733c5e70e8ed5f4f23d Mon Sep 17 00:00:00 2001 From: "Douglas R. Reno" <renodr@linuxfromscratch.org> Date: Wed, 25 Jan 2023 15:01:12 -0600 Subject: [PATCH 10/47] Fix the build of systemd due to the last commit --- chapter08/systemd.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter08/systemd.xml b/chapter08/systemd.xml index 60b5f3605..1db7e1444 100644 --- a/chapter08/systemd.xml +++ b/chapter08/systemd.xml @@ -60,7 +60,7 @@ cd build meson --prefix=/usr \ - --buildtype=release \location of the + --buildtype=release \ -Ddefault-dnssec=no \ -Dfirstboot=false \ -Dinstall-tests=false \ From adba2dae8ac7f4a287b6cff32224e8cb6c7c7134 Mon Sep 17 00:00:00 2001 From: Bruce Dubbs <bdubbs@linuxfromscratch.org> Date: Thu, 26 Jan 2023 10:40:42 -0600 Subject: [PATCH 11/47] Add a comment about nested command substitution "The command below shows an example of nested command substitution using two methods: backquotes and a $() construct. It could be rewritten using the same method for both substitutions, but is shown this way to demonstrate how they can be mixed. Generally the $() method is preferred." --- chapter05/gcc-pass1.xml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/chapter05/gcc-pass1.xml b/chapter05/gcc-pass1.xml index 7a431ec90..e0d503f8d 100644 --- a/chapter05/gcc-pass1.xml +++ b/chapter05/gcc-pass1.xml @@ -208,6 +208,14 @@ cd build</userinput></screen> header using a command that is identical to what the GCC build system does in normal circumstances:</para> + <note> + <para>The command below shows an example of nested command substitution + using two methods: backquotes and a $() construct. It could be rewritten + using the same method for both substitutions, but is shown this way + to demonstrate how they can be mixed. Generally the $() method is + preferred.</para> + </note> + <screen><userinput remap="install">cd .. cat gcc/limitx.h gcc/glimits.h gcc/limity.h > \ `dirname $($LFS_TGT-gcc -print-libgcc-file-name)`/install-tools/include/limits.h</userinput></screen> From 139b77e4a27c8bd120a4fd165d023456d86baa19 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao <xry111@xry111.site> Date: Fri, 27 Jan 2023 01:44:05 +0800 Subject: [PATCH 12/47] decorate new note about $() and `` --- chapter05/gcc-pass1.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/chapter05/gcc-pass1.xml b/chapter05/gcc-pass1.xml index e0d503f8d..82efcd617 100644 --- a/chapter05/gcc-pass1.xml +++ b/chapter05/gcc-pass1.xml @@ -210,10 +210,10 @@ cd build</userinput></screen> <note> <para>The command below shows an example of nested command substitution - using two methods: backquotes and a $() construct. It could be rewritten - using the same method for both substitutions, but is shown this way - to demonstrate how they can be mixed. Generally the $() method is - preferred.</para> + using two methods: backquotes and a <literal>$()</literal> construct. + It could be rewritten using the same method for both substitutions, + but is shown this way to demonstrate how they can be mixed. Generally + the <literal>$()</literal> method is preferred.</para> </note> <screen><userinput remap="install">cd .. From 59d90df78aa7283fed38d2550633de203ec1b0c4 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao <xry111@xry111.site> Date: Fri, 27 Jan 2023 01:45:12 +0800 Subject: [PATCH 13/47] systemd: remove an extra word "both" It seems introduced unintentionally. I'm wondering what has happened with David's text editor :). --- chapter08/systemd.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter08/systemd.xml b/chapter08/systemd.xml index 1db7e1444..5b1fc1fe5 100644 --- a/chapter08/systemd.xml +++ b/chapter08/systemd.xml @@ -244,7 +244,7 @@ meson --prefix=/usr \ libnss_resolve.so.2, libnss_systemd.so.2, libsystemd.so, libsystemd-shared-&systemd-version;.so (in /usr/lib/systemd), and libudev.so</seg> - <seg>/etc/binfmt.d, /etc/init.d, /etc/kernel, /etc/modules-load.d,both + <seg>/etc/binfmt.d, /etc/init.d, /etc/kernel, /etc/modules-load.d, /etc/sysctl.d, /etc/systemd, /etc/tmpfiles.d, /etc/udev, /etc/xdg/systemd, /usr/lib/systemd, /usr/lib/udev, /usr/include/systemd, /usr/lib/binfmt.d, /usr/lib/environment.d, /usr/lib/kernel, From 2d516c7a353d534e6fa96fd8b403a96f426bc27e Mon Sep 17 00:00:00 2001 From: Xi Ruoyao <xry111@xry111.site> Date: Sun, 29 Jan 2023 12:16:47 +0800 Subject: [PATCH 14/47] dependencies: use https for LessTif homepage --- appendices/dependencies.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/appendices/dependencies.xml b/appendices/dependencies.xml index 69232f239..eb600dc78 100644 --- a/appendices/dependencies.xml +++ b/appendices/dependencies.xml @@ -3079,7 +3079,7 @@ <seg> <ulink url="&blfs-book;x/installing.html">Xorg</ulink>, <ulink url="&blfs-book;x/gtk2.html">GTK+2</ulink>, - <ulink url="http://lesstif.sourceforge.net/">LessTif</ulink>, + <ulink url="https://lesstif.sourceforge.net/">LessTif</ulink>, <ulink url="&blfs-book;general/ruby.html">Ruby</ulink>, and <ulink url="&blfs-book;general/gpm.html">GPM</ulink> </seg> From d7d7bd5484de237de374212377f6a870519eac5f Mon Sep 17 00:00:00 2001 From: Bruce Dubbs <bdubbs@linuxfromscratch.org> Date: Tue, 31 Jan 2023 13:20:49 -0600 Subject: [PATCH 15/47] PAckage updates. Update to texinfo-7.0.2. Update to linux-6.1.8. Update to diffutils-3.9. --- chapter01/changelog.xml | 18 ++++++++++++++++++ chapter01/whatsnew.xml | 4 ++-- packages.ent | 18 +++++++++--------- 3 files changed, 29 insertions(+), 11 deletions(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 2bd776cb6..0be2d0a7e 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -39,6 +39,24 @@ <listitem revision="sysv"> or <listitem revision="systemd"> as appropriate for the entry or if needed the entire day's listitem. --> + <listitem> + <para>2023-02-01</para> + <itemizedlist> + <listitem> + <para>[bdubbs] - Update to texinfo-7.0.2. Fixes + <ulink url="&lfs-ticket-root;5202">#5202</ulink>.</para> + </listitem> + <listitem> + <para>[bdubbs] - Update to linux-6.1.8. Fixes + <ulink url="&lfs-ticket-root;5201">#5201</ulink>.</para> + </listitem> + <listitem> + <para>[bdubbs] - Update to diffutils-3.9. Fixes + <ulink url="&lfs-ticket-root;5199">#5199</ulink>.</para> + </listitem> + </itemizedlist> + </listitem> + <listitem revision="systemd"> <para>2023-01-22</para> <itemizedlist> diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml index f3a220b73..78dfcf7a3 100644 --- a/chapter01/whatsnew.xml +++ b/chapter01/whatsnew.xml @@ -73,9 +73,9 @@ <listitem revision="systemd"> <para>D-Bus-&dbus-version;</para> </listitem> - <!--<listitem> + <listitem> <para>Diffutils-&diffutils-version;</para> - </listitem>--> + </listitem> <!--<listitem> <para>E2fsprogs-&e2fsprogs-version;</para> </listitem>--> diff --git a/packages.ent b/packages.ent index 5793a2d9c..0f3dc019a 100644 --- a/packages.ent +++ b/packages.ent @@ -130,10 +130,10 @@ <!ENTITY dejagnu-tmp-du "6.9 MB"> <!ENTITY dejagnu-tmp-sbu "less than 0.1 SBU"> -<!ENTITY diffutils-version "3.8"> -<!ENTITY diffutils-size "1,548 KB"> +<!ENTITY diffutils-version "3.9"> +<!ENTITY diffutils-size "1,551 KB"> <!ENTITY diffutils-url "&gnu;diffutils/diffutils-&diffutils-version;.tar.xz"> -<!ENTITY diffutils-md5 "6a6b0fdc72acfe3f2829aab477876fbc"> +<!ENTITY diffutils-md5 "cf0a65266058bf22fe3feb69e57ffc5b"> <!ENTITY diffutils-home "&gnu-software;diffutils/"> <!ENTITY diffutils-tmp-du "26 MB"> <!ENTITY diffutils-tmp-sbu "0.2 SBU"> @@ -424,12 +424,12 @@ <!ENTITY linux-major-version "6"> <!ENTITY linux-minor-version "1"> -<!ENTITY linux-patch-version "6"> +<!ENTITY linux-patch-version "8"> <!--<!ENTITY linux-version "&linux-major-version;.&linux-minor-version;">--> <!ENTITY linux-version "&linux-major-version;.&linux-minor-version;.&linux-patch-version;"> -<!ENTITY linux-size "131,624 KB"> +<!ENTITY linux-size "131,631 KB"> <!ENTITY linux-url "&kernel;linux/kernel/v&linux-major-version;.x/linux-&linux-version;.tar.xz"> -<!ENTITY linux-md5 "7b48ffc829a3cdc40000ca00eac2cad6"> +<!ENTITY linux-md5 "c201fad8846646a21161a1a3fb39fbf5"> <!ENTITY linux-home "https://www.kernel.org/"> <!-- measured for 5.13.4 / gcc-11.1.0 on x86_64 : minimum is allnoconfig rounded down to allow for ongoing cleanups, @@ -684,10 +684,10 @@ <!ENTITY tcl-tmp-du "88 MB"> <!ENTITY tcl-tmp-sbu "3.2 SBU"> -<!ENTITY texinfo-version "7.0.1"> -<!ENTITY texinfo-size "4,776 KB"> +<!ENTITY texinfo-version "7.0.2"> +<!ENTITY texinfo-size "4,762 KB"> <!ENTITY texinfo-url "&gnu;texinfo/texinfo-&texinfo-version;.tar.xz"> -<!ENTITY texinfo-md5 "545e6fdb23f5c7923c057187aa19f9f4"> +<!ENTITY texinfo-md5 "be9500f3a361525622850ecb1b1fc024"> <!ENTITY texinfo-home "&gnu-software;texinfo/"> <!ENTITY texinfo-tmp-du "113 MB"> <!ENTITY texinfo-tmp-sbu "0.2 SBU"> From b5955260a5f8b3e51e17e90c9555ff562b5c312d Mon Sep 17 00:00:00 2001 From: Xi Ruoyao <xry111@xry111.site> Date: Wed, 1 Feb 2023 20:03:12 +0800 Subject: [PATCH 16/47] stripping: Add an <important> about updated packages We've received enough reports for systems with zlib security update broken by stripping :(. --- chapter08/stripping.xml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/chapter08/stripping.xml b/chapter08/stripping.xml index a877ddb95..bbd1ed94d 100644 --- a/chapter08/stripping.xml +++ b/chapter08/stripping.xml @@ -52,6 +52,18 @@ with <quote>g</quote>, in case the commands below have already been run.</para></note> + <important> + <para> + If any package of which the version is different from the version + specified by the book (either following a security advisory or + satisfying personal preference), it may be necessary to update the + the library file name in <envar>save_usrlib</envar> or + <envar>online_usrlib</envar>. + <emphasis role='bold'>Failing to do so may render the system + completely unusable.</emphasis> + </para> + </important> + <!-- also of interest are libgfortan, libgo, libgomp, and libobjc from GCC --> <!--<screen><userinput>save_lib="ld-2.25.so libc-2.25.so libpthread-2.25.so libthread_db-1.0.so"--> From 727490c99298336c793e78e08698b7310a24ba02 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao <xry111@xry111.site> Date: Thu, 2 Feb 2023 15:27:17 +0800 Subject: [PATCH 17/47] Package updates: * Update to Glibc-2.37 (#5203) * Update to bc-6.2.3 (#5204) - Update bc homepage as upstream requested * Update to linux-6.1.9 (#5205) * Update to vim-9.0.1273 (#4500) --- packages.ent | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/packages.ent b/packages.ent index 0f3dc019a..05ec1341a 100644 --- a/packages.ent +++ b/packages.ent @@ -58,11 +58,11 @@ <!ENTITY bash-fin-du "50 MB"> <!ENTITY bash-fin-sbu "1.4 SBU"> -<!ENTITY bc-version "6.2.2"> -<!ENTITY bc-size "446 KB"> +<!ENTITY bc-version "6.2.3"> +<!ENTITY bc-size "448 KB"> <!ENTITY bc-url "https://github.com/gavinhoward/bc/releases/download/&bc-version;/bc-&bc-version;.tar.xz"> -<!ENTITY bc-md5 "778d889cbaa7dbc07aa1661950ca88fb"> -<!ENTITY bc-home "https://git.yzena.com/gavin/bc"> +<!ENTITY bc-md5 "897adcfd53f06135b884d71874a63069"> +<!ENTITY bc-home "https://git.gavinhoward.com/gavin/bc"> <!ENTITY bc-fin-du "7.4 MB"> <!ENTITY bc-fin-sbu "less than 0.1 SBU"> @@ -255,10 +255,10 @@ <!ENTITY gettext-fin-du "235 MB"> <!ENTITY gettext-fin-sbu "2.7 SBU"> -<!ENTITY glibc-version "2.36"> -<!ENTITY glibc-size "18,175 KB"> +<!ENTITY glibc-version "2.37"> +<!ENTITY glibc-size "18,244 KB"> <!ENTITY glibc-url "&gnu;glibc/glibc-&glibc-version;.tar.xz"> -<!ENTITY glibc-md5 "00e9b89e043340f688bc93ec03239b57"> +<!ENTITY glibc-md5 "e89cf3dcb64939d29f04b4ceead5cc4e"> <!ENTITY glibc-home "&gnu-software;libc/"> <!ENTITY glibc-tmp-du "821 MB"> <!ENTITY glibc-tmp-sbu "4.4 SBU"> @@ -424,12 +424,12 @@ <!ENTITY linux-major-version "6"> <!ENTITY linux-minor-version "1"> -<!ENTITY linux-patch-version "8"> +<!ENTITY linux-patch-version "9"> <!--<!ENTITY linux-version "&linux-major-version;.&linux-minor-version;">--> <!ENTITY linux-version "&linux-major-version;.&linux-minor-version;.&linux-patch-version;"> -<!ENTITY linux-size "131,631 KB"> +<!ENTITY linux-size "131,632 KB"> <!ENTITY linux-url "&kernel;linux/kernel/v&linux-major-version;.x/linux-&linux-version;.tar.xz"> -<!ENTITY linux-md5 "c201fad8846646a21161a1a3fb39fbf5"> +<!ENTITY linux-md5 "ab1ac5556bd2c808e62bde0db04915f6"> <!ENTITY linux-home "https://www.kernel.org/"> <!-- measured for 5.13.4 / gcc-11.1.0 on x86_64 : minimum is allnoconfig rounded down to allow for ongoing cleanups, @@ -717,13 +717,13 @@ <!ENTITY util-linux-fin-du "283 MB"> <!ENTITY util-linux-fin-sbu "1.0 SBU"> -<!ENTITY vim-version "9.0.1060"> +<!ENTITY vim-version "9.0.1273"> <!-- <!ENTITY vim-majmin "90"> --> <!ENTITY vim-docdir "vim/vim90"> -<!ENTITY vim-size "16,488 KB"> +<!ENTITY vim-size "10,892 KB"> <!--<!ENTITY vim-url "https://github.com/vim/vim/archive/v&vim-version;/vim-&vim-version;.tar.gz">--> -<!ENTITY vim-url "&anduin-sources;/vim-&vim-version;.tar.gz"> -<!ENTITY vim-md5 "cee12f38abdac37edeced59461bb04d4"> +<!ENTITY vim-url "&anduin-sources;/vim-&vim-version;.tar.xz"> +<!ENTITY vim-md5 "9c80755d2d95ec4ef713f66e57671797"> <!ENTITY vim-home "https://www.vim.org"> <!ENTITY vim-fin-du "217 MB"> <!ENTITY vim-fin-sbu "2.5 SBU"> From c6c1a068b90b2f0bca53f48ef264c0e30e418e4f Mon Sep 17 00:00:00 2001 From: Xi Ruoyao <xry111@xry111.site> Date: Thu, 2 Feb 2023 15:47:05 +0800 Subject: [PATCH 18/47] glibc: Remove a sed useless for 2.37 --- chapter05/glibc.xml | 5 ----- chapter08/glibc.xml | 5 ----- 2 files changed, 10 deletions(-) diff --git a/chapter05/glibc.xml b/chapter05/glibc.xml index a8834cc19..6b78031bc 100644 --- a/chapter05/glibc.xml +++ b/chapter05/glibc.xml @@ -64,11 +64,6 @@ esac</userinput></screen> </para> </note> - <para>Fix an issue building Glibc with parallel jobs and make-4.4 - or later:</para> - -<screen><userinput remap="pre">sed '/MAKEFLAGS :=/s/)r/) -r/' -i Makerules</userinput></screen> - <para>Some of the Glibc programs use the non-FHS-compliant <filename class="directory">/var/db</filename> directory to store their runtime data. Apply the following patch to make such programs store their diff --git a/chapter08/glibc.xml b/chapter08/glibc.xml index 340eb0861..538c827ab 100644 --- a/chapter08/glibc.xml +++ b/chapter08/glibc.xml @@ -43,11 +43,6 @@ <sect2 role="installation"> <title>Installation of Glibc - First, fix an issue building Glibc with parallel jobs and Make-4.4 - or later: - -sed '/MAKEFLAGS :=/s/)r/) -r/' -i Makerules - Some of the Glibc programs use the non-FHS compliant /var/db directory to store their runtime data. Apply the following patch to make such programs From 59a0a3c1af3706744ba3b6b516e4e7520787bf57 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Thu, 2 Feb 2023 17:29:38 +0800 Subject: [PATCH 19/47] glibc: remove nss/tst-nss-files-hosts-long failure It's UNSUPPORTED in chroot now, so we cannot see it in LFS build. --- chapter08/glibc.xml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/chapter08/glibc.xml b/chapter08/glibc.xml index 538c827ab..a0d64ee75 100644 --- a/chapter08/glibc.xml +++ b/chapter08/glibc.xml @@ -160,12 +160,6 @@ esac is known to fail in the LFS chroot environment. - - The nss/tst-nss-files-hosts-long - test is known to fail if the system has no non-loopback IP - addresses. - - The stdlib/tst-arc4random-thread From 8ac376e63474e407ed977a249a15db4835203742 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Thu, 2 Feb 2023 18:31:20 +0800 Subject: [PATCH 20/47] binutils: remove more empty man pages --- chapter08/binutils.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter08/binutils.xml b/chapter08/binutils.xml index 02e2e8f6f..863fe041e 100644 --- a/chapter08/binutils.xml +++ b/chapter08/binutils.xml @@ -190,7 +190,7 @@ cd build Remove useless static libraries and an empty man page: rm -fv /usr/lib/lib{bfd,ctf,ctf-nobfd,sframe,opcodes}.a -rm -fv /usr/share/man/man1/gprofng.1 +rm -fv /usr/share/man/man1/{gprofng,gp-*}.1 From 2d215b5fc8df4b7e90671f142dc93b16ad50dfb1 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Thu, 2 Feb 2023 18:32:18 +0800 Subject: [PATCH 21/47] binutils: remove test failures resolved by upstream --- chapter08/binutils.xml | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) diff --git a/chapter08/binutils.xml b/chapter08/binutils.xml index 863fe041e..eb83563bb 100644 --- a/chapter08/binutils.xml +++ b/chapter08/binutils.xml @@ -166,22 +166,7 @@ cd build Twelve tests fail in the gold test suite when the and - options are passed to GCC. - - The test named ar with versioned solib is also - known to fail. - - Because of a race between the gas test suite and the gprofng test suite, - some gas tests may fail if parallel jobs are used. If you are not - assured of the correctness of gas, invoke - make check-gas to run the gas test suite separately and - all tests should pass. + options are passed to GCC. Install the package: From 833f3efc0116e61cfb3e59bd7b875e8c83ee13af Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Thu, 2 Feb 2023 20:42:20 +0800 Subject: [PATCH 22/47] glibc: Fix an issue identified upstream --- chapter08/glibc.xml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/chapter08/glibc.xml b/chapter08/glibc.xml index a0d64ee75..ec81b2da7 100644 --- a/chapter08/glibc.xml +++ b/chapter08/glibc.xml @@ -50,6 +50,12 @@ patch -Np1 -i ../&glibc-fhs-patch; + + Fix an issue identified upstream: + +sed '/width -=/s/workend - string/number_length/' \ + -i stdio-common/vfprintf-process-arg.c + The Glibc documentation recommends building Glibc in a dedicated build directory: From 19f4e4d6ea6b907d625fb0da4a59e3f40750b5ce Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Thu, 2 Feb 2023 21:04:40 +0800 Subject: [PATCH 23/47] mpfr: Fix a test case Normally we don't fix test, but see the comment added into the XML file for the rationale. Update the number of tests by the way. --- chapter08/mpfr.xml | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/chapter08/mpfr.xml b/chapter08/mpfr.xml index 7237b1ecb..2d16053de 100644 --- a/chapter08/mpfr.xml +++ b/chapter08/mpfr.xml @@ -41,6 +41,20 @@ Installation of MPFR + + Fix a test case based on a bug of old Glibc releases: + +sed -e 's/+01,234,567/+1,234,567 /' \ + -e 's/13.10Pd/13Pd/' \ + -i tests/tsprintf.c + Prepare MPFR for compilation: ./configure --prefix=/usr \ @@ -58,7 +72,7 @@ make html Do not skip it under any circumstances. - Test the results and ensure that all 183 tests passed: + Test the results and ensure that all 197 tests passed: make check From 5f8b7fe1ab81a53c79c936dee9d4713455c7b1e3 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Fri, 3 Feb 2023 01:27:40 +0800 Subject: [PATCH 24/47] bash: Add the explanation of test output, and document a known failure --- chapter08/bash.xml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/chapter08/bash.xml b/chapter08/bash.xml index 5eb49505a..a8bf2b871 100644 --- a/chapter08/bash.xml +++ b/chapter08/bash.xml @@ -87,6 +87,19 @@ lassign [wait] _ _ _ value exit $value EOF + The test suite uses diff to detect the + difference between test script output and the expected output. Any + output from diff (prefixed with + < and + >) indicates a test failure, unless + there is a message saying the difference can be ignored. + + One test named run-builtins is known to fail on + some host distros with a difference on the first line of the + output. + Install the package: make install From f7b295dee87f47e02fdc48484efd4de6bf9c8265 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Fri, 3 Feb 2023 05:44:28 +0800 Subject: [PATCH 25/47] libelf: Update test status While the previously documented test failure is resolved by binutils-2.40, a new test failure has shown up. --- chapter08/libelf.xml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/chapter08/libelf.xml b/chapter08/libelf.xml index 9fac415e1..739dffb46 100644 --- a/chapter08/libelf.xml +++ b/chapter08/libelf.xml @@ -58,8 +58,9 @@ make check - One test named run-low_high_pc.sh is known to - fail on 32-bit x86 systems. + + The test named run-native-test.sh is known to + fail. Install only Libelf: From 0f4ec3428c113cb50448108a3d28fd9d135b61e6 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Fri, 3 Feb 2023 05:46:54 +0800 Subject: [PATCH 26/47] libffi: Remove --disable-exec-static-tramp It's not needed now since gjs-1.74 supports static trampoline. --- chapter08/libffi.xml | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) diff --git a/chapter08/libffi.xml b/chapter08/libffi.xml index 579bb6315..4c6d2830f 100644 --- a/chapter08/libffi.xml +++ b/chapter08/libffi.xml @@ -62,8 +62,7 @@ ./configure --prefix=/usr \ --disable-static \ - --with-gcc-arch=native \ - --disable-exec-static-tramp + --with-gcc-arch=native The meaning of the configure option: @@ -81,17 +80,6 @@ the x86 options in the GCC manual. - - - - --disable-exec-static-tramp - - Disable static trampoline support, a new security - feature in Libffi. Some BLFS packages (notably - GJS) have not been adapted for it. - - - Compile the package: From fcadbf41daceb4f09f26034754bedb5287abfef9 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Fri, 3 Feb 2023 15:44:13 +0800 Subject: [PATCH 27/47] changelog: Add entries for recent changes --- chapter01/changelog.xml | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 0be2d0a7e..dc103e85a 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -39,6 +39,32 @@ or as appropriate for the entry or if needed the entire day's listitem. --> + + 2023-02-02 + + + [xry111] - Update to glibc-2.37. Fixes + #5203. + + + [xry111] - Update to bc-6.2.3. Fixes + #5204. + + + [xry111] - Update to linux-6.1.9. Fixes + #5205. + + + [xry111] - Update to vim-9.0.1273. Addresses + #4500. + + + [xry111] - Remove + for libffi. + + + + 2023-02-01 From 7f8335ae57dad62ca934cbe7358a5a8d270a6d7f Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Sun, 5 Feb 2023 23:32:32 +0800 Subject: [PATCH 28/47] dependencies: List Jansson as Binutils external dependency Both ld.bfd and ld.gold can use Jansson to validate the value of --package-metadata=. --- appendices/dependencies.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/appendices/dependencies.xml b/appendices/dependencies.xml index eb600dc78..6717160ba 100644 --- a/appendices/dependencies.xml +++ b/appendices/dependencies.xml @@ -312,7 +312,8 @@ &external; - Elfutils + Elfutils and + Jansson From df6b08de578a9893ef7f6c88514de4a8eef1ebfa Mon Sep 17 00:00:00 2001 From: "Douglas R. Reno" Date: Mon, 6 Feb 2023 09:50:56 -0600 Subject: [PATCH 29/47] Repackage the systemd man pages tarball to have a leading directory. --- chapter01/changelog.xml | 10 ++++++++++ packages.ent | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index dc103e85a..f0961db82 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -39,6 +39,16 @@ or as appropriate for the entry or if needed the entire day's listitem. --> + + 2023-02-06 + + + [renodr] - Repackage the systemd man pages to prevent stray + man pages from ending up in /usr/share/man. + + + + 2023-02-02 diff --git a/packages.ent b/packages.ent index 05ec1341a..3a86115df 100644 --- a/packages.ent +++ b/packages.ent @@ -646,11 +646,11 @@ - + - + From f405318419aa461f103891a429da1c0ea5e591e3 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Mon, 6 Feb 2023 23:58:03 +0800 Subject: [PATCH 30/47] glibc: Note the sed for printf is a security fix And add a comment about the difference from upstream commit. --- chapter08/glibc.xml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/chapter08/glibc.xml b/chapter08/glibc.xml index ec81b2da7..ff655a89e 100644 --- a/chapter08/glibc.xml +++ b/chapter08/glibc.xml @@ -50,8 +50,12 @@ patch -Np1 -i ../&glibc-fhs-patch; - - Fix an issue identified upstream: + + Fix a security issue identified upstream: sed '/width -=/s/workend - string/number_length/' \ -i stdio-common/vfprintf-process-arg.c From 74af59de3c447eea2d9da2926edd444a368b6b1a Mon Sep 17 00:00:00 2001 From: "Douglas R. Reno" Date: Tue, 7 Feb 2023 15:41:42 -0600 Subject: [PATCH 31/47] Package Updates Update to OpenSSL-3.0.8 (Security Update) Update to e2fsprogs-1.46.6 (Security Update) --- chapter01/changelog.xml | 14 ++++++++++++++ chapter01/whatsnew.xml | 4 ++-- packages.ent | 12 ++++++------ 3 files changed, 22 insertions(+), 8 deletions(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index f0961db82..6f6819e6a 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -39,6 +39,20 @@ or as appropriate for the entry or if needed the entire day's listitem. --> + + 2023-02-07 + + + [renodr] - Update to OpenSSL-3.0.8 (Security Update). Fixes + #5211. + + + [renodr] - Update to e2fsprogs-1.46.6 (Security Update). Fixes + #5208. + + + + 2023-02-06 diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml index 78dfcf7a3..2326b6a5c 100644 --- a/chapter01/whatsnew.xml +++ b/chapter01/whatsnew.xml @@ -76,9 +76,9 @@ Diffutils-&diffutils-version; - + diff --git a/packages.ent b/packages.ent index 3a86115df..576ef6640 100644 --- a/packages.ent +++ b/packages.ent @@ -140,10 +140,10 @@ - - + + - + @@ -529,10 +529,10 @@ - - + + - + From ce536f9c9c76c1c861c12e73383fef17bb68869e Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Wed, 8 Feb 2023 10:29:24 +0800 Subject: [PATCH 32/47] openssl: Fix a command to view man page "ssl.7ssl" is in man7, not man3. --- chapter08/openssl.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter08/openssl.xml b/chapter08/openssl.xml index bd436d868..6a97bcc2a 100644 --- a/chapter08/openssl.xml +++ b/chapter08/openssl.xml @@ -192,7 +192,7 @@ make MANSUFFIX=ssl install implements the Transport Layer Security (TLS v1) protocol. It provides a rich API, documentation - on which can be found by running man 3 ssl + on which can be found by running man 7 ssl libssl.so From 583156ac09d7853d8aa050633c7a6dfd18c9eda0 Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Wed, 8 Feb 2023 20:15:02 -0600 Subject: [PATCH 33/47] Combine tcl documentation instructions together. --- chapter08/tcl.xml | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/chapter08/tcl.xml b/chapter08/tcl.xml index d1aec7f7f..5cf4e0d13 100644 --- a/chapter08/tcl.xml +++ b/chapter08/tcl.xml @@ -50,14 +50,6 @@ excessive, but it is very reassuring, if not essential, to know that the most important tools are working properly. - - - First, unpack the documentation by issuing the following command: - -tar -xf ../tcl&tcl-version;-html.tar.gz --strip-components=1 - Prepare Tcl for compilation: SRCDIR=$(pwd) @@ -117,11 +109,13 @@ unset SRCDIR mv /usr/share/man/man3/{Thread,Tcl_Thread}.3 - If you downloaded the optional documentation, install it by issuing + Optionally, install the documentation by issuing the following commands: - mkdir -v -p /usr/share/doc/tcl-&tcl-version; -cp -v -r ../html/* /usr/share/doc/tcl-&tcl-version; +cd .. +tar -xf ../tcl&tcl-version;-html.tar.gz --strip-components=1 +mkdir -v -p /usr/share/doc/tcl-&tcl-version; +cp -v -r ./html/* /usr/share/doc/tcl-&tcl-version; From c6550e11c86cf253a48910ede162a962a7d6b08d Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Sat, 11 Feb 2023 16:11:35 -0600 Subject: [PATCH 34/47] Package updates. Update to iana-etc-20230202. Update to zstd-1.5.4. Update to Python3-3.11.2. Update to e2fsprogs-1.47.0. Update to dbus-1.14.6. Update to linux-6.1.11. Update to libcap-2.67. Update to bc-6.2.4. --- chapter01/changelog.xml | 38 ++++++++++++++++++++++++++++++ chapter01/whatsnew.xml | 10 ++++---- chapter03/patches.xml | 2 ++ chapter08/util-linux.xml | 4 +++- chapter08/zstd.xml | 4 ---- packages.ent | 50 ++++++++++++++++++++-------------------- patches.ent | 3 ++- 7 files changed, 75 insertions(+), 36 deletions(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 6f6819e6a..ca258f78e 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -39,6 +39,44 @@ or as appropriate for the entry or if needed the entire day's listitem. --> + + 2023-02-11 + + + [bdubbs] - Update to iana-etc-20230202. Addresses + #5006. + + + [bdubbs] - Update to zstd-1.5.4. Fixes + #5215. + + + [bdubbs] - Update to Python3-3.11.2. Fixes + #5214. + + + [bdubbs] - Update to e2fsprogs-1.47.0. Fixes + #5213. + + + [bdubbs] - Update to dbus-1.14.6. Fixes + #5212. + + + [bdubbs] - Update to linux-6.1.11. Fixes + #5210. + + + [bdubbs] - Update to libcap-2.67. Fixes + #5209. + + + [bdubbs] - Update to bc-6.2.4. Fixes + #5207. + + + + 2023-02-07 diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml index 2326b6a5c..cd9d32d26 100644 --- a/chapter01/whatsnew.xml +++ b/chapter01/whatsnew.xml @@ -274,9 +274,9 @@ Zlib-&zlib-version; - + - + + zstd-1.5.2-upstream_fixes-1.patch + diff --git a/chapter03/patches.xml b/chapter03/patches.xml index 05b49d319..ae39a70bb 100644 --- a/chapter03/patches.xml +++ b/chapter03/patches.xml @@ -153,6 +153,7 @@ --> + Total size of these patches: about diff --git a/chapter08/util-linux.xml b/chapter08/util-linux.xml index 221743d3d..8290f87c2 100644 --- a/chapter08/util-linux.xml +++ b/chapter08/util-linux.xml @@ -101,7 +101,9 @@ su tester -c "make -k check" The hardlink tests will fail if the host's kernel - does not have the option CONFIG_CRYPTO_USER_API_HASH set. + does not have the option CONFIG_CRYPTO_USER_API_HASH set. In addition, + two sub-tests from misc: mbsencode and one sub-test from script: replay are + known to fail. Install the package: diff --git a/chapter08/zstd.xml b/chapter08/zstd.xml index 902f982e4..ae793a34b 100644 --- a/chapter08/zstd.xml +++ b/chapter08/zstd.xml @@ -42,10 +42,6 @@ Installation of Zstd - Apply a patch to fix some issues identified by upstream: - -patch -Np1 -i ../&zstd-upstream-fixes-patch; - Compile the package: make prefix=/usr diff --git a/packages.ent b/packages.ent index 576ef6640..a2d388802 100644 --- a/packages.ent +++ b/packages.ent @@ -58,10 +58,10 @@ - - + + - + @@ -114,10 +114,10 @@ - - + + - + @@ -140,10 +140,10 @@ - - + + - + @@ -317,10 +317,10 @@ - + - + @@ -390,10 +390,10 @@ - - + + - + @@ -424,12 +424,12 @@ - + - + - + - + - + - + - - + + @@ -762,10 +762,10 @@ - - + + - + diff --git a/patches.ent b/patches.ent index ba133d90b..6e66a4b59 100644 --- a/patches.ent +++ b/patches.ent @@ -101,7 +101,8 @@ --> + From 7c92d6dd822f0954be5ad423006759dcb1488b79 Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Sun, 12 Feb 2023 13:43:45 -0600 Subject: [PATCH 35/47] Update build times an sizes. This update changes the default number of cores used to build packages to 4. A section is also added to host requirements to recommend a minumum number of cores and memory size. --- chapter02/hostreqs.xml | 17 ++- chapter04/aboutsbus.xml | 21 +-- chapter08/introduction.xml | 4 +- packages.ent | 261 ++++++++++++++++++------------------- 4 files changed, 160 insertions(+), 143 deletions(-) diff --git a/chapter02/hostreqs.xml b/chapter02/hostreqs.xml index c612f5963..05cf80d2b 100644 --- a/chapter02/hostreqs.xml +++ b/chapter02/hostreqs.xml @@ -10,6 +10,21 @@ Host System Requirements + + Hardware + + The LFS editors recommend that the system CPU have at least + four cores and that the system have at least 8 GB of memory. + Older systems that do not meet these requirements will still work, + but the time to build packages will be significantly longer + than documented. + + + + + + Software + Your host system should have the following software with the minimum versions indicated. This should not be an issue for most modern Linux distributions. Also note that many distributions will @@ -224,5 +239,5 @@ bash library-check.sh The files identified by this script should be all present or all absent, but not only one or two present. --> - + diff --git a/chapter04/aboutsbus.xml b/chapter04/aboutsbus.xml index 82934d851..9561b061f 100644 --- a/chapter04/aboutsbus.xml +++ b/chapter04/aboutsbus.xml @@ -13,17 +13,17 @@ Many people would like to know beforehand approximately how long it takes to compile and install each package. Because Linux From Scratch can be built on many different systems, it is impossible to - provide absolute time estimates. The biggest package (Glibc) will - take approximately 20 minutes on the fastest systems, but could take - up to three days on slower systems! Instead of providing actual times, + provide absolute time estimates. The biggest package (gcc) will + take approximately 5 minutes on the fastest systems, but could take + days on slower systems! Instead of providing actual times, the Standard Build Unit (SBU) measure will be used instead. - The SBU measure works as follows. The first package to be compiled - is binutils in . The - time it takes to compile this package is what we will refer to as the - Standard Build Unit or SBU. All other compile times will be expressed in - terms of this unit of time. + The SBU measure works as follows. The first package to be compiled is + binutils in . The time it takes to + compile using one corethis package is what we will refer to as the Standard + Build Unit or SBU. All other compile times will be expressed in terms of this + unit of time. For example, consider a package whose compilation time is 4.5 SBUs. This means that if your system took 10 minutes to compile and @@ -55,6 +55,11 @@ be more difficult because the lines from different processes will be interleaved. If you run into a problem with a build step, revert to a single processor build to properly analyze the error messages. + + The times presented here are based upon using four cores (-j4). The + times in Chapter 8 also include the time to run the regression tests for + the package unless specified otherwise. + diff --git a/chapter08/introduction.xml b/chapter08/introduction.xml index f80ccc0c1..93d4bd68d 100644 --- a/chapter08/introduction.xml +++ b/chapter08/introduction.xml @@ -52,8 +52,8 @@ The SBU values and required disk space include test suite data for all applicable packages in . SBU - values have been calculated using a single CPU core (-j1) for all - operations. + values have been calculated using four CPU cores (-j4) for all + operations unless specified otherwise. About Libraries diff --git a/packages.ent b/packages.ent index a2d388802..a51cda8d7 100644 --- a/packages.ent +++ b/packages.ent @@ -19,7 +19,7 @@ - + @@ -35,7 +35,7 @@ - + @@ -45,25 +45,25 @@ - - + + - - - - + + + + - + @@ -71,12 +71,12 @@ - + - - - - + + + + @@ -84,9 +84,9 @@ - - - + + + @@ -102,17 +102,17 @@ - + - - - - + + + + @@ -128,7 +128,7 @@ - + @@ -138,30 +138,30 @@ - + - - + + - - + + - + @@ -184,8 +184,8 @@ - - + + @@ -196,8 +196,8 @@ - - + + @@ -205,17 +205,17 @@ - + - - - - + + + + @@ -224,18 +224,18 @@ - - - + + + - + - + @@ -243,42 +243,42 @@ - + - - - - + + + + - - - - + + + + - - + + - + @@ -289,23 +289,23 @@ - + - - + + - - + + @@ -332,7 +332,7 @@ - + @@ -347,8 +347,8 @@ - - + + @@ -372,14 +372,14 @@ - + - + @@ -395,7 +395,7 @@ - + @@ -403,7 +403,7 @@ - + @@ -419,8 +419,8 @@ - - + + @@ -437,21 +437,18 @@ - - - + + - - + + - + @@ -459,8 +456,8 @@ - - + + @@ -469,14 +466,14 @@ - + - + @@ -492,7 +489,7 @@ - + @@ -500,42 +497,42 @@ - - + + - - + + - - + + - + - - + + - - + + @@ -545,7 +542,7 @@ - + @@ -556,10 +553,10 @@ - - - - + + + + @@ -567,14 +564,14 @@ - + - + @@ -582,7 +579,7 @@ - + @@ -725,15 +722,15 @@ - - + + - + @@ -749,17 +746,17 @@ - + - - + + - + @@ -767,6 +764,6 @@ - - + + From 4990283f08926400d7b74b23f5092386dce01d56 Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Sun, 12 Feb 2023 14:19:14 -0600 Subject: [PATCH 36/47] Typo --- chapter04/aboutsbus.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter04/aboutsbus.xml b/chapter04/aboutsbus.xml index 9561b061f..f88db24f6 100644 --- a/chapter04/aboutsbus.xml +++ b/chapter04/aboutsbus.xml @@ -21,7 +21,7 @@ The SBU measure works as follows. The first package to be compiled is binutils in . The time it takes to - compile using one corethis package is what we will refer to as the Standard + compile using one core is what we will refer to as the Standard Build Unit or SBU. All other compile times will be expressed in terms of this unit of time. From d649720e1f2e57aff5cb357679a76cbd3a973d80 Mon Sep 17 00:00:00 2001 From: "Douglas R. Reno" Date: Sun, 12 Feb 2023 19:41:03 -0600 Subject: [PATCH 37/47] Update stats for dbus, systemd, markupsafe, and jinja2 --- packages.ent | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages.ent b/packages.ent index a51cda8d7..79dd340d3 100644 --- a/packages.ent +++ b/packages.ent @@ -120,7 +120,7 @@ - + @@ -355,7 +355,7 @@ - + @@ -481,7 +481,7 @@ - + @@ -649,7 +649,7 @@ - + From 37a4d447b9a8789022a1fe025f4dcaa720226782 Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Mon, 13 Feb 2023 12:11:36 -0600 Subject: [PATCH 38/47] Update to man-pages-6.03. --- chapter01/changelog.xml | 10 ++++++++++ packages.ent | 6 +++--- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index ca258f78e..49f6ec827 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -39,6 +39,16 @@ or as appropriate for the entry or if needed the entire day's listitem. --> + + 2023-02-13 + + + [bdubbs] - Update to man-pages-6.03. Fixes + #5216. + + + + 2023-02-11 diff --git a/packages.ent b/packages.ent index a51cda8d7..8f1cdec2c 100644 --- a/packages.ent +++ b/packages.ent @@ -468,10 +468,10 @@ - - + + - + From ce779ec8c1b39ea77d819c97d7604eff4f565ca2 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Fri, 17 Feb 2023 15:10:35 +0800 Subject: [PATCH 39/47] configuration: Use [DHCPv4] instead of [DHCP] for systemd .network file The upstream has splitted [DHCP] into [DHCPv4] and [DHCPv6]. While we are only enabling DHCPv4 in the example setting (in most scenario DHCPv6 is not strictly needed as SLAAC is sufficient), just use [DHCPv4] instead of [DHCP]. --- chapter09/networkd.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter09/networkd.xml b/chapter09/networkd.xml index 56d41a983..43b7e7172 100644 --- a/chapter09/networkd.xml +++ b/chapter09/networkd.xml @@ -164,7 +164,7 @@ Name=<network-device-name> [Network] DHCP=ipv4 -[DHCP] +[DHCPv4] UseDomains=true EOF From d94d6060488da23db738078541e4b08a743f763c Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Fri, 17 Feb 2023 15:36:40 +0800 Subject: [PATCH 40/47] packages: Mention Glibc stable branch in its package info See the discussion at https://sourceware.org/pipermail/libc-alpha/2023-February/145672.html. --- chapter03/packages.xml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/chapter03/packages.xml b/chapter03/packages.xml index d82e0b4c4..92d44afaf 100644 --- a/chapter03/packages.xml +++ b/chapter03/packages.xml @@ -270,6 +270,20 @@ Home page: Download: MD5 sum: &glibc-md5; + + + + The Glibc developers maintain a + Git + branch containing patches considered worthy for + Glibc-&glibc-version; but unfortunately developed after + Glibc-&glibc-version; release. The LFS editors will issue a + security advisory if any security fix is added into the branch, + but no actions will be taken for other newly added patches. You + may review the patches yourself and incorporate some patches if + you consider them important. + + From 3608d06aa82917b9046ee315924876ce4903efc0 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Sun, 19 Feb 2023 14:30:57 +0800 Subject: [PATCH 41/47] grub: Add upstream fixes patch for unrecognized ext2/3/4 features (#5219) --- chapter01/changelog.xml | 11 +++++++++++ chapter01/whatsnew.xml | 6 +++--- chapter03/patches.xml | 8 ++++++++ chapter08/grub.xml | 9 +++++++++ patches.ent | 8 +++----- 5 files changed, 34 insertions(+), 8 deletions(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 49f6ec827..dc62bed38 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -39,6 +39,17 @@ or as appropriate for the entry or if needed the entire day's listitem. --> + + 2023-02-19 + + + [xry111] - Apply a patch for GRUB for an issue triggered + with e2fsprogs-1.47.0. Fixes + #5219. + + + + 2023-02-13 diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml index cd9d32d26..559828720 100644 --- a/chapter01/whatsnew.xml +++ b/chapter01/whatsnew.xml @@ -291,11 +291,11 @@ Added: - + &readline-fixes-patch; diff --git a/chapter03/patches.xml b/chapter03/patches.xml index ae39a70bb..44367898f 100644 --- a/chapter03/patches.xml +++ b/chapter03/patches.xml @@ -85,6 +85,14 @@ + + GRUB Upstream Fixes Patch - &grub-upstream-fixes-patch-size;: + + Download: + MD5 sum: &grub-upstream-fixes-patch-md5; + + + Kbd Backspace/Delete Fix Patch - &kbd-backspace-patch-size;: diff --git a/chapter08/grub.xml b/chapter08/grub.xml index 04fbef91b..357036c34 100644 --- a/chapter08/grub.xml +++ b/chapter08/grub.xml @@ -61,6 +61,15 @@ aggressive optimization. + + Fix an issue causing grub-install to fail when the + /boot partition (or the root + partition if /boot is not a + separate partition) is created by e2fsprogs-1.47.0 or later: + + +patch -Np1 -i ../grub-&grub-version;-upstream_fixes-1.patch + Prepare GRUB for compilation: ./configure --prefix=/usr \ diff --git a/patches.ent b/patches.ent index 6e66a4b59..c381cd0a8 100644 --- a/patches.ent +++ b/patches.ent @@ -50,11 +50,9 @@ - + + + From dd8293bfa99afb982601eb1f5401c59167347e33 Mon Sep 17 00:00:00 2001 From: Pierre Labastie Date: Sun, 19 Feb 2023 11:37:49 +0100 Subject: [PATCH 42/47] Popt is not a dependency of Pkg-config It was removed eleven years ago from the book. Pkg-config itself removed it at version 0.27. Prompted by "__mint" on #lfs-support. --- appendices/dependencies.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/appendices/dependencies.xml b/appendices/dependencies.xml index 6717160ba..d5ee5909e 100644 --- a/appendices/dependencies.xml +++ b/appendices/dependencies.xml @@ -2437,7 +2437,7 @@ &dependencies; - Bash, Binutils, Coreutils, Gawk, GCC, Glibc, Grep, Make, Popt, + Bash, Binutils, Coreutils, Gawk, GCC, Glibc, Grep, Make, and Sed From 4049a4b6c81d03fe7369473db85f36aa09712076 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Sun, 19 Feb 2023 20:42:33 +0800 Subject: [PATCH 43/47] e2fsprogs: Add configuration section about mke2fs.conf --- chapter08/e2fsprogs.xml | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/chapter08/e2fsprogs.xml b/chapter08/e2fsprogs.xml index bccf33227..68cfffd69 100644 --- a/chapter08/e2fsprogs.xml +++ b/chapter08/e2fsprogs.xml @@ -134,6 +134,33 @@ install -v -m644 doc/com_err.info /usr/share/info install-info --dir-file=/usr/share/info/dir /usr/share/info/com_err.info + + Configuring E2fsprogs + + + /etc/mke2fs.conf + + + + /etc/mke2fs.conf contains the default value of + various command line options of mke2fs. You may + edit the file to make the default values suitable for your need. + For example, some utilities (not in LFS or BLFS) cannot recognize a + ext4 file system with + metadata_csum_seed feature enabled. + If you need such an utility, you may + remove the feature from the default + ext4 feature list with the + command: + + + sed 's/metadata_csum_seed,//' -i /etc/mke2fs.conf + + + Read the man page mke2fs.conf(5) for details. + + + Contents of E2fsprogs From c68d57a81a082bd5a93dc444a2058f1be99aa770 Mon Sep 17 00:00:00 2001 From: Pierre Labastie Date: Sun, 19 Feb 2023 14:37:28 +0100 Subject: [PATCH 44/47] Finish adding revision attributes in dependencies This was half done. Furthermore, dbus had completely disappeared. Also fix an url to sphinx, that is now in BLFS. --- appendices/dependencies.xml | 75 +++++++++++++++++++++---------------- 1 file changed, 43 insertions(+), 32 deletions(-) diff --git a/appendices/dependencies.xml b/appendices/dependencies.xml index d5ee5909e..71ceac7e2 100644 --- a/appendices/dependencies.xml +++ b/appendices/dependencies.xml @@ -464,7 +464,9 @@ &before; - Bash, Diffutils, Eudev, Findutils, and Man-DB + Bash, Diffutils, Eudev, + Findutils, and Man-DB, and Systemd @@ -480,42 +482,45 @@ - + DejaGNU @@ -634,9 +639,9 @@ - Eudev + Eudev - + &dependencies; Bash, Binutils, Coreutils, Gawk, GCC, Glibc, Grep, Gperf, Make, @@ -644,28 +649,28 @@ - + &runtime; Glibc, Kmod, Xz, Util-linux, and Zlib. - + &testsuites; None - + &before; None - + &external; None @@ -1579,7 +1584,8 @@ &before; - Eudev + Eudev + Systemd @@ -2716,37 +2722,37 @@ - Sysklogd + Sysklogd - + &dependencies; Binutils, Coreutils, GCC, Glibc, Make, and Patch - + &runtime; Glibc - + &testsuites; No test suite available - + &before; None - + &external; None @@ -2830,7 +2836,8 @@ quota-tools, rsync, - Sphinx, + + Sphinx, tpm2-tss, Valgrind, @@ -3002,8 +3009,10 @@ &dependencies; - Bash, Binutils, Coreutils, Diffutils, Eudev, Findutils, Gawk, - GCC, Gettext, Glibc, Grep, Make, Ncurses, Sed, and Zlib + Bash, Binutils, Coreutils, Diffutils, + Eudev, Findutils, Gawk, + GCC, Gettext, Glibc, Grep, Make, Ncurses, Sed, + Systemd, and Zlib @@ -3194,7 +3203,9 @@ &before; - Eudev, File, GRUB, Kmod, and Man-DB + Eudev, File, GRUB, Kmod, + and Man-DB, and Systemd From b9173ee06f45e34a9ca756c9823ca0b9916ccce1 Mon Sep 17 00:00:00 2001 From: Pierre Labastie Date: Sun, 19 Feb 2023 15:12:26 +0100 Subject: [PATCH 45/47] Less can use pcre2 --- appendices/dependencies.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/appendices/dependencies.xml b/appendices/dependencies.xml index 71ceac7e2..697d0d1d7 100644 --- a/appendices/dependencies.xml +++ b/appendices/dependencies.xml @@ -1632,6 +1632,7 @@ &external; + PCRE2 or PCRE From ea601535b80f1a45314c60b5ce14028b39e6c27a Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Sun, 19 Feb 2023 12:48:20 -0600 Subject: [PATCH 46/47] Uncomment glibc in whatsnew. --- chapter01/whatsnew.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml index 559828720..bf69cb08f 100644 --- a/chapter01/whatsnew.xml +++ b/chapter01/whatsnew.xml @@ -109,9 +109,9 @@ Gettext-&gettext-version; - + From e122d24da1d6ba04333ed00c34ef586cd475993b Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Wed, 22 Feb 2023 16:40:42 +0800 Subject: [PATCH 47/47] changelog: Fix a ticket URL --- chapter01/changelog.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index dc62bed38..72de0fc74 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -77,7 +77,7 @@ [bdubbs] - Update to e2fsprogs-1.47.0. Fixes - #5213. + #5213. [bdubbs] - Update to dbus-1.14.6. Fixes