Merge remote-tracking branch 'origin/trunk' into xry111/loongarch

This is a conflicting merge because of:

- The trunk and loongarch branch are having two different binutils patch
- The bump of min-kernel in trunk
- The introduce of DRM panic in trunk
This commit is contained in:
Xi Ruoyao 2025-01-06 22:58:23 +08:00
commit f642548a6b
No known key found for this signature in database
GPG Key ID: ACAAD20E19E710E3
34 changed files with 529 additions and 212 deletions

View File

@ -4,8 +4,7 @@
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
<!-- Convenient entity for "Systemd" or "Udev" -->
<!ENTITY systemd-udev "<phrase revision='systemd'>Systemd</phrase>
<phrase revision='sysv'>Udev</phrase>">
<!ENTITY systemd-udev "<phrase revision='systemd'>Systemd</phrase><phrase revision='sysv'>Udev</phrase>">
<!ENTITY bdb "<ulink url='https://www.oracle.com/database/technologies/related/berkeleydb.html'>Berkeley DB</ulink>">
]>
@ -45,7 +44,7 @@
<segmentedlist id="acl-depends">
<segtitle>&dependencies;</segtitle>
<seglistitem>
<seg>Attr, Bash, Binutils, Coreutils, GCC, Gettext, Grep, M4, Make,
<seg>Attr, Bash, Binutils, Coreutils, GCC, Gettext, Grep, M4, Make,
Perl, Sed, and Texinfo</seg>
</seglistitem>
</segmentedlist>
@ -2571,9 +2570,10 @@
<segtitle>&before;</segtitle>
<seglistitem>
<seg>Binutils,
<phrase revision='systemd'>D-Bus, </phrase>E2fsprogs,
IProute2, Kmod, Man-DB, Procps-ng, Python,
&systemd-udev;, and Util-linux</seg>
<phrase revision='systemd'>D-Bus, </phrase>
E2fsprogs, IProute2, Kmod, Man-DB, Procps-ng, Python,
&systemd-udev;,
and Util-linux</seg>
</seglistitem>
</segmentedlist>

View File

@ -40,6 +40,202 @@
appropriate for the entry or if needed the entire day's listitem.
-->
<listitem>
<para>2024-12-15</para>
<itemizedlist>
<listitem>
<para>[bdubbs] - Update to vim-9.1.0927. Addresses
<ulink url='&lfs-ticket-root;4500'>#4500</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to iana-etc-20241206. Addresses
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to systemd-257. Fixes
<ulink url='&lfs-ticket-root;5559'>#5559</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to Python-3.13.1. Fixes
<ulink url='&lfs-ticket-root;5605'>#5605</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to libcap-2.73. Fixes
<ulink url='&lfs-ticket-root;5504'>#5604</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to linux-6.12.5. Fixes
<ulink url='&lfs-ticket-root;5607'>#5607</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to kbd-2.7. Fixes
<ulink url='&lfs-ticket-root;5608'>#5608</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to gettext-0.23. Fixes
<ulink url='&lfs-ticket-root;5603'>#5603</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>2024-12-01</para>
<itemizedlist>
<listitem>
<para>[bdubbs] - Update to iana-etc-20241122. Addresses
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to file-5.46. Fixes
<ulink url='&lfs-ticket-root;5601'>#5601</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to iproute2-6.12.0. Fixes
<ulink url='&lfs-ticket-root;5597'>#5597</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to libtool-2.5.4. Fixes
<ulink url='&lfs-ticket-root;5598'>#5598</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to linux-6.12.1. Fixes
<ulink url='&lfs-ticket-root;5596'>#5586</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to setuptools-75.6.0 (Python Module). Fixes
<ulink url='&lfs-ticket-root;5599'>#5599</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to wheel-0.45.1 (Python Module). Fixes
<ulink url='&lfs-ticket-root;5600'>#5600</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>2024-11-15</para>
<itemizedlist>
<listitem>
<para>[bdubbs] - Update to vim-9.1.0866. Addresses
<ulink url='&lfs-ticket-root;4500'>#4500</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to iana-etc-20241024. Addresses
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to wheel-0.45.0 (Python Module). Fixes
<ulink url='&lfs-ticket-root;5593'>#5593</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to setuptools-75.5.0 (Python Module). Fixes
<ulink url='&lfs-ticket-root;5595'>#5595</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to linux-6.11.8. Fixes
<ulink url='&lfs-ticket-root;5592'>#5582</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to libcap-2.72. Fixes
<ulink url='&lfs-ticket-root;5594'>#5594</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>2024-11-08</para>
<itemizedlist>
<listitem>
<para>[bdubbs] - Added binutils-2.43.1-upstream_fix-1.patch. Fixes
<ulink url='&lfs-ticket-root;5591'>#5591</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to flit_core-3.10.1. Fixes
<ulink url='&lfs-ticket-root;5589'>#5589</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to expat-2.6.4. Fixes
<ulink url='&lfs-ticket-root;5590'>#5590</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>2024-10-25</para>
<itemizedlist>
<listitem>
<para>[bdubbs] - Update to linux-6.11.6. Fixes
<ulink url='&lfs-ticket-root;5588'>#5588</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to libcap-2.71. Fixes
<ulink url='&lfs-ticket-root;5584'>#5584</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to setuptools-75.3.0. Fixes
<ulink url='&lfs-ticket-root;5585'>#5585</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to flit_core-3.10.0. Fixes
<ulink url='&lfs-ticket-root;5587'>#5587</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>2024-10-25</para>
<itemizedlist>
<listitem>
<para>[bdubbs] - Update to iana-etc-20241015. Addresses
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to vim-9.1.0813. Addresses
<ulink url='&lfs-ticket-root;4500'>#4500</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to xz-5.6.3. Fixes
<ulink url='&lfs-ticket-root;5572'>#5572</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to sysvinit-3.11. Fixes
<ulink url='&lfs-ticket-root;5581'>#5581</ulink>.</para>
</listitem>
<listitem revision="sysv">
<para>[bdubbs] - Update to setuptools-75.2.0. Fixes
<ulink url='&lfs-ticket-root;5577'>#5577</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to Python3-3.13.0. Fixes
<ulink url='&lfs-ticket-root;5575'>#5575</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to openssl-3.4.0. Fixes
<ulink url='&lfs-ticket-root;5582'>#5582</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to meson-1.6.0. Fixes
<ulink url='&lfs-ticket-root;5580'>#5580</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to markupsafe-3.0.2. Fixes
<ulink url='&lfs-ticket-root;5576'>#5576</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to linux-6.11.5. Fixes
<ulink url='&lfs-ticket-root;5574'>#5574</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to less-668. Fixes
<ulink url='&lfs-ticket-root;5578'>#5578</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to elfutils-0.192. Fixes
<ulink url='&lfs-ticket-root;5579'>#5579</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>2024-10-03</para>
<itemizedlist>

View File

@ -77,18 +77,18 @@
<!--<listitem>
<para>Expect-&expect-version;</para>
</listitem>-->
<!--<listitem>
<listitem>
<para>File-&file-version;</para>
</listitem>-->
</listitem>
<!--<listitem>
<para>Findutils-&findutils-version;</para>
</listitem>-->
<!--<listitem>
<para>Flex-&flex-version;</para>
</listitem>-->
<!--<listitem>
<listitem>
<para>Flit-core-&flit-core-version;</para>
</listitem>-->
</listitem>
<listitem>
<para>Gawk-&gawk-version;</para>
</listitem>
@ -98,9 +98,9 @@
<!--<listitem>
<para>GDBM-&gdbm-version;</para>
</listitem>-->
<!--<listitem>
<listitem>
<para>Gettext-&gettext-version;</para>
</listitem>-->
</listitem>
<!--<listitem>
<para>Glibc-&glibc-version;</para>
</listitem>-->
@ -137,24 +137,24 @@
<!--<listitem>
<para>Jinja2-&jinja2-version;</para>
</listitem>-->
<!--<listitem>
<listitem>
<para>Kbd-&kbd-version;</para>
</listitem>-->
</listitem>
<!--<listitem>
<para>Kmod-&kmod-version;</para>
</listitem>-->
<!--<listitem>
<listitem>
<para>Less-&less-version;</para>
</listitem>-->
</listitem>
<!--<listitem>
<para>LFS-Bootscripts-&lfs-bootscripts-version;</para>
</listitem>-->
<!--<listitem>
<listitem>
<para>Libcap-&libcap-version;</para>
</listitem>-->
<!--<listitem>
</listitem>
<listitem>
<para>Libelf from Elfutils-&elfutils-version;</para>
</listitem>-->
</listitem>
<!--<listitem>
<para>Libffi-&libffi-version;</para>
</listitem>-->
@ -182,9 +182,9 @@
<!--<listitem>
<para>Man-pages-&man-pages-version;</para>
</listitem>-->
<!--<listitem>
<listitem>
<para>MarkupSafe-&markupsafe-version;</para>
</listitem>-->
</listitem>
<listitem>
<para>Meson-&meson-version;</para>
</listitem>
@ -239,9 +239,9 @@
<listitem>
<para>Systemd-&systemd-version;</para>
</listitem>
<!--<listitem revision="sysv">
<listitem revision="sysv">
<para>SysVinit-&sysvinit-version;</para>
</listitem>-->
</listitem>
<!--<listitem>
<para>Tar-&tar-version;</para>
</listitem>-->
@ -263,15 +263,15 @@
<listitem>
<para>Vim-&vim-version;</para>
</listitem>
<!--<listitem>
<listitem>
<para>Wheel-&wheel-version;</para>
</listitem>-->
</listitem>
<!--<listitem>
<para>XML::Parser-&xml-parser-version;</para>
</listitem>-->
<!--<listitem>
<listitem>
<para>Xz-&xz-version;</para>
</listitem>-->
</listitem>
<!--<listitem>
<para>Zlib-&zlib-version;</para>
</listitem>-->
@ -292,9 +292,9 @@
<itemizedlist>
<title>Added:</title>
<listitem><para></para></listitem> <!-- satisfy build -->
<!--<listitem>
<para>expect-5.45.4-gcc14-2.patch</para>
</listitem>-->
<listitem>
<para>binutils-2.43.1-upstream_fix-1.patch</para>
</listitem>
</itemizedlist>
<itemizedlist>

View File

@ -22,8 +22,9 @@
<para>For some packages, the release tarball and the (Git or SVN)
repository snapshot tarball for that release may be published with
similar file names. A release tarball contains generated files (for
example, a <command>configure</command> script generated by
similar or even identical file names. But the release tarball may contain
some files which are essential despite not stored in the repository
(for example, a <command>configure</command> script generated by
<command>autoconf</command>), in addition to the contents of the
corresponding repository snapshot. The book uses release tarballs
whenever possible. Using a repository snapshot instead of a release

View File

@ -39,11 +39,19 @@
<varlistentry>
<term>Binutils LoongArch Fix Patch - <token>&binutils-loongarch-patch-size;</token>:</term>
<listitem>
<para>Download: <ulink url="&lfs-root;~xry111/lfs/patches/&binutils-loongarch-patch;"/></para>
<para>Download: <ulink url="&lfs-root;~xry111/lfs/patches/&binutils-loongarch-patch;"/></para>
<para>MD5 sum: <literal>&binutils-loongarch-patch-md5;</literal></para>
</listitem>
</varlistentry>
<varlistentry>
<term>Binutils Upstream Fixes Patch - <token>&binutils-upstream-patch-size;</token>:</term>
<listitem>
<para>Download: <ulink url="&patches-root;&binutils-upstream-patch;"/></para>
<para>MD5 sum: <literal>&binutils-upstream-patch-md5;</literal></para>
</listitem>
</varlistentry>
<varlistentry>
<term>Bzip2 Documentation Patch - <token>&bzip2-docs-patch-size;</token>:</term>
<listitem>

View File

@ -180,8 +180,8 @@ cd build</userinput></screen>
packages to define the location where the package should be
installed. If it is not set, it defaults to the root (<filename
class="directory">/</filename>) directory. Here we specify that
the package is installed in <filename class="directory">$LFS
</filename>, which will become the root directory in <xref linkend=
the package is installed in <filename class="directory">
$LFS</filename>, which will become the root directory in <xref linkend=
"ch-tools-chroot"/>.</para>
</listitem>
</varlistentry>

View File

@ -48,8 +48,7 @@
<screen><userinput remap="configure">./configure --prefix=/usr \
--build=$(sh support/config.guess) \
--host=$LFS_TGT \
--without-bash-malloc \
bash_cv_strtold_broken=no</userinput></screen>
--without-bash-malloc</userinput></screen>
<variablelist>
<title>The meaning of the configure options:</title>

View File

@ -45,7 +45,6 @@
<screen><userinput remap="configure">./configure --prefix=/usr \
--without-bash-malloc \
--with-installed-readline \
bash_cv_strtold_broken=no \
--docdir=/usr/share/doc/bash-&bash-version;</userinput></screen>
<variablelist>

View File

@ -41,8 +41,15 @@
<sect2 role="installation">
<title>Installation of Binutils</title>
<para>First, apply a patch to prevent a bug that causing
unnecessary relinking with packages that depend on cmake-3.31.0
or newer:</para>
<screen><userinput remap="pre">patch -Np1 -i ../&binutils-upstream-patch;</userinput></screen>
<para>
At first, fix a bug which may cause some packages fail to build:
Then fix a bug which may cause some packages fail to build for
LoongArch:
</para>
<screen><userinput remap="pre">patch -Np1 -i ../&binutils-loongarch-patch;</userinput></screen>

View File

@ -146,7 +146,7 @@ install-info --dir-file=/usr/share/info/dir /usr/share/info/com_err.info</userin
<para>
<filename>/etc/mke2fs.conf</filename> contains the default value of
various command line options of <command>mke2fs</command>. You may
edit the file to make the default values suitable for your need.
edit the file to make the default values suitable for your needs.
For example, some utilities (not in LFS or BLFS) cannot recognize a
<systemitem class='filesystem'>ext4</systemitem> file system with
<literal>metadata_csum_seed</literal> feature enabled.

View File

@ -84,8 +84,7 @@ make install</userinput></screen>
<para>If desired, install the documentation:</para>
<screen><userinput remap="install">mkdir -pv /usr/share/doc/gawk-&gawk-version;
cp -v doc/{awkforai.txt,*.{eps,pdf,jpg}} /usr/share/doc/gawk-&gawk-version;</userinput></screen>
<screen><userinput remap="install">install -vDm644 doc/{awkforai.txt,*.{eps,pdf,jpg}} -t /usr/share/doc/gawk-&gawk-version;</userinput></screen>
</sect2>

View File

@ -43,6 +43,14 @@
<sect2 role="installation">
<title>Installation of Gettext</title>
<para>At first, fix an issue causing the package fail to build with
libxml-2.12 or later. The fix is optional for building LFS, but
required if rebuilding this package in BLFS with libxml
installed:</para>
<screen><userinput remap="pre">sed -e '/^structured/s/xmlError \*/typeof(xmlCtxtGetLastError(NULL)) /' \
-i gettext-tools/src/its.c</userinput></screen>
<para>Prepare Gettext for compilation:</para>
<screen><userinput remap="configure">./configure --prefix=/usr \

View File

@ -187,7 +187,7 @@ mv -v /etc/bash_completion.d/grub /usr/share/bash-completion/completions</userin
<varlistentry id="grub-fstest">
<term><command>grub-fstest</command></term>
<listitem>
<para>Is a tool to debug the filesystem driver</para>
<para>Is a tool to debug the file system driver</para>
<indexterm zone="ch-system-grub grub-fstest">
<primary sortas="b-grub-fstest">grub-fstest</primary>
</indexterm>

View File

@ -77,8 +77,7 @@ rm -fv man/man8/arpd.8</userinput></screen>
<para>If desired, install the documentation:</para>
<screen><userinput remap="install">mkdir -pv /usr/share/doc/iproute2-&iproute2-version;
cp -v COPYING README* /usr/share/doc/iproute2-&iproute2-version;</userinput></screen>
<screen><userinput remap="install">install -vDm644 COPYING README* -t /usr/share/doc/iproute2-&iproute2-version;</userinput></screen>
</sect2>
@ -278,7 +277,7 @@ cp -v COPYING README* /usr/share/doc/iproute2-&iproute2-version;</userinput></sc
discipline</para>
<para><command>tc class</command> allows users to set up classes based
on the queuing discipline scheduling</para>
on the queueing discipline scheduling</para>
<para><command>tc filter</command> allows users to set up the QoS/CoS
packet filtering</para>

View File

@ -88,7 +88,8 @@
limit and 1 SBU (measured when building Binutils pass 1 with one CPU
core) should be enough. Some tests are flaky, so the test suite will
automatically re-run failed tests. If a test failed but then passed
when re-run, it should be considered as passed.</para>
when re-run, it should be considered as passed. One test, test_ssl,
is known to fail in the chroot environment.</para>
<!-- https://github.com/python/cpython/pull/120227
The typical page size of LoongArch Linux is 16 KiB so this issu
@ -170,7 +171,7 @@ EOF
tar --no-same-owner \
-xvf ../python-&python-version;-docs-html.tar.bz2
cp -R --no-preserve=mode python-&python-minor;-docs-html/* \
cp -R --no-preserve=mode python-&python-version;-docs-html/* \
/usr/share/doc/python-&python-version;/html</userinput></screen>
<variablelist>

View File

@ -89,7 +89,9 @@ sed -i '/{OLDSUFF}/c:' support/shlib-install</userinput></screen>
<term><parameter>SHLIB_LIBS="-lncursesw"</parameter></term>
<listitem>
<para>This option forces Readline to link against the
<filename class="libraryfile">libncursesw</filename> library.</para>
<filename class="libraryfile">libncursesw</filename> library.
For details see the <quote>Shared Libraries</quote> section in the
package's <filename>README</filename> file.</para>
</listitem>
</varlistentry>
@ -99,7 +101,7 @@ sed -i '/{OLDSUFF}/c:' support/shlib-install</userinput></screen>
<para>Install the package:</para>
<screen><userinput remap="install">make SHLIB_LIBS="-lncursesw" install</userinput></screen>
<screen><userinput remap="install">make install</userinput></screen>
<para>If desired, install the documentation:</para>

View File

@ -44,18 +44,20 @@
<important>
<para>
If you've installed Linux-PAM, you should follow
<ulink url='&blfs-book;postlfs/shadow.xml'>the BLFS shadow
page</ulink> instead of this page to build (or, rebuild or upgrade)
shadow.
<ulink url='&blfs-book;postlfs/shadow.html'>the BLFS
instruction</ulink> instead of this page to build (or, rebuild or
upgrade) shadow.
</para>
</important>
<note>
<para>If you would like to enforce the use of strong passwords, refer to
<ulink url="&blfs-book;postlfs/cracklib.html"/> for installing
CrackLib prior to building Shadow. Then add
<parameter>--with-libcrack</parameter> to the <command>configure</command>
command below.</para>
<para>If you would like to enforce the use of strong passwords,
<ulink url='&blfs-book;postlfs/linux-pam.html'>install and configure
Linux-PAM</ulink> first. Then
<ulink url='&blfs-book;postlfs/shadow.html'>install and configure
shadow with the PAM support</ulink>. Finally
<ulink url='&blfs-book;postlfs/libpwquality.html'>install
libpwquality and configure PAM to use it</ulink>.</para>
</note>
<para>Disable the installation of the <command>groups</command> program
@ -81,24 +83,19 @@ find man -name Makefile.in -exec sed -i 's/passwd\.5 / /' {} \;</userinput></s
since they are simply symlinks to their counterparts in
<filename class="directory">/usr</filename>.</para>
<note>
<para>If you wish to include <filename class="directory">/bin</filename>
and/or <filename class="directory">/sbin</filename> in the <envar>PATH</envar>
for some reason, modify the
<envar>PATH</envar> in <filename>.bashrc</filename> after LFS has been
built.</para>
</note>
<warning>
<para>Including <filename class="directory">/bin</filename>
and/or <filename class="directory">/sbin</filename> in
the <envar>PATH</envar> variable may cause some BLFS packages fail to
build,<!-- known example: SPIRV-LLVM-Translator --> so don't do that
in the <filename>.bashrc</filename> file or anywhere else.</para>
</warning>
<screen><userinput remap="pre">sed -e 's:#ENCRYPT_METHOD DES:ENCRYPT_METHOD YESCRYPT:' \
-e 's:/var/spool/mail:/var/mail:' \
-e '/PATH=/{s@/sbin:@@;s@/bin:@@}' \
-i etc/login.defs</userinput></screen>
<note>
<para>If you chose to build Shadow with Cracklib support, issue this command:</para>
<screen role="nodump"><userinput>sed -i 's:DICTPATH.*:DICTPATH\t/lib/cracklib/pw_dict:' etc/login.defs</userinput></screen>
</note>
<!--
<para>Make a minor change to make the first group number generated
by useradd 1000:</para>

View File

@ -46,7 +46,8 @@
<screen><userinput remap="configure">./configure --prefix=/usr \
--sysconfdir=/etc \
--runstatedir=/run \
--without-logger</userinput></screen>
--without-logger \
--docdir=/usr/share/doc/sysklogd-&sysklogd-version;</userinput></screen>
<para>Compile the package:</para>

View File

@ -45,8 +45,9 @@
<systemitem class="groupname">sgx</systemitem>, from the default udev
rules:</para>
<screen><userinput remap="pre">sed -i -e 's/GROUP="render"/GROUP="video"/' \
-e 's/GROUP="sgx", //' rules.d/50-udev-default.rules.in</userinput></screen>
<screen><userinput remap="pre">sed -e 's/GROUP="render"/GROUP="video"/' \
-e 's/GROUP="sgx", //' \
-i rules.d/50-udev-default.rules.in</userinput></screen>
<para>Prepare systemd for compilation:</para>

View File

@ -48,17 +48,19 @@
<systemitem class="groupname">sgx</systemitem>, from the default udev
rules:</para>
<screen><userinput remap="pre">sed -i -e 's/GROUP="render"/GROUP="video"/' \
-e 's/GROUP="sgx", //' rules.d/50-udev-default.rules.in</userinput></screen>
<screen><userinput remap="pre">sed -e 's/GROUP="render"/GROUP="video"/' \
-e 's/GROUP="sgx", //' \
-i rules.d/50-udev-default.rules.in</userinput></screen>
<para>Remove one udev rule requiring a full Systemd installation:</para>
<screen><userinput remap="pre">sed '/systemd-sysctl/s/^/#/' -i rules.d/99-systemd.rules.in</userinput></screen>
<screen><userinput remap="pre">sed -i '/systemd-sysctl/s/^/#/' rules.d/99-systemd.rules.in</userinput></screen>
<para>Adjust the hardcoded paths to network configuration files for the
standalone udev installation:</para>
<screen><userinput remap="pre">sed '/NETWORK_DIRS/s/systemd/udev/' -i src/basic/path-lookup.h</userinput></screen>
<screen><userinput remap="pre">sed -e '/NETWORK_DIRS/s/systemd/udev/' \
-i src/libsystemd/sd-network/network-util.h</userinput></screen>
<para>Prepare Udev for compilation:</para>

View File

@ -186,6 +186,7 @@ set timeout=5
insmod part_gpt
insmod ext2
set root=(hd0,2)
set gfxpayload=1024x768x32
insmod efi_gop
@ -212,6 +213,14 @@ EOF</userinput></screen>
be needed with some rare configurations.
</para>
<para>
The <command>set gfxpayload=1024x768x32</command> command sets the
resolution and color depth of the VESA framebuffer to be passed to the
kernel. It's necessary for the kernel SimpleDRM driver to use the
VESA framebuffer. You can use a different resolution or color depth
value which better suits for your monitor.
</para>
<note><para>From <application>GRUB</application>'s perspective, the
kernel files are relative to the partition used. If you
used a separate /boot partition, remove /boot from the above

View File

@ -264,6 +264,71 @@
</listitem>
</varlistentry>
<varlistentry>
<term>
<parameter>
Display a user-friendly message when a kernel panic occurs
</parameter>
</term>
<listitem>
<para>This will make the kernel correctly display the message
in case a kernel panic happens and a running DRM driver
supports to do so. Without this, it would be more
difficult to diagnose a panic: if no DRM driver is running,
we'd be on the VGA console which can only hold 24 lines and
the relevant kernel message is often flushed away; if a DRM
driver is running, the display is often completely messed up
on panic. As of Linux-6.12, none of the dedicated drivers for
mainstream GPU models really supports this, but it's supported by
the <quote>Simple framebuffer driver</quote> which runs on the
VESA (or EFI) framebuffer before the dedicated GPU driver is
loaded. If the dedicated GPU driver is built as a module
(instead of a part of the kernel image) and no initramfs is
used, this functionality will work just fine before the root
file system is mounted and it's already enough for providing
information about most LFS configuration errors causing a
panic (for example, an incorrect <parameter>root=</parameter>
setting in <xref linkend='ch-bootable-grub'/>).</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<parameter>
Panic screen formatter
</parameter>
</term>
<listitem>
<para>Set this <literal>kmsg</literal> to make sure the last
kernel messages lines are displayed when a kernel panic happens.
The default, <literal>user</literal>, would make the kernel show
only a <quote>user friendly</quote> panic message which is not
helpful on diagnostic. The third choice,
<literal>qr_code</literal>, would make the kernel to compress
the last kernel message lines into a QR code and display it.
The QR code can hold more message lines than plain text and it
can be decoded with an external device (like a smart phone).
But it requires a Rust compiler that LFS does not provide.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<parameter>
Mark VGA/VBE/EFI FB as generic system framebuffer
</parameter> and
<parameter>Simple framebuffer driver</parameter>
</term>
<listitem>
<para>These allow to use the VESA framebuffer (or the EFI
framebuffer if booting the LFS system via UEFI) as a DRM device.
The VESA framebuffer will be set up by GRUB (or the EFI
framebuffer will be set up by the UEFI firmware), so the DRM panic
handler can function before the GPU-specific DRM driver is
loaded.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<parameter>
@ -274,8 +339,8 @@
<listitem>
<para>These are needed to display the Linux console on a
GPU driven by a DRI (Direct Rendering Infrastructure) driver.
If <option>CONFIG_DRM</option> (Direct Rendering Manager) is
enabled, you should enable these two options as well or you'll see
As <option>CONFIG_DRM</option> (Direct Rendering Manager) is
enabled, we should enable these two options as well or we'll see
a blank screen once the DRI driver is loaded.</para>
</listitem>
</varlistentry>
@ -319,7 +384,7 @@
<caution>
<para>If you've decided to use a separate &boot-dir; partition for the
LFS system (maybe sharing a &boot-dir; partition with the host
distro) , the files copied below should go there. The easiest way to
distro), the files copied below should go there. The easiest way to
do that is to create the entry for &boot-dir; in &fstab; first (read
the previous section for details), then issue the following command
as the &root; user in the
@ -382,6 +447,26 @@
<command>chown -R 0:0</command> on the <filename
class="directory">linux-&linux-version;</filename> directory to ensure
all files are owned by user <emphasis>root</emphasis>.</para>
<para>If you are updating the configuration and rebuilding the kernel
from a retained kernel source tree, normally you should
<emphasis role='bold'>not</emphasis> run the
<command>make mrproper</command> command. The command would purge
the <filename>.config</filename> file and all the
<filename class='extension'>.o</filename> files from the previous
build. Despite it's easy to restore <filename>.config</filename> from
the copy in <filename class='directory'>/boot</filename>, purging all
the <filename class='extension'>.o</filename> files is still a waste:
for a simple configuration change, often only a few
<filename class='extension'>.o</filename> files need to be (re)built
and the kernel build system will correctly skip other
<filename class='extension'>.o</filename> files if they are not
purged.</para>
<para>On the other hand, if you've upgraded GCC, you should run
<command>make clean</command> to purge all the
<filename class='extension'>.o</filename> files from the previous
build, or the new build may fail.</para>
</note>
<warning>
@ -393,17 +478,6 @@
complete.</para>
</warning>
<warning>
<para>The headers in the system's <filename
class="directory">include</filename> directory (<filename
class="directory">/usr/include</filename>) should
<emphasis>always</emphasis> be the ones against which Glibc was compiled,
that is, the sanitised headers installed in <xref
linkend="ch-tools-linux-headers"/>. Therefore, they should
<emphasis>never</emphasis> be replaced by either the raw kernel headers
or any other kernel sanitized headers.</para>
</warning>
</sect2>
<sect2 id="conf-modprobe" role="configuration">

View File

@ -1 +1 @@
6.10.2
6.12.1

View File

@ -13,7 +13,13 @@ STACKPROTECTOR_STRONG='*'
UEVENT_HELPER=' '
DEVTMPFS='*'
DEVTMPFS_MOUNT='*'
DRM=' *M'
SYSFB_SIMPLEFB='*'
DRM='*'
DRM_PANIC='*'
DRM_PANIC_SCREEN='kmsg'
DRM_FBDEV_EMULATION='*'
DRM_SIMPLEDRM='*'
FRAMEBUFFER_CONSOLE='*'
NET='*'
INET='*'
IPV6='*'
@ -30,11 +36,3 @@ revision='systemd'
[RT_GROUP_SCHED]
value = ' '
comment = 'This may cause some systemd features malfunction'
[DRM_FBDEV_EMULATION]
value = ' *'
comment = 'If [DRM] is selected as * or M, this must be selected'
[FRAMEBUFFER_CONSOLE]
value = ' *'
comment = 'If [DRM] is selected as * or M, this must be selected'

View File

@ -42,15 +42,18 @@
... [FW_LOADER_USER_HELPER]
<emphasis role='blue'>F</emphasis>irmware Drivers ---&gt;
[*] <emphasis role='blue'>E</emphasis>xport DMI identification via sysfs to userspace [DMIID]
[*] M<emphasis role='blue'>a</emphasis>rk VGA/VBE/EFI FB as generic system framebuffer [SYSFB_SIMPLEFB]
<emphasis role='blue'>G</emphasis>raphics support ---&gt;
&lt; /*/M&gt; <emphasis role='blue'>D</emphasis>irect Rendering Manager (XFree86 4.1.0 and higher DRI support) ---&gt;
&lt;*&gt; <emphasis role='blue'>D</emphasis>irect Rendering Manager (XFree86 4.1.0 and higher DRI support) ---&gt;
... [DRM]
# If [DRM] is selected as * or M, this must be selected:
[ /*] <emphasis role='blue'>E</emphasis>nable legacy fbdev support for your modesetting driver
[*] <emphasis role='blue'>D</emphasis>isplay a user-friendly message when a kernel panic occurs
... [DRM_PANIC]
(kmsg) <emphasis role='blue'>P</emphasis>anic screen formatter [DRM_PANIC_SCREEN]
[*] <emphasis role='blue'>E</emphasis>nable legacy fbdev support for your modesetting driver
... [DRM_FBDEV_EMULATION]
&lt;*&gt; <emphasis role='blue'>S</emphasis>imple framebuffer driver [DRM_SIMPLEDRM]
<emphasis role='blue'>C</emphasis>onsole display driver support ---&gt;
# If [DRM] is selected as * or M, this must be selected:
[ /*] <emphasis role='blue'>F</emphasis>ramebuffer Console support [FRAMEBUFFER_CONSOLE]
[*] <emphasis role='blue'>F</emphasis>ramebuffer Console support [FRAMEBUFFER_CONSOLE]
<emphasis role='blue'>F</emphasis>ile systems ---&gt;
[*] <emphasis role='blue'>I</emphasis>notify support for userspace [INOTIFY_USER]

View File

@ -12,16 +12,14 @@ STACKPROTECTOR_STRONG='*'
UEVENT_HELPER=' '
DEVTMPFS='*'
DEVTMPFS_MOUNT='*'
DRM=' *M'
SYSFB_SIMPLEFB='*'
DRM='*'
DRM_PANIC='*'
DRM_PANIC_SCREEN='kmsg'
DRM_FBDEV_EMULATION='*'
DRM_SIMPLEDRM='*'
FRAMEBUFFER_CONSOLE='*'
EFI_ZBOOT='*'
revision='sysv'
[DRM_FBDEV_EMULATION]
value = ' *'
comment = 'If [DRM] is selected as * or M, this must be selected'
[FRAMEBUFFER_CONSOLE]
value = ' *'
comment = 'If [DRM] is selected as * or M, this must be selected'

View File

@ -29,14 +29,17 @@
[*] <emphasis role='blue'>A</emphasis>utomount devtmpfs at /dev, after the kernel mounted the rootfs
... [DEVTMPFS_MOUNT]
<emphasis role='blue'>F</emphasis>irmware Drivers ---&gt;
[*] M<emphasis role='blue'>a</emphasis>rk VGA/VBE/EFI FB as generic system framebuffer [SYSFB_SIMPLEFB]
<emphasis role='blue'>E</emphasis>FI (Extensible Firmware Interface) Support ---&gt;
[*] <emphasis role='blue'>E</emphasis>nable the generic EFI decompressor [EFI_ZBOOT]
<emphasis role='blue'>G</emphasis>raphics support ---&gt;
&lt; /*/M&gt; <emphasis role='blue'>D</emphasis>irect Rendering Manager (XFree86 4.1.0 and higher DRI support) ---&gt;
&lt;*&gt; <emphasis role='blue'>D</emphasis>irect Rendering Manager (XFree86 4.1.0 and higher DRI support) ---&gt;
... [DRM]
# If [DRM] is selected as * or M, this must be selected:
[ /*] <emphasis role='blue'>E</emphasis>nable legacy fbdev support for your modesetting driver
[*] <emphasis role='blue'>D</emphasis>isplay a user-friendly message when a kernel panic occurs
... [DRM_PANIC]
(kmsg) <emphasis role='blue'>P</emphasis>anic screen formatter [DRM_PANIC_SCREEN]
[*] <emphasis role='blue'>E</emphasis>nable legacy fbdev support for your modesetting driver
... [DRM_FBDEV_EMULATION]
&lt;*&gt; <emphasis role='blue'>S</emphasis>imple framebuffer driver [DRM_SIMPLEDRM]
<emphasis role='blue'>C</emphasis>onsole display driver support ---&gt;
# If [DRM] is selected as * or M, this must be selected:
[ /*] <emphasis role='blue'>F</emphasis>ramebuffer Console support [FRAMEBUFFER_CONSOLE]</screen>
[*] <emphasis role='blue'>F</emphasis>ramebuffer Console support [FRAMEBUFFER_CONSOLE]</screen>

View File

@ -54,7 +54,7 @@
<para>
In addition to the above, there is a set of applications for system
management for all kinds of systems. These applications are all in the
BLFS book. Not all packages are needed in every environments. For
BLFS book. Not all packages are needed in every environment. For
example <ulink url="&blfs-book;basicnet/dhcpcd.html">dhcpcd</ulink>, is
not normally appropriate for a server and <ulink
url="&blfs-book;basicnet/wireless_tools.html">wireless_tools</ulink>,
@ -168,7 +168,7 @@ EOF</command></screen>
</para>
<screen><command>alias lfs='sudo /usr/sbin/chroot /mnt/lfs /usr/bin/env -i HOME=/root TERM="$TERM" PS1="\u:\w\\\\$ "
PATH=/bin:/usr/bin:/sbin:/usr/sbin /bin/bash --login'</command></screen>
PATH=/usr/bin:/usr/sbin /bin/bash --login'</command></screen>
<para>
This alias is a little tricky because of the quoting and levels of

View File

@ -59,6 +59,7 @@ ID=lfs
PRETTY_NAME="Linux From Scratch &version;"
VERSION_CODENAME="&lt;your name here&gt;"
HOME_URL="&lfs-root;lfs/"
RELEASE_TYPE="&os-release-type;"
EOF</userinput></screen>
<para>Be sure to customize the fields 'DISTRIB_CODENAME' and

View File

@ -34,6 +34,7 @@
&patches-root;,
&donwloads-root;, and
&test-results; -->
<!ENTITY os-release-type "development"> <!-- used by /etc/os-release -->
]]><!-- End %development -->
<![ %release; [
@ -52,6 +53,7 @@
&test-results; -->
<!ENTITY releasedate "%reldate;">
<!ENTITY copyrightdate "%crdate;">
<!ENTITY os-release-type "stable"> <!-- used by /etc/os-release -->
]]>
<![ %rc; [
@ -70,6 +72,7 @@
&test-results; -->
<!ENTITY releasedate "%reldate;">
<!ENTITY copyrightdate "%crdate;">
<!ENTITY os-release-type "development"> <!-- used by /etc/os-release -->
]]>
<![ %sysv; [

View File

@ -11,12 +11,9 @@ $exceptions = array();
//$exceptions[ 'gmp' ] = "UPDIR=/.*(gmp-\d[\d\.-]*\d).*/:DOWNDIR=";
$regex = array();
//$regex[ 'bzip2' ] = "/^.*current version is ([\d\.]+).*$/";
$regex[ 'intltool' ] = "/^.*Latest version is (\d[\d\.]+\d).*$/";
$regex[ 'less' ] = "/^.*current released version is less-(\d+).*$/";
$regex[ 'mpfr' ] = "/^mpfr-([\d\.]+)\.tar.*$/";
//$regex[ 'Python' ] = "/^.*Latest Python 3.*Python (3[\d\.]+\d).*$/";
//$regex[ 'sysvinit' ] = "/^.*sysvinit-([\d\.]+)dsf\.tar.*$/";
$regex[ 'tzdata' ] = "/^.*tzdata([\d]+[a-z]).*$/";
$regex[ 'xz' ] = "/^.*xz-([\d\.]*\d).*$/";
$regex[ 'zlib' ] = "/^.*zlib ([\d\.]*\d).*$/";
@ -118,7 +115,7 @@ function get_packages( $package, $dirpath )
global $exceptions;
global $regex;
//if ( $package != "psmisc" ) return 0; // debug
//if ( $package != "wheel" ) return 0; // debug
if ( $package == "bc" ) $dirpath = github("gavinhoward/bc");
if ( $package == "check" ) $dirpath = github("libcheck/check");
@ -128,14 +125,15 @@ if ( $package == "elfutils" ) $dirpath = "https://sourceware.org/ftp/elfutils"
if ( $package == "expect" ) $dirpath = "https://sourceforge.net/projects/expect/files";
if ( $package == "file" ) $dirpath = "https://github.com/file/file/tags";
if ( $package == "flex" ) $dirpath = github("westes/flex");
if ( $package == "flit_core" ) $dirpath = "https://pypi.org/project/flit-core/";
if ( $package == "setuptools" ) $dirpath = "https://pypi.org/project/setuptools/";
if ( $package == "flit_core" ) $dirpath = "https://pypi.org/rss/project/flit-core/releases.xml";
if ( $package == "gcc" ) $dirpath = max_parent( $dirpath, "gcc-" );
if ( $package == "iana-etc" ) $dirpath = github("Mic92/iana-etc");
if ( $package == "intltool" ) $dirpath = "https://launchpad.net/intltool/trunk";
if ( $package == "jinja" ) $dirpath = "https://pypi.org/rss/project/jinja2/releases.xml";
if ( $package == "libffi" ) $dirpath = github("libffi/libffi");
if ( $package == "libxcrypt" ) $dirpath = github("besser82/libxcrypt");
if ( $package == "lz4" ) $dirpath = github("lz4/lz4");
if ( $package == "markupsafe" ) $dirpath = "https://pypi.org/rss/project/markupsafe/releases.xml";
if ( $package == "meson" ) $dirpath = github("mesonbuild/meson");
if ( $package == "mpc" ) $dirpath = "https://ftp.gnu.org/gnu/mpc";
if ( $package == "mpfr" ) $dirpath = "https://mpfr.loria.fr/mpfr-current";
@ -145,17 +143,15 @@ if ( $package == "openssl" ) $dirpath = github("openssl/openssl");
if ( $package == "procps-ng" ) $dirpath = "https://gitlab.com/procps-ng/procps/-/tags";
if ( $package == "psmisc" ) $dirpath = "https://gitlab.com/psmisc/psmisc/-/tags";
if ( $package == "Python" ) $dirpath = "https://www.python.org/downloads/source/";
if ( $package == "setuptools" ) $dirpath = "https://pypi.org/rss/project/setuptools/releases.xml";
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 == "sysklogd" ) $dirpath = github("troglobit/sysklogd");
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";
if ( $package == "util-linux" ) $dirpath = max_parent( $dirpath, "v." );
if ( $package == "vim" ) $dirpath = "https://github.com/vim/vim/tags";
if ( $package == "wheel" ) $dirpath = "https://pypi.org/project/wheel/#files";
if ( $package == "wheel" ) $dirpath = "https://pypi.org/rss/project/wheel/releases.xml";
if ( $package == "xz" ) $dirpath = github("tukaani-project/xz");
if ( $package == "zlib" ) $dirpath = "https://www.zlib.net";
if ( $package == "zstd" ) $dirpath = github("facebook/zstd");
@ -250,11 +246,22 @@ if ( $package == "zstd" ) $dirpath = github("facebook/zstd");
return str_replace( "_", ".", $max );
}
# Python modules
if ( $package == "flit_core" )
return find_max( $lines, "/flit-core /", "/^.*flit-core ([\d\.]+)$/" );
return find_max( $lines, "/flit-core\/\d/", "/^.*flit-core\/([\d\.]+).*$/" );
if ( $package == "setuptools" )
return find_max( $lines, "/setuptools /", "/^.*setuptools ([\d\.]+)$/" );
return find_max( $lines, "/setuptools\/\d/", "/^.*setuptools\/([\d\.]+).*$/" );
if ( $package == "markupsafe" )
return find_max( $lines, "/markupsafe\/\d/", "/^.*markupsafe\/([\d\.]+).*$/" );
if ( $package == "jinja" )
return find_max( $lines, "/jinja2\/\d/", "/^.*jinja2\/([\d\.]+).*$/" );
if ( $package == "wheel" )
return find_max( $lines, "/wheel\/\d/", "/^.*wheel\/([\d\.]+).*$/" );
# End Python modules
if ( $package == "procps-ng" )
return find_max( $lines, "/v\d/", "/^.*v([\d\.]+)$/" );
@ -265,9 +272,6 @@ if ( $package == "zstd" ) $dirpath = github("facebook/zstd");
if ( $package == "grub" )
return find_max( $lines, "/grub/", "/^.*grub-([\d\.]+).tar.xz.*$/" );
if ( $package == "jinja" )
return find_max( $lines, "/Jinja/", "/^.*Jinja2 ([\d\.]+).*$/" );
if ( $package == "lz4" )
return find_max( $lines, "/tag_name/", '/^.*v([\d\.]+).*$/' );

View File

@ -148,18 +148,18 @@
<!ENTITY e2fsprogs-fin-du "98 MB">
<!ENTITY e2fsprogs-fin-sbu "2.4 SBU on a spinning disk, 0.5 SBU on an SSD">
<!ENTITY elfutils-version "0.191"> <!-- libelf -->
<!ENTITY elfutils-size "9,092 KB">
<!ENTITY elfutils-version "0.192"> <!-- libelf -->
<!ENTITY elfutils-size "11,635 KB">
<!ENTITY elfutils-url "https://sourceware.org/ftp/elfutils/&elfutils-version;/elfutils-&elfutils-version;.tar.bz2">
<!ENTITY elfutils-md5 "636547248fb3fae58ec48030298d3ef7">
<!ENTITY elfutils-md5 "a6bb1efc147302cfc15b5c2b827f186a">
<!ENTITY elfutils-home "https://sourceware.org/elfutils/">
<!ENTITY elfutils-fin-du "127 MB">
<!ENTITY elfutils-fin-sbu "0.3 SBU">
<!ENTITY expat-version "2.6.3">
<!ENTITY expat-size "475 KB">
<!ENTITY expat-version "2.6.4">
<!ENTITY expat-size "476 KB">
<!ENTITY expat-url "&sourceforge;expat/expat-&expat-version;.tar.xz">
<!ENTITY expat-md5 "3812d9fe29a5a6d64de3fa6e6509fdad">
<!ENTITY expat-md5 "101fe3e320a2800f36af8cf4045b45c7">
<!ENTITY expat-home "https://libexpat.github.io/">
<!ENTITY expat-fin-du "13 MB">
<!ENTITY expat-fin-sbu "0.1 SBU">
@ -172,10 +172,10 @@
<!ENTITY expect-tmp-du "3.9 MB">
<!ENTITY expect-tmp-sbu "0.2 SBU">
<!ENTITY file-version "5.45">
<!ENTITY file-size "1,218 KB">
<!ENTITY file-version "5.46">
<!ENTITY file-size "1,283 KB">
<!ENTITY file-url "https://astron.com/pub/file/file-&file-version;.tar.gz">
<!ENTITY file-md5 "26b2a96d4e3a8938827a1e572afd527a">
<!ENTITY file-md5 "459da2d4b534801e2e2861611d823864">
<!ENTITY file-home "https://www.darwinsys.com/file/">
<!ENTITY file-tmp-du "37 MB">
<!ENTITY file-tmp-sbu "0.1 SBU">
@ -200,10 +200,10 @@
<!ENTITY flex-fin-du "33 MB">
<!ENTITY flex-fin-sbu "0.1 SBU">
<!ENTITY flit-core-version "3.9.0">
<!ENTITY flit-core-size "41 KB">
<!ENTITY flit-core-version "3.10.1">
<!ENTITY flit-core-size "42 KB">
<!ENTITY flit-core-url "&pypi-src;/f/flit-core/flit_core-&flit-core-version;.tar.gz">
<!ENTITY flit-core-md5 "3bc52f1952b9a78361114147da63c35b">
<!ENTITY flit-core-md5 "a3381dd58e23e9826c5199b1f70318b0">
<!ENTITY flit-core-home "&pypi-home;/flit-core/">
<!ENTITY flit-core-fin-du "1.6 MB">
<!ENTITY flit-core-fin-sbu "less than 0.1 SBU">
@ -245,10 +245,10 @@
<!ENTITY gdbm-fin-du "13 MB">
<!ENTITY gdbm-fin-sbu "less than 0.1 SBU">
<!ENTITY gettext-version "0.22.5">
<!ENTITY gettext-size "10,031 KB">
<!ENTITY gettext-version "0.23">
<!ENTITY gettext-size "10,795 KB">
<!ENTITY gettext-url "&gnu;gettext/gettext-&gettext-version;.tar.xz">
<!ENTITY gettext-md5 "3ae5580599d84be93e6213930facb2db">
<!ENTITY gettext-md5 "9f4f6040ac1022278ea26d28f37b1688">
<!ENTITY gettext-home "&gnu-software;gettext/">
<!ENTITY gettext-tmp-du "321 MB">
<!ENTITY gettext-tmp-sbu "1.1 SBU">
@ -317,10 +317,10 @@
<!ENTITY gzip-fin-du "21 MB">
<!ENTITY gzip-fin-sbu "0.3 SBU">
<!ENTITY iana-etc-version "20240912">
<!ENTITY iana-etc-size "590 KB">
<!ENTITY iana-etc-version "20241206">
<!ENTITY iana-etc-size "591 KB">
<!ENTITY iana-etc-url "https://github.com/Mic92/iana-etc/releases/download/&iana-etc-version;/iana-etc-&iana-etc-version;.tar.gz">
<!ENTITY iana-etc-md5 "c5dfa23182c74a3db8aeb5a88ac0d740">
<!ENTITY iana-etc-md5 "8ed4c07cada287f55207577976d6a37f">
<!ENTITY iana-etc-home "https://www.iana.org/protocols">
<!ENTITY iana-etc-fin-du "4.8 MB">
<!ENTITY iana-etc-fin-sbu "less than 0.1 SBU">
@ -341,10 +341,10 @@
<!ENTITY intltool-fin-du "1.5 MB">
<!ENTITY intltool-fin-sbu "less than 0.1 SBU">
<!ENTITY iproute2-version "6.11.0">
<!ENTITY iproute2-size "903 KB">
<!ENTITY iproute2-version "6.12.0">
<!ENTITY iproute2-size "904 KB">
<!ENTITY iproute2-url "&kernel;linux/utils/net/iproute2/iproute2-&iproute2-version;.tar.xz">
<!ENTITY iproute2-md5 "9d7927e8e5ca301bd14990f64ad44a8c">
<!ENTITY iproute2-md5 "bc789bd210bc5d1ca6c64ea1c87d6979">
<!ENTITY iproute2-home "&kernel;linux/utils/net/iproute2/">
<!ENTITY iproute2-fin-du "17 MB">
<!ENTITY iproute2-fin-sbu "0.1 SBU">
@ -357,10 +357,10 @@
<!ENTITY jinja2-fin-du "2.5 MB">
<!ENTITY jinja2-fin-sbu "less than 0.1 SBU">
<!ENTITY kbd-version "2.6.4">
<!ENTITY kbd-size "1,470 KB">
<!ENTITY kbd-version "2.7">
<!ENTITY kbd-size "1,437 KB">
<!ENTITY kbd-url "https://www.kernel.org/pub/linux/utils/kbd/kbd-&kbd-version;.tar.xz">
<!ENTITY kbd-md5 "e2fd7adccf6b1e98eb1ae8d5a1ce5762">
<!ENTITY kbd-md5 "bf40be5bea1b62e691410f5c6e0bbd6b">
<!ENTITY kbd-home "https://kbd-project.org/">
<!ENTITY kbd-fin-du "34 MB">
<!ENTITY kbd-fin-sbu "0.1 SBU">
@ -373,10 +373,10 @@
<!ENTITY kmod-fin-du "11 MB">
<!ENTITY kmod-fin-sbu "less than 0.1 SBU">
<!ENTITY less-version "661">
<!ENTITY less-size "634 KB">
<!ENTITY less-version "668">
<!ENTITY less-size "635 KB">
<!ENTITY less-url "https://www.greenwoodsoftware.com/less/less-&less-version;.tar.gz">
<!ENTITY less-md5 "44f54b6313c5d71fa1ac224d8d84766a">
<!ENTITY less-md5 "d72760386c5f80702890340d2f66c302">
<!ENTITY less-home "https://www.greenwoodsoftware.com/less/">
<!ENTITY less-fin-du "14 MB">
<!ENTITY less-fin-sbu "less than 0.1 SBU">
@ -389,10 +389,10 @@
<!ENTITY lfs-bootscripts-cfg-du "BOOTSCRIPTS-INSTALL-KB KB">
<!ENTITY lfs-bootscripts-cfg-sbu "less than 0.1 SBU">
<!ENTITY libcap-version "2.70">
<!ENTITY libcap-size "187 KB">
<!ENTITY libcap-version "2.73">
<!ENTITY libcap-size "191 KB">
<!ENTITY libcap-url "&kernel;linux/libs/security/linux-privs/libcap2/libcap-&libcap-version;.tar.xz">
<!ENTITY libcap-md5 "df0e20c6eeca849347b87d5d6a8870c0">
<!ENTITY libcap-md5 "0e186df9de9b1e925593a96684fe2e32">
<!ENTITY libcap-home "https://sites.google.com/site/fullycapable/">
<!ENTITY libcap-fin-du "2.9 MB">
<!ENTITY libcap-fin-sbu "less than 0.1 SBU">
@ -413,10 +413,10 @@
<!ENTITY libpipeline-fin-du "9.7 MB">
<!ENTITY libpipeline-fin-sbu "0.1 SBU">
<!ENTITY libtool-version "2.5.3">
<!ENTITY libtool-size "1,026 KB">
<!ENTITY libtool-version "2.5.4">
<!ENTITY libtool-size "1,033 KB">
<!ENTITY libtool-url "&gnu;libtool/libtool-&libtool-version;.tar.xz">
<!ENTITY libtool-md5 "e42b7d9ab875f1d013bba3cdb8a59b58">
<!ENTITY libtool-md5 "22e0a29df8af5fdde276ea3a7d351d30">
<!ENTITY libtool-home "&gnu-software;libtool/">
<!ENTITY libtool-fin-du "45 MB">
<!ENTITY libtool-fin-sbu "0.8 SBU">
@ -430,13 +430,13 @@
<!ENTITY libxcrypt-fin-sbu "0.1 SBU">
<!ENTITY linux-major-version "6">
<!ENTITY linux-minor-version "11">
<!ENTITY linux-patch-version "1">
<!ENTITY linux-minor-version "12">
<!ENTITY linux-patch-version "5">
<!--<!ENTITY linux-version "&linux-major-version;.&linux-minor-version;">-->
<!ENTITY linux-version "&linux-major-version;.&linux-minor-version;.&linux-patch-version;">
<!ENTITY linux-size "143,488 KB">
<!ENTITY linux-size "144,535 KB">
<!ENTITY linux-url "&kernel;linux/kernel/v&linux-major-version;.x/linux-&linux-version;.tar.xz">
<!ENTITY linux-md5 "28d4c44c62414ef7f0c8aa1fd5667937">
<!ENTITY linux-md5 "33a827ff7dea6908e7615d0766f1018e">
<!ENTITY linux-home "https://www.kernel.org/">
<!-- measured for 6.10.1 / gcc-14.1.0 on x86_64 with -j4 :
minimum is allnoconfig
@ -495,18 +495,18 @@
<!ENTITY man-pages-fin-du "52 MB">
<!ENTITY man-pages-fin-sbu "0.1 SBU">
<!ENTITY markupsafe-version "2.1.5">
<!ENTITY markupsafe-size "19 KB">
<!ENTITY markupsafe-url "&pypi-src;/M/MarkupSafe/MarkupSafe-&markupsafe-version;.tar.gz">
<!ENTITY markupsafe-md5 "8fe7227653f2fb9b1ffe7f9f2058998a">
<!ENTITY markupsafe-version "3.0.2">
<!ENTITY markupsafe-size "21 KB">
<!ENTITY markupsafe-url "&pypi-src;/M/MarkupSafe/markupsafe-&markupsafe-version;.tar.gz">
<!ENTITY markupsafe-md5 "cb0071711b573b155cc8f86e1de72167">
<!ENTITY markupsafe-home "https://palletsprojects.com/p/markupsafe/">
<!ENTITY markupsafe-fin-du "508 KB">
<!ENTITY markupsafe-fin-sbu "less than 0.1 SBU">
<!ENTITY meson-version "1.5.2">
<!ENTITY meson-size "2,213 KB">
<!ENTITY meson-version "1.6.0">
<!ENTITY meson-size "2,225 KB">
<!ENTITY meson-url "&github;/mesonbuild/meson/releases/download/&meson-version;/meson-&meson-version;.tar.gz">
<!ENTITY meson-md5 "682f75ef96c2e7542b0148e70068ea09">
<!ENTITY meson-md5 "0031ea392f8ef97eeadfe1906c5cc5b4">
<!ENTITY meson-home "https://mesonbuild.com">
<!ENTITY meson-fin-du "43 MB">
<!ENTITY meson-fin-sbu "less than 0.1 SBU">
@ -545,10 +545,10 @@
<!ENTITY ninja-fin-du "37 MB">
<!ENTITY ninja-fin-sbu "0.2 SBU">
<!ENTITY openssl-version "3.3.2">
<!ENTITY openssl-size "17,653 KB">
<!ENTITY openssl-version "3.4.0">
<!ENTITY openssl-size "17,892 KB">
<!ENTITY openssl-url "&github;/openssl/openssl/releases/download/openssl-&openssl-version;/openssl-&openssl-version;.tar.gz">
<!ENTITY openssl-md5 "015fca2692596560b6fe8a2d8fecd84b">
<!ENTITY openssl-md5 "34733f7be2d60ecd8bd9ddb796e182af">
<!ENTITY openssl-home "https://www.openssl-library.org/">
<!ENTITY openssl-fin-du "883 MB">
<!ENTITY openssl-fin-sbu "1.7 SBU">
@ -604,19 +604,19 @@
<!-- If python minor version changes, updates in python and
meson pages will be needed: python3.6 and python3.6m -->
<!ENTITY python-version "3.12.7">
<!ENTITY python-minor "3.12">
<!ENTITY python-size "19,965 KB">
<!ENTITY python-version "3.13.1">
<!ENTITY python-minor "3.13">
<!ENTITY python-size "22,061 KB">
<!ENTITY python-url "https://www.python.org/ftp/python/&python-version;/Python-&python-version;.tar.xz">
<!ENTITY python-md5 "c6c933c1a0db52597cb45a7910490f93">
<!ENTITY python-md5 "80c16badb94ffe235280d4d9a099b8bc">
<!ENTITY python-home "https://www.python.org/">
<!ENTITY python-tmp-du "603 MB">
<!ENTITY python-tmp-sbu "0.4 SBU">
<!ENTITY python-fin-du "530 MB">
<!ENTITY python-fin-sbu "2.2 SBU">
<!ENTITY python-docs-url "https://www.python.org/ftp/python/doc/&python-version;/python-&python-version;-docs-html.tar.bz2">
<!ENTITY python-docs-md5 "dc8310645d00143661062779196e551e">
<!ENTITY python-docs-size "8,194 KB">
<!ENTITY python-docs-md5 "2fbda851be0e4d4c4dad7bb8d1ff7e50">
<!ENTITY python-docs-size "10,339 KB">
<!ENTITY readline-version "8.2.13">
<!ENTITY readline-soversion "8.2"><!-- used for stripping -->
@ -637,10 +637,10 @@
<!ENTITY sed-fin-du "30 MB">
<!ENTITY sed-fin-sbu "0.3 SBU">
<!ENTITY setuptools-version "75.1.0">
<!ENTITY setuptools-size "1,317 KB">
<!ENTITY setuptools-version "75.6.0">
<!ENTITY setuptools-size "1,307 KB">
<!ENTITY setuptools-url "&pypi-src;/s/setuptools/setuptools-&setuptools-version;.tar.gz">
<!ENTITY setuptools-md5 "8e8aed1625afae37b59272ff981d6e1c">
<!ENTITY setuptools-md5 "94458e508bd8e9dc6e6d097fc8747cf0">
<!ENTITY setuptools-home "&pypi-home;/setuptools/">
<!ENTITY setuptools-fin-du "35 MB">
<!ENTITY setuptools-fin-sbu "less than 0.1 SBU">
@ -661,28 +661,28 @@
<!ENTITY sysklogd-fin-du "3.9 MB">
<!ENTITY sysklogd-fin-sbu "less than 0.1 SBU">
<!ENTITY systemd-version "256.5">
<!ENTITY systemd-version "257">
<!--<!ENTITY systemd-stable "6b4878d">-->
<!-- The above entity is used whenever we move to a stable backport branch.
In the event of a critical problem or kernel change that is incompatible,
we will switch to the backport branch until the next stable release. -->
<!ENTITY systemd-size "15,298 KB">
<!ENTITY systemd-size "15,805 KB">
<!ENTITY systemd-url "&github;/systemd/systemd/archive/v&systemd-version;/systemd-&systemd-version;.tar.gz">
<!--<!ENTITY systemd-url "&anduin-sources;/systemd-&systemd-version;-&systemd-stable;.tar.xz">-->
<!ENTITY systemd-md5 "846a8b47a235793d0f937dfc53cfb78f">
<!ENTITY systemd-md5 "a51c7f9ab0d8b0a08dcf14bea2b6a5cb">
<!ENTITY systemd-home "https://www.freedesktop.org/wiki/Software/systemd/">
<!ENTITY systemd-man-version "256.5">
<!ENTITY systemd-man-size "717 KB">
<!ENTITY systemd-man-version "257">
<!ENTITY systemd-man-size "732 KB">
<!--<!ENTITY systemd-man-url "&anduin-sources;/systemd-man-pages-&systemd-version;-&systemd-stable;.tar.xz">-->
<!ENTITY systemd-man-url "&anduin-sources;/systemd-man-pages-&systemd-man-version;.tar.xz">
<!ENTITY systemd-man-md5 "4965bf4bf74cb616ac394459158a5d27">
<!ENTITY systemd-man-md5 "ac0b54961b1f20474fdff0927bc8be14">
<!ENTITY systemd-fin-du "267 MB">
<!ENTITY systemd-fin-sbu "0.8 SBU">
<!ENTITY sysvinit-version "3.10">
<!ENTITY sysvinit-version "3.11">
<!ENTITY sysvinit-size "235 KB">
<!ENTITY sysvinit-url "&github;/slicer69/sysvinit/releases/download/&sysvinit-version;/sysvinit-&sysvinit-version;.tar.xz">
<!ENTITY sysvinit-md5 "b8fbe11062cf16d3b6a3709b7f6978d2">
<!ENTITY sysvinit-md5 "cb4e4bdabd902b774c4d66a85e1f6209">
<!ENTITY sysvinit-home "&savannah-nongnu;/projects/sysvinit">
<!ENTITY sysvinit-fin-du "2.8 MB">
<!ENTITY sysvinit-fin-sbu "less than 0.1 SBU">
@ -745,10 +745,10 @@
<!ENTITY util-linux-fin-du "315 MB">
<!ENTITY util-linux-fin-sbu "0.5 SBU">
<!ENTITY vim-version "9.1.0738">
<!ENTITY vim-version "9.1.0927">
<!-- <!ENTITY vim-majmin "90"> -->
<!ENTITY vim-docdir "vim/vim91">
<!ENTITY vim-size "17,673 KB">
<!ENTITY vim-size "17,906 KB">
<!ENTITY vim-url "https://github.com/vim/vim/archive/v&vim-version;/vim-&vim-version;.tar.gz">
<!-- N.B. LFS 9.0 uses
https://github.com/vim/vim/archive/v8.1.1846/vim-8.1.1846.tar.gz
@ -762,15 +762,15 @@
example, https://github.com/vim/vim/tags?after=v8.1.1847 will show
us v8.1.1846. -->
<!--<!ENTITY vim-url "&anduin-sources;/vim-&vim-version;.tar.gz">-->
<!ENTITY vim-md5 "afe52ff64b0a3dd3644ba4aecc48737c">
<!ENTITY vim-md5 "912f5a4303b2b779ba608b0d06f28aa8">
<!ENTITY vim-home "https://www.vim.org">
<!ENTITY vim-fin-du "245 MB">
<!ENTITY vim-fin-sbu "2.9 SBU">
<!ENTITY wheel-version "0.44.0">
<!ENTITY wheel-size "99 KB">
<!ENTITY wheel-version "0.45.1">
<!ENTITY wheel-size "106 KB">
<!ENTITY wheel-url "&pypi-src;/w/wheel/wheel-&wheel-version;.tar.gz">
<!ENTITY wheel-md5 "440ff4fe51579b7ed16f02af8f8d9494">
<!ENTITY wheel-md5 "dddc505d0573d03576c7c6c5a4fe0641">
<!ENTITY wheel-home "&pypi-home;/wheel/">
<!ENTITY wheel-fin-du "1.5 MB">
<!ENTITY wheel-fin-sbu "less than 0.1 SBU">
@ -783,10 +783,10 @@
<!ENTITY xml-parser-fin-du "2.4 MB">
<!ENTITY xml-parser-fin-sbu "less than 0.1 SBU">
<!ENTITY xz-version "5.6.2">
<!ENTITY xz-size "1,277 KB">
<!ENTITY xz-version "5.6.3">
<!ENTITY xz-size "1,298 KB">
<!ENTITY xz-url "https://github.com//tukaani-project/xz/releases/download/v&xz-version;/xz-&xz-version;.tar.xz">
<!ENTITY xz-md5 "bbf73fb28425cebb854328599f85c4cf">
<!ENTITY xz-md5 "57581b216a82482503bb63c8170d549c">
<!ENTITY xz-home "https://tukaani.org/xz">
<!ENTITY xz-tmp-du "20 MB">
<!ENTITY xz-tmp-sbu "0.1 SBU">

View File

@ -360,7 +360,7 @@ checking what linker to use... /mnt/lfs/tools/i686-lfs-linux-gnu/bin/ld</compute
<para>Next comes glibc. The most important
considerations for building glibc are the compiler, binary tools, and
kernel headers. The compiler and binary tools are generally not an issue
since glibc will always those relating to the <parameter>--host</parameter>
since glibc will always use those relating to the <parameter>--host</parameter>
parameter passed to its configure script; e.g., in our case, the compiler
will be <command>$LFS_TGT-gcc</command> and the <command>readelf</command>
tool will be <command>$LFS_TGT-readelf</command>. The kernel headers can

View File

@ -12,6 +12,10 @@
<!ENTITY binutils-loongarch-patch-md5 "a04da0c03fef8ef3fae780eefd7aa6a7">
<!ENTITY binutils-loongarch-patch-size "1.2 KB">
<!ENTITY binutils-upstream-patch "binutils-&binutils-version;-upstream_fix-1.patch">
<!ENTITY binutils-upstream-patch-md5 "eddd9860af589ec328541a9ec5e5928e">
<!ENTITY binutils-upstream-patch-size "18 KB">
<!ENTITY bzip2-docs-patch "bzip2-&bzip2-version;-install_docs-1.patch">
<!ENTITY bzip2-docs-patch-md5 "6a5ac7e89b791aae556de0f745916f7f">
<!ENTITY bzip2-docs-patch-size "1.6 KB">