diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index f2cf47245..ae58b466f 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -40,6 +40,61 @@ appropriate for the entry or if needed the entire day's listitem. --> + + 2023-12-31 + + + [xry111] - Add --enable-default-hash-style=gnu configuring + binutils. Fixes + #5401. + + + [xry111] - Fix CVE-2023-7008 for systemd-255. Fixes + #5405. + + + [xry111] - Update to iana-etc-20231205. Addresses + #5006. + + + [xry111] - Update to tzdata-2023d. Fixes + #5399. + + + [xry111] - Update to linux-6.6.8. Fixes + #5397. + + + [xry111] - Update to meson-1.3.1. Fixes + #5402. + + + [xry111] - Update to grub-2.12. Fixes + #5396. + + + [xry111] - Update to inetutils-2.5. Fixes + #5404. + + + [xry111] - Update to setuptools-69.0.3. Fixes + #5400. + + + [xry111] - Update to xml-parser-2.47. Fixes + #5403. + + + [xry111] - Update to vim-9.0.2189. Addresses + #4500. + + + [xry111] - Update to autoconf-2.72. Fixes + #5398. + + + + 2023-12-16 diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml index bd97a81f0..e8002fcf6 100644 --- a/chapter01/whatsnew.xml +++ b/chapter01/whatsnew.xml @@ -32,9 +32,9 @@ - + @@ -116,18 +116,18 @@ - + Gzip-&gzip-version; Iana-Etc-&iana-etc-version; - + @@ -248,9 +248,9 @@ Texinfo-&texinfo-version; - + @@ -263,9 +263,9 @@ Wheel-&wheel-version; - + Xz-&xz-version; @@ -312,6 +312,10 @@ glibc-2.38-memalign_fix-1.patch + + grub-2.06-upstream_fixes-1.patch + + readline-8.2-upstream_fix-1.patch diff --git a/chapter03/patches.xml b/chapter03/patches.xml index 00628bda7..2073638fc 100644 --- a/chapter03/patches.xml +++ b/chapter03/patches.xml @@ -93,14 +93,6 @@ - - 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/chapter05/binutils-pass1.xml b/chapter05/binutils-pass1.xml index 039d36145..1ddea43ed 100644 --- a/chapter05/binutils-pass1.xml +++ b/chapter05/binutils-pass1.xml @@ -75,13 +75,15 @@ cd build --target=$LFS_TGT \ --disable-nls \ --enable-gprofng=no \ - --disable-werror + --disable-werror \ + --enable-default-hash-style=gnu ../configure --prefix=$LFS/tools \ --with-sysroot=$LFS \ --target=$LFS_TGT \ --disable-nls \ --enable-gprofng=no \ --disable-werror \ + --enable-default-hash-style=gnu \ --enable-multilib @@ -139,6 +141,22 @@ cd build + + --enable-default-hash-style=gnu + + By default, the linker would generate both the GNU-style + hash table and the classic ELF hash table for shared libraries and + dynamically linked executables. The hash tables are only intended + for a dynamic linker to perform symbol lookup. On LFS the dynamic + linker (provided by the Glibc package) will always use the + GNU-style hash table which is faster to query. So the classic + ELF hash table is completely useless. This makes the the linker + only generate the GNU-style hash table by default, so we can avoid + wasting time to generate the classic ELF hash table when we build + the packages, or wasting disk space to store it. + + + --enable-multilib diff --git a/chapter06/binutils-pass2.xml b/chapter06/binutils-pass2.xml index 398af98a0..6070d4c09 100644 --- a/chapter06/binutils-pass2.xml +++ b/chapter06/binutils-pass2.xml @@ -72,7 +72,8 @@ cd build --enable-shared \ --enable-gprofng=no \ --disable-werror \ - --enable-64-bit-bfd + --enable-64-bit-bfd \ + --enable-default-hash-style=gnu ../configure \ --prefix=/usr \ --build=$(../config.guess) \ @@ -82,6 +83,7 @@ cd build --enable-gprofng=no \ --disable-werror \ --enable-64-bit-bfd \ + --enable-default-hash-style=gnu \ --enable-multilib diff --git a/chapter08/autoconf.xml b/chapter08/autoconf.xml index 8b2afb168..120f31632 100644 --- a/chapter08/autoconf.xml +++ b/chapter08/autoconf.xml @@ -41,12 +41,6 @@ Installation of Autoconf - First, fix several problems with the tests caused by bash-5.2 and later: - - sed -e 's/SECONDS|/&SHLVL|/' \ - -e '/BASH_ARGV=/a\ /^SHLVL=/ d' \ - -i.orig tests/local.at - Prepare Autoconf for compilation: ./configure --prefix=/usr diff --git a/chapter08/binutils.xml b/chapter08/binutils.xml index 8697853e3..8ad023f27 100644 --- a/chapter08/binutils.xml +++ b/chapter08/binutils.xml @@ -57,7 +57,8 @@ cd build --enable-shared \ --disable-werror \ --enable-64-bit-bfd \ - --with-system-zlib + --with-system-zlib \ + --enable-default-hash-style=gnu ../configure --prefix=/usr \ --sysconfdir=/etc \ --enable-gold \ @@ -67,10 +68,11 @@ cd build --disable-werror \ --enable-64-bit-bfd \ --with-system-zlib \ + --enable-default-hash-style=gnu \ --enable-multilib - The meaning of the configure parameters: + The meaning of the new configure parameters: --enable-gold @@ -96,10 +98,10 @@ cd build - --enable-64-bit-bfd + --with-system-zlib - Enables 64-bit support (on hosts with narrower word sizes). - May not be needed on 64-bit systems, but does no harm. + Use the installed zlib library instead of building the + included version. @@ -110,14 +112,6 @@ cd build - - --with-system-zlib - - Use the installed zlib library instead of building the - included version. - - - Compile the package: diff --git a/chapter08/grub.xml b/chapter08/grub.xml index 357036c34..a89963189 100644 --- a/chapter08/grub.xml +++ b/chapter08/grub.xml @@ -62,13 +62,10 @@ - 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: + Add a file missing from the release tarball: -patch -Np1 -i ../grub-&grub-version;-upstream_fixes-1.patch +echo depends bli part_gpt > grub-core/extra_deps.lst Prepare GRUB for compilation: diff --git a/chapter08/systemd.xml b/chapter08/systemd.xml index 5f89813ee..024569484 100644 --- a/chapter08/systemd.xml +++ b/chapter08/systemd.xml @@ -48,6 +48,13 @@ sed -i -e 's/GROUP="render"/GROUP="video"/' \ -e 's/GROUP="sgx", //' rules.d/50-udev-default.rules.in + + Now fix a security vulnerability in the DNSSEC verification of + systemd-resolved: + +sed -e '/return FLAGS_SET.*AUTHENTICATED/s/(t/(dt/' \ + -i src/resolve/resolved-dns-transaction.c + Prepare systemd for compilation: mkdir -p build diff --git a/gen-changelog.py b/gen-changelog.py index e7ee1d7e7..3bf6bc064 100755 --- a/gen-changelog.py +++ b/gen-changelog.py @@ -76,6 +76,8 @@ for i in tsv: security.add(pkg) ticket[pkg] = tic +hold_ticket = {'vim': '4500', 'iana-etc': '5006'} + print("Plain Text:") for (s, act) in [(upd, "Update to "), (add, "Add ")]: for i in s: @@ -83,6 +85,8 @@ for (s, act) in [(upd, "Update to "), (add, "Add ")]: out = act + pkgver if pkgver in ticket: out += ' (#' + ticket[pkgver] + ')' + elif i in hold_ticket: + out += ' (#' + hold_ticket[i] + ')' print("-", out) for i in rem: print("-", "Remove", i) @@ -99,10 +103,18 @@ for (s, act) in [(upd, "Update to "), (add, "Add ")]: if pkgver in security: out += " (security fix)" out += "." + + pkg_ticket = None if pkgver in ticket: out += " Fixes\n " - out += "#" - out += ticket[pkgver] + "." + pkg_ticket = ticket[pkgver] + elif i in hold_ticket: + out += " Addresses\n " + pkg_ticket = hold_ticket[i] + + if pkg_ticket: + out += "#" + out += pkg_ticket + "." out += "" print(out) print(' ') diff --git a/packages.ent b/packages.ent index bcc0fe359..7bf3d94ec 100644 --- a/packages.ent +++ b/packages.ent @@ -29,10 +29,10 @@ - - + + - + @@ -299,10 +299,10 @@ - - + + - + @@ -317,18 +317,18 @@ - - + + - + - - + + - + @@ -440,12 +440,12 @@ - + - + - + - + - + @@ -763,10 +763,10 @@ - - + + - + diff --git a/patches.ent b/patches.ent index 13f291e0f..6c03b9728 100644 --- a/patches.ent +++ b/patches.ent @@ -18,10 +18,6 @@ - - - -