diff --git a/.cvsignore b/.cvsignore deleted file mode 100644 index e69de29..0000000 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c004734 --- /dev/null +++ b/.gitignore @@ -0,0 +1,6 @@ +/p7zip_9.13_src_all-norar.tar.bz2 +/p7zip_9.20.1_src_all-norar.tar.bz2 +/p7zip_15.09_src_all-norar.tar.bz2 +/p7zip_15.14_src_all-norar.tar.bz2 +/p7zip_15.14.1_src_all-norar.tar.bz2 +/p7zip_16.02_src_all-norar.tar.bz2 diff --git a/02-man.patch b/02-man.patch new file mode 100644 index 0000000..909a44e --- /dev/null +++ b/02-man.patch @@ -0,0 +1,22 @@ +--- p7zip_16.02/man1/7z.1.orig 2018-02-04 03:47:31.934553305 +0000 ++++ p7zip_16.02/man1/7z.1 2018-02-04 03:54:22.504752021 +0000 +@@ -12,7 +12,7 @@ + .SH DESCRIPTION + 7-Zip is a file archiver supporting 7z (that implements LZMA compression algorithm + featuring very high compression ratio), LZMA2, XZ, ZIP, Zip64, CAB, +-RAR (if the non-free p7zip-rar package is installed), ARJ, GZIP, BZIP2, TAR, CPIO, RPM, ISO, ++RAR (it was removed due a non-free license), ARJ, GZIP, BZIP2, TAR, CPIO, RPM, ISO, + most filesystem images and DEB formats. + Compression ratio in the new 7z format is 30-50% better than ratio in ZIP format. + .PP +--- p7zip_16.02/man1/7za.1.orig 2018-02-04 03:53:54.243463005 +0000 ++++ p7zip_16.02/man1/7za.1 2018-02-04 03:55:12.645264785 +0000 +@@ -12,7 +12,7 @@ + .SH DESCRIPTION + 7-Zip is a file archiver supporting 7z (that implements LZMA compression algorithm + featuring very high compression ratio), LZMA2, XZ, ZIP, Zip64, CAB, +-RAR (if the non-free p7zip-rar package is installed), ARJ, GZIP, BZIP2, TAR, CPIO, RPM, ISO, ++RAR (it was removed due a non-free license), ARJ, GZIP, BZIP2, TAR, CPIO, RPM, ISO, + most filesystem images and DEB formats. + Compression ratio in the new 7z format is 30-50% better than ratio in ZIP format. + .PP diff --git a/05-hardening-flags.patch b/05-hardening-flags.patch new file mode 100644 index 0000000..aa42431 --- /dev/null +++ b/05-hardening-flags.patch @@ -0,0 +1,33 @@ +From: Robert Luberda +Date: Fri, 22 Jan 2016 00:53:09 +0100 +Subject: Hardening flags + +Add support for $(CPPFLAGS) and do not override $(CXXFLAGS) +and $(CFLAGS) + +Bug-Debian: https://bugs.debian.org/#682167 +--- + makefile.glb | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/makefile.glb b/makefile.glb +index fb001d5..e10ae03 100644 +--- a/makefile.glb ++++ b/makefile.glb +@@ -1,14 +1,14 @@ + + RM=rm -f + +-CFLAGS=-c -I. \ ++CFLAGS+=$(CPPFLAGS) -c -I. \ + -I../../../../C \ + -I../../../../CPP/myWindows \ + -I../../../../CPP/include_windows \ + -I../../../../CPP \ + $(ALLFLAGS) $(ALLFLAGS_C) + +-CXXFLAGS=-c -I. \ ++CXXFLAGS+=$(CPPFLAGS) -c -I. \ + -I../../../../C \ + -I../../../../CPP/myWindows \ + -I../../../../CPP/include_windows \ diff --git a/14-Fix-g++-warning.patch b/14-Fix-g++-warning.patch new file mode 100644 index 0000000..226e239 --- /dev/null +++ b/14-Fix-g++-warning.patch @@ -0,0 +1,24 @@ +From: Robert Luberda +Date: Sun, 28 Jan 2018 22:19:13 +0100 +Subject: Fix g++ warning + +Fix for "use of an operand of type 'bool' in 'operator++' +is deprecated [-Wdeprecated]" warning taken from 7zip 18.00.beta +package. +--- + CPP/7zip/Archive/Wim/WimHandler.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/CPP/7zip/Archive/Wim/WimHandler.cpp b/CPP/7zip/Archive/Wim/WimHandler.cpp +index 27d3298..4ff5cfe 100644 +--- a/CPP/7zip/Archive/Wim/WimHandler.cpp ++++ b/CPP/7zip/Archive/Wim/WimHandler.cpp +@@ -298,7 +298,7 @@ STDMETHODIMP CHandler::GetArchiveProperty(PROPID propID, PROPVARIANT *value) + + AString res; + +- bool numMethods = 0; ++ unsigned numMethods = 0; + for (unsigned i = 0; i < ARRAY_SIZE(k_Methods); i++) + { + if (methodMask & ((UInt32)1 << i)) diff --git a/CVE-2016-9296.patch b/CVE-2016-9296.patch new file mode 100644 index 0000000..773f92a --- /dev/null +++ b/CVE-2016-9296.patch @@ -0,0 +1,12 @@ +--- ./CPP/7zip/Archive/7z/7zIn.cpp.orig 2016-11-21 01:42:29.460901230 +0000 ++++ ./CPP/7zip/Archive/7z/7zIn.cpp 2016-11-21 01:42:57.481197725 +0000 +@@ -1097,7 +1097,8 @@ HRESULT CInArchive::ReadAndDecodePackedS + if (CrcCalc(data, unpackSize) != folders.FolderCRCs.Vals[i]) + ThrowIncorrect(); + } +- HeadersSize += folders.PackPositions[folders.NumPackStreams]; ++ if (folders.PackPositions) ++ HeadersSize += folders.PackPositions[folders.NumPackStreams]; + return S_OK; + } + diff --git a/CVE-2017-17969.patch b/CVE-2017-17969.patch new file mode 100644 index 0000000..ebc0ac9 --- /dev/null +++ b/CVE-2017-17969.patch @@ -0,0 +1,26 @@ +From 79bca880ce7bcf07216c45f93afea545e0344418 Mon Sep 17 00:00:00 2001 +From: aone +Date: Mon, 5 Feb 2018 13:01:09 +0100 +Subject: [PATCH] Security fix CVE-2017-17969 + +--- + CPP/7zip/Compress/ShrinkDecoder.cpp | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/CPP/7zip/Compress/ShrinkDecoder.cpp b/CPP/7zip/Compress/ShrinkDecoder.cpp +index 80b7e67..5bb0559 100644 +--- a/CPP/7zip/Compress/ShrinkDecoder.cpp ++++ b/CPP/7zip/Compress/ShrinkDecoder.cpp +@@ -121,7 +121,12 @@ HRESULT CDecoder::CodeReal(ISequentialInStream *inStream, ISequentialOutStream * + { + _stack[i++] = _suffixes[cur]; + cur = _parents[cur]; ++ if (cur >= kNumItems || i >= kNumItems) ++ break; + } ++ ++ if (cur >= kNumItems || i >= kNumItems) ++ break; + + _stack[i++] = (Byte)cur; + lastChar2 = (Byte)cur; diff --git a/Makefile b/Makefile deleted file mode 100644 index adb763f..0000000 --- a/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# Makefile for source rpm: p7zip -# $Id$ -NAME := p7zip -SPECFILE = $(firstword $(wildcard *.spec)) - -define find-makefile-common -for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done -endef - -MAKEFILE_COMMON := $(shell $(find-makefile-common)) - -ifeq ($(MAKEFILE_COMMON),) -# attept a checkout -define checkout-makefile-common -test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2 -endef - -MAKEFILE_COMMON := $(shell $(checkout-makefile-common)) -endif - -include $(MAKEFILE_COMMON) diff --git a/p7zip-manpages.patch b/p7zip-manpages.patch new file mode 100644 index 0000000..8dc4df4 --- /dev/null +++ b/p7zip-manpages.patch @@ -0,0 +1,899 @@ +Join of 02-man.patch, 09-man-update.patch and 10-drop-fm-doc.patch from Debian +diff -rup p7zip_16.02.orig/DOC/MANUAL/cmdline/index.htm p7zip_16.02/DOC/MANUAL/cmdline/index.htm +--- p7zip_16.02.orig/DOC/MANUAL/cmdline/index.htm 2016-05-10 10:50:08.000000000 +0100 ++++ p7zip_16.02/DOC/MANUAL/cmdline/index.htm 2018-02-04 03:32:41.200460969 +0000 +@@ -11,12 +11,12 @@ +

Command Line Version User's Guide

+ + +-

7z.exe is the command line version of 7-Zip. 7z.exe uses 7z.dll +-from the 7-Zip package. 7z.dll is used by the 7-Zip File Manager also. ++

7z is the command line version of 7-Zip. 7z uses 7z.so ++from the 7-Zip package. + +-

7za.exe (a = alone) is a standalone version of 7-Zip. +-7za.exe supports only 7z, lzma, cab, zip, gzip, bzip2, Z and tar formats. +-7za.exe doesn't use external modules. ++

7za (a = alone) is a standalone version of 7-Zip. ++7za supports only 7z, lzma, cab, zip, gzip, bzip2, Z and tar formats. ++7za doesn't use external modules. + +

    +
  • Command Line syntax
  • +diff -rup p7zip_16.02.orig/DOC/MANUAL/cmdline/switches/sfx.htm p7zip_16.02/DOC/MANUAL/cmdline/switches/sfx.htm +--- p7zip_16.02.orig/DOC/MANUAL/cmdline/switches/sfx.htm 2016-05-10 10:50:08.000000000 +0100 ++++ p7zip_16.02/DOC/MANUAL/cmdline/switches/sfx.htm 2018-02-04 03:32:41.200460969 +0000 +@@ -22,7 +22,7 @@ +
    {SFX_Module}
    +
    +

    Specifies the SFX module that will be combined with the archive. +- This module must be placed in the same directory as the 7z.exe. ++ This module must be placed in the same directory as the 7z. + If {SFX_Module} is not assigned, 7-Zip will use standard console + SFX module 7zCon.sfx.

    + +diff -rup p7zip_16.02.orig/DOC/MANUAL/general/index.htm p7zip_16.02/DOC/MANUAL/general/index.htm +--- p7zip_16.02.orig/DOC/MANUAL/general/index.htm 2016-05-10 10:50:08.000000000 +0100 ++++ p7zip_16.02/DOC/MANUAL/general/index.htm 2018-02-04 03:32:41.200460969 +0000 +@@ -13,7 +13,6 @@ +

    The main features of 7-Zip

    + +
      +-
    • Powerful file manager
    • +
    • High compression ratio and high speed
    • +
    • Big number of supported archive formats
    • +
    • Additional command line version
    • +@@ -21,7 +20,7 @@ + +

      See Also

      + + + +diff -rup p7zip_16.02.orig/DOC/MANUAL/start.htm p7zip_16.02/DOC/MANUAL/start.htm +--- p7zip_16.02.orig/DOC/MANUAL/start.htm 2016-05-21 09:53:28.000000000 +0100 ++++ p7zip_16.02/DOC/MANUAL/start.htm 2018-02-04 03:32:41.201460979 +0000 +@@ -17,7 +17,6 @@ + + + +@@ -25,7 +24,7 @@ + + + +
      +diff -rup p7zip_16.02.orig/man1/7z.1 p7zip_16.02/man1/7z.1 +--- p7zip_16.02.orig/man1/7z.1 2007-09-21 19:53:12.000000000 +0100 ++++ p7zip_16.02/man1/7z.1 2018-02-04 03:33:07.305726696 +0000 +@@ -1,97 +1,187 @@ +-.TH 7z 1 "September 1 2006" "Mohammed Adnene Trojette" ++.TH 7z 1 "March 6th, 2016" "7-Zip" + .SH NAME +-7z \- A file archiver with highest compression ratio ++7z \- A file archiver with high compression ratio format + .SH SYNOPSIS + .B 7z +-.BR [adeltux] +-.BR [\-] +-.BR [SWITCH] +-.BR +-.BR ... ++.B ++.RB [ "... ]" ++.B ++.RB [ "... ]" ++.RB [ <@listfiles> "... ]" + .PP + .SH DESCRIPTION +-7-Zip is a file archiver with the highest compression ratio. The program supports 7z (that implements LZMA compression algorithm), ZIP, CAB, ARJ, GZIP, BZIP2, TAR, CPIO, RPM and DEB formats. Compression ratio in the new 7z format is 30-50% better than ratio in ZIP format. +-.TP +-7z uses plugins to handle archives. ++7-Zip is a file archiver supporting 7z (that implements LZMA compression algorithm ++featuring very high compression ratio), LZMA2, XZ, ZIP, Zip64, CAB, ++RAR (if the non-free p7zip-rar package is installed), ARJ, GZIP, BZIP2, TAR, CPIO, RPM, ISO, ++most filesystem images and DEB formats. ++Compression ratio in the new 7z format is 30-50% better than ratio in ZIP format. + .PP +-.SH FUNCTION LETTERS ++.B 7z ++uses plugins to handle archives, so it might be slightly slower than ++.BR 7za (1) ++but can handle more archive formats. ++.SH COMMANDS + .TP + .B a +-Add ++Add files to archive ++.TP ++.B b ++Benchmark + .TP + .B d +-Delete ++Delete files from archive + .TP + .B e +-Extract ++Extract files from archive (without using directory names) ++.TP ++.B h ++Calculate hash values for files ++.TP ++.B i ++Show information about supported formats + .TP + .B l +-List ++List contents of archive ++.TP ++.B rn ++Rename files in archive + .TP + .B t +-Test ++Test integrity of archive + .TP + .B u +-Update ++Update files to archive + .TP + .B x +-eXtract with full paths ++eXtract files with full paths + .PP + .SH SWITCHES + .TP +-.B \-ai[r[\-|0]]{@listfile|!wildcard} ++.B \-\- ++Stop switches parsing ++.TP ++.B \-ai[r[-|0]]{@listfile|!wildcard} + Include archives + .TP +-.B \-ax[r[\-|0]]{@listfile|!wildcard} +-eXclude archives ++.B \-ax[r[-|0]]{@listfile|!wildcard} ++Exclude archives ++.TP ++.B \-ao{a|s|t|u} ++Set Overwrite mode ++.TP ++.B \-an ++Disable archive_name field ++.TP ++.B -bb[0-3] ++Set output log level + .TP + .B \-bd +-Disable percentage indicator ++Disable progress indicator ++.TP ++.B \-bs{o|e|p}{0|1|2} ++Set output stream for output/error/progress line ++.TP ++.B \-bt ++Show execution time statistics + .TP + .B \-i[r[\-|0]]{@listfile|!wildcard} + Include filenames + .TP +-.B \-l +-don't store symlinks; store the files/directories they point to (CAUTION : the scanning stage can never end because of recursive symlinks like 'ln \-s .. ldir') +-.TP + .B \-m{Parameters} +-Set Compression Method (see {DEST_SHARE_DOC}/MANUAL/switches/method.htm for a list of methods) +-.TP +-.B \-mhe=on|off +-7z format only : enables or disables archive header encryption (Default : off) ++Set Compression Method (see /usr/share/doc/p7zip/DOC/MANUAL/cmdline/switches/method.htm from the p7zip-full package for a list of methods) + .TP + .B \-o{Directory} + Set Output directory + .TP + .B \-p{Password} +-Set Password ++Set Password (NOTE: this flag does not work with 7zr) + .TP + .B \-r[\-|0] + Recurse subdirectories (CAUTION: this flag does not do what you think, avoid using it) + .TP ++.B \-sa{a|e|s} ++Set archive name mode ++.TP ++.B \-scc{UTF\-8|WIN|DOS} ++Set charset for for console input/output ++.TP ++.B \-scs{UTF\-8|UTF\-16LE|UTF\-16BE|WIN|DOS|{id}} ++Set charset for list files ++.TP ++.B \-scrc[CRC32|CRC64|SHA1|SHA256|*] ++Set hash function for x, e, h commands ++.TP ++.B \-sdel ++Delete files after compression ++.TP ++.B \-seml[.] ++Send archive by email ++.TP + .B \-sfx[{name}] + Create SFX archive + .TP +-.B \-si +-Read data from StdIn (eg: tar cf \- directory | 7z a \-si directory.tar.7z) ++.B \-si[{name}] ++Read data from stdin (e.g. tar cf \- directory | 7z a \-si directory.tar.7z) + .TP +-.B \-so +-Write data to StdOut (eg: % echo foo | 7z a dummy \-tgzip \-si \-so > /dev/null) ++.B \-slp ++Set Large Pages mode + .TP + .B \-slt +-Sets technical mode for l (list) command ++Show technical information for l (List) command ++.TP ++.B \-snh ++Store hard links as links ++.TP ++.B \-snl ++Store symbolic links as links ++.TP ++.B \-sni ++Store NT security information ++.TP ++.B \-sns[\-] ++Store NTFS alternate streams ++.TP ++.B \-sfx[{name}] ++Create SFX archive ++.TP ++.B \-so ++Write data to stdout (e.g. 7z x \-so directory.tar.7z | tar xf \-) ++.TP ++.B \-spd ++Disable wildcard matching for file names ++.TP ++.B \-spe ++Eliminate duplication of root folder for extract command ++.TP ++.B \-spf ++Use fully qualified file paths ++.TP ++.B \-ssc[\-] ++Set sensitive case mode ++.TP ++.B \-ssw ++Compress shared files ++.TP ++.B \-stl ++Set archive timestamp from the most recently modified file ++.TP ++.B \-stm{HexMask} ++Set CPU thread affinity mask (hexadecimal number) ++.TP ++.B \-stx{Type} ++Exclude archive type + .TP + .B \-t{Type} +-Type of archive (7z, zip, gzip, bzip2 or tar. 7z format is default) ++Set type of archive ++.TP ++.B \-u[-][p#][q#][r#][x#][y#][z#][!newArchiveName] ++Update options + .TP + .B \-v{Size}[b|k|m|g] + Create volumes + .TP +-.B \-u[\-][p#][q#][r#][x#][y#][z#][!newArchiveName] +-Update options +-.TP + .B \-w[path] +-Set Working directory ++Set working directory. Empty path means a temporary directory + .TP + .B \-x[r[\-|0]]]{@listfile|!wildcard} + Exclude filenames +@@ -105,7 +195,8 @@ Assume Yes on all queries + .IP 0 + Normal (no errors or warnings detected) + .IP 1 +-Warning (Non fatal error(s)). For example, some files cannot be read during compressing. So they were not compressed ++Warning (Non fatal error(s)). For example, some files cannot be read during compressing, ++so they were not compressed + .IP 2 + Fatal error + .IP 7 +@@ -120,13 +211,13 @@ DO NOT USE the 7-zip format for backup p + + .LP + On Linux/Unix, in order to backup directories you must use tar : +- \- to backup a directory : tar cf \- directory | 7za a \-si directory.tar.7z +- \- to restore your backup : 7za x \-so directory.tar.7z | tar xf \- ++ \- to backup a directory : tar cf \- directory | 7z a \-si directory.tar.7z ++ \- to restore your backup : 7z x \-so directory.tar.7z | tar xf \- + + If you want to send files and directories (not the owner of file) + to others Unix/MacOS/Windows users, you can use the 7-zip format. + +- example : 7za a directory.7z directory ++ example : 7z a directory.7z directory + + .LP + Do not use "\-r" because this flag does not do what you think. +@@ -165,10 +256,15 @@ add all files from directory "dir1" to S + 7z a \-mhe=on \-pmy_password archive.7z a_directory + add all files from directory "a_directory" to the archive "archive.7z" (with data and header archive encryption on) + .SH "SEE ALSO" +-7za(1), 7zr(1), bzip2(1), gzip(1), zip(1) ++.BR 7zr (1), ++.BR 7za (1), ++.BR p7zip (1), ++.BR bzip2 (1), ++.BR gzip (1), ++.BR zip(1), + .PP + .SH "HTML Documentation" +-{DEST_SHARE_DOC}/MANUAL/index.htm ++/usr/share/doc/p7zip-full/DOC/MANUAL/start.htm + .SH AUTHOR + .TP +-Written for Debian by Mohammed Adnene Trojette. ++Written for Debian by Mohammed Adnene Trojette. Updated by Robert Luberda. +diff -rup p7zip_16.02.orig/man1/7za.1 p7zip_16.02/man1/7za.1 +--- p7zip_16.02.orig/man1/7za.1 2007-09-21 19:53:24.000000000 +0100 ++++ p7zip_16.02/man1/7za.1 2018-02-04 03:33:07.305726696 +0000 +@@ -1,99 +1,190 @@ +-.TH 7za 1 "September 1 2006" "Mohammed Adnene Trojette" ++.TH 7za 1 "March 6th, 2016" "7-Zip" + .SH NAME +-7za \- A file archiver with highest compression ratio ++7za \- A file archiver with high compression ratio format + .SH SYNOPSIS + .B 7za +-.BR [adeltux] +-.BR [-] +-.BR [SWITCH] +-.BR +-.BR ... ++.B ++.RB [ "... ]" ++.B ++.RB [ "... ]" ++.RB [ <@listfiles> "... ]" + .PP + .SH DESCRIPTION +-7-Zip is a file archiver with the highest compression ratio. The program supports 7z (that implements LZMA compression algorithm), ZIP, CAB, ARJ, GZIP, BZIP2, TAR, CPIO, RPM and DEB formats. Compression ratio in the new 7z format is 30-50% better than ratio in ZIP format. +-.TP +-7za is a stand-alone executable. 7za handles less archive formats than 7z, but does not need any others. ++7-Zip is a file archiver supporting 7z (that implements LZMA compression algorithm ++featuring very high compression ratio), LZMA2, XZ, ZIP, Zip64, CAB, ++RAR (if the non-free p7zip-rar package is installed), ARJ, GZIP, BZIP2, TAR, CPIO, RPM, ISO, ++most filesystem images and DEB formats. ++Compression ratio in the new 7z format is 30-50% better than ratio in ZIP format. + .PP +-.SH FUNCTION LETTERS ++.B 7za ++is a stand-alone executable. ++.B 7za ++handles fewer archive formats than ++.BR 7z (1). ++.SH COMMANDS + .TP + .B a +-Add ++Add files to archive ++.TP ++.B b ++Benchmark + .TP + .B d +-Delete ++Delete files from archive + .TP + .B e +-Extract ++Extract files from archive (without using directory names) ++.TP ++.B h ++Calculate hash values for files ++.TP ++.B i ++Show information about supported formats + .TP + .B l +-List ++List contents of archive ++.TP ++.B rn ++Rename files in archive + .TP + .B t +-Test ++Test integrity of archive + .TP + .B u +-Update ++Update files to archive + .TP + .B x +-eXtract with full paths ++eXtract files with full paths + .PP + .SH SWITCHES + .TP ++.B \-\- ++Stop switches parsing ++.TP + .B \-ai[r[-|0]]{@listfile|!wildcard} + Include archives + .TP + .B \-ax[r[-|0]]{@listfile|!wildcard} +-eXclude archives ++Exclude archives ++.TP ++.B \-ao{a|s|t|u} ++Set Overwrite mode ++.TP ++.B \-an ++Disable archive_name field ++.TP ++.B -bb[0-3] ++Set output log level + .TP + .B \-bd +-Disable percentage indicator ++Disable progress indicator + .TP +-.B \-i[r[-|0]]{@listfile|!wildcard} +-Include filenames ++.B \-bs{o|e|p}{0|1|2} ++Set output stream for output/error/progress line + .TP +-.B \-l +-don't store symlinks; store the files/directories they point to (CAUTION : the scanning stage can never end because of recursive symlinks like 'ln \-s .. ldir') ++.B \-bt ++Show execution time statistics + .TP +-.B \-m{Parameters} +-Set Compression Method (see {DEST_SHARE_DOC}/MANUAL/switches/method.htm for a list of methods) ++.B \-i[r[\-|0]]{@listfile|!wildcard} ++Include filenames + .TP +-.B \-mhe=on|off +-7z format only : enables or disables archive header encryption (Default : off) ++.B \-m{Parameters} ++Set Compression Method (see /usr/share/doc/p7zip/DOC/MANUAL/cmdline/switches/method.htm from the p7zip-full package for a list of methods) + .TP + .B \-o{Directory} + Set Output directory + .TP + .B \-p{Password} +-Set Password ++Set Password (NOTE: this flag does not work with 7zr) + .TP +-.B \-r[-|0] ++.B \-r[\-|0] + Recurse subdirectories (CAUTION: this flag does not do what you think, avoid using it) + .TP ++.B \-sa{a|e|s} ++Set archive name mode ++.TP ++.B \-scc{UTF\-8|WIN|DOS} ++Set charset for for console input/output ++.TP ++.B \-scs{UTF\-8|UTF\-16LE|UTF\-16BE|WIN|DOS|{id}} ++Set charset for list files ++.TP ++.B \-scrc[CRC32|CRC64|SHA1|SHA256|*] ++Set hash function for x, e, h commands ++.TP ++.B \-sdel ++Delete files after compression ++.TP ++.B \-seml[.] ++Send archive by email ++.TP + .B \-sfx[{name}] + Create SFX archive + .TP +-.B \-si +-Read data from StdIn (eg: tar cf \- directory | 7za a \-si directory.tar.7z) ++.B \-si[{name}] ++Read data from stdin (e.g. tar cf \- directory | 7za a \-si directory.tar.7z) + .TP +-.B \-so +-Write data to StdOut (eg: % echo foo | 7z a dummy \-tgzip \-si \-so > /dev/null) ++.B \-slp ++Set Large Pages mode + .TP + .B \-slt +-Sets technical mode for l (list) command ++Show technical information for l (List) command + .TP +-.B \-t{Type} +-Type of archive (7z, zip, gzip, bzip2 or tar. 7z format is default) ++.B \-snh ++Store hard links as links + .TP +-.B \-v{Size}[b|k|m|g] +-Create volumes ++.B \-snl ++Store symbolic links as links ++.TP ++.B \-sni ++Store NT security information ++.TP ++.B \-sns[\-] ++Store NTFS alternate streams ++.TP ++.B \-sfx[{name}] ++Create SFX archive ++.TP ++.B \-so ++Write data to stdout (e.g. 7za x \-so directory.tar.7z | tar xf \-) ++.TP ++.B \-spd ++Disable wildcard matching for file names ++.TP ++.B \-spe ++Eliminate duplication of root folder for extract command ++.TP ++.B \-spf ++Use fully qualified file paths ++.TP ++.B \-ssc[\-] ++Set sensitive case mode ++.TP ++.B \-ssw ++Compress shared files ++.TP ++.B \-stl ++Set archive timestamp from the most recently modified file ++.TP ++.B \-stm{HexMask} ++Set CPU thread affinity mask (hexadecimal number) ++.TP ++.B \-stx{Type} ++Exclude archive type ++.TP ++.B \-t{Type} ++Set type of archive + .TP + .B \-u[-][p#][q#][r#][x#][y#][z#][!newArchiveName] + Update options + .TP ++.B \-v{Size}[b|k|m|g] ++Create volumes ++.TP + .B \-w[path] +-Set Working directory ++Set working directory. Empty path means a temporary directory + .TP +-.B \-x[r[-|0]]]{@listfile|!wildcard} ++.B \-x[r[\-|0]]]{@listfile|!wildcard} + Exclude filenames + .TP + .B \-y +@@ -105,7 +196,8 @@ Assume Yes on all queries + .IP 0 + Normal (no errors or warnings detected) + .IP 1 +-Warning (Non fatal error(s)). For example, some files cannot be read during compressing. So they were not compressed ++Warning (Non fatal error(s)). For example, some files cannot be read during compressing, ++so they were not compressed + .IP 2 + Fatal error + .IP 7 +@@ -165,10 +257,15 @@ add all files from directory "dir1" to S + 7za a \-mhe=on \-pmy_password archive.7z a_directory + add all files from directory "a_directory" to the archive "archive.7z" (with data and header archive encryption on) + .SH "SEE ALSO" +-7z(1), 7zr(1), bzip2(1), gzip(1), zip(1) ++.BR 7zr (1), ++.BR 7z (1), ++.BR p7zip (1), ++.BR bzip2 (1), ++.BR gzip (1), ++.BR zip(1), + .PP + .SH "HTML Documentation" +-{DEST_SHARE_DOC}/MANUAL/index.htm ++/usr/share/doc/p7zip-full/DOC/MANUAL/start.htm + .SH AUTHOR + .TP +-Written for Debian by Mohammed Adnene Trojette. ++Written for Debian by Mohammed Adnene Trojette. Updated by Robert Luberda. +diff -rup p7zip_16.02.orig/man1/7zr.1 p7zip_16.02/man1/7zr.1 +--- p7zip_16.02.orig/man1/7zr.1 2007-09-21 19:53:34.000000000 +0100 ++++ p7zip_16.02/man1/7zr.1 2018-02-04 03:33:07.305726696 +0000 +@@ -1,99 +1,192 @@ +-.TH 7zr 1 "September 1 2006" "Mohammed Adnene Trojette" ++.TH 7zr 1 "March 6th, 2016" "7-Zip" + .SH NAME +-7zr \- A file archiver with highest compression ratio ++7zr \- A file archiver with high compression ratio format + .SH SYNOPSIS + .B 7zr +-.BR [adeltux] +-.BR [-] +-.BR [SWITCH] +-.BR +-.BR ... ++.B ++.RB [ "... ]" ++.B ++.RB [ "... ]" ++.RB [ <@listfiles> "... ]" + .PP + .SH DESCRIPTION +-7-Zip is a file archiver with the highest compression ratio. The program supports 7z (that implements LZMA compression algorithm), ZIP, CAB, ARJ, GZIP, BZIP2, TAR, CPIO, RPM and DEB formats. Compression ratio in the new 7z format is 30-50% better than ratio in ZIP format. +-.TP +-7zr is a stand-alone executable. 7zr handles less archive formats than 7z, but does not need any others. 7zr is a "light-version" of 7za that only handles 7z archives. ++7-Zip is a file archiver supporting 7z (that implements LZMA compression algorithm ++featuring very high compression ratio), LZMA2, XZ, ZIP, Zip64, CAB, ++RAR (if the non-free p7zip-rar package is installed), ARJ, GZIP, BZIP2, TAR, CPIO, RPM, ISO, ++most filesystem images and DEB formats. ++Compression ratio in the new 7z format is 30-50% better than ratio in ZIP format. + .PP +-.SH FUNCTION LETTERS ++.B 7zr ++is a stand-alone executable. ++.B 7zr ++is a "light-version" of ++.BR 7za (1). ++.B 7zr ++handles password-less archives in the 7z, LZMA2, and XZ formats only. ++.SH COMMANDS + .TP + .B a +-Add ++Add files to archive ++.TP ++.B b ++Benchmark + .TP + .B d +-Delete ++Delete files from archive + .TP + .B e +-Extract ++Extract files from archive (without using directory names) ++.TP ++.B h ++Calculate hash values for files ++.TP ++.B i ++Show information about supported formats + .TP + .B l +-List ++List contents of archive ++.TP ++.B rn ++Rename files in archive + .TP + .B t +-Test ++Test integrity of archive + .TP + .B u +-Update ++Update files to archive + .TP + .B x +-eXtract with full paths ++eXtract files with full paths + .PP + .SH SWITCHES + .TP ++.B \-\- ++Stop switches parsing ++.TP + .B \-ai[r[-|0]]{@listfile|!wildcard} + Include archives + .TP + .B \-ax[r[-|0]]{@listfile|!wildcard} +-eXclude archives ++Exclude archives ++.TP ++.B \-ao{a|s|t|u} ++Set Overwrite mode ++.TP ++.B \-an ++Disable archive_name field ++.TP ++.B -bb[0-3] ++Set output log level + .TP + .B \-bd +-Disable percentage indicator ++Disable progress indicator + .TP +-.B \-i[r[-|0]]{@listfile|!wildcard} +-Include filenames ++.B \-bs{o|e|p}{0|1|2} ++Set output stream for output/error/progress line + .TP +-.B \-l +-don't store symlinks; store the files/directories they point to (CAUTION : the scanning stage can never end because of recursive symlinks like 'ln \-s .. ldir') ++.B \-bt ++Show execution time statistics + .TP +-.B \-m{Parameters} +-Set Compression Method (see {DEST_SHARE_DOC}/MANUAL/switches/method.htm for a list of methods) ++.B \-i[r[\-|0]]{@listfile|!wildcard} ++Include filenames + .TP +-.B \-mhe=on|off +-7z format only : enables or disables archive header encryption (Default : off) ++.B \-m{Parameters} ++Set Compression Method (see /usr/share/doc/p7zip/DOC/MANUAL/cmdline/switches/method.htm from the p7zip-full package for a list of methods) + .TP + .B \-o{Directory} + Set Output directory + .TP +-.B \-p{Password} +-Set Password +-.TP +-.B \-r[-|0] ++.B \-r[\-|0] + Recurse subdirectories (CAUTION: this flag does not do what you think, avoid using it) + .TP ++.B \-sa{a|e|s} ++Set archive name mode ++.TP ++.B \-scc{UTF\-8|WIN|DOS} ++Set charset for for console input/output ++.TP ++.B \-scs{UTF\-8|UTF\-16LE|UTF\-16BE|WIN|DOS|{id}} ++Set charset for list files ++.TP ++.B \-scrc[CRC32|CRC64|SHA1|SHA256|*] ++Set hash function for x, e, h commands ++.TP ++.B \-sdel ++Delete files after compression ++.TP ++.B \-seml[.] ++Send archive by email ++.TP + .B \-sfx[{name}] + Create SFX archive + .TP +-.B \-si +-Read data from StdIn (eg: tar cf \- directory | 7zr a \-si directory.tar.7z) ++.B \-si[{name}] ++Read data from stdin (e.g. tar cf \- directory | 7zr a \-si directory.tar.7z) + .TP +-.B \-so +-Write data to StdOut (eg: 7zr x \-so directory.tar.7z | tar xf \-) ++.B \-slp ++Set Large Pages mode + .TP + .B \-slt +-Sets technical mode for l (list) command ++Show technical information for l (List) command + .TP +-.B \-v{Size}[b|k|m|g] +-Create volumes ++.B \-snh ++Store hard links as links ++.TP ++.B \-snl ++Store symbolic links as links ++.TP ++.B \-sni ++Store NT security information ++.TP ++.B \-sns[\-] ++Store NTFS alternate streams ++.TP ++.B \-sfx[{name}] ++Create SFX archive ++.TP ++.B \-so ++Write data to stdout (e.g. 7zr x \-so directory.tar.7z | tar xf \-) ++.TP ++.B \-spd ++Disable wildcard matching for file names ++.TP ++.B \-spe ++Eliminate duplication of root folder for extract command ++.TP ++.B \-spf ++Use fully qualified file paths ++.TP ++.B \-ssc[\-] ++Set sensitive case mode ++.TP ++.B \-ssw ++Compress shared files ++.TP ++.B \-stl ++Set archive timestamp from the most recently modified file ++.TP ++.B \-stm{HexMask} ++Set CPU thread affinity mask (hexadecimal number) ++.TP ++.B \-stx{Type} ++Exclude archive type ++.TP ++.B \-t{Type} ++Set type of archive + .TP + .B \-u[-][p#][q#][r#][x#][y#][z#][!newArchiveName] + Update options + .TP ++.B \-v{Size}[b|k|m|g] ++Create volumes ++.TP + .B \-w[path] +-Set Working directory ++Set working directory. Empty path means a temporary directory + .TP +-.B \-x[r[-|0]]]{@listfile|!wildcard} ++.B \-x[r[\-|0]]]{@listfile|!wildcard} + Exclude filenames + .TP +-.B \-y ++.B \-y + Assume Yes on all queries + .PP + .SH DIAGNOSTICS +@@ -102,7 +195,8 @@ Assume Yes on all queries + .IP 0 + Normal (no errors or warnings detected) + .IP 1 +-Warning (Non fatal error(s)). For example, some files cannot be read during compressing. So they were not compressed ++Warning (Non fatal error(s)). For example, some files cannot be read during compressing, ++so they were not compressed + .IP 2 + Fatal error + .IP 7 +@@ -117,8 +211,8 @@ DO NOT USE the 7-zip format for backup p + + .LP + On Linux/Unix, in order to backup directories you must use tar : +- \- to backup a directory : tar cf - directory | 7zr a -si directory.tar.7z +- \- to restore your backup : 7zr x -so directory.tar.7z | tar xf - ++ \- to backup a directory : tar cf \- directory | 7zr a \-si directory.tar.7z ++ \- to restore your backup : 7zr x \-so directory.tar.7z | tar xf \- + + If you want to send files and directories (not the owner of file) + to others Unix/MacOS/Windows users, you can use the 7-zip format. +@@ -156,16 +250,16 @@ solid archive = on + .B + 7zr a \-sfx archive.exe dir1 + add all files from directory "dir1" to SFX archive archive.exe (Remark : SFX archive MUST end with ".exe") +-.SH EXAMPLE 3 +-.TP +-.B +-7zr a \-mhe=on \-pmy_password archive.7z a_directory +-add all files from directory "a_directory" to the archive "archive.7z" (with data and header archive encryption on) + .SH "SEE ALSO" +-7z(1), 7za(1), bzip2(1), gzip(1), zip(1) ++.BR 7za (1), ++.BR 7z (1), ++.BR p7zip (1), ++.BR bzip2 (1), ++.BR gzip (1), ++.BR zip(1), + .PP + .SH "HTML Documentation" +-{DEST_SHARE_DOC}/MANUAL/index.htm ++/usr/share/doc/p7zip/DOC/MANUAL/start.htm (avabilable when the p7zip-full package is installed) + .SH AUTHOR + .TP +-Written for Debian by Mohammed Adnene Trojette. ++Written for Debian by Mohammed Adnene Trojette. Updated by Robert Luberda. diff --git a/p7zip.spec b/p7zip.spec new file mode 100644 index 0000000..5044a9e --- /dev/null +++ b/p7zip.spec @@ -0,0 +1,448 @@ +%if 0%{?rhel} && ! 0%{?epel} +%bcond_with gui +%else +%bcond_without gui +%endif + +Summary: Very high compression ratio file archiver +Name: p7zip +Version: 16.02 +Release: 15%{?dist} +# Files under C/Compress/Lzma/ are dual LGPL or CPL +License: LGPLv2 and (LGPLv2+ or CPL) +URL: http://p7zip.sourceforge.net/ +# RAR sources removed since their license is incompatible with the LGPL +#Source: http://downloads.sf.net/p7zip/p7zip_%%{version}_src_all.tar.bz2 +# export VERSION=15.14.1 +# wget http://downloads.sf.net/p7zip/p7zip_${VERSION}_src_all.tar.bz2 +# tar xjvf p7zip_${VERSION}_src_all.tar.bz2 +# rm -rf p7zip_${VERSION}/CPP/7zip/{Archive,Compress,Crypto,QMAKE}/Rar* +# rm p7zip_${VERSION}/DOC/unRarLicense.txt +# tar --numeric-owner -cjvf p7zip_${VERSION}_src_all-norar.tar.bz2 p7zip_${VERSION} +Source: p7zip_%{version}_src_all-norar.tar.bz2 +Patch0: p7zip_15.14-norar_cmake.patch +# from Debain +Patch4: p7zip-manpages.patch +Patch5: 02-man.patch +Patch6: CVE-2016-9296.patch +Patch7: 05-hardening-flags.patch +Patch10: CVE-2017-17969.patch +Patch11: 14-Fix-g++-warning.patch + +BuildRequires: gcc +BuildRequires: gcc-c++ +BuildRequires: cmake +%if %{with gui} +# for 7zG GUI +BuildRequires: wxGTK3-devel +BuildRequires: kde-filesystem +%endif +%ifarch %{ix86} +BuildRequires: nasm +%endif +%ifarch x86_64 +BuildRequires: yasm +%endif + +%description +p7zip is a port of 7za.exe for Unix. 7-Zip is a file archiver with a very high +compression ratio. The original version can be found at http://www.7-zip.org/. + + +%package plugins +Summary: Additional plugins for p7zip + +%description plugins +Additional plugins that can be used with 7z to extend its abilities. +This package contains also a virtual file system for Midnight Commander. + +%if %{with gui} +%package gui +Summary: 7zG - 7-Zip GUI version +Requires: kde-filesystem +Requires: p7zip-plugins + +%description gui +7zG is a gui provide by p7zip and it is now in beta stage. +Also add some context menus for KDE4. +This package is *experimental*. +%endif + +%package doc +Summary: Manual documentation and contrib directory +BuildArch: noarch + +%description doc +This package contains the p7zip manual documentation and some code +contributions. + +%prep +%autosetup -p1 -n %{name}_%{version} + +# move license files +mv DOC/License.txt DOC/copying.txt . + +%build +pushd CPP/7zip/CMAKE/ +sh ./generate.sh +popd +%ifarch %{ix86} +cp -f makefile.linux_x86_asm_gcc_4.X makefile.machine +%endif +%ifarch x86_64 +cp -f makefile.linux_amd64_asm makefile.machine +%endif +%ifarch ppc ppc64 +cp -f makefile.linux_any_cpu_gcc_4.X makefile.machine +%endif + +%make_build all2 \ +%if %{with gui} + 7zG \ +%endif + OPTFLAGS="%{optflags}" \ + DEST_HOME=%{_prefix} \ + DEST_BIN=%{_bindir} \ + DEST_SHARE=%{_libexecdir}/p7zip \ + DEST_MAN=%{_mandir} + + +%install +make install \ + DEST_DIR=%{buildroot} \ + DEST_HOME=%{_prefix} \ + DEST_BIN=%{_bindir} \ + DEST_SHARE=%{_libexecdir}/p7zip \ + DEST_MAN=%{_mandir} + +# remove redundant DOC dir +mv %{buildroot}%{_docdir}/p7zip/DOC/* %{buildroot}%{_docdir}/p7zip +rmdir %{buildroot}%{_docdir}/p7zip/DOC/ + +%if %{with gui} +mkdir -p %{buildroot}%{_kde4_datadir}/kde4/services/ServiceMenus/ +# remove a duplicated of p7zip_compress.desktop +rm GUI/kde4/p7zip_compress2.desktop +cp GUI/kde4/*.desktop %{buildroot}%{_kde4_datadir}/kde4/services/ServiceMenus/ +#fix non-executable-in-bin +chmod +x %{buildroot}%{_bindir}/p7zipForFilemanager +%endif + +%check +%if ! 0%{?rhel} || 0%{?rhel} >= 7 +make test +%endif +# Next test fails, because we don't have X11 envoirment ... +# Error: Unable to initialize gtk, is DISPLAY set properly? +#make test_7zG || : + + +%files +%{_docdir}/p7zip +%exclude %{_docdir}/p7zip/MANUAL +%license copying.txt License.txt +%{_bindir}/7za +%dir %{_libexecdir}/p7zip/ +%{_libexecdir}/p7zip/7za +%{_libexecdir}/p7zip/7zCon.sfx +%{_mandir}/man1/7za.1* +%exclude %{_mandir}/man1/7zr.1* + +%files plugins +%{_bindir}/7z +%dir %{_libexecdir}/p7zip/ +%{_libexecdir}/p7zip/7z +%{_libexecdir}/p7zip/7z.so +#{_libexecdir}/p7zip/Codecs/ +#{_libexecdir}/p7zip/Formats/ +%{_mandir}/man1/7z.1* + +%if %{with gui} +%files gui +%{_bindir}/7zG +%{_bindir}/p7zipForFilemanager +%{_libexecdir}/p7zip/7zG +%{_libexecdir}/p7zip/Lang +%{_kde4_datadir}/kde4/services/ServiceMenus/*.desktop +%endif + +%files doc +%{_docdir}/p7zip/MANUAL +%doc contrib/ + + +%changelog +* Thu Jul 25 2019 Fedora Release Engineering - 16.02-15 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Fri Feb 01 2019 Fedora Release Engineering - 16.02-14 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Jul 13 2018 Fedora Release Engineering - 16.02-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild +- https://fedoraproject.org/wiki/Changes/Remove_GCC_from_BuildRoot + +* Mon Jul 09 2018 Scott Talbert - 16.02-12 +- Rebuild with wxWidgets 3.0 + +* Wed Mar 07 2018 Adam Williamson - 16.02-11 +- Rebuild to fix GCC 8 mis-compilation + See https://da.gd/YJVwk ("GCC 8 ABI change on x86_64") + +* Tue Feb 06 2018 Sérgio Basto - 16.02-10 +- Improve security patch + +* Sat Jan 27 2018 Sérgio Basto - 16.02-9 +- Security fix for CVE-2017-17969 (from Debian) +- Add 05-hardening-flags.patch, 09-man-update.patch, 10-drop-fm-doc.patch + and 14-Fix-g++-warning.patch patches from Debian, very small changes + better documentation, compile flags and compile warning. + +* Wed Jan 24 2018 Sérgio Basto - 16.02-8 +- Add sub-package doc + +* Wed Jan 24 2018 Tomas Hoger - 16.02-7 +- Add conditional for building with(out) GUI support. Keep GUI enabled for + Fedora and EPEL builds, but disabled for RHEL. +- Add missing dependency - 7zG requires 7z.so, so p7zip-gui needs to require + p7zip-plugins. + +* Sun Sep 10 2017 Vasiliy N. Glazov - 16.02-6 +- Cleanup spec + +* Thu Aug 03 2017 Fedora Release Engineering - 16.02-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 16.02-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Sat Feb 11 2017 Fedora Release Engineering - 16.02-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Mon Nov 21 2016 Sérgio Basto - 16.02-2 +- Security fix for CVE-2016-9296 + +* Mon Jul 18 2016 Sérgio Basto - 16.02-1 +- Update p7zip to 16.02 and fix security issues + +* Sun Mar 27 2016 Sérgio Basto - 15.14.1-1 +- Update to 15.14.1 +- Revert 7zFM build, upstream recomends not build it + http://sourceforge.net/p/p7zip/bugs/175/ + +* Thu Mar 17 2016 Sérgio Basto - 15.14-2 +- Fix non-executable-in-bin for p7zipForFilemanager. +- Remove p7zip_compress2.desktop to not duplicate the menu entries. +- Also build 7zFM, rebuild p7zip_15.14_src_all-norar.tar.bz2, to build 7zFM + instead 7zFM_do_not_use. + +* Tue Mar 15 2016 Sérgio Basto - 15.14-1 +- Update to 15.14 . +- Rebase norar_cmake.patch +- Minor improvement in snippet of documentation. +- Drop patch1, from changelog build on s390 is fixed. +- Drop p7zip-15.09-CVE-2015-1038.patch, from changelog if fixed. +- Drop upstreamed p7zip_15.09-incorrect-fsf-address.patch . +- Drop p7zip_15.09-no7zG_and_7zFM.patch, p7zip build is fixed. +- Add sub-package p7zip-gui with 7zG. + +* Thu Feb 04 2016 Fedora Release Engineering - 15.09-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Mon Jan 25 2016 Sérgio Basto - 15.09-9 +- Add 02_man.patch from Debian + +* Fri Jan 22 2016 Sérgio Basto - 15.09-8 +- Revert better solutions for "create unowned directory" + +* Fri Jan 22 2016 Sérgio Basto - 15.09-7 +- Split incorrect-fsf-address.patch and do not pack backup files + +* Fri Jan 22 2016 Sérgio Basto - 15.09-6 +- Stating in License.txt file that we removed non-Free unrar code + from sources (#190277) +- Fix incorrect fsf address in the license files. +- Add p7zip_15.09-no7zG_and_7zFM.patch in a diferent patch. + +* Fri Jan 22 2016 Sérgio Basto - 15.09-5 +- Add license tag +- better solutions for "create unowned directory" (#917366) + +* Thu Dec 03 2015 Sérgio Basto - 15.09-4 +- Fix CVE-2015-1038 (#1179505) + +* Wed Dec 02 2015 Sérgio Basto - 15.09-3 +- Fix build on s390 architecture (#1286992) + +* Thu Nov 12 2015 Sérgio Basto - 15.09-2 +- fix rhbz #917366 + +* Thu Nov 05 2015 Sérgio Basto - 15.09-1 +- Update to p7zip_15.09 +- Use cmake. +- Refactor norar patch. +- Deleted: p7zip_9.20.1-execstack.patch (upstreamed) +- Deleted: p7zip_9.20.1-install.patch (upstreamed) +- Deleted: p7zip_9.20.1-nostrip.patch (upstreamed) + +* Thu Jun 18 2015 Fedora Release Engineering - 9.20.1-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Sat May 02 2015 Kalev Lember - 9.20.1-9 +- Rebuilt for GCC 5 C++11 ABI change + +* Sun Aug 17 2014 Fedora Release Engineering - 9.20.1-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Fri Jun 06 2014 Fedora Release Engineering - 9.20.1-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Sat Aug 03 2013 Fedora Release Engineering - 9.20.1-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Thu Feb 14 2013 Fedora Release Engineering - 9.20.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Fri Jul 20 2012 Fedora Release Engineering - 9.20.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Fri Jan 13 2012 Fedora Release Engineering - 9.20.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Tue Jul 26 2011 Matthias Saou 9.20.1-2 +- Execstack patch to fix what's wanted by the yasm code (#718778). + +* Tue Jul 26 2011 Matthias Saou 9.20.1-1 +- Update to 9.20.1 (#688564). +- Update norar, nostrip and install patches. +- Minor clean ups : Don't use trivial macros + new email address. +- Don't require the main package from the plugins package (#690551). +- Use the any_cpu_gcc_4.X makefile for ppc* since the ppc specific one is gone. + +* Tue Feb 08 2011 Fedora Release Engineering - 9.13-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Thu Jul 8 2010 Matthias Saou 9.13-1 +- Update to 9.13. +- Update norar and nostrip patches. + +* Tue Dec 8 2009 Matthias Saou 9.04-1 +- Update to 9.04. +- Update norar patch. + +* Sat Jul 25 2009 Fedora Release Engineering - 4.65-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Sun Apr 12 2009 Matthias Saou 4.65-1 +- Update to 4.65. +- Update norar patch. + +* Thu Feb 26 2009 Fedora Release Engineering +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Tue Dec 23 2008 Matthias Saou 4.61-1 +- Update to 4.61. +- Update norar patch. +- Use asm for x86 too (nasm). + +* Wed Jun 18 2008 Matthias Saou 4.58-1 +- Update to 4.58. +- Update norar patch. +- Update install patch. + +* Tue Feb 19 2008 Fedora Release Engineering +- Autorebuild for GCC 4.3 + +* Wed Aug 22 2007 Matthias Saou 4.51-3 +- Rebuild for new BuildID feature. + +* Thu Aug 9 2007 Matthias Saou 4.51-2 +- Update License field some more (LGPL+ to LGPLv2+). + +* Sun Aug 5 2007 Matthias Saou 4.51-1 +- Update to 4.51. +- Update License field. + +* Tue Jun 19 2007 Matthias Saou 4.47-1 +- Update to 4.47. +- Include now required patch to exclude removed Rar bits from makefiles. +- Switch to using "make install" for installation... so patch and hack. +- Use the asm makefile for x86_64, so build require yasm for it too. +- Add ppc64 to the main %%ifarch. +- Remove no longer included Codecs and Formats dirs (7z.so replaces them?). +- Remove our wrapper scripts, since the install script creates its own. + +* Thu Mar 1 2007 Matthias Saou 4.44-2 +- Remove _smp_mflags since some builds fail with suspicious errors. + +* Thu Mar 1 2007 Matthias Saou 4.44-1 +- Update to 4.44. + +* Mon Aug 28 2006 Matthias Saou 4.42-2 +- FC6 rebuild. + +* Thu Jun 29 2006 Matthias Saou 4.42-1 +- Update to 4.42. + +* Tue May 2 2006 Matthias Saou 4.39-1 +- Update to 4.39. +- Remove no longer needed gcc 4.1 patch. +- Use the gcc_4.X makefile. +- Remove RAR licensed files and RAR license itself (#190277). + +* Mon Mar 6 2006 Matthias Saou 4.30-3 +- FC5 rebuild. + +* Thu Feb 9 2006 Matthias Saou 4.30-2 +- Rebuild for new gcc/glibc. +- Include gcc 4.1 patch for extra qualification errors. + +* Mon Nov 28 2005 Matthias Saou 4.30-1 +- Update to 4.30. + +* Thu Oct 27 2005 Matthias Saou 4.29-3 +- Double quote args passed inside the shell scripts, to fix #171480. + +* Mon Oct 10 2005 Matthias Saou 4.29-2 +- Update to 4.29. + +* Sun Jun 05 2005 Dag Wieers - 4.20-1 +- Updated to release 4.20. + +* Sun Apr 10 2005 Dag Wieers - 4.16-1 +- Moved inline scripts to %%prep stage. +- Removed quotes for $@ as it should not be necessary. + +* Thu Mar 17 2005 Matthias Saou 4.14.01-1 +- Spec file cleanup. +- Fix wrapper scripts : Double quote $@ for filenames with spaces to work. +- Move files from /usr/share to /usr/libexec. +- Various other minor changes. + +* Mon Jan 24 2005 Marcin Zajączkowski + - upgraded to 4.14.01 + +* Sun Jan 16 2005 Marcin Zajączkowski + - upgraded to 4.14 + +* Mon Dec 20 2004 Marcin Zajączkowski + - added 7za script and moved SFX module to _datadir/name/ to allow 7za & 7z + use it simultaneously + - returned to plugins in separate package + +* Sat Dec 18 2004 Charles Duffy + - upgraded to 4.13 + - added 7z (not just 7za) with a shell wrapper + - added gcc-c++ to the BuildRequires list + +* Sat Nov 20 2004 Marcin Zajączkowski + - upgraded to 4.12 + - added virtual file system for Midnight Commander + +* Thu Nov 11 2004 Marcin Zajączkowski + - upgraded to 4.10 + - plugins support was dropped out from p7zip + +* Sun Aug 29 2004 Marcin Zajączkowski + - initial release + diff --git a/p7zip_15.14-norar_cmake.patch b/p7zip_15.14-norar_cmake.patch new file mode 100644 index 0000000..41a351d --- /dev/null +++ b/p7zip_15.14-norar_cmake.patch @@ -0,0 +1,149 @@ +diff -rup p7zip_15.14.orig/CPP/7zip/Bundles/Format7zFree/makefile.list p7zip_15.14/CPP/7zip/Bundles/Format7zFree/makefile.list +--- p7zip_15.14.orig/CPP/7zip/Bundles/Format7zFree/makefile.list 2016-03-10 07:27:16.000000000 +0000 ++++ p7zip_15.14/CPP/7zip/Bundles/Format7zFree/makefile.list 2016-03-15 13:50:22.638470716 +0000 +@@ -87,8 +87,6 @@ SRCS=\ + ../../../../CPP/7zip/Archive/PeHandler.cpp \ + ../../../../CPP/7zip/Archive/PpmdHandler.cpp \ + ../../../../CPP/7zip/Archive/QcowHandler.cpp \ +- ../../../../CPP/7zip/Archive/Rar/RarHandler.cpp \ +- ../../../../CPP/7zip/Archive/Rar/Rar5Handler.cpp \ + ../../../../CPP/7zip/Archive/RpmHandler.cpp \ + ../../../../CPP/7zip/Archive/SplitHandler.cpp \ + ../../../../CPP/7zip/Archive/SquashfsHandler.cpp \ +@@ -191,9 +189,6 @@ SRCS=\ + ../../../../CPP/7zip/Crypto/MyAesReg.cpp \ + ../../../../CPP/7zip/Crypto/Pbkdf2HmacSha1.cpp \ + ../../../../CPP/7zip/Crypto/RandGen.cpp \ +- ../../../../CPP/7zip/Crypto/Rar20Crypto.cpp \ +- ../../../../CPP/7zip/Crypto/Rar5Aes.cpp \ +- ../../../../CPP/7zip/Crypto/RarAes.cpp \ + ../../../../CPP/7zip/Crypto/WzAes.cpp \ + ../../../../CPP/7zip/Crypto/ZipCrypto.cpp \ + ../../../../CPP/7zip/Crypto/ZipStrong.cpp \ +@@ -485,10 +480,6 @@ PpmdHandler.o : ../../../../CPP/7zip/Arc + $(CXX) $(CXXFLAGS) ../../../../CPP/7zip/Archive/PpmdHandler.cpp + QcowHandler.o : ../../../../CPP/7zip/Archive/QcowHandler.cpp + $(CXX) $(CXXFLAGS) ../../../../CPP/7zip/Archive/QcowHandler.cpp +-RarHandler.o : ../../../../CPP/7zip/Archive/Rar/RarHandler.cpp +- $(CXX) $(CXXFLAGS) ../../../../CPP/7zip/Archive/Rar/RarHandler.cpp +-Rar5Handler.o : ../../../../CPP/7zip/Archive/Rar/Rar5Handler.cpp +- $(CXX) $(CXXFLAGS) ../../../../CPP/7zip/Archive/Rar/Rar5Handler.cpp + RpmHandler.o : ../../../../CPP/7zip/Archive/RpmHandler.cpp + $(CXX) $(CXXFLAGS) ../../../../CPP/7zip/Archive/RpmHandler.cpp + SplitHandler.o : ../../../../CPP/7zip/Archive/SplitHandler.cpp +@@ -693,12 +684,6 @@ Pbkdf2HmacSha1.o : ../../../../CPP/7zip/ + $(CXX) $(CXXFLAGS) ../../../../CPP/7zip/Crypto/Pbkdf2HmacSha1.cpp + RandGen.o : ../../../../CPP/7zip/Crypto/RandGen.cpp + $(CXX) $(CXXFLAGS) ../../../../CPP/7zip/Crypto/RandGen.cpp +-Rar20Crypto.o : ../../../../CPP/7zip/Crypto/Rar20Crypto.cpp +- $(CXX) $(CXXFLAGS) ../../../../CPP/7zip/Crypto/Rar20Crypto.cpp +-Rar5Aes.o : ../../../../CPP/7zip/Crypto/Rar5Aes.cpp +- $(CXX) $(CXXFLAGS) ../../../../CPP/7zip/Crypto/Rar5Aes.cpp +-RarAes.o : ../../../../CPP/7zip/Crypto/RarAes.cpp +- $(CXX) $(CXXFLAGS) ../../../../CPP/7zip/Crypto/RarAes.cpp + WzAes.o : ../../../../CPP/7zip/Crypto/WzAes.cpp + $(CXX) $(CXXFLAGS) ../../../../CPP/7zip/Crypto/WzAes.cpp + ZipCrypto.o : ../../../../CPP/7zip/Crypto/ZipCrypto.cpp +@@ -869,8 +854,6 @@ OBJS=\ + PeHandler.o \ + PpmdHandler.o \ + QcowHandler.o \ +- RarHandler.o \ +- Rar5Handler.o \ + RpmHandler.o \ + SplitHandler.o \ + SquashfsHandler.o \ +@@ -973,9 +956,6 @@ OBJS=\ + MyAesReg.o \ + Pbkdf2HmacSha1.o \ + RandGen.o \ +- Rar20Crypto.o \ +- Rar5Aes.o \ +- RarAes.o \ + WzAes.o \ + ZipCrypto.o \ + ZipStrong.o \ +diff -rup p7zip_15.14.orig/CPP/7zip/CMAKE/Format7zFree/CMakeLists.txt p7zip_15.14/CPP/7zip/CMAKE/Format7zFree/CMakeLists.txt +--- p7zip_15.14.orig/CPP/7zip/CMAKE/Format7zFree/CMakeLists.txt 2016-03-10 07:27:16.000000000 +0000 ++++ p7zip_15.14/CPP/7zip/CMAKE/Format7zFree/CMakeLists.txt 2016-03-15 13:50:22.639470728 +0000 +@@ -126,8 +126,6 @@ add_library(7z MODULE + "../../../../CPP/7zip/Archive/PeHandler.cpp" + "../../../../CPP/7zip/Archive/PpmdHandler.cpp" + "../../../../CPP/7zip/Archive/QcowHandler.cpp" +- "../../../../CPP/7zip/Archive/Rar/RarHandler.cpp" +- "../../../../CPP/7zip/Archive/Rar/Rar5Handler.cpp" + "../../../../CPP/7zip/Archive/RpmHandler.cpp" + "../../../../CPP/7zip/Archive/SplitHandler.cpp" + "../../../../CPP/7zip/Archive/SquashfsHandler.cpp" +@@ -230,9 +228,6 @@ add_library(7z MODULE + "../../../../CPP/7zip/Crypto/MyAesReg.cpp" + "../../../../CPP/7zip/Crypto/Pbkdf2HmacSha1.cpp" + "../../../../CPP/7zip/Crypto/RandGen.cpp" +- "../../../../CPP/7zip/Crypto/Rar20Crypto.cpp" +- "../../../../CPP/7zip/Crypto/Rar5Aes.cpp" +- "../../../../CPP/7zip/Crypto/RarAes.cpp" + "../../../../CPP/7zip/Crypto/WzAes.cpp" + "../../../../CPP/7zip/Crypto/ZipCrypto.cpp" + "../../../../CPP/7zip/Crypto/ZipStrong.cpp" +diff -rup p7zip_15.14.orig/CPP/7zip/CMAKE/generate.sh p7zip_15.14/CPP/7zip/CMAKE/generate.sh +--- p7zip_15.14.orig/CPP/7zip/CMAKE/generate.sh 2016-02-03 04:54:00.000000000 +0000 ++++ p7zip_15.14/CPP/7zip/CMAKE/generate.sh 2016-03-15 13:50:47.596758591 +0000 +@@ -15,15 +15,15 @@ CURDIR=$PWD + cd $CURDIR + doit "Unix" "Unix Makefiles" + +-cd $CURDIR +-doit "codeblocks" "CodeBlocks - Unix Makefiles" ++#cd $CURDIR ++#doit "codeblocks" "CodeBlocks - Unix Makefiles" + + #cd $CURDIR + #doit "KDevelop3" "KDevelop3" + +-cd $CURDIR +-doit "EclipseCDT4" "Eclipse CDT4 - Unix Makefiles" ++#cd $CURDIR ++#doit "EclipseCDT4" "Eclipse CDT4 - Unix Makefiles" + +-cd $CURDIR +-doit "ninja" "Ninja" ++#cd $CURDIR ++#doit "ninja" "Ninja" + +diff -rup p7zip_15.14.orig/DOC/License.txt p7zip_15.14/DOC/License.txt +--- p7zip_15.14.orig/DOC/License.txt 2016-03-02 05:57:39.000000000 +0000 ++++ p7zip_15.14/DOC/License.txt 2016-03-15 13:50:22.640470740 +0000 +@@ -1,3 +1,6 @@ ++ Fedora package note: non-Free unrar code have been removed from the sources ++ (#190277) ++ + 7-Zip source code + ~~~~~~~~~~~~~~~~~ + License for use and distribution +diff -rup p7zip_15.14.orig/makefile p7zip_15.14/makefile +--- p7zip_15.14.orig/makefile 2016-02-29 06:28:31.000000000 +0000 ++++ p7zip_15.14/makefile 2016-03-15 13:50:22.640470740 +0000 +@@ -31,7 +31,6 @@ depend: + $(MAKE) -C CPP/7zip/UI/Client7z depend + $(MAKE) -C CPP/7zip/UI/Console depend + $(MAKE) -C CPP/7zip/Bundles/Format7zFree depend +- $(MAKE) -C CPP/7zip/Compress/Rar depend + $(MAKE) -C CPP/7zip/UI/GUI depend + $(MAKE) -C CPP/7zip/UI/FileManager depend + +@@ -42,7 +41,6 @@ sfx: common + common7z:common + $(MKDIR) bin/Codecs + $(MAKE) -C CPP/7zip/Bundles/Format7zFree all +- $(MAKE) -C CPP/7zip/Compress/Rar all + + lzham:common + $(MKDIR) bin/Codecs +@@ -67,7 +65,6 @@ clean_C: + $(MAKE) -C CPP/7zip/UI/FileManager clean + $(MAKE) -C CPP/7zip/UI/GUI clean + $(MAKE) -C CPP/7zip/Bundles/Format7zFree clean +- $(MAKE) -C CPP/7zip/Compress/Rar clean + $(MAKE) -C CPP/7zip/Compress/Lzham clean + $(MAKE) -C CPP/7zip/Bundles/LzmaCon clean2 + $(MAKE) -C CPP/7zip/Bundles/AloneGCOV clean diff --git a/sources b/sources index e69de29..7f5670d 100644 --- a/sources +++ b/sources @@ -0,0 +1 @@ +7202a0bd2aa2935576c13314783d5e1d p7zip_16.02_src_all-norar.tar.bz2