aboutsummaryrefslogtreecommitdiffstats
path: root/archivers/p7zip/Makefile
blob: abb36c39788edae163ca305ef989f12c6230686c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
# New ports collection makefile for:    p7zip
# Date created:         Sun Jul 18 15:07:26 CEST 2004
# Whom:             Juergen Lock <nox@jelal.kn-bremen.de>
#
# $FreeBSD$
#

PORTNAME=   p7zip
PORTVERSION=    4.45
CATEGORIES= archivers
MASTER_SITES=   SF
DISTNAME=   ${PORTNAME}_${PORTVERSION}_src_all

MAINTAINER= nox@FreeBSD.org
COMMENT=    File archiver with high compression ratio

USE_BZIP2=  yes
MAKEFILE=   makefile
WRKSRC=     ${WRKDIR}/${PORTNAME}_${PORTVERSION}
MAN1=       7z.1 7za.1 7zr.1

DLLDIR=     ${PREFIX}/libexec/p7zip
PLIST_SUB=  MODULES=""
ALL_TARGET= 7z 7za 7zr Client7z sfx
7ZBIN=      7z 7za 7zr Client7z 7zCon.sfx
.if defined(WITHOUT_MODULES)
PLIST_SUB=  MODULES="@comment "
ALL_TARGET= 7za 7zr sfx
7ZBIN=      7za 7zr 7zCon.sfx
.endif

.include <bsd.port.pre.mk>

.if ${ARCH} == "amd64" || ${ARCH} == "ia64"
CFLAGS+=    -fPIC
.endif

post-patch:
    ${SED} -e 's!-O!${CFLAGS} ${PTHREAD_CFLAGS}!' \
           -e 's!g\+\+!${CXX}!' \
           -e 's!gcc!${CC}!' \
           -e '/LITTLE_ENDIAN/d' \
           -e 's/-D_LARGEFILE_SOURCE//' \
           -e 's/-D_FILE_OFFSET_BITS=64//' \
           -e 's/-lc_r/${PTHREAD_LIBS}/' \
           ${WRKSRC}/makefile.freebsd > ${WRKSRC}/makefile.machine
    ${REINPLACE_CMD} -e 's|/usr/share/doc/p7zip/DOCS|${DOCSDIR}|' \
        ${WRKSRC}/man1/*
    ${MV} ${WRKSRC}/README ${WRKSRC}/DOCS/readme.unix

do-install:
    ${INSTALL} -d ${DLLDIR}/
    ${INSTALL_PROGRAM} ${7ZBIN:S|^|${WRKSRC}/bin/|} ${DLLDIR}/
    ${INSTALL_SCRIPT} ${FILESDIR}/7z ${PREFIX}/bin/
    ${LN} -sf 7z ${PREFIX}/bin/7za
    ${LN} -sf 7z ${PREFIX}/bin/7zr
    ${INSTALL_SCRIPT} ${WRKSRC}/contrib/gzip-like_CLI_wrapper_for_7z/p7zip ${PREFIX}/bin/
.if !defined(WITHOUT_MODULES)
    ${INSTALL} -d ${DLLDIR}/Codecs/
    ${INSTALL_PROGRAM} ${WRKSRC}/bin/Codecs/Rar29.so ${DLLDIR}/Codecs/
    ${INSTALL_PROGRAM} ${WRKSRC}/bin/7z.so ${DLLDIR}/
    ${INSTALL_PROGRAM} ${WRKSRC}/bin/7za.so ${DLLDIR}/
.endif
.if !defined(NOPORTDOCS)
    @${INSTALL} -d ${DOCSDIR}/
    ${CP} -R ${WRKSRC}/DOCS/ ${DOCSDIR}/
    ${CHOWN} -R ${SHAREOWN}:${SHAREGRP} ${DOCSDIR}/
    ${CHMOD} -R u=rwX,go=rX ${DOCSDIR}/
.endif
    ${INSTALL_MAN} ${MAN1:S,^,${WRKSRC}/man1/,} ${MAN1PREFIX}/man/man1/

.include <bsd.port.post.mk>