p7zip is a Unix port of 7-Zip, a file archiver with high compression
ratio (www.7-zip.org) with lots of features:
* 7-Zip is free software distributed under the GNU LGPL
* High compression ratio in new 7z format with LZMA compression
o Unicode file names
o Variable dictionary size (up to 4 GB)
o Compressing speed: about 1 MB/s on 2 GHz CPU
o Decompressing speed: about 10-20 MB/s on 2 GHz CPU
* Supported formats:
o Packing / unpacking: 7z, ZIP, GZIP, BZIP2 and TAR
o Unpacking only: RAR, CAB, ISO, ARJ, LZH, CHM, Z, CPIO, RPM, DEB
and NSIS
* For ZIP and GZIP formats 7-Zip provides compression ratio that is
2-10 % better than ratio provided by PKZip and WinZip
* Self-extracting capability for 7z format
WWW: http://p7zip.sourceforge.net/
===> The following configuration options are available for p7zip-16.02_3:
DOCS=on: Build and/or install documentation
===> Use 'make config' to modify these settings
archivers/p7zip: Drop maintainership.
I have not had time to properly maintain this port in ages, and do not
think this will change in the foreseeable future.
Someone needs to push bug 228239 beyond the finishing line (there is
some confusion about whether the patch in Debian is enough or not), and
hopefully investigate whether a p7zip fork should be adopted, or
persuade the 7-Zip maintainer to publish the code for their Linux
version (see comment #11 in the PR I mentioned).
PR: 228239
Remove unnecessary LDFLAGS_i386
archivers/p7zip* ports build just fine without those flags.
PR: 230210
Reported by: emaste
Approved by: portmgr blanket
archivers/p7zip: fix build on powerpc64
lld 10 reports the following error:
ld: error: relocation R_PPC64_TOC16_LO cannot be used against symbol
MatchFinder_GetNumAvailableBytes; recompile with -fPIC
>>> defined in LzFind.o
>>> referenced by LzFind.c
>>> LzFind.o:(MatchFinder_CreateVTable)
Add patch for CVE-2018-5996
Insufficient exception handling in the method NCompress::NRar3::CDecoder::Code
of 7-Zip before 18.00 and p7zip can lead to multiple memory corruptions within
the PPMd code, allows remote attackers to cause a denial of service
(segmentation fault) or execute arbitrary code via a crafted RAR archive.
Obtained from: Debian (link in the patch file)
MFH: 2018Q1
Security: 7a2e0063-0e4e-11e8-94c0-5453ed2e2b49
Add patch from CVE-2017-17969
Heap-based buffer overflow in 7zip/Compress/ShrinkDecoder.cpp.
Obtained from: Debian (link in the actual patch)
MFH: 2018Q1
Security: 6d337396-0e4a-11e8-94c0-5453ed2e2b49
Add a patch to fix the build with Clang 6.0.
../../../../CPP/Windows/ErrorMsg.cpp:24:10: error: case value evaluates to
-2147024809, which cannot be narrowed to type 'DWORD' (aka 'unsigned int')
[-Wc++11-narrowing]
case E_INVALIDARG : txt = "E_INVALIDARG"; break ;
^
../../../../CPP/Common/MyWindows.h:89:22: note: expanded from macro
'E_INVALIDARG'
#define E_INVALIDARG ((HRESULT)0x80070057L)
^
HRESULT causes the macro to be parsed as a signed long, so we need to force it
to be checked as an unsigned long instead.
PR: 224930
Pass -fPIC on armv7 as well.
This fixes the following build error:
/usr/bin/ld: 7zEncode.o(.text+0x2d04): unresolvable R_ARM_MOVW_ABS_NC relocation
against symbol `_ZTIi@@CXXABI_1.3'
/usr/bin/ld: final link failed: Nonrepresentable section on output
c++: error: linker command failed with exit code 1 (use -v to see invocation)
PR: 222852
Submitted by: guyyur@gmail.com
Begin deorbit burn of ia64. We have not attempted to build packages for
it for many years.
While here, alphabetize ARCHs, pet portlint, and modernize usages.
Approved by: portmgr (tier-2 blanket)
Add patches for CVE-2016-2334 and CVE-2016-2335.
While here, use PORTREVISION?= instead of PORTREVISION= to avoid needlessly
bumping PORTREVISION in archivers/p7zip-codec-rar.
PR: 211114
Submitted by: Piotr Kubaj <pkubaj@anongoth.pl>
MFH: 2016Q3
Security: a9bcaf57-4a7b-11e6-97f7-5453ed2e2b49
Security: d706a3a3-4a7c-11e6-97f7-5453ed2e2b49
It turned out -fPIC is required on sparc64 as well: it dumps core without
it on extraction, which turn breaks e.g. `sysutils/namefix' port. Do not
bump port revision again as it was bumped just couple of hours ago, which
is just too small in Tier-2 land for which we do not produce any packages
anyways.
Tested on: flame
Compile with -fPIC on PowerPC, otherwise resulting binaries are broken:
Can't load '/usr/local/bin/../libexec/p7zip/7z.dll'
(/usr/local/bin/../libexec/p7zip/7z.so: Unsupported relocation type 10
in non-PLT relocations)
Adds -fPIC to CFLAGS_aarch64 to a number of ports that already have it
in the amd64 CFLAGS and are failing to build.
Approved by: bapt
Differential Revision: https://reviews.freebsd.org/D3321
Reduce unnecessary bsd.port.options.mk inclusions by using OPTIONS helpers.
For liborange, reverse the logic, as I'm pretty sure the OPTIONS were being
used to disable the selected options.
Approved by: portmgr (blanket)
Install 7z.so, needed for manipulating all archive formats but RAR.
It was missed during the update in r338410 and basically made p7zip stop
handling any archive type.
Reported by: Green Dog <fiziologus@gmail.com>
Pointy hat to: rakuco
- Modernize and simplify the archivers/p7zip port's Makefile by getting rid
of some sed calls, supporting staging.
- Set LICENSE for the port. [1]
- Get rid of the MINIMAL and MODULES options. They were not very useful and
its handling was needlessly complicating the Makefile logic. We now always
build as if MINIMAL was unset.
- Stop installing the p7zip and Client7z wrappers.
- Move the installation of the RAR decompression codec to
archivers/p7zip-codec-rar, as its source code uses a more restrictive
license than the LGPL21 used for the rest of the code base.
PR: ports/185238 [1]
Submitted by: Hardy Schumacher <hardy.schumacher@gmx.de> [1]
- hw.ncpu seems to be an int, certainly not a size_t...
(This should fix issues on 64 bit big-endian archs, i.e. sparc64.)
- bump PORTREVISION
Noticed by: naddy
Fix post-patch: sed(1) expression s/// cannot receive tokens with
/ in their composition which breaks C{C,XX} with path components
such as those used by users of devel/ccache, e.g.,
CC=/usr/local/libexec/ccache/cc
Approved by: maintainer
update to 4.13.
o Ressurect pkg-plist to support to make modules optional. 25 lines
out of 31 are wrapped with %%MODULES%% which can be controlled by
WITHOUT_MODULES knob. The modules support more codecs and formats
than stand-alone binary.
o Install 7za to libexec and wrap it with script to support sfx
creation. 7za and .sfx should be placed in the same directory as 7z
and modules do.
o Wrapper script executes corresponding binary (7z or 7za.)
In WITHOUT_MODULES case, it can be called by 7z or 7za but always
executes 7za. This is compatible action for previous port.
o Turn BROKEN to IGNORE. There is no hope to compile this software in
RELENG_4. And correct quotation for this change.
Approved by: maintainer