summaryrefslogtreecommitdiffstats
path: root/mail/postgrey/Makefile
blob: 77a3ad1a0edd1d773919858e5c7e4847d784367f (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
84
85
# Created by: Will Andrews <will@FreeBSD.org>
# $FreeBSD$

PORTNAME=	postgrey
PORTVERSION=	1.35
CATEGORIES=	mail
MASTER_SITES=	http://postgrey.schweikert.ch/pub/ \
		http://postgrey.schweikert.ch/pub/old/

MAINTAINER=	ports.maintainer@evilphi.com
COMMENT=	Greylisting policy server for Postfix

LICENSE=	GPLv2

RUN_DEPENDS=	p5-Net-Server>=0:${PORTSDIR}/net/p5-Net-Server \
		p5-IO-Multiplex>=0:${PORTSDIR}/devel/p5-IO-Multiplex \
		p5-Parse-Syslog>=0:${PORTSDIR}/textproc/p5-Parse-Syslog \
		p5-BerkeleyDB>=0:${PORTSDIR}/databases/p5-BerkeleyDB \
		p5-Net-DNS>=0:${PORTSDIR}/dns/p5-Net-DNS

USE_PERL5=	run
USE_RC_SUBR=	${PORTNAME}
NO_BUILD=	yes
POD2MAN?=	pod2man
PORTDOCS=	README Changes README.exim

PG_DBDIR?=	/var/db/postgrey
PG_GROUP?=	postgrey
PG_RUNDIR?=	/var/run/postgrey
PG_USER?=	postgrey

SUB_LIST=	PG_DBDIR=${PG_DBDIR} \
		PG_RUNDIR=${PG_RUNDIR}

PLIST_SUB+=	PG_DBDIR=${PG_DBDIR} \
		PG_GROUP=${PG_GROUP} \
		PG_RUNDIR=${PG_RUNDIR} \
		PG_USER=${PG_USER}

USERS=		${PG_USER}
GROUPS=		${PG_GROUP}

MANPAGES=	postgrey.1 policy-test.1 postgreyreport.1
ETCFILES=	whitelist_clients whitelist_recipients

USE_RC_SUBR=	postgrey

USES=		shebangfix perl5
SHEBANG_FILES=	postgrey policy-test contrib/postgreyreport

OPTIONS_DEFINE=	DOCS

.include <bsd.port.options.mk>

post-patch:
	@${REINPLACE_CMD} -e 's#nogroup#${PG_GROUP}#' \
		-e 's#/etc/main.cf#/etc/postfix/main.cf#' ${WRKSRC}/postgrey
	@${REINPLACE_CMD} -e 's#/etc/postfix#${PREFIX}&#' \
		${WRKSRC}/postgrey ${WRKSRC}/postgrey_whitelist_*
	@${REINPLACE_CMD} -e 's#/var/spool/postfix/postgrey#${PG_DBDIR}#' \
		${WRKSRC}/postgrey ${WRKSRC}/contrib/postgreyreport

do-install:
	${POD2MAN} ${WRKSRC}/postgrey ${WRKSRC}/postgrey.1
	${POD2MAN} ${WRKSRC}/policy-test ${WRKSRC}/policy-test.1
	${POD2MAN} ${WRKSRC}/contrib/postgreyreport ${WRKSRC}/postgreyreport.1
	${INSTALL_SCRIPT} ${WRKSRC}/postgrey ${STAGEDIR}${PREFIX}/sbin
	${INSTALL_SCRIPT} ${WRKSRC}/policy-test ${STAGEDIR}${PREFIX}/sbin
	${INSTALL_SCRIPT} ${WRKSRC}/contrib/postgreyreport \
		${STAGEDIR}${PREFIX}/sbin
	@${MKDIR} ${STAGEDIR}${PREFIX}/etc/postfix ${STAGEDIR}/${PG_DBDIR} \
		${STAGEDIR}/${PG_RUNDIR}
.for i in ${ETCFILES}
	${INSTALL_DATA} ${WRKSRC}/postgrey_${i} \
		${STAGEDIR}${PREFIX}/etc/postfix/postgrey_${i}.sample
.endfor

.if ${PORT_OPTIONS:MDOCS}
	@${MKDIR} ${STAGEDIR}${DOCSDIR}
	@cd ${WRKSRC} && ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR}
.endif
	@cd ${WRKSRC} && \
		${INSTALL_MAN} ${MANPAGES} ${STAGEDIR}${MANPREFIX}/man/man1

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