7zip/7zip.spec
Danilo Spinella c93a18fc42 Accepting request 986503 from home:elimat:branches:Archiving
- Update to version 22.00: 
  * 7-Zip now can extract APFS (Apple File System) images that can be used in DMG files.
  * 7-Zip now can create TAR archives in POSIX (pax) tar format with the switches
    -ttar -mm=pax or -ttar -mm=posix
  * 7-Zip now can store additional file timestamps with high precision (1 ns in Linux) 
    in tar/pax archives with the following switches:
    -ttar -mm=pax -mtp=3 -mtc -mta
  * New switches for Linux version for TAR archives:
    -snoi : store owner/group ids in archive or set owner/group ids from archive to extracted files. 
    -snon : store owner/group names in archive
  * New -snz switch to propagate Zone.Identifier stream to extracted files (Windows).
  * New option "Propagate Zone.Id stream" in Tools/Options/7-Zip menu.
  * New "Options" window in "Add to archive" allows to select what metadata must be 
    included to archive. Also it allows to select new option 
    "Do not change source files last access time".
  * Some bugs were fixed.

OBS-URL: https://build.opensuse.org/request/show/986503
OBS-URL: https://build.opensuse.org/package/show/Archiving/7zip?expand=0&rev=11
2022-07-04 08:37:11 +00:00

91 lines
3.0 KiB
RPMSpec

#
# spec file for package 7zip
#
# Copyright (c) 2022 SUSE LLC
#
# 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.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define stripped_version 2200
Name: 7zip
Version: 22.00
Release: 0
Summary: File Archivier
# CPP/7zip/Compress/LzfseDecoder.cpp is under the BSD-3-Clause
# C/Sha1.c and C/Sha256.c are in the public domain
License: BSD-3-Clause AND LGPL-2.1-or-later AND SUSE-Public-Domain
Group: Productivity/Archiving/Compression
URL: https://www.7-zip.org/
Source: https://www.7-zip.org/a/7z%{stripped_version}-src.tar.xz
Source1: p7zip
Source2: p7zip.1
Patch0: fix-compatib-with-p7zip.patch
BuildRequires: dos2unix
BuildRequires: gcc
BuildRequires: gcc-c++
Conflicts: p7zip
Conflicts: p7zip-full
Provides: p7zip = %{version}
Provides: p7zip-full = %{version}
Obsoletes: p7zip < %{version}
Obsoletes: p7zip-full < %{version}
%description
This package contains the 7z command line utility for archiving and
extracting various formats.
%prep
tar xaf %{SOURCE0}
%patch0 -p1
dos2unix DOC/*.txt
# Remove executable perms from docs
chmod -x DOC/*.txt
# Remove -Werror to make build succeed
sed -i 's/-Werror//' CPP/7zip/7zip_gcc.mak
%if 0%{?suse_version} < 1550
# (gcc 7.x) Remove -Waddress-of-packed-member to make build succeed
sed -i -e 's/-Waddress-of-packed-member//' -e 's/-Wcast-align=strict//' C/warn_gcc.mak CPP/7zip/warn_gcc.mak
%endif
# Inject CFLAGS
sed -i 's/^ -fPIC/ -fPIC %{optflags}/' CPP/7zip/7zip_gcc.mak
%build
cd CPP/7zip//Bundles/Alone2
%make_build -f ../../cmpl_gcc.mak DISABLE_RAR_COMPRESS=1
%install
install -d -m 755 %{buildroot}%{_bindir}
install -Dt %{buildroot}%{_bindir} CPP/7zip/Bundles/Alone2/b/g/7zz
# Create links the executables provided by p7zip
ln -s %{_bindir}/7zz %{buildroot}%{_bindir}/7z
ln -s %{_bindir}/7z %{buildroot}%{_bindir}/7za
ln -s %{_bindir}/7z %{buildroot}%{_bindir}/7zr
# Install p7zip wrapper and its manpage
install -m755 %{SOURCE1} %{buildroot}%{_bindir}/p7zip
install -m644 -Dt %{buildroot}%{_mandir}/man1 %{SOURCE2}
# Remove a mention of the p7zip-rar package that we don't have
sed -i 's/RAR (if the non-free p7zip-rar package is installed)//g' %{buildroot}%{_mandir}/man1/p7zip.1
%files
%license DOC/copying.txt DOC/License.txt
%doc DOC/readme.txt DOC/7zC.txt DOC/Methods.txt DOC/src-history.txt
%{_bindir}/7z
%{_bindir}/7za
%{_bindir}/7zr
%{_bindir}/7zz
%{_bindir}/p7zip
%{_mandir}/man1/p7zip.1%{?ext_man}
%changelog