# $FreeBSD$ PORTNAME= cyrus-sasl PORTVERSION= 2.1.26 PORTREVISION= 9 CATEGORIES= security ipv6 MASTER_SITES= ftp://ftp.cyrusimap.org/cyrus-sasl/ \ http://cyrusimap.org/releases/ MAINTAINER= ume@FreeBSD.org COMMENT= RFC 2222 SASL (Simple Authentication and Security Layer) LICENSE= BSD4CLAUSE LICENSE_FILE= ${WRKSRC}/COPYING USES= cpe libtool:keepla pathfix perl5 USE_PERL5= patch USE_LDCONFIG= yes USE_OPENSSL= yes GNU_CONFIGURE= yes CONFIGURE_ARGS= --sysconfdir=${PREFIX}/etc \ --with-configdir=${PREFIX}/lib/sasl2:${PREFIX}/etc/sasl2 \ --with-plugindir=${PREFIX}/lib/sasl2 \ --with-dbpath=${PREFIX}/etc/sasldb2 \ --with-lib-subdir=lib \ --with-pkgconfigdir=${PREFIX}/libdata/pkgconfig \ --includedir=${PREFIX}/include \ --enable-static \ --enable-auth-sasldb \ --with-rc4=openssl \ --with-saslauthd=${SASLAUTHD_RUNPATH} \ --disable-gssapi \ --disable-krb4 MAKE_ENV+= INSTALL_STRIP_FLAG=${STRIP} DOCSDIR= ${PREFIX}/share/doc/${PORTNAME}2 CPE_VENDOR= cmu NO_OPTIONS_SORT= yes OPTIONS_DEFINE= ALWAYSTRUE AUTHDAEMOND DOCS KEEP_DB_OPEN \ OBSOLETE_CRAM_ATTR BDB MYSQL PGSQL OPTIONS_RADIO= SQLITE OPTIONS_RADIO_SQLITE= SQLITE2 SQLITE3 OPTIONS_GROUP= MECH OPTIONS_GROUP_MECH= CRAM DIGEST LOGIN NTLM OTP PLAIN SCRAM OPTIONS_DEFAULT= AUTHDAEMOND OBSOLETE_CRAM_ATTR CRAM DIGEST \ LOGIN NTLM OTP PLAIN SCRAM OPTIONS_SUB= yes ALWAYSTRUE_DESC= the alwaystrue password verifier ALWAYSTRUE_CONFIGURE_ENABLE=alwaystrue AUTHDAEMOND_DESC= use of authdaemon AUTHDAEMOND_CONFIGURE_ON=--with-authdaemond=/var/run/authdaemond/socket AUTHDAEMOND_CONFIGURE_OFF=--with-authdaemond=no KEEP_DB_OPEN_DESC= Keep handle to Berkeley DB open KEEP_DB_OPEN_CONFIGURE_ENABLE=keep-db-open OBSOLETE_CRAM_ATTR_DESC=cmusaslsecretCRAM-MD5 property OBSOLETE_CRAM_ATTR_CONFIGURE_OFF=--enable-obsolete_cram_attr=no BDB_USE= BDB=yes BDB_CONFIGURE_ON= --with-dblib=berkeley \ --with-bdb-libdir=${BDB_LIB_DIR} \ --with-bdb-incdir=${BDB_INCLUDE_DIR} \ --with-bdb=${BDB_LIB_NAME} BDB_CONFIGURE_OFF= --with-dblib=ndbm MYSQL_USE= MYSQL=yes MYSQL_CONFIGURE_ON= --with-mysql=${LOCALBASE} MYSQL_CONFIGURE_OFF= --without-mysql PGSQL_USES= pgsql PGSQL_CONFIGURE_ON= --with-pgsql=${LOCALBASE} PGSQL_CONFIGURE_OFF= --without-pgsql SQLITE2_DESC= SQLite 2 database SQLITE2_USE= SQLITE=2 SQLITE2_CONFIGURE_ON= --with-sqlite=${LOCALBASE} SQLITE2_CONFIGURE_OFF= --without-sqlite SQLITE3_USE= SQLITE=3 SQLITE3_CONFIGURE_ON= --with-sqlite3=${LOCALBASE} SQLITE3_CONFIGURE_OFF= --without-sqlite3 CRAM_DESC= CRAM-MD5 authentication CRAM_CONFIGURE_ENABLE= cram DIGEST_DESC= DIGEST-MD5 authentication DIGEST_CONFIGURE_ENABLE=digest LOGIN_DESC= LOGIN authentication LOGIN_CONFIGURE_ENABLE= login NTLM_DESC= NTLM authentication NTLM_CONFIGURE_ENABLE= ntlm OTP_DESC= OTP authentication OTP_CONFIGURE_ENABLE= otp PLAIN_DESC= PLAIN authentication PLAIN_CONFIGURE_ENABLE= plain SCRAM_DESC= SCRAM authentication SCRAM_CONFIGURE_ENABLE= scram .include .if ${PORT_OPTIONS:MBDB} INVALID_BDB_VER=2 SASLDB_NAME= sasldb2 .else SASLDB_NAME= sasldb2.db .endif .if ${PORT_OPTIONS:MMYSQL} || ${PORT_OPTIONS:MPGSQL} || \ ${PORT_OPTIONS:MSQLITE2} || ${PORT_OPTIONS:MSQLITE3} CONFIGURE_ARGS+=--enable-sql .else SQL= "@comment " .endif .if ${ARCH} == "amd64" CPPFLAGS+= -fPIC .endif .if ${OPENSSLBASE} == /usr CONFIGURE_ARGS+=--with-openssl=yes .else CONFIGURE_ARGS+=--with-openssl=${OPENSSLBASE} .endif SASLAUTHD_RUNPATH?= /var/run/saslauthd CYRUS_USER?= cyrus CYRUS_GROUP?= cyrus DOCS= AUTHORS COPYING ChangeLog INSTALL INSTALL.TXT NEWS README DOC2= ONEWS TODO draft-burdis-cat-srp-sasl-xx.txt \ draft-ietf-sasl-anon-xx.txt draft-ietf-sasl-crammd5-xx.txt \ draft-ietf-sasl-gssapi-xx.txt draft-ietf-sasl-plain-xx.txt \ draft-ietf-sasl-rfc2222bis-xx.txt draft-ietf-sasl-rfc2831bis-xx.txt \ draft-ietf-sasl-saslprep-xx.txt draft-murchison-sasl-login-xx.txt \ draft-newman-sasl-c-api-xx.txt rfc1321.txt rfc1939.txt rfc2104.txt \ rfc2195.txt rfc2222.txt rfc2243.txt rfc2245.txt rfc2289.txt \ rfc2444.txt rfc2595.txt rfc2831.txt rfc2945.txt rfc3174.txt \ server-plugin-flow.fig testing.txt HTDOCS= advanced appconvert components gssapi index install macosx \ mechanisms options plugprog programming readme sysadmin upgrading \ windows PLIST_SUB+= PREFIX=${PREFIX} \ SQL=${SQL} \ DOCSDIR=${DOCSDIR:S/^${PREFIX}\///} PKGDEINSTALL= ${WRKDIR}/pkg-deinstall PKGINSTALL= ${WRKDIR}/pkg-install PKGMESSAGE= ${WRKDIR}/pkg-message post-patch: # Fix sasldb name in pkg-install/deinstall scripts @${SED} -e "s;%%SASLDB%%;${SASLDB_NAME};g" \ -e "s;%%CYRUS_USER%%;${CYRUS_USER};g" \ -e "s;%%CYRUS_GROUP%%;${CYRUS_GROUP};g" \ ${.CURDIR}/pkg-install > ${PKGINSTALL} @${SED} -e "s;%%SASLDB%%;${SASLDB_NAME};g" \ -e "s;%%CYRUS_USER%%;${CYRUS_USER};g" \ -e "s;%%CYRUS_GROUP%%;${CYRUS_GROUP};g" \ ${.CURDIR}/pkg-deinstall > ${PKGDEINSTALL} @${SED} -e "s;%%PREFIX%%;${PREFIX};g" \ ${.CURDIR}/pkg-message > ${PKGMESSAGE} # Try to unbreak parallel (-jX) builds, part 1: make build commands atomic @${FIND} ${WRKSRC} -name Makefile.in | ${XARGS} ${PERL} -w0pi.bak \ -e 's/(^\@am__fastdepCC_TRUE\@.*?) \ \n\@am__fastdepCC_TRUE\@\s+(.*?)$$/$$1 && $$2/mgx' # Part 2: prevent intermediate *.Tpo output files clash (use unique names) @${FIND} ${WRKSRC} -name Makefile.in | ${XARGS} ${PERL} -wpi.bak \ -e 's/\$$\*\.Tpo/$$&.$$./g' post-install: .if ${PORT_OPTIONS:MDOCS} @${MKDIR} ${STAGEDIR}${DOCSDIR}/html .for f in ${DOCS} @${INSTALL_DATA} ${WRKSRC}/${f} ${STAGEDIR}${DOCSDIR} .endfor .for f in ${DOC2} @${INSTALL_DATA} ${WRKSRC}/doc/${f} ${STAGEDIR}${DOCSDIR} .endfor .for f in ${HTDOCS} @${INSTALL_DATA} ${WRKSRC}/doc/${f}.html \ ${STAGEDIR}${DOCSDIR}/html .endfor @${INSTALL_DATA} ${FILESDIR}/Sendmail.README \ ${STAGEDIR}${DOCSDIR} .endif .include