freebsd-ports/mail/qmailadmin/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

139 lines
4.8 KiB
Makefile

PORTNAME= qmailadmin
PORTVERSION= 1.2.15
PORTREVISION= 8
PORTEPOCH= 2
CATEGORIES= mail www
MASTER_SITES= SF/${PORTNAME}/${PORTNAME}-stable/${PORTVERSION} \
http://mirror.shatow.net/freebsd/${PORTNAME}/
MAINTAINER= ports@FreeBSD.org
COMMENT= CGI program for administering Qmail with vchkpw/vpopmail
WWW= https://www.inter7.com/qmailadmin/
LICENSE= GPLv2+
LICENSE_FILE= ${WRKSRC}/COPYING
BUILD_DEPENDS= autorespond:mail/autorespond \
${VPOPMAIL_DIR}/lib/libvpopmail.a:mail/vpopmail
RUN_DEPENDS= autorespond:mail/autorespond \
${VPOPMAIL_DIR}/lib/libvpopmail.a:mail/vpopmail
USES= autoreconf gmake qmail:vars
PATCH_SITES+= http://qmail.jms1.net/vpopmail/:onchange \
LOCAL/bdrewery/${PORTNAME}/:onchange
PATCHFILES+= qmailadmin-1.2.12-onchange.3.patch:onchange
PATCH_DIST_STRIP+= -p1
PORTSCOUT= ignore:1
OPTIONS_DEFINE= IPAUTH USER_INDEX MODIFY_QUOTA DOMAIN_AUTOFILL \
IDX IDX_SQL HELP SPAM_DETECTION SPAM_NEEDS_EMAIL \
CATCHALL TRIVIAL_PASSWORD NOCACHE CRACKLIB
OPTIONS_DEFAULT=IPAUTH IDX_SQL USER_INDEX CATCHALL TRIVIAL_PASSWORD
IPAUTH_DESC= Check IP address after login
USER_INDEX_DESC= Enable user index display
MODIFY_QUOTA_DESC= Allow domain admin to modify quotas
DOMAIN_AUTOFILL_DESC= Autofill domain on login using hostname
IDX_DESC= Use ezmlm-idx instead of ezmlm
IDX_SQL_DESC= Enable MySQL support for ezmlm
HELP_DESC= Show help links on login page
SPAM_DETECTION_DESC= Allow users to toggle spam checking
SPAM_NEEDS_EMAIL_DESC= Append user's email to spam command #'
CATCHALL_DESC= Enable catch-all accounts
TRIVIAL_PASSWORD_DESC= Disallow password containing username
NOCACHE_DESC= Prohibit caching via http headers
CRACKLIB_DESC= Use cracklib to enforce stronger passwords
CONFIGURE_ARGS+= \
--enable-qmaildir=${QMAIL_PREFIX} \
--enable-htmldir=${WEBPREFIX}/${WEBDATADIR}/${WEBDATASUBDIR} \
--enable-imagedir=${WEBPREFIX}/${WEBDATADIR}/${WEBDATASUBDIR}/images \
--enable-imageurl=${WEBDATAURL}/${WEBDATASUBDIR}/images \
--enable-htmllibdir=${DATADIR} \
--enable-cgibindir=${WEBPREFIX}/${CGIBINDIR}/${CGIBINSUBDIR} \
--enable-cgipath=${CGIBINURL}/${CGIBINSUBDIR}/qmailadmin \
--enable-vpopmaildir=${VPOPMAIL_DIR} \
--enable-autoresponder-path=${LOCALBASE}/bin \
--enable-maxusersperpage=${MAXUSERSPERPAGE} \
--enable-maxaliasesperpage=${MAXALIASESPERPAGE} \
--enable-ezmlmdir=${LOCALBASE}/bin
IPAUTH_CONFIGURE_OFF= --disable-ipauth
USER_INDEX_CONFIGURE_OFF= --disable-user-index
MODIFY_QUOTA_CONFIGURE_ON= --enable-modify-quota
DOMAIN_AUTOFILL_CONFIGURE_ON= --enable-domain-autofill
IDX_SQL_CONFIGURE_OFF= --disable-ezmlm-mysql
HELP_CONFIGURE_ON= --enable-help
CATCHALL_CONFIGURE_OFF= --disable-catchall
TRIVIAL_PASSWORD_CONFIGURE_OFF= --disable-trivial-password
NOCACHE_CONFIGURE_ON= --enable-no-cache
SPAM_DETECTION_CONFIGURE_ON= --enable-modify-spam=y
SPAM_NEEDS_EMAIL_CONFIGURE_ENABLE= spamcmd-needs-email
.include <bsd.port.options.mk>
.if ${PORT_OPTIONS:MIDX}
EXTRA_PATCHES+= ${FILESDIR}/extra-ezmlm-idx7.patch
.endif
.if ${PORT_OPTIONS:MSPAM_DETECTION} && defined(SPAM_COMMAND)
CONFIGURE_ARGS+= --enable-spam-command="${SPAM_COMMAND}"
.endif
.if ${PORT_OPTIONS:MCRACKLIB}
EXTRA_PATCHES+= ${FILESDIR}/cracklib.patch
BUILD_DEPENDS+= ${LOCALBASE}/include/crack.h:security/cracklib
CONFIGURE_ARGS+= --enable-cracklib=${LOCALBASE}/libdata/cracklib/cracklib-words
CFLAGS+= -I${LOCALBASE}/include
LIBS+= -L${LOCALBASE}/lib -lcrack
.endif
# vpopmail installation directory
#
# NB: change this with extreme caution! For instance, if vpopmail is not
# already installed in this directory, building the vpopmail port as
# a dependency will NOT automatically cause it to be installed there!
VPOPMAIL_DIR?= ${LOCALBASE}/vpopmail
GNU_CONFIGURE= yes
INSTALL_TARGET= install-strip
# Notes and comments:
#
# SPAM_COMMAND - the command to use to check for spam;
# default is "|preline LOCALBASE/bin/maildrop /etc/mailfilter"
# do not forget the "|" at the start
# USER_INDEX - might confuse earlier versions of Internet Explorer
# CGIBINDIR - location of your cgi directory
# CGIBINSUBDIR - subdirectory to place cgi scripts in
# CGIBINURL - location of your cgi directory in a URL
# WEBDATADIR - location of your html files
# WEBDATASUBDIR - subdirectory to place html files in
# WEBDATAURL - location of your html files in a URL
CGIBINDIR?= www/cgi-bin.default
CGIBINSUBDIR?= qmailadmin
CGIBINURL?= /cgi-bin
WEBDATADIR?= www/data.default
WEBDATASUBDIR?= qmailadmin
WEBDATAURL?=
MAXUSERSPERPAGE?= 15
MAXALIASESPERPAGE?= 25
WEBPREFIX?= ${PREFIX}
PLIST_SUB+= CGIBINDIR="${CGIBINDIR}" CGIBINSUBDIR="${CGIBINSUBDIR}" \
WEBDATADIR="${WEBDATADIR}" WEBDATASUBDIR="${WEBDATASUBDIR}" \
REAL_PREFIX="${PREFIX}" WEBPREFIX="${WEBPREFIX}"
# End of user-configurable variables
.if empty(PORT_OPTIONS:MIDX)
BUILD_DEPENDS+= ezmlm-send:mail/ezmlm
RUN_DEPENDS+= ezmlm-send:mail/ezmlm
.else
BUILD_DEPENDS+= ezmlm-idx:mail/ezmlm-idx
RUN_DEPENDS+= ezmlm-idx:mail/ezmlm-idx
.endif
.include <bsd.port.mk>