summaryrefslogtreecommitdiffstats
path: root/mail/websieve/Makefile
blob: 33eeab5ea7f5ac0cb8bf92de59a45347d6ff6838 (plain)
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
73
74
75
76
77
78
79
80
81
82
83
# Created by: Oliver Eikemeier <eikemeier@fillmore-labs.com>
# $FreeBSD$

PORTNAME=	websieve
PORTVERSION=	0.63.a
PORTREVISION=	3
CATEGORIES=	mail
MASTER_SITES=	SF/${PORTNAME}/${PORTNAME}/${SIEVEVERSION}
DISTNAME?=	${PORTNAME}-${SIEVEVERSION}

MAINTAINER=	ports@FreeBSD.org
COMMENT=	Web based Cyrus IMAP user admin client

LICENSE=	GPLv2
LICENSE_FILE=	${WRKSRC}/GPL

SIEVEVERSION=	${PORTVERSION:S/.//g}

USES=		perl5 shebangfix
USE_PERL5=	run
SHEBANG_FILES=	websieve.pl

NO_BUILD=	yes
NO_ARCH=	yes

OPTIONS_SINGLE=	TYPE
OPTIONS_SINGLE_TYPE=	PERL CYRUS
OPTIONS_RADIO=	CYRDEP
OPTIONS_RADIO_CYRDEP=	CYRUS_IMAPD_23 CYRUS_IMAPD_24 CYRUS_IMAPD_25 \
			CYRUS_IMAPD_30
OPTIONS_DEFAULT=	CYRUS CYRUS_IMAPD_24

TYPE_DESC=	Choose which sieve backend to use
PERL_DESC=	Depend on generic Perl modules
CYRUS_DESC=	Depend on Cyrus IMAPd Perl modules
CYRDEP_DESC=	Which version of Cyrus IMAPd to depend on
CYRUS_IMAPD_23_DESC=	Cyrus IMAPd version 2.3.x
CYRUS_IMAPD_24_DESC=	Cyrus IMAPd version 2.4.x
CYRUS_IMAPD_25_DESC=	Cyrus IMAPd version 2.5.x
CYRUS_IMAPD_30_DESC=	Cyrus IMAPd version 3.0.x

CYRUS_IMAPD_30_RUN_DEPENDS=	${SITE_ARCH}/Cyrus/SIEVE/managesieve.pm:mail/cyrus-imapd30
CYRUS_IMAPD_25_RUN_DEPENDS=	${SITE_ARCH}/Cyrus/SIEVE/managesieve.pm:mail/cyrus-imapd25
CYRUS_IMAPD_24_RUN_DEPENDS=	${SITE_ARCH}/Cyrus/SIEVE/managesieve.pm:mail/cyrus-imapd24
CYRUS_IMAPD_23_RUN_DEPENDS=	${SITE_ARCH}/Cyrus/SIEVE/managesieve.pm:mail/cyrus-imapd23

PERL_RUN_DEPENDS=	p5-IMAP-Admin>=0:mail/p5-IMAP-Admin \
			p5-IMAP-Sieve>=0:mail/p5-IMAP-Sieve

.include <bsd.port.options.mk>

.if ${PORT_OPTIONS:MCYRUS}
FUNCLIB_PL=	funclib.cyrus
.else
FUNCLIB_PL=	funclib.pl
.endif

SUB_FILES=	pkg-message

_check-config: my-check-config
my-check-config:
.if ${PORT_OPTIONS:MPERL}
.if !empty(PORT_OPTIONS:MCYRUS_IMAPD_23) || \
    !empty(PORT_OPTIONS:MCYRUS_IMAPD_24) || \
    !empty(PORT_OPTIONS:MCYRUS_IMAPD_25) || \
    !empty(PORT_OPTIONS:MCYRUS_IMAPD_30)
	@${ECHO_MSG} "====> You cannot select a dependency on cyrus with the PERL option"
_CHECK_CONFIG_ERROR=	true
.endif
.endif

post-configure:
	@${REINPLACE_CMD} -e "s,require[ 	]*'\./\([^']*\)',require '${PREFIX}/etc/websieve/\1'," \
		${WRKSRC}/websieve.pl

do-install:
	@${MKDIR} ${STAGEDIR}${WWWDIR}
	${INSTALL_SCRIPT} ${WRKSRC}/websieve.pl ${STAGEDIR}${WWWDIR}/websieve.pl
	@${MKDIR} ${STAGEDIR}${PREFIX}/etc/websieve
	${INSTALL_DATA} ${WRKSRC}/websieve.conf ${STAGEDIR}${PREFIX}/etc/websieve/websieve.conf.sample
	${INSTALL_DATA} ${WRKSRC}/${FUNCLIB_PL} ${STAGEDIR}${PREFIX}/etc/websieve/funclib.pl

.include <bsd.port.mk>
OpenPOWER on IntegriCloud