]> git.ipfire.org Git - people/mfischer/ipfire-2.x.git/commit
xz: Update to version 5.8.0
authorAdolf Belka <adolf.belka@ipfire.org>
Mon, 31 Mar 2025 13:15:55 +0000 (15:15 +0200)
committerMichael Tremer <michael.tremer@ipfire.org>
Mon, 31 Mar 2025 15:20:10 +0000 (15:20 +0000)
commitd32897e39727502a0957d5cc7b0dd88445f9a9a5
tree9bf5e981a0bc06e5f0ac23a656a9535334f9bf06
parentee688ea061b242eb9eaf61d7c406fda5a957addc
xz: Update to version 5.8.0

- Update from version 5.6.3 to 5.8.0
- branch 5.8 is the new stable branch. Branch 5.6 from now on will only get critical
   fixes, there will be no new releases on that old branch.
- Update of rootfile
- Changlog
    5.8.0
This bumps the minor version of liblzma because new features were
 added. The API and ABI are still backward compatible with liblzma
 5.6.x, 5.4.x, 5.2.x, and 5.0.x.
    * liblzma on 32/64-bit x86: When possible, use SSE2 intrinsics
      instead of memcpy() in the LZMA/LZMA2 decoder. In typical cases,
      this may reduce decompression time by 0-5 %. However, when built
      against musl libc, over 15 % time reduction was observed with
      highly compressed files.
    * CMake: Make the feature test macros match the Autotools-based
      build on NetBSD, Darwin, and mingw-w64.
    * Update the Croatian, Italian, Portuguese, and Romanian
      translations.
    * Update the German, Italian, Korean, Romanian, Serbian, and
      Ukrainian man page translations.
Summary of changes in the 5.7.x development releases:
    * Mark the following LZMA Utils script aliases as deprecated:
      lzcmp, lzdiff, lzless, lzmore, lzgrep, lzegrep, and lzfgrep.
    * liblzma:
        - Improve LZMA/LZMA2 encoder speed on 64-bit PowerPC (both
          endiannesses) and those 64-bit RISC-V processors that
          support fast unaligned access.
        - Add low-level APIs for RISC-V, ARM64, and x86 BCJ filters
          to lzma/bcj.h. These are primarily for erofs-utils.
        - x86/x86-64/E2K CLMUL CRC code was rewritten.
        - Use the CRC32 instructions on LoongArch.
    * xz:
        - Synchronize the output file and its directory using fsync()
          before deleting the input file. No syncing is done when xz
          isn't going to delete the input file.
        - Add --no-sync to disable the sync-before-delete behavior.
        - Make --single-stream imply --keep.
    * xz, xzdec, lzmainfo: When printing messages, replace
      non-printable characters with question marks.
    * xz and xzdec on Linux: Support Landlock ABI versions 5 and 6.
    * CMake: Revise the configuration variables and some of their
      options, and document them in the file INSTALL. CMake support
      is no longer experimental. (It was already not experimental
      when building for native Windows.)
    * Add build-aux/license-check.sh.
    5.6.4
    * liblzma: Fix LZMA/LZMA2 encoder on big endian ARM64.
    * xz:
        - Fix --filters= and --filters1= ... --filters9= options
          parsing. They require an argument, thus "xz --filters lzma2"
          should work in addition to "xz --filters=lzma2".
        - On the man page, note in the --compress and --decompress
          options that the default behavior is to delete the input
          file unless writing to standard output. It was already
          documented in the DESCRIPTION section but new users in
          a hurry might miss it.
    * Windows (native builds, not Cygwin): Fix regressions introduced
      in XZ Utils 5.6.3 which caused non-ASCII characters to display
      incorrectly. Only builds with translation support were affected
      (--enable-nls or ENABLE_NLS=ON). The following changes affect
      builds that have translations enabled:
        - Require UCRT because MSVCRT doesn't support UTF-8
          locales and thus translations won't be readable on
          Windows 10 version 1903 and later. (MSVCRT builds
          are still possible with --disable-nls or ENABLE_NLS=OFF.)
        - Require gettext-runtime >= 0.23.1 because older versions
          don't autodetect the use of the UTF-8 code page. This
          resulted in garbled non-ASCII characters even with UCRT.
        - Partially fix alignment issues in xz --verbose --list
          with translated messages. Chinese (simplified),
          Chinese (traditional), and Korean column headings
          are misaligned still because Windows and MinGW-w64
          don't provide wcwidth() and XZ Utils doesn't include
          a replacement function either.
    * CMake: Explicitly disable unity builds. This prevents build
      failures when another project uses XZ Utils via CMake's
      FetchContent module, and that project enables unity builds.
    * Update Chinese (traditional) and Serbian translations.

Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
config/rootfiles/common/xz
lfs/xz