Merge upstream#6
Open
MymeType wants to merge 94 commits into
Open
Conversation
Update to meson-1.11.0. Move intltool and XML-Parser to BLFS. Update to vim-9.1.0340 (Security Update). Update to util-linux-2.42 (Security Update). Update to sqlite-3.53.0. Update to Python3-3.14.4 (Security Update). Update to openssl-3.6.2 (Security Update). Update to linux-6.19.12. Update to libcap-2.78 (Security Update). Update to iana-etc-20260409.
So that jhalfs is able to replace it with something
The bug only affects BIOS. So if the user has not built grub for BIOS, (s)he won't use BIOS and the sed is not needed; if the user has built grub for BIOS, the sed should have been already executed when (s)he was building grub for BIOS. So in either case, we don't need to repeat the sed in the EFI sections.
Defining UGA as "UGA Draw Protocol" seems an infinite recursion.
Now 5.4 is EOL per https://www.kernel.org/category/releases.html.
…stem Technically the swap partition does not contain a file system, thus "formatting" seems puzzling. And the next section is using a better terminology "initialized" (copied from the man page of mkswap).
There's only one section (BIOS) before 64-bit UEFI.
Update to wheel-0.47.0 (Python module). Update to tzdata2026b. Update to sed-4.10. Update to packaging-26.2 (Python module). Update to mpc-1.4.1. Update to meson-1.11.1. Update to vim-9.2.0421 (Security Update). Update to man-pages-6.18. Update to iproute2-7.0.0. Update to inetutils-2.8. Update to expat-2.8.0 (Security Update). Update to elfutils-0.195 (libelf). Update to coreutils-9.11. Update to iana-etc-20260424.
- Use "firmware setup" instead of "BIOS": in the context of the grub page "BIOS" almost always means "MBR boot," but here it means the firmware setup interface. - We may manipulate any EFI variable (unless the firmware makes it read only) by directly writing the efivarfs, but GRUB needs efibootmgr. - We don't necessarily install LFS into the same disk where ESP exists.
"UEFI bootloaders" normally stands for things like GRUB or systemd-boot, instead of firmware. And it seems we are using "standard" location instead of "hardcoded" location elsewhere.
Fix the explanation for CSM (here M stands for Module, not Mode). Keep the terminology "BIOS" soly for "booting via MBR" and use "firmware" instead for other purposes.
Make the commands more concise, and remove the explicit GCC version number to make people easier trying a new GCC version.
The problematic test has been removed by upstream. Link: https://cgit.git.savannah.gnu.org/cgit/inetutils.git/commit/?id=556621adc3dc
The kernel itself already guarantees the order of [eou]hci_hcd since Linux 3.13 (12 years ago!). Link: https://git.kernel.org/torvalds/c/05c92da0c52494ca
Twice in the past span of a year, Arch Linux has updates to new versions of software rather quickly that causes LFS to be impossible without modifications. The first instance was updating to GCC-15.1, of which that disaster may be repeated with GCC-16.1. The second, most recent, instance is that they updated to Linux-7. This changed behavior of rseq, tables, and the ABI feature from 32 to 33, which messes with Glibc, meaning users will need to use a host that has Linux <= 6.19.x for now. This distructive nature needs to be explained to the users to help to prevent them from using broken hosts. So many issues have popped up over on Discord and Reddit, and as an aside and personal vent, I've been getting pretty tired of it each time Arch pulls off something like this when it clearly isn't time yet. The Gentoo GUI LiveCD (and Gentoo itself in general) is a good example of how to treat the software set, and too not update too early.
Stupid I.
…d /usr/share/doc/bash is left around.
The effect is the same, but systemctl mask is more declarative and it's better to show an example of that.
In chapter09/systemd-custom.xsl the creation of a symlink for /etc/systemd/system/tmp.mount was removed. That makes the warning about creating the symlink when /tmp is a separate partition no longer needed. This commit also corrects a a very minor typo in a comment.
Doing so is not strictly needed but it improves the consistency and saves some CPU cycles building LFS. It may also potentially avoid a build failure in case GCC pass 2 fixincludes breaks a pattern in a header from some release of glibc or kernel.
Update to binutils-2.46.1. Update to file-5.48. Update to less-704. Update to linux-7.0.12. Update to openssl-4.0.1. Update to Python3-3.14.6. Update to sqlite-autoconf-3.53.2. Update to vim-9.2.0640 (Security Update).
Add tar-1.35-acl_fix-1.patch. Add Python3-3.14.6 consolidated fixes (Security patch). Update to attr-2.6.0 (Security Update). Update to acl-2.4.0 (Security Update). Update to expat-2.8.2 (Security Update). Update to iana-etc-20260617. Update to iproute2-7.1.0. Update to libffi-3.6.0. Update to linux-7.1.1. Update to sqlite-autoconf-3.53.3. Update to systemd-261. Update to util-linux-2.42.2 (Security Update). Update to vim-9.2.0752 (Security Update).
Also copied patch to its location on rivendell
Now the default is to use all available cores (in case we are building in a cgroup via jhalfs, the number of available cores is counted as the number of cores assigned to the cgroup).
They are databases for subordinate user and group IDs, which are useful for rootless containers like podman (well, it's beyond BLFS but maybe users will install it on BLFS anyway). If those files exist, useradd, groupadd, and etc. will automatically manage their contents; otherwise the user will create them (following the podman doc) and manage their contents for already created users/groups manually. Doing so would be more error-prune than the automatic handling, and also inconsistent (the new user and groups will have the subordinate IDs automatically, but the existing user and groups will not). So for convinence and consistency, create them and let the Shadow utilities to manage them.
The suffixes are changed in the 2.4.0 release.
Add mpdecimal-4.0.1. Update to tzdata-2026c. Update to setuptools-83.0.0. Update to pkgconf-3.0.2. Update to meson-1.11.2. Update to libffi-3.7.1. Update to linux-7.1.3. Update to gawk-5.4.1. Update to findutils-4.11.0.
Those stylesheets selected download urls by seeking some pattern in their content. Those patterns may need to be adjusted if a new type of file is downloaded. We prefer to seek urls inside <para> containing "Download", which is the norm in chapter 3. The condition is also that those <para> are in a <listitem>.
In a normal GCC build the top-level Makefile automatically sets the CXX=xgcc. And without it the "checking for sin in -lm" probe will fail, and then GCC will believe the math functions (for example acosf) are not available and fail to build std.gcm (added since GCC 16) with about a dozen lines of error messages, which would likely disconcert the user if spotted.
I don't know why but with the libxml2-2.15.3 shipped with the current
BLFS, --postvalid alone does not produce a meaningful message for some
errors. For example, with an incorrect xref linkend:
Creating and cleaning /home/xry111/tmp
Processing bootscripts...
Adjusting for revision systemd...
Validating the book...
Document /home/xry111/tmp/lfs-html2.xml does not validate
make: *** [Makefile:125:validate] Error 3
It really says nothing. Adding --valid produces a meaningful message
before the "does not validate" line:
/home/xry111/tmp/lfs-html2.xml:2958: element xref: validity error : IDREF attribute linkend references an unknown ID "ch-botable-grub"
I don't really understand this but there seems no harm to just add
--valid.
…mount option check as well
Technically a binary built with the cross tools for $LFS_TGT should always be inspected with such a cross tools as well.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.