aboutsummaryrefslogtreecommitdiff
path: root/mail/dcc-dccd/Makefile
diff options
context:
space:
mode:
authorPav Lucistnik <pav@FreeBSD.org>2004-11-21 02:35:46 +0000
committerPav Lucistnik <pav@FreeBSD.org>2004-11-21 02:35:46 +0000
commit7794504fc85aa68fa087f3627b01544fe82e4b70 (patch)
treefb5c2ea100b3601705f65bd3b39233a8e9b6eb90 /mail/dcc-dccd/Makefile
parent45d204660fc18a9d1d35821146125cdb57a36130 (diff)
downloadports-7794504fc85aa68fa087f3627b01544fe82e4b70.tar.gz
ports-7794504fc85aa68fa087f3627b01544fe82e4b70.zip
Notes
Diffstat (limited to 'mail/dcc-dccd/Makefile')
-rw-r--r--mail/dcc-dccd/Makefile83
1 files changed, 78 insertions, 5 deletions
diff --git a/mail/dcc-dccd/Makefile b/mail/dcc-dccd/Makefile
index 8e45f4a1eab3..e7c7cddf5f50 100644
--- a/mail/dcc-dccd/Makefile
+++ b/mail/dcc-dccd/Makefile
@@ -6,7 +6,7 @@
#
PORTNAME= dcc-dccd
-PORTVERSION= 1.2.48
+PORTVERSION= 1.2.58
CATEGORIES= mail
MASTER_SITES= http://www.rhyolite.com/anti-spam/dcc/source/old/ \
http://www.wa.apana.org.au/~dean/sources/ \
@@ -18,19 +18,80 @@ COMMENT= Distributed Checksum Clearinghouse procmail, sendmail support
USE_REINPLACE= yes
HAS_CONFIGURE= yes
-CONFIGURE_ARGS= --homedir=${PREFIX}/dcc
MANCOMPRESSED= yes
MAN8= cdcc.8 dbclean.8 dblist.8 dcc.8 dccd.8 dccifd.8 dccm.8 \
dccproc.8 dccsight.8
-.if exists(/usr/lib/libmilter.a) || exists(${LOCALBASE}/lib/libmilter.a)
+PKGINSTALL= ${WRKDIR}/pkg-install
+PKGDEINSTALL= ${WRKDIR}/pkg-deinstall
+
+#
+# User for dcc files and SUID binaries
+#
+DCCUSER?= dcc
+DCCUID?= 112
+DCCGROUP?= dcc
+DCCGID?= 112
+
+#
+# You can choose the sendmail to be used by specifying
+#
+# WITH_SENDMAIL_BASE=yes
+# or
+# WITH_SENDMAIL_PORT=yes
+#
+
+# if no preference was set, check for an up to date base version
+# but give an installed port preference over it.
+
+HOMEDIR= ${PREFIX}/dcc
+CONFIGURE_ARGS= --homedir=${HOMEDIR}
+
+.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
+BROKEN= "Base system sendmail not found or too old, rebuild with WITH_SENDMAIL_PORT=yes"
+.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 --disable-dccifd
+CONFIGURE_ARGS+= --disable-dccm
PLIST_SUB+= WITH_SENDMAIL="@comment "
.endif
-.include <bsd.port.pre.mk>
+.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'
post-patch:
${FIND} ${WRKSRC} -type f -exec \
@@ -39,4 +100,16 @@ post-patch:
${REINPLACE_CMD} -e 's,FreeBSD)\n\tPTHREAD_LDFLAGS,FreeBSD)\n\tDCC_CFLAGS="${PTHREAD_CFLAGS} $$DCC_CFLAGS"\n\tPTHREAD_LDFLAGS,g' ${WRKSRC}/configure
${REINPLACE_CMD} -e 's,PTHREAD_LIBS="$$PTHREAD_LIBS -lc_r,PTHREAD_LIBS=" ${PTHREAD_LIBS},g' ${WRKSRC}/configure
+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:
+ @[ -s ${HOMEDIR}/dcc_conf ] || \
+ ${CP} ${HOMEDIR}/dcc_conf.dist ${HOMEDIR}/dcc_conf
+
.include <bsd.port.post.mk>