Update to iana-etc-20221025.
Update to tzdata-2022f.
Update to Python3-3.11.0.
Update to procps-ng-4.0.1.
Update to man-pages-6.01.
Update to man-db-2.11.0.
Update to make-4.4.
Update to linux-6.0.6.
Update to libffi-3.4.4.
Update to inetutils-2.4.
Update to expat-2.5.0.
Note: I had to run glibc in Chapter 8 at -j1 to avoid an apparant race
condition. With a little more investigation I may be able to find a
better solution.
RFC 3986:
URI = scheme ":" hier-part [ "?" query ] [ "#" fragment ]
hier-part = "//" authority path-abempty
/ path-absolute
/ path-rootless
/ path-empty
So "linuxfromscratch.org" is not a URI, nor "irc.libera.chat".
Update to iana-etc-20221007.
Update to vim-9.0.0739.
Add upstream patches to readline and bash.
Update to zlib-1.2.13.
Update to man-pages-6.00.
Update to gettext-0.21.1.
Update to iproute2-6.0.0.
Update to meson-0.63.3.
Update to Python-3.10.8.
Update to xz-5.2.7.
Update to tzdata-2022e.
Update to linux-6.0.1.
Update to dbus-1.14.4.
Update to Linux-5.19.13
If you are using a laptop with an Intel GPU, it's imperative that you
update immediately if you are running Linux-5.19.12. Failure to upgrade
may result in permanent damage to the LCD display on your laptop.
The root cause of this is improper backporting of bugfixes for the i915
DRM driver in the kernel.
Update to iana-etc-20220922.
Update to tzdata-2022d.
Update to readline-8.2.
Update to linux-5.19.11.
Update to libffi-3.4.3.
Update to libcap-2.66.
Update to dbus-1.14.2.
Update to bc-6.0.3.
Update to bash-5.2.
Some host create /dev/shm as a tmpfs. Some have is as
a symlink to a location in another directory. This
change handles both cases.
The change to the sysV bootscripts now creates /dev/shm
as a separate tmpfs from /run. This makes LFS sysV and
systemd versions treat /dev/shm the same.
Update to file-5.43.
Update to linux-5.19.8.
Update to gawk-5.2.0.
Update to meson-0.63.2.
Update to ninja-1.11.1.
Update to bc-6.0.2.
Fix the location of udev rules in eudev.
Remove a warning for egrep and fgrep that
Delete an empty binutils man page.
They are really harmful. In Binutils pass 2, libstdc++.la caused the
building system to use host /usr/lib/libstdc++.so for gprofng. We now
has disabled gprofng for pass 2, but the similar issue also exists in
GCC pass 2. In a normal LFS build, the building system silently uses
/usr/lib/libstdc++.so (I guess it does not blow up simply because some
blind luck); in a real cross build (x86 -> ARM for example) the build
will fail.
Remove the .la files to fix this issue. Instead of only modifying
clfs-ng, it makes more sense to apply the change for trunk: though
the build does not fail, using host library is still a contamination.
Presently we let the build system generate static C++ bindings, and
then we remove them. Note that we could also prevent generating
any C++ binding, since nothing in LFS/BLFS use them, but it seems to
me that generating the shared ones is closer to what is done for
other packages.
Change nobody/nogroup uid/git to 65534.
Update to meson-0.62.1.
Update to libpipeline-1.5.6.
Update to elfutils-0.187.
Update to Jinja2-3.1.2.
Update to vim-8.2.4814.
Update to sysvinit-3.03.
Update to linux-5.17.5.
Update to gcc-11.3.0.
Update to coreutils-9.1.
Update to bc-5.2.4.
Update to sysvinit-3.02.
Update to zlib-1.2.12.
Update to expat-2.4.8.
Update to Jinja2-3.1.1.
Update to Python-3.10.4.
Update to procps-ng-4.0.0.
Update to iproute2-5.17.0.
Update to meson-0.62.0.
Update to linux-5.17.1.
Update to util-linux-2.38.
* Update to Python-3.10.3 (#5028)
* Update to libtool-2.4.7 (#5029)
* Update to linux-5.16.16 (#5030)
* Update to tzdata-2022a (#5031)
* Update to man-db-2.10.2 (#5032)
* update to expat-2.4.7 (#5019)
* update to bc-5.2.3 (#5020)
* update to linux-5.16.14 (#5021)
* update to perl-5.34.1 (#5022)
* update to vim-8.2.4567 (#4500)
It should have been removed in 10.1, and in 11.0 there should have been
"the version of LFS has switched to a merged-/usr layout". But we just
forgot to update this all the time :).
Add binutils-2.38 LTO patch.
Update to util-linux-2.37.4.
Update to man-db-2.10.1.
Update to linux-5.16.9.
Update to vim-8.2.4383.
Update to iana-etc-20220207.
A very old libtool copy (2009-11-29) is shipped in binutils tarball. It
does not support sysroot, so the cross-built binutils binaries may link
to libraries from the host distro, if certain libraries are available.
The ideal solution should be updating libtool, as libtool-2.4.6 (in LFS)
has sysroot support. However, updating libtool for binutils is not
trivial: it would require to rerun autoconf and binutils building system
sticks to autoconf-2.69. Another issue is the sysroot support for
libtool has introduced a configure option "--with-sysroot", which
conflicts with an already existing option with the same name in
GCC and binutils building system (we are using the GCC/binutils version
of --with-sysroot in chapter 5).
GCC building system has --with-build-sysroot (we are using this for GCC
pass 2) for this issue. Binutils copied GCC building system, but it
does not respect --with-build-sysroot.
So for now we just edit libtool code to prevent "-L/usr/lib" in
$LFS_TGT_gcc command line. It should fix the issue about host libiberty
(reported in #lfs-support) as well, but it still need to be confirmed by
someone having such a host.
Tested with a jhalfs run on LFS.
In the new cross-compilation approach, the $PATH in chroot does not
contain '/tools/bin'. So "+h" is useless in chroot as the newly
installed tools always replace the temporary counterpart at the same
location.
"+h" in chapter4/settingenviron.xml is kept deliberately. Currently
$LFS/tools/bin only contains programs prefixed with
"x86_64-lfs-linux-gnu-", and it's highly unlikely that any distro will
ever ship a program named with such prefix. So it may seems that we can
remove this "+h" as well. However, the situation may change in future
and we can take this oppertunity to teach the advantage and disvantage
of bash hash feature.
Add coreutils-9.0 chmod patch.
Update to glibc-2.35.
Update to linux-5.16.5.
Update to findutils-4.9.0.
Update to expat-2.4.4.
Update to iana-etc-20220128.
Update to vim-8.2.4236.
Update to zstd-1.5.2.
Update to util-linux-2.37.3 (security fix).
Update to Python-3.10.2.
Update to linux-5.16.2.
Update to libcap-2.63.
Update to iproute2-5.16.0.
Update to iana-etc-20220120.
Update to e2fsprogs-1.46.5.
Update to zstd-1.5.1.
Update to expat-2.4.2.
Update to shadow-4.10.
Update to sysvinit-3.01.
Update to linux-5.15.12.
Update to iana-etc-20211224.
Update to openssl-3.0.1.
Update to eudev-3.2.11.
Update lfs-latest-git.php currency for new eudev location.
Update to systemd-250 (BLFS coming shortly)
Update to meson-0.60.3
Kernel Configuration: Enable the framebuffer since it's disabled by
default in Linux-5.15.
Kernel Configuration: Add a note about CONFIG_DEFAULT_HOSTNAME on
systemd.
Update to iana-etc-20211112.
Update to elfutils-0.186.
Update to jinja2-3.0.3.
Update to bc-5.2.0.
Update to ncurses-6.3.
Update to libpipeline-1.5.4.
Update to meson-0.60.1.
Update to iproute2-5.15.0.
Update to linux-5.15.2.
One change was needed to systemd-249 due to changes in the linux
keernel version 5.14 and later.
A change to ncurses was needed to ensure the .pc files are placed in
the right location (/usr/lib/pkgconfig).
Update to gawk-5.1.1.
Update to meson-0.60.0.
Update to libcap-2.60.
Update to gdbm-1.22.
Update to file-5.41.
Update to linux-5.14.15.
Update to iana-etc-20211025.
Update to tzdata-2021e.
Change /bin to /usr/bin in passwd, and revisedchroot.
Fix systemd for new meson.
Update to vim-8.2.3508.
Update to tzdata-2021c.
Update to Python-3.10.0.
Update to Jinja2-3.0.2.
Update to linux-5.14.12.
Update to iana-etc-20211004.
Update to bc-5.1.1.
Update to automake-1.16.5.
Update to vim-8.2.3458.
Update to iana-etc-20210924.
Update to tzdata-2021b.
Update to sysvinit-3.0.0.
Update to meson-0.59.2.
Update to linux-5.14.8.
Update to libcap-2.59.
Update to coreutils-9.0.
Update to bison-3.8.2.
Ensure tcl documentation install instructions are present.
Update to Python3-3.9.7.
Update to linux-5.14.3.
Update to libcap-2.57.
Update to iproute2-5.14.0.
Update to inetutils-2.2.
Update to gzip-1.11.
Update to gdbm-1.21.
Update to bison-3.8.1.
Update to bc-5.0.2.
LFS-11.0-rc3 released.
Update to e2fsprogs-1.46.4.
Update to meson-0.59.1.
Update to util-linux 2.37.2.
Update to linux-5.13.12.
Update to libcap-2.53.
Update to GCC-11.2.0 (#4883)
Update to inetutils-2.1 (#4892)
Update to automake-1.16.4 (#4894)
SHA256 checksum entities for the three packages are added. I think we
can start a transition to SHA256 now.
The behavior of --strip-unneeded and --strip-all are same for
executables and shared libraries. For static libraries,
--strip-unneeded keeps the symbols needed for relocation processing so
it won't break static archives.
Glibc loads these "NSS modules" (see man 5 nss) on startup. This is
implemented with something like dlopen() so "ldd" won't show them up.
So they should be considered "online" here.
Without this addition, overwriting libnss_files-2.33.so reproducibly
triggers a crash during jhalfs runs where stripping is enabled. In
manual builds, it reproducibly triggers a crash exiting from chroot.
After this change I reran stripping 5 times and there was no crash
observed.
In stripping, /usr/bin/bash, /usr/bin/find, and /usr/bin/strip are
running. Strip them, and all libraries used by them in /tmp, then
install them back.
We can't use this for all libraries or binaries: the process above
discouples hard links (for example /usr/bin/perl and perl5.34.0). So
unfortunately the stripping instruction is now a stupidly long bash
script...
Add MarkupSafe
Add Jinja2
Update to texinfo-6.8
Update to iproute2-5.13.0
Update to Python-3.9.6 (Security Update)
Update to systemd-249 (Security Update)
Update to Linux-5.13.1
Update to iana-etc-20210611.
Update to vim-8.2.3001.
Update to util-linux-2.37.
Update to meson-0.58.1.
Update to linux-5.12.10.
Update to m4-1.4.19.
Update to grub-2.06.
SysV only.
When stopping or rebooting the system, the network boot script is run and looks
at all the /etc/sysconfig/ifconfig.* files. Some of the devices these files
refer to may not be active or even refer to interfaces that are not defined on
the current system. This change ignores non-existant interfaces and any
interfaces that are not UP. This change also avoids bogus warning or error
error messages when the system is shutting down.