aboutsummaryrefslogtreecommitdiff
path: root/mail/dcc-dccd/Makefile
blob: b973fac3717a96d029ee03dae325d4521a17580e (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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# New ports collection makefile for:	mail/dcc-dccd
# Date created:		Wed Oct 9 19:30:00 WST 2002
# Whom:			Dean Hollister <dean@odyssey.apana.org.au>
#
# $FreeBSD$
#

PORTNAME=	dcc-dccd
PORTVERSION=	1.3.42
CATEGORIES=	mail
MASTER_SITES=	http://www.rhyolite.com/anti-spam/dcc/source/ \
		http://www.wa.apana.org.au/~dean/sources/
EXTRACT_SUFX=	.tar.Z

MAINTAINER=	dean@odyssey.apana.org.au
COMMENT=	Distributed Checksum Clearinghouse procmail, sendmail support

HAS_CONFIGURE=	yes
MANCOMPRESSED=	yes
MAN8=		cdcc.8 dbclean.8 dblist.8 dcc.8 dccd.8 dccifd.8 dccm.8 \
		dccproc.8 dccsight.8

PKGINSTALL=	${WRKDIR}/pkg-install
PKGDEINSTALL=	${WRKDIR}/pkg-deinstall

#
# User for dcc files and SUID binaries
#
DCCUSER?=	dcc
DCCUID?=	112
DCCGROUP?=	dcc
DCCGID?=	112

#
# Use configure script to set locations of all files. Use of
# sed scripting breaks things.
#

CONFIGURE_ARGS=	--homedir=${PREFIX}/dcc --bindir=${PREFIX}/bin --mandir=${PREFIX}/man --with-rundir=/var/run

.include <bsd.port.pre.mk>

.if !defined(WITH_SENDMAIL_BASE) && !defined(WITH_SENDMAIL_PORT) && !exists(${LOCALBASE}/lib/libmilter.a)
WITH_SENDMAIL_BASE=yes
.endif

.if defined(WITH_SENDMAIL_BASE)
.if exists(/usr/lib/libmilter.a)
MILTERBASE=	/usr
WITH_SENDMAIL=	yes
.else
.if !defined(WITHOUT_SENDMAIL)
IGNORE=		base system sendmail not found or too old, rebuild with WITH_SENDMAIL_PORT=yes or WITHOUT_SENDMAIL=yes
.endif
.endif
.else
BUILD_DEPENDS+=	${LOCALBASE}/lib/libmilter.a:${PORTSDIR}/mail/sendmail
MILTERBASE?=	${LOCALBASE}
WITH_SENDMAIL=	yes
.endif

.if !defined(WITHOUT_SENDMAIL) && defined(WITH_SENDMAIL)
MILTERINC=	${MILTERBASE}/include
MILTERLIB=	${MILTERBASE}/lib

CPPFLAGS+=	-I${MILTERINC}
LDFLAGS+=	-L${MILTERLIB}

CONFIGURE_ENV+=	CPPFLAGS="${CPPFLAGS}" LDFLAGS="${LDFLAGS}"
CONFIGURE_ARGS+=	--with-sendmail=${MILTERBASE}
PLIST_SUB+=	WITH_SENDMAIL=""
.else
CONFIGURE_ARGS+=	--disable-dccm
PLIST_SUB+=	WITH_SENDMAIL="@comment "
.endif

.if defined(WITHOUT_DCCIFD)
CONFIGURE_ARGS+=	--disable-dccifd
PLIST_SUB+=	WITH_DCCIFD="@comment "
.else
PLIST_SUB+=	WITH_DCCIFD=""
.endif

CONFIGURE_ARGS+=	--with-uid=${DCCUSER}

SED_SCRIPT=	-e 's|%%PREFIX%%|${PREFIX}|g' \
		-e 's|%%DCCUSER%%|${DCCUSER}|g' -e 's|%%DCCUID%%|${DCCUID}|g' \
		-e 's|%%DCCGROUP%%|${DCCGROUP}|g' -e 's|%%DCCGID%%|${DCCGID}|g'

pre-everything::
	@${ECHO_MSG} ' '
	@${ECHO_MSG} 'You can choose the sendmail to be used by specifying:'
	@${ECHO_MSG} ' '
	@${ECHO_MSG} 'WITH_SENDMAIL_BASE=yes'
	@${ECHO_MSG} 'or'
	@${ECHO_MSG} 'WITH_SENDMAIL_PORT=yes'
	@${ECHO_MSG} 'or'
	@${ECHO_MSG} 'WITHOUT_SENDMAIL=yes'
	@${ECHO_MSG} ''

post-build:
	@${SED} ${SED_SCRIPT} ${PKGDIR}/pkg-install >${PKGINSTALL}
	@${SED} ${SED_SCRIPT} ${PKGDIR}/pkg-deinstall >${PKGDEINSTALL}

pre-install:
	@${SETENV} PKG_PREFIX=${PREFIX} \
	${SH} ${PKGINSTALL} ${PREFIX} PRE-INSTALL

post-install:
.if !exists(${PREFIX}/dcc/map)
	${CP} ${PREFIX}/dcc/map ${PREFIX}/dcc/map.dist
	@${CHOWN} ${DCCUSER} ${PREFIX}/dcc/map.dist
.endif

.include <bsd.port.post.mk>