summaryrefslogtreecommitdiff
path: root/security/cyrus-sasl/Makefile
blob: 1a9527156eb91858696e683c55970174cb8278f6 (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
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
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
# $NetBSD: Makefile,v 1.12 2001/02/17 17:49:41 wiz Exp $

DISTNAME=		cyrus-sasl-1.5.24
PKGNAME=		${DISTNAME}nb3
CATEGORIES=		security
MASTER_SITES=		ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ \
			ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/OLD-VERSIONS/sasl/

MAINTAINER=		jlam@netbsd.org
HOMEPAGE=		http://asg2.web.cmu.edu/sasl/
COMMENT=		Simple Authentication and Security Layer

BUILD_DEPENDS+=		${LOCALBASE}/bin/automake:../../devel/automake

GNU_CONFIGURE=		# defined
USE_SSL=		# defined
USE_GMAKE=		# defined
USE_LIBTOOL=		# defined
LTCONFIG_OVERRIDE=	${WRKSRC}/config/ltconfig

.include "../../mk/bsd.prefs.mk"

# CYRUS_USER		username of the Cyrus administrator
# CYRUS_GROUP		group of the Cyrus administrator
#
CYRUS_USER?=		cyrus
CYRUS_GROUP?=		mail

BUILD_DEFS+=		CYRUS_USER CYRUS_GROUP

PLIST_SRC=		${PKGDIR}/PLIST.common

CONFIGURE_ARGS+=	--with-pwcheck=/var/pwcheck
CONFIGURE_ARGS+=	--with-dblib=ndbm
CONFIGURE_ARGS+=	--with-dbpath=/etc/sasldb
CONFIGURE_ARGS+=	--with-plugindir=${PREFIX}/lib/sasl
CONFIGURE_ARGS+=	--with-rc4=${SSLBASE}

.if defined(USE_PAM)
CONFIGURE_ARGS+=	--with-pam=${PREFIX}
DEPENDS+=		PAM-*:../../security/PAM
.endif

# Authentication mechanisms
CONFIGURE_ARGS+=	--enable-anon		# ANONYMOUS
CONFIGURE_ARGS+=	--enable-cram		# CRAM-MD5
CONFIGURE_ARGS+=	--enable-digest		# DIGEST-MD5
CONFIGURE_ARGS+=	--disable-login		# --- no LOGIN
CONFIGURE_ARGS+=	--enable-plain		# PLAIN
CONFIGURE_ARGS+=	--disable-scram		# --- no SCRAM-MD5
CONFIGURE_ARGS+=	--disable-sia		# --- no SIA
CONFIGURE_ARGS+=	--disable-srp		# --- no SRP
CONFIGURE_ARGS+=	--disable-x509		# --- no X.509

.if defined(KERBEROS) && ${KERBEROS} == 4
CONFIGURE_ARGS+=	--enable-krb4=${PREFIX}	# KERBEROS_V4
DEPENDS+=		kth-krb4-*:../../security/kth-krb4
PLIST_SRC+=		${PKGDIR}/PLIST.krb4
.else
CONFIGURE_ARGS+=	--disable-krb4		# --- no KERBEROS_V4
.endif

.if ${OPSYS} == "SunOS" || (defined(KERBEROS) && ${KERBEROS} == 5)
USE_KERBEROS=		# defined
CONFIGURE_ARGS+=	--enable-gssapi=/usr	# GSSAPI
PLIST_SRC+=		${PKGDIR}/PLIST.krb5
.else
CONFIGURE_ARGS+=	--disable-gssapi	# --- no GSSAPI
.endif

PLIST_SRC+=		${PKGDIR}/PLIST.plugins

.if ${OPSYS} == "NetBSD"
.if exists(/usr/sbin/user)
ADDUSER=		/usr/sbin/useradd
ADDGROUP=		/usr/sbin/groupadd
.else
DEPENDS+=		user>=20000313:../../sysutils/user
ADDUSER=		${LOCALBASE}/sbin/useradd
ADDGROUP=		${LOCALBASE}/sbin/groupadd
.endif
.elif ${OPSYS} == "SunOS"
ADDUSER=		useradd
ADDGROUP=		groupadd
.endif

DEINSTALL_FILE=		${WRKDIR}/DEINSTALL
INSTALL_FILE=		${WRKDIR}/INSTALL

HTMLDIR=		${PREFIX}/share/doc/html/cyrus-sasl

post-extract:
	cd ${WRKSRC}; ${RM} -f include/md5.h
	${CP} ${FILESDIR}/sasl-config.in ${WRKSRC}/plugins

pre-configure:
	cd ${WRKSRC} && ${LOCALBASE}/bin/autoheader && ${LOCALBASE}/bin/autoconf && ${LOCALBASE}/bin/automake --gnu

post-build:
	${SED}	-e "s,@PREFIX@,${PREFIX},g" \
		< ${FILESDIR}/sasl_pwcheck.sh > ${WRKDIR}/sasl_pwcheck.sh

pre-install:
	${SED}	-e "s,@CYRUS_USER@,${CYRUS_USER},g" \
		-e "s,@CYRUS_GROUP@,${CYRUS_GROUP},g" \
		-e "s,@CAT@,${CAT},g" \
		-e "s,@RM@,${RM},g" \
		< ${PKGDIR}/DEINSTALL > ${DEINSTALL_FILE}
	${SED}	-e "s,@CYRUS_USER@,${CYRUS_USER},g" \
		-e "s,@CYRUS_GROUP@,${CYRUS_GROUP},g" \
		-e "s,@ADDUSER@,${ADDUSER},g" \
		-e "s,@ADDGROUP@,${ADDGROUP},g" \
		-e "s,@CHGRP@,${CHGRP},g" \
		-e "s,@CHMOD@,${CHMOD},g" \
		-e "s,@CHOWN@,${CHOWN},g" \
		-e "s,@GREP@,${GREP},g" \
		-e "s,@MKDIR@,${MKDIR},g" \
		-e "s,@RM@,${RM},g" \
		-e "s,@TOUCH@,${TOUCH},g" \
		< ${PKGDIR}/INSTALL > ${INSTALL_FILE}
	PKG_PREFIX=${PREFIX} ${SH} ${INSTALL_FILE} ${PKGNAME} PRE-INSTALL

post-install:
	${INSTALL_SCRIPT} ${WRKDIR}/sasl_pwcheck.sh \
		${PREFIX}/etc/rc.d/sasl_pwcheck
	${INSTALL_DATA_DIR} ${HTMLDIR}
	cd ${WRKSRC}/doc; ${INSTALL_DATA} *.html *.txt ${HTMLDIR}
	PKG_PREFIX=${PREFIX} ${SH} ${INSTALL_FILE} ${PKGNAME} POST-INSTALL

.include "../../mk/bsd.pkg.mk"