2013-11-25 13:18:05 +01:00
|
|
|
|
#
|
|
|
|
|
# spec file for package xz
|
|
|
|
|
#
|
2022-04-12 17:35:29 +02:00
|
|
|
|
# Copyright (c) 2022 SUSE LLC
|
2013-11-25 13:18:05 +01:00
|
|
|
|
#
|
|
|
|
|
# All modifications and additions to the file contributed by third parties
|
|
|
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
|
|
|
# upon. The license for this file, and modifications and additions to the
|
|
|
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
|
|
|
# license for the pristine package is not an Open Source License, in which
|
|
|
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
|
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
|
|
|
# published by the Open Source Initiative.
|
|
|
|
|
|
2019-05-27 07:56:49 +02:00
|
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
2013-11-25 13:18:05 +01:00
|
|
|
|
#
|
|
|
|
|
|
|
|
|
|
|
2014-09-23 10:40:06 +02:00
|
|
|
|
# avoid bootstrapping problem
|
|
|
|
|
%define _binary_payload w9.bzdio
|
2013-11-25 13:18:05 +01:00
|
|
|
|
Name: xz
|
Accepting request 1007351 from home:CJ:branches:Base:System
- update to 5.2.7:
* liblzma:
- Add API doc note about the .xz decoder LZMA_MEMLIMIT_ERROR bug.
- Add dest and src NULL checks to lzma_index_cat.
The documentation states LZMA_PROG_ERROR can be returned from
lzma_index_cat. Previously, lzma_index_cat could not return
LZMA_PROG_ERROR. Now, the validation is similar to
lzma_index_append, which does a NULL check on the index
parameter.
- Fix copying of check type statistics in lzma_index_cat().
The check type of the last Stream in dest was never copied to
dest->checks (the code tried to copy it but it was done too late).
This meant that the value returned by lzma_index_checks() would
only include the check type of the last Stream when multiple
lzma_indexes had been concatenated.
In xz --list this meant that the summary would only list the
check type of the last Stream, so in this sense this was only
a visual bug. However, it's possible that some applications
use this information for purposes other than merely showing
it to the users in an informational message. I'm not aware of
such applications though and it's quite possible that such
applications don't exist.
Regular streamed decompression in xz or any other application
doesn't use lzma_index_cat() and so this bug cannot affect them.
- Stream decoder: Fix restarting after LZMA_MEMLIMIT_ERROR.
If lzma_code() returns LZMA_MEMLIMIT_ERROR it is now possible
to use lzma_memlimit_set() to increase the limit and continue
decoding. This was supposed to work from the beginning but
there was a bug. With other decoders (.lzma or threaded .xz)
this already worked correctly.
- lzma_filters_copy: Keep dest[] unmodified if an error occurs.
lzma_stream_encoder() and lzma_stream_encoder_mt() always assumed
this. Before this patch, failing lzma_filters_copy() could result
in free(invalid_pointer) or invalid memory reads in stream_encoder.c
or stream_encoder_mt.c.
To trigger this, allocating memory for a filter options structure
has to fail. These are tiny allocations so in practice they very
rarely fail.
Certain badness in the filter chain array could also make
lzma_filters_copy() fail but both stream_encoder.c and
stream_encoder_mt.c validate the filter chain before
trying to copy it, so the crash cannot occur this way.
- lzma_index_append: Add missing integer overflow check.
The documentation in src/liblzma/api/lzma/index.h suggests that
both the unpadded (compressed) size and the uncompressed size
are checked for overflow, but only the unpadded size was checked.
The uncompressed check is done first since that is more likely to
occur than the unpadded or index field size overflows.
- Vaccinate against an ill patch from RHEL/CentOS 7.
* xzgrep:
- Fix compatibility with old shells.
Turns out that some old shells don't like apostrophes (') inside
command substitutions. The problem was introduced by commits
69d1b3fc29677af8ade8dc15dba83f0589cb63d6 (2022-03-29),
bd7b290f3fe4faeceb7d3497ed9bf2e6ed5e7dc5 (2022-07-18), and
a648978b20495b7aa4a8b029c5a810b5ad9d08ff (2022-07-19).
5.2.6 is the only stable release that included
this problem.
* Translations: Add Turkish translation.
OBS-URL: https://build.opensuse.org/request/show/1007351
OBS-URL: https://build.opensuse.org/package/show/Base:System/xz?expand=0&rev=113
2022-10-05 10:45:20 +02:00
|
|
|
|
Version: 5.2.7
|
2014-09-23 10:40:06 +02:00
|
|
|
|
Release: 0
|
2017-07-11 09:24:06 +02:00
|
|
|
|
Summary: A Program for Compressing Files with the Lempel–Ziv–Markov algorithm
|
2021-06-07 17:24:28 +02:00
|
|
|
|
License: GPL-2.0-or-later AND LGPL-2.1-or-later AND SUSE-Public-Domain
|
2013-11-25 13:18:05 +01:00
|
|
|
|
Group: Productivity/Archiving/Compression
|
2022-04-12 17:35:29 +02:00
|
|
|
|
URL: https://tukaani.org/xz/
|
|
|
|
|
Source0: https://tukaani.org/xz/%{name}-%{version}.tar.gz
|
|
|
|
|
Source1: https://tukaani.org/xz/%{name}-%{version}.tar.gz.sig
|
2013-11-25 13:18:05 +01:00
|
|
|
|
Source2: baselibs.conf
|
2013-11-25 13:24:18 +01:00
|
|
|
|
# from http://tukaani.org/misc/lasse_collin_pubkey.txt#/xz.keyring
|
2013-11-25 13:18:05 +01:00
|
|
|
|
Source3: xz.keyring
|
2015-11-10 15:52:35 +01:00
|
|
|
|
Source4: xznew
|
|
|
|
|
Source5: xznew.1
|
2013-11-25 13:18:05 +01:00
|
|
|
|
BuildRequires: pkgconfig
|
2014-09-23 10:40:06 +02:00
|
|
|
|
Provides: lzma = %{version}
|
|
|
|
|
Obsoletes: lzma < %{version}
|
2017-06-25 19:03:45 +02:00
|
|
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
2013-11-25 13:18:05 +01:00
|
|
|
|
|
|
|
|
|
%description
|
2017-07-11 09:24:06 +02:00
|
|
|
|
The xz command is a program for compressing files.
|
|
|
|
|
* Average compression ratio of LZMA is about 30%% better than that of
|
|
|
|
|
gzip, and 15%% better than that of bzip2.
|
2013-11-25 13:18:05 +01:00
|
|
|
|
* Decompression speed is only little slower than that of gzip, being
|
2017-07-11 09:24:06 +02:00
|
|
|
|
two to five times faster than bzip2.
|
2013-11-25 13:18:05 +01:00
|
|
|
|
* In fast mode, compresses faster than bzip2 with a comparable
|
2017-07-11 09:24:06 +02:00
|
|
|
|
compression ratio.
|
2013-11-25 13:18:05 +01:00
|
|
|
|
* Achieving the best compression ratios takes four to even twelve
|
2017-07-11 09:24:06 +02:00
|
|
|
|
times longer than with bzip2. However, this does not affect
|
|
|
|
|
decompressing speed.
|
2013-11-25 13:18:05 +01:00
|
|
|
|
* Very similar command line interface to what gzip and bzip2 have.
|
|
|
|
|
|
2016-02-17 11:01:31 +01:00
|
|
|
|
%lang_package
|
2013-11-25 13:18:05 +01:00
|
|
|
|
|
|
|
|
|
%package -n liblzma5
|
2017-07-11 09:24:06 +02:00
|
|
|
|
Summary: Lempel–Ziv–Markov chain algorithm compression library
|
2019-05-27 07:56:49 +02:00
|
|
|
|
License: SUSE-Public-Domain
|
2013-11-25 13:18:05 +01:00
|
|
|
|
Group: System/Libraries
|
|
|
|
|
|
|
|
|
|
%description -n liblzma5
|
|
|
|
|
Library for encoding/decoding LZMA files.
|
|
|
|
|
|
|
|
|
|
%package devel
|
|
|
|
|
Summary: Development package for the LZMA library
|
2019-05-27 07:56:49 +02:00
|
|
|
|
License: SUSE-Public-Domain
|
2013-11-25 13:18:05 +01:00
|
|
|
|
Group: Development/Libraries/C and C++
|
|
|
|
|
Requires: liblzma5 = %{version}
|
2014-09-23 10:40:06 +02:00
|
|
|
|
Provides: lzma-devel = %{version}
|
|
|
|
|
Obsoletes: lzma-devel < %{version}
|
|
|
|
|
Provides: lzma-alpha-devel = %{version}
|
|
|
|
|
Obsoletes: lzma-alpha-devel < %{version}
|
2013-11-25 13:18:05 +01:00
|
|
|
|
|
|
|
|
|
%description devel
|
|
|
|
|
This package contains the header files and libraries needed for
|
|
|
|
|
compiling programs using the LZMA library.
|
|
|
|
|
|
2013-12-10 18:06:54 +01:00
|
|
|
|
%package static-devel
|
2013-11-25 13:24:18 +01:00
|
|
|
|
Summary: Static version of LZMA library
|
2019-05-27 07:56:49 +02:00
|
|
|
|
License: SUSE-Public-Domain
|
2013-11-25 13:24:18 +01:00
|
|
|
|
Group: Development/Libraries/C and C++
|
2014-09-23 10:40:06 +02:00
|
|
|
|
Requires: lzma-devel = %{version}
|
2013-11-25 13:24:18 +01:00
|
|
|
|
|
2013-12-10 18:06:54 +01:00
|
|
|
|
%description static-devel
|
2014-09-23 10:40:06 +02:00
|
|
|
|
Static library for the LZMA library
|
2013-11-25 13:24:18 +01:00
|
|
|
|
|
2013-11-25 13:18:05 +01:00
|
|
|
|
%prep
|
|
|
|
|
%setup -q
|
|
|
|
|
|
|
|
|
|
%build
|
2019-08-02 10:28:06 +02:00
|
|
|
|
%global _lto_cflags %{_lto_cflags} -ffat-lto-objects
|
2017-06-22 20:04:11 +02:00
|
|
|
|
export CFLAGS="%{optflags} -D_REENTRANT -pipe -fPIE"
|
2014-12-19 10:38:38 +01:00
|
|
|
|
export LDFLAGS="-Wl,-z,relro,-z,now -pie"
|
2013-11-25 13:24:18 +01:00
|
|
|
|
%configure \
|
2017-06-22 20:04:11 +02:00
|
|
|
|
--with-pic \
|
|
|
|
|
--docdir=%{_docdir}/%{name}
|
2017-06-25 19:03:45 +02:00
|
|
|
|
%if 0%{?do_profiling}
|
2021-06-07 17:24:28 +02:00
|
|
|
|
%make_build CFLAGS="${CFLAGS} %{cflags_profile_generate}"
|
|
|
|
|
%make_build
|
|
|
|
|
%make_build clean
|
|
|
|
|
%make_build CFLAGS="${CFLAGS} %{cflags_profile_feedback}"
|
2015-01-21 12:25:49 +01:00
|
|
|
|
%else
|
2021-06-07 17:24:28 +02:00
|
|
|
|
%make_build
|
2013-11-25 13:18:05 +01:00
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
%check
|
2021-06-07 17:24:28 +02:00
|
|
|
|
%make_build check
|
2013-11-25 13:18:05 +01:00
|
|
|
|
|
|
|
|
|
%install
|
2017-01-02 09:54:34 +01:00
|
|
|
|
%make_install
|
2017-06-22 20:04:11 +02:00
|
|
|
|
find %{buildroot} -type f -name "*.la" -delete -print
|
2013-11-25 13:18:05 +01:00
|
|
|
|
%find_lang %{name}
|
2017-06-22 20:04:11 +02:00
|
|
|
|
install -Dpm 0755 %{SOURCE4} %{buildroot}%{_bindir}/xznew
|
|
|
|
|
install -Dpm 0644 %{SOURCE5} %{buildroot}%{_mandir}/man1/xznew.1
|
2018-03-19 15:54:29 +01:00
|
|
|
|
rm -vf %{buildroot}%{_docdir}/%{name}/{COPYING,COPYING.GPLv2}
|
2013-11-25 13:18:05 +01:00
|
|
|
|
|
|
|
|
|
%post -n liblzma5 -p /sbin/ldconfig
|
|
|
|
|
%postun -n liblzma5 -p /sbin/ldconfig
|
|
|
|
|
|
2017-06-25 19:03:45 +02:00
|
|
|
|
%if 0%{?lang_package:1}
|
2013-11-25 13:18:05 +01:00
|
|
|
|
%files lang -f %{name}.lang
|
2020-03-25 09:21:28 +01:00
|
|
|
|
%{_mandir}/de/man1/*.1%{ext_man}
|
2017-06-25 19:03:45 +02:00
|
|
|
|
%endif
|
2013-11-25 13:18:05 +01:00
|
|
|
|
|
|
|
|
|
%files
|
2018-03-19 15:54:29 +01:00
|
|
|
|
%license COPYING COPYING.GPLv2
|
2014-09-23 10:40:06 +02:00
|
|
|
|
%{_docdir}/%{name}
|
2017-06-22 20:04:11 +02:00
|
|
|
|
%{_bindir}/lzcat
|
|
|
|
|
%{_bindir}/lzcmp
|
|
|
|
|
%{_bindir}/lzdiff
|
|
|
|
|
%{_bindir}/lzegrep
|
|
|
|
|
%{_bindir}/lzfgrep
|
|
|
|
|
%{_bindir}/lzgrep
|
|
|
|
|
%{_bindir}/lzless
|
|
|
|
|
%{_bindir}/lzma
|
|
|
|
|
%{_bindir}/lzmadec
|
|
|
|
|
%{_bindir}/lzmainfo
|
|
|
|
|
%{_bindir}/lzmore
|
|
|
|
|
%{_bindir}/unlzma
|
|
|
|
|
%{_bindir}/unxz
|
|
|
|
|
%{_bindir}/xz
|
|
|
|
|
%{_bindir}/xzcat
|
|
|
|
|
%{_bindir}/xzcmp
|
|
|
|
|
%{_bindir}/xzdec
|
|
|
|
|
%{_bindir}/xzdiff
|
|
|
|
|
%{_bindir}/xzegrep
|
|
|
|
|
%{_bindir}/xzfgrep
|
|
|
|
|
%{_bindir}/xzgrep
|
|
|
|
|
%{_bindir}/xzless
|
|
|
|
|
%{_bindir}/xzmore
|
|
|
|
|
%{_bindir}/xznew
|
|
|
|
|
%{_mandir}/man1/lzcat.1%{ext_man}
|
|
|
|
|
%{_mandir}/man1/lzcmp.1%{ext_man}
|
|
|
|
|
%{_mandir}/man1/lzdiff.1%{ext_man}
|
|
|
|
|
%{_mandir}/man1/lzegrep.1%{ext_man}
|
|
|
|
|
%{_mandir}/man1/lzfgrep.1%{ext_man}
|
|
|
|
|
%{_mandir}/man1/lzgrep.1%{ext_man}
|
|
|
|
|
%{_mandir}/man1/lzless.1%{ext_man}
|
|
|
|
|
%{_mandir}/man1/lzma.1%{ext_man}
|
|
|
|
|
%{_mandir}/man1/lzmadec.1%{ext_man}
|
|
|
|
|
%{_mandir}/man1/lzmainfo.1%{ext_man}
|
|
|
|
|
%{_mandir}/man1/lzmore.1%{ext_man}
|
|
|
|
|
%{_mandir}/man1/unlzma.1%{ext_man}
|
|
|
|
|
%{_mandir}/man1/unxz.1%{ext_man}
|
|
|
|
|
%{_mandir}/man1/xz.1%{ext_man}
|
|
|
|
|
%{_mandir}/man1/xzcat.1%{ext_man}
|
|
|
|
|
%{_mandir}/man1/xzcmp.1%{ext_man}
|
|
|
|
|
%{_mandir}/man1/xzdec.1%{ext_man}
|
|
|
|
|
%{_mandir}/man1/xzdiff.1%{ext_man}
|
|
|
|
|
%{_mandir}/man1/xzegrep.1%{ext_man}
|
|
|
|
|
%{_mandir}/man1/xzfgrep.1%{ext_man}
|
|
|
|
|
%{_mandir}/man1/xzgrep.1%{ext_man}
|
|
|
|
|
%{_mandir}/man1/xzless.1%{ext_man}
|
|
|
|
|
%{_mandir}/man1/xzmore.1%{ext_man}
|
|
|
|
|
%{_mandir}/man1/xznew.1%{ext_man}
|
Accepting request 994818 from home:dirkmueller:Factory
- update to 5.2.6 (CVE-2022-1271, bsc#1198062):
* xz:
- The --keep option now accepts symlinks, hardlinks, and
setuid, setgid, and sticky files.
- When copying metadata from the source file to the destination
file, don't try to set the group (GID) if it is already set
correctly. This avoids a failure on OpenBSD (and possibly on
a few other OSes) where files may get created so that their
group doesn't belong to the user, and fchown(2) can fail even
if it needs to do nothing.
- Cap --memlimit-compress to 2000 MiB instead of 4020 MiB on
MIPS32 because on MIPS32 userspace processes are limited
to 2 GiB of address space.
* liblzma:
- Fixed a missing error-check in the threaded encoder. If a
small memory allocation fails, a .xz file with an invalid
Index field would be created. Decompressing such a file would
produce the correct output but result in an error at the end.
Thus this is a "mild" data corruption bug. Note that while
a failed memory allocation can trigger the bug, it cannot
cause invalid memory access.
- The decoder for .lzma files now supports files that have
uncompressed size stored in the header and still use the
end of payload marker (end of stream marker) at the end
of the LZMA stream. Such files are rare but, according to
the documentation in LZMA SDK, they are valid.
doc/lzma-file-format.txt was updated too.
- Improved 32-bit x86 assembly files:
* Support Intel Control-flow Enforcement Technology (CET)
* Use non-executable stack on FreeBSD.
OBS-URL: https://build.opensuse.org/request/show/994818
OBS-URL: https://build.opensuse.org/package/show/Base:System/xz?expand=0&rev=111
2022-08-16 08:45:42 +02:00
|
|
|
|
%dir %{_mandir}/fr_FR
|
|
|
|
|
%dir %{_mandir}/fr_FR/man1
|
|
|
|
|
%{_mandir}/fr_FR/man1/lzcat.1%{ext_man}
|
|
|
|
|
%{_mandir}/fr_FR/man1/lzcmp.1%{ext_man}
|
|
|
|
|
%{_mandir}/fr_FR/man1/lzdiff.1%{ext_man}
|
|
|
|
|
%{_mandir}/fr_FR/man1/lzless.1%{ext_man}
|
|
|
|
|
%{_mandir}/fr_FR/man1/lzma.1%{ext_man}
|
|
|
|
|
%{_mandir}/fr_FR/man1/lzmadec.1%{ext_man}
|
|
|
|
|
%{_mandir}/fr_FR/man1/lzmore.1%{ext_man}
|
|
|
|
|
%{_mandir}/fr_FR/man1/unlzma.1%{ext_man}
|
|
|
|
|
%{_mandir}/fr_FR/man1/unxz.1%{ext_man}
|
|
|
|
|
%{_mandir}/fr_FR/man1/xz.1%{ext_man}
|
|
|
|
|
%{_mandir}/fr_FR/man1/xzcat.1%{ext_man}
|
|
|
|
|
%{_mandir}/fr_FR/man1/xzcmp.1%{ext_man}
|
|
|
|
|
%{_mandir}/fr_FR/man1/xzdec.1%{ext_man}
|
|
|
|
|
%{_mandir}/fr_FR/man1/xzdiff.1%{ext_man}
|
|
|
|
|
%{_mandir}/fr_FR/man1/xzless.1%{ext_man}
|
|
|
|
|
%{_mandir}/fr_FR/man1/xzmore.1%{ext_man}
|
2017-06-25 19:03:45 +02:00
|
|
|
|
%if 0%{!?lang_package:1}
|
|
|
|
|
%{_datadir}/locale/*/LC_MESSAGES/xz.mo
|
|
|
|
|
%endif
|
2013-11-25 13:18:05 +01:00
|
|
|
|
|
|
|
|
|
%files -n liblzma5
|
2017-06-22 20:04:11 +02:00
|
|
|
|
%{_libdir}/liblzma.so.5*
|
2013-11-25 13:18:05 +01:00
|
|
|
|
|
|
|
|
|
%files devel
|
2017-06-22 20:04:11 +02:00
|
|
|
|
%{_includedir}/lzma.h
|
|
|
|
|
%dir %{_includedir}/lzma/
|
|
|
|
|
%{_includedir}/lzma/*
|
|
|
|
|
%{_libdir}/liblzma.so
|
|
|
|
|
%{_libdir}/pkgconfig/liblzma.pc
|
2013-11-25 13:18:05 +01:00
|
|
|
|
|
2013-12-10 18:06:54 +01:00
|
|
|
|
%files static-devel
|
2017-06-22 20:04:11 +02:00
|
|
|
|
%{_libdir}/liblzma.a
|
2013-11-25 13:24:18 +01:00
|
|
|
|
|
2013-11-25 13:18:05 +01:00
|
|
|
|
%changelog
|