freebsd-ports/mail/opendkim/Makefile
Stefan Eßer b7f05445c0 Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.

Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.

There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.

This commit implements such a proposal and moves one of the WWW: entries
of each pkg-descr file into the respective port's Makefile. A heuristic
attempts to identify the most relevant URL in case there is more than
one WWW: entry in some pkg-descr file. URLs that are not moved into the
Makefile are prefixed with "See also:" instead of "WWW:" in the pkg-descr
files in order to preserve them.

There are 1256 ports that had no WWW: entries in pkg-descr files. These
ports will not be touched in this commit.

The portlint port has been adjusted to expect a WWW entry in each port
Makefile, and to flag any remaining "WWW:" lines in pkg-descr files as
deprecated.

Approved by:		portmgr (tcberner)
2022-09-07 23:10:59 +02:00

171 lines
4.7 KiB
Makefile

PORTNAME= opendkim
PORTVERSION= 2.10.3
PORTREVISION= 16
CATEGORIES= mail security
MASTER_SITES= SF/${PORTNAME} \
SF/${PORTNAME}/Previous%20Releases \
ftp://ftpmirror.uk/freebsd-ports/${PORTNAME}/
MAINTAINER= freebsd-ports@dan.me.uk
COMMENT= DKIM library and milter implementation
WWW= http://opendkim.org/
LICENSE= BSD3CLAUSE SENDMAIL
LICENSE_COMB= multi
LICENSE_FILE_SENDMAIL= ${WRKSRC}/LICENSE.Sendmail
LICENSE_GROUPS_SENDMAIL=FSF OSI
LICENSE_NAME_SENDMAIL= Sendmail Open Source License
LICENSE_PERMS_SENDMAIL= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
GNU_CONFIGURE= yes
NO_OPTIONS_SORT=yes
USES= autoreconf cpe libtool perl5 pkgconfig shebangfix ssl
USE_PERL5= run
SHEBANG_FILES= opendkim/opendkim-genkey* reputation/opendkim-* stats/opendkim-* \
reprrd/opendkim-reprrdimport*
USE_LDCONFIG= yes
TEST_TARGET= check # XXX: 1 of 30 tests fails
PORTDOCS= *
CONFIGURE_ARGS+= --without-tre
OPTIONS_SUB= yes
OPTIONS_SINGLE= RESOLV
OPTIONS_SINGLE_RESOLV= STOCK_RESOLVER UNBOUND
OPTIONS_DEFINE= FILTER CURL GNUTLS JANSSON LDNS LMDB LUA MEMCACHED \
BDB_BASE OPENDBX OPENLDAP POPAUTH QUERY_CACHE SASL DOCS
OPTIONS_DEFAULT= FILTER LUA UNBOUND
STOCK_RESOLVER_DESC= Use the stock resolver library
UNBOUND_DESC= Use unbound DNS library
UNBOUND_CONFIGURE_WITH= unbound
UNBOUND_LIB_DEPENDS= libunbound.so:dns/unbound
FILTER_DESC= OpenDKIM filter, requires libmilter/Sendmail
FILTER_USE= RC_SUBR=milter-opendkim
CURL_DESC= Use cURL for web queries
CURL_CONFIGURE_WITH= libcurl
CURL_LIB_DEPENDS= libcurl.so:ftp/curl
GNUTLS_DESC= Use GnuTLS instead of OpenSSL
GNUTLS_LIB_DEPENDS= libgnutls.so:security/gnutls
GNUTLS_CONFIGURE_WITH= gnutls
GNUTLS_CONFIGURE_OFF= --with-openssl=${OPENSSLBASE}
JANSSON_DESC= Statistics and other output as JSON data
JANSSON_CONFIGURE_WITH= libjansson
JANSSON_LIB_DEPENDS= libjansson.so:devel/jansson
LDNS_DESC= Use LDNS library for DNS queries
LDNS_CONFIGURE_WITH= ldns
LDNS_LIB_DEPENDS= libldns.so:dns/ldns
LMDB_DESC= Use Lightning Memory-Mapped DB key-value store
LMDB_CONFIGURE_WITH= lmdb
LMDB_LIB_DEPENDS= liblmdb.so:databases/lmdb
LUA_DESC= Describe filter policy with lua
LUA_CONFIGURE_WITH= lua
LUA_USES= lua
MEMCACHED_DESC= Use memcached as a data set
MEMCACHED_CONFIGURE_WITH= libmemcached
MEMCACHED_LIB_DEPENDS= libmemcached.so:databases/libmemcached
BDB_BASE_DESC= Use Berkeley DB from base
OPENDBX_DESC= Store filter policies via OpenDBX
OPENDBX_CONFIGURE_WITH= odbx
OPENDBX_LIB_DEPENDS= libopendbx.so:databases/opendbx
OPENLDAP_DESC= Store filter policies in LDAP
OPENLDAP_CONFIGURE_WITH=openldap
OPENLDAP_USE= OPENLDAP=yes
POPAUTH_DESC= Use POP authentication DB
POPAUTH_CONFIGURE_ENABLE= popauth
QUERY_CACHE_DESC= Cache DNS query results locally
QUERY_CACHE_CONFIGURE_ENABLE= query_cache
SASL_DESC= Enable SASL authentication with LDAP
SASL_CONFIGURE_WITH= sasl
MAKE_ARGS+= pkgconfigdir="${PREFIX}/libdata/pkgconfig"
MAKE_ENV= INSTALL_STRIP_FLAG=${STRIP}
.include "${.CURDIR}/Makefile.options"
.include <bsd.port.options.mk>
.if ${PORT_OPTIONS:MDEBUG}
WITH_DEBUG= yes
.endif
.if ${PORT_OPTIONS:MFILTER}
SUB_FILES= pkg-message
WITHOUT_MILTER_CFLAGS= yes
WITHOUT_MILTER_LDFLAGS= yes
.include "${PORTSDIR}/mail/sendmail/bsd.milter.mk"
CONFIGURE_ARGS+= --with-milter=${MILTERBASE}
.endif
.if ${PORT_OPTIONS:MLUA_ONLY_SIGNING} || \
${PORT_OPTIONS:MRBL}
.if !${PORT_OPTIONS:MLUA}
IGNORE= options LUA_ONLY_SIGNING and RBL require LUA as well
.endif
.endif
.if ${PORT_OPTIONS:MREPUTATION}
.if !${PORT_OPTIONS:MCURL} || !${PORT_OPTIONS:MJANSSON}
IGNORE= option REPUTATION requires CURL and JANSSON as well
.endif
.endif
.if ${PORT_OPTIONS:MSTATSEXT}
.if !${PORT_OPTIONS:MSTATS} || !${PORT_OPTIONS:MLUA}
IGNORE= option STATSEXT requires STATS and LUA as well
.endif
.endif
.if ${PORT_OPTIONS:MPOPAUTH} \
|| ${PORT_OPTIONS:MQUERY_CACHE} \
|| ${PORT_OPTIONS:MLDAP_CACHING} \
|| ${PORT_OPTIONS:MREPUTATION} \
|| ${PORT_OPTIONS:MSTATS}
. if ${PORT_OPTIONS:MBDB_BASE}
CONFIGURE_ARGS+= --with-db-lib=c
. else
CONFIGURE_ARGS+= --with-db-incdir=${BDB_INCLUDE_DIR} \
--with-db-libdir=${BDB_LIB_DIR} \
--with-db-lib=${BDB_LIB_NAME}
USES+= bdb
. endif
.endif
.if ${PORT_OPTIONS:MCODECOVERAGE}
LDFLAGS+= -lpthread
.endif
pre-configure:
${REINPLACE_CMD} -e '/PKG_CHECK_MODULES/s/lua5\.[0-9]/lua-${LUA_VER}/' \
-e '/PKG_CONFIG/s/cyrussasl/libsasl2/' \
${WRKSRC}/configure.ac
post-patch-LCOV-on:
${CP} ${FILESDIR}/lcov-helper.sh ${WRKSRC}/libopendkim/tests/
${CP} ${FILESDIR}/lcov-helper.sh ${WRKSRC}/opendkim/tests/
${FIND} ${WRKSRC} -type f -name \*-helper.sh -exec ${CHMOD} 755 {} +
post-install:
@${MKDIR} ${STAGEDIR}${PREFIX}/etc/mail
${INSTALL_DATA} ${WRKSRC}/opendkim/opendkim.conf.sample \
${STAGEDIR}${PREFIX}/etc/mail/
.include <bsd.port.mk>