diff options
author | sf <sf@FreeBSD.org> | 2004-12-28 10:46:57 +0800 |
---|---|---|
committer | sf <sf@FreeBSD.org> | 2004-12-28 10:46:57 +0800 |
commit | d93e6b7b73ef2961acf9c6f5058c4ca7be782b8d (patch) | |
tree | 6b4d80513902bb07fc49ed100389ee419fd5934d | |
parent | a74f7962f991cf71e5408a0cb2b04ac6434ab14f (diff) | |
download | freebsd-ports-gnome-d93e6b7b73ef2961acf9c6f5058c4ca7be782b8d.tar.gz freebsd-ports-gnome-d93e6b7b73ef2961acf9c6f5058c4ca7be782b8d.tar.zst freebsd-ports-gnome-d93e6b7b73ef2961acf9c6f5058c4ca7be782b8d.zip |
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
-rw-r--r-- | archivers/p7zip/Makefile | 33 | ||||
-rw-r--r-- | archivers/p7zip/distinfo | 4 | ||||
-rw-r--r-- | archivers/p7zip/files/7z | 9 | ||||
-rw-r--r-- | archivers/p7zip/pkg-plist | 31 |
4 files changed, 68 insertions, 9 deletions
diff --git a/archivers/p7zip/Makefile b/archivers/p7zip/Makefile index a2adc9624acd..991a4b142fea 100644 --- a/archivers/p7zip/Makefile +++ b/archivers/p7zip/Makefile @@ -6,7 +6,7 @@ # PORTNAME= p7zip -PORTVERSION= 4.12 +PORTVERSION= 4.13 CATEGORIES= archivers MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} MASTER_SITE_SUBDIR= p7zip @@ -20,15 +20,24 @@ USE_GMAKE= yes MAKEFILE= makefile WRKSRC= ${WRKDIR}/${PORTNAME}_${PORTVERSION} -PLIST_FILES= "@unexec ${RM} %D/bin/7z" -PLIST_FILES+= bin/7za -PLIST_FILES+= "@exec ${LN} -sf 7za %D/bin/7z" PORTDOCS= * +DLLDIR= ${PREFIX}/libexec/p7zip +7ZBIN= 7za 7zCon.sfx + +.if defined(WITHOUT_MODULES) +PLIST_SUB= MODULES="@comment " +ALL_TARGET= 7za sfx +.else +PLIST_SUB= MODULES="" +ALL_TARGET= all2 +7ZBIN+= 7z +.endif + .include <bsd.port.pre.mk> .if ${OSVERSION} < 500039 -BROKEN= 'Requires wchar functions (mbrtowc(3) etc.) for compilation' +IGNORE= requires wchar functions (mbrtowc(3) etc.) for compilation .endif post-patch: @@ -40,8 +49,18 @@ post-patch: ${WRKSRC}/makefile.freebsd_x86 > ${WRKSRC}/makefile.machine do-install: - ${INSTALL_PROGRAM} ${WRKSRC}/bin/7za ${PREFIX}/bin - ${LN} -sf 7za ${PREFIX}/bin/7z + ${MKDIR} ${DLLDIR} +.for f in ${7ZBIN} + ${INSTALL_PROGRAM} ${WRKSRC}/bin/${f} ${DLLDIR} +.endfor + ${INSTALL_SCRIPT} ${FILESDIR}/7z ${PREFIX}/bin + ${LN} -sf 7z ${PREFIX}/bin/7za +.if !defined(WITHOUT_MODULES) +.for f in Codecs Formats + ${MKDIR} ${DLLDIR}/${f} + ${INSTALL_PROGRAM} ${WRKSRC}/bin/${f}/* ${DLLDIR}/${f} +.endfor +.endif .if !defined(NOPORTDOCS) @${MKDIR} ${DOCSDIR} ${PAX} -rw -s,${WRKSRC}/DOCS,, ${WRKSRC}/DOCS ${DOCSDIR} diff --git a/archivers/p7zip/distinfo b/archivers/p7zip/distinfo index 88f0dd643323..ea51be0200b0 100644 --- a/archivers/p7zip/distinfo +++ b/archivers/p7zip/distinfo @@ -1,2 +1,2 @@ -MD5 (p7zip_4.12_src.tar.bz2) = 82d4859d8e3b30a54ac5ad6a12b16e10 -SIZE (p7zip_4.12_src.tar.bz2) = 454996 +MD5 (p7zip_4.13_src.tar.bz2) = 980cff8a3357d3ab47527e24ef143e10 +SIZE (p7zip_4.13_src.tar.bz2) = 457094 diff --git a/archivers/p7zip/files/7z b/archivers/p7zip/files/7z new file mode 100644 index 000000000000..c2c5ba19f17e --- /dev/null +++ b/archivers/p7zip/files/7z @@ -0,0 +1,9 @@ +#! /bin/sh + +PROGNAME=${0##*/} +BINPATH=$(dirname $(realpath $0))/../libexec/p7zip +if [ $PROGNAME = "7z" -a ! -x "$BINPATH/7z" -a -x "$BINPATH/7za" ]; then + PROGNAME=7za +fi + +exec "$BINPATH/$PROGNAME" "$@" diff --git a/archivers/p7zip/pkg-plist b/archivers/p7zip/pkg-plist new file mode 100644 index 000000000000..7379af05e809 --- /dev/null +++ b/archivers/p7zip/pkg-plist @@ -0,0 +1,31 @@ +@unexec /bin/rm -f %D/bin/7za +bin/7z +@exec /bin/ln -sf 7z %D/bin/7za +%%MODULES%%libexec/p7zip/7z +libexec/p7zip/7za +libexec/p7zip/7zCon.sfx +%%MODULES%%libexec/p7zip/Codecs/7zAES.dll +%%MODULES%%libexec/p7zip/Codecs/AES.dll +%%MODULES%%libexec/p7zip/Codecs/BZip2.dll +%%MODULES%%libexec/p7zip/Codecs/Branch.dll +%%MODULES%%libexec/p7zip/Codecs/Copy.dll +%%MODULES%%libexec/p7zip/Codecs/Deflate.dll +%%MODULES%%libexec/p7zip/Codecs/Implode.dll +%%MODULES%%libexec/p7zip/Codecs/LZMA.dll +%%MODULES%%libexec/p7zip/Codecs/PPMD.dll +%%MODULES%%libexec/p7zip/Codecs/Swap.dll +%%MODULES%%libexec/p7zip/Formats/7z.dll +%%MODULES%%libexec/p7zip/Formats/Rar.dll +%%MODULES%%libexec/p7zip/Formats/Tar.dll +%%MODULES%%libexec/p7zip/Formats/Zip.dll +%%MODULES%%libexec/p7zip/Formats/arj.dll +%%MODULES%%libexec/p7zip/Formats/bz2.dll +%%MODULES%%libexec/p7zip/Formats/cab.dll +%%MODULES%%libexec/p7zip/Formats/cpio.dll +%%MODULES%%libexec/p7zip/Formats/deb.dll +%%MODULES%%libexec/p7zip/Formats/gz.dll +%%MODULES%%libexec/p7zip/Formats/rpm.dll +%%MODULES%%libexec/p7zip/Formats/split.dll +%%MODULES%%@dirrm libexec/p7zip/Formats +%%MODULES%%@dirrm libexec/p7zip/Codecs +@dirrm libexec/p7zip |