bde8a588e5
* Define LDAP_LIB_TYPE conditionally so that the operator can override it. * Allow OPENLDAP1 (or UMICHIGAN) and OPENLDAP2 for LDAP_LIB_TYPE, depending on the correct ports for each. The default behaviour of the port is unchanged. However, this change allows for an exim-ldap2 slave port, if desired, and limits LDAP lookup types to those that can be supported by the FreeBSD ports tree.
193 lines
5.3 KiB
Makefile
193 lines
5.3 KiB
Makefile
# New ports collection makefile for: exim
|
|
# Date created: 23 June 1996
|
|
# Whom: markm@FreeBSD.org
|
|
#
|
|
# $FreeBSD$
|
|
#
|
|
|
|
PORTNAME= exim
|
|
PORTVERSION= 3.31
|
|
CATEGORIES= mail
|
|
MASTER_SITES= ftp://ftp.csx.cam.ac.uk/pub/software/email/exim/ \
|
|
http://www.exim.org/ftp/ \
|
|
ftp://ftp.is.co.za/networking/mail/transport/exim/
|
|
DISTFILES= exim-3.31.tar.gz exim-texinfo-3.30.tar.gz
|
|
|
|
MAINTAINER= sheldonh@FreeBSD.org
|
|
|
|
# If WITHOUT_X11 is not defined, the eximon monitor, which requires X,
|
|
# will be built. If you do not have XFree86 installed and you do not
|
|
# want to install it, define WITHOUT_X11 during the build. This will
|
|
# disable eximon, the Exim monitor.
|
|
.if !defined(WITHOUT_X11)
|
|
USE_XLIB= yes
|
|
.endif
|
|
|
|
USE_PERL5= yes
|
|
|
|
MAKE_ENV+= OSTYPE=${OPSYS} ARCHTYPE=${MACHINE_ARCH}
|
|
|
|
# Define WITH_TCP_WRAPPERS, WITH_LDAP, WITH_MYSQL, and WITH_PGSQL to
|
|
# link against libwrap, an LDAP library (see below), liblibmysqlclient
|
|
# and libpq respectively.
|
|
#WITH_TCP_WRAPPERS= yes
|
|
#WITH_LDAP= yes
|
|
#WITH_MYSQL= yes
|
|
#WITH_PGSQL= yes
|
|
|
|
# Only define WITH_IPV6 on systems with IPv6 support compiled into the
|
|
# kernel. Exim's IPv6 support is still experimental.
|
|
#WITH_IPV6= yes
|
|
|
|
# If WITH_LDAP is defined, LDAP_LIB_TYPE must be either OPENLDAP1 or
|
|
# OPENLDAP2. UMICHIGAN is an alias for OPENLDAP1. Exim also supports
|
|
# NETSCAPE and SOLARIS7 lookup types, but no client libraries exist
|
|
# for these in the ports tree.
|
|
LDAP_LIB_TYPE?=OPENLDAP1
|
|
|
|
# The following options may be defined to turn off support for various
|
|
# features that this port enables by default.
|
|
#
|
|
# Do not link against OpenSSL; disables STARTTLS.
|
|
#WITHOUT_TLS= yes
|
|
#
|
|
# Disable the embedded Perl interpreter, which allows Perl subroutines to
|
|
# be called during string expansion.
|
|
#WITHOUT_PERL= yes
|
|
#
|
|
# Disable built-in Exim support for the PAM, RFC 2195 and RFC 2595
|
|
# authentication mechanisms, used for SMTP AUTH.
|
|
#WITHOUT_PAM= yes
|
|
#WITHOUT_AUTH_CRAM_MD5= yes
|
|
#WITHOUT_AUTH_PLAINTEXT= yes
|
|
#
|
|
# Disable built-in Exim support for additional mailbox formats.
|
|
#WITHOUT_MAILDIR= yes
|
|
#WITHOUT_MAILSTORE= yes
|
|
#WITHOUT_MBX= yes
|
|
#
|
|
# Disable support for CDB-style lookups.
|
|
#WITHOUT_CDB= yes
|
|
|
|
# You should not need to fiddle with anything below this point.
|
|
|
|
SEDLIST= -e 's,XX_PREFIX_XX,${PREFIX},' \
|
|
-e 's,XX_BINOWN_XX,${BINOWN},'
|
|
.if !defined(USE_XLIB)
|
|
SEDLIST+= -e 's,^EXIM_MONITOR,\#EXIM_MONITOR,'
|
|
.endif
|
|
|
|
.if !defined(WITHOUT_TLS)
|
|
SEDLIST+= -e 's,^\# SUPPORT_TLS=,SUPPORT_TLS=,'
|
|
.else
|
|
SEDLIST+= -e 's,^TLS_LIBS,\#TLS_LIBS,'
|
|
.endif
|
|
|
|
.if !defined(WITHOUT_PERL)
|
|
SEDLIST+= -e 's,^\# EXIM_PERL=,EXIM_PERL=,'
|
|
.endif
|
|
|
|
.if defined(WITH_TCP_WRAPPERS)
|
|
SEDLIST+= -e 's,XX_TCP_WRAPPERS_LIBS_XX,-lwrap,' \
|
|
-e 's,^\# USE_TCP_WRAPPERS=,USE_TCP_WRAPPERS=,'
|
|
.else
|
|
SEDLIST+= -e 's,XX_TCP_WRAPPERS_LIBS_XX,,'
|
|
.endif
|
|
|
|
.if defined(WITH_LDAP)
|
|
.if (${LDAP_LIB_TYPE} == OPENLDAP1) || (${LDAP_LIB_TYPE} == UMICHIGAN)
|
|
LIB_DEPENDS+= lber.1:${PORTSDIR}/net/openldap
|
|
.elif ${LDAP_LIB_TYPE} == OPENLDAP2
|
|
LIB_DEPENDS+= lber.2:${PORTSDIR}/net/openldap2
|
|
.else
|
|
.error LDAP_LIB_TYPE must be either OPENLDAP1 or OPENLDAP2
|
|
.endif
|
|
SEDLIST+= -e 's,XX_LDAP_LIBS_XX,-L${PREFIX}/lib -llber -lldap,' \
|
|
-e 's,XX_LDAP_INCLUDE_XX,-I${PREFIX}/include,' \
|
|
-e 's,XX_LDAP_TYPE_XX,${LDAP_LIB_TYPE},' \
|
|
-e 's,^\# LOOKUP_LDAP=,LOOKUP_LDAP=,'
|
|
.else
|
|
SEDLIST+= -e 's,XX_LDAP_[^ ]*_XX,,' \
|
|
-e 's,^LDAP_LIB_TYPE,\#LDAP_LIB_TYPE,'
|
|
.endif
|
|
|
|
.if defined(WITH_MYSQL)
|
|
LIB_DEPENDS+= mysqlclient.10:${PORTSDIR}/databases/mysql323-client
|
|
SEDLIST+= -e 's,XX_MYSQL_LIBS_XX,-L${PREFIX}/lib/mysql -lmysqlclient,' \
|
|
-e 's,XX_MYSQL_INCLUDE_XX,-I${PREFIX}/include/mysql,' \
|
|
-e 's,^\# LOOKUP_MYSQL=,LOOKUP_MYSQL=,'
|
|
.else
|
|
SEDLIST+= -e 's,XX_MYSQL_[^ ]*_XX,,'
|
|
.endif
|
|
|
|
.if !defined(WITHOUT_PAM)
|
|
SEDLIST+= -e 's,XX_PAM_LIBS_XX,-lpam,' \
|
|
-e 's,^\# SUPPORT_PAM=,SUPPORT_PAM=,'
|
|
.else
|
|
SEDLIST+= -e 's,XX_PAM_LIBS_XX,,'
|
|
.endif
|
|
|
|
.if !defined(WITHOUT_AUTH_CRAM_MD5)
|
|
SEDLIST+= -e 's,^\# AUTH_CRAM_MD5=,AUTH_CRAM_MD5=,'
|
|
.endif
|
|
|
|
.if !defined(WITHOUT_AUTH_PLAINTEXT)
|
|
SEDLIST+= -e 's,^\# AUTH_PLAINTEXT=,AUTH_PLAINTEXT=,'
|
|
.endif
|
|
|
|
.if defined(WITH_PGSQL)
|
|
LIB_DEPENDS+= pq.2:${PORTSDIR}/databases/postgresql7
|
|
SEDLIST+= -e 's,XX_PGSQL_LIBS_XX,-L${PREFIX}/lib -lpq,' \
|
|
-e 's,XX_PGSQL_INCLUDE_XX,-I${PREFIX}/include/pgsql,' \
|
|
-e 's,^\# LOOKUP_PGSQL=,LOOKUP_PGSQL=,'
|
|
.else
|
|
SEDLIST+= -e 's,XX_PGSQL_[^ ]*_XX,,'
|
|
.endif
|
|
|
|
.if defined(WITH_IPV6)
|
|
SEDLIST+= -e 's,^\# HAVE_IPV6=,HAVE_IPV6=,'
|
|
.endif
|
|
|
|
.if !defined(WITH_PGSQL) && !defined(WITH_MYSQL) && !defined(WITH_LDAP)
|
|
SEDLIST+= -e 's,^LOOKUP_LIBS,\#LOOKUP_LIBS,' \
|
|
-e 's,^LOOKUP_INCLUDE,\#LOOKUP_INCLUDE,'
|
|
.endif
|
|
|
|
.if !defined(WITHOUT_MAILDIR)
|
|
SEDLIST+= -e 's,^\# SUPPORT_MAILDIR=,SUPPORT_MAILDIR=,'
|
|
.endif
|
|
|
|
.if !defined(WITHOUT_MAILSTORE)
|
|
SEDLIST+= -e 's,^\# SUPPORT_MAILSTORE=,SUPPORT_MAILSTORE=,'
|
|
.endif
|
|
|
|
.if !defined(WITHOUT_MBX)
|
|
SEDLIST+= -e 's,^\# SUPPORT_MBX=,SUPPORT_MBX=,'
|
|
.endif
|
|
|
|
.if !defined(WITHOUT_CDB)
|
|
SEDLIST+= -e 's,^\# LOOKUP_CDB=,LOOKUP_CDB=,'
|
|
.endif
|
|
|
|
do-configure:
|
|
${MKDIR} ${WRKSRC}/Local
|
|
${SED} ${SEDLIST} < ${WRKSRC}/src/EDITME > ${WRKSRC}/Local/Makefile
|
|
${CP} ${WRKSRC}/exim_monitor/EDITME ${WRKSRC}/Local/eximon.conf
|
|
cd ${WRKSRC}/doc && \
|
|
for i in ../../exim-texinfo-3.30/doc/* ; do \
|
|
${LN} -sf $$i ; \
|
|
done
|
|
|
|
post-build:
|
|
${TOUCH} ${WRKSRC}/build-${OPSYS}-${MACHINE_ARCH}/eximon.bin
|
|
${TOUCH} ${WRKSRC}/build-${OPSYS}-${MACHINE_ARCH}/eximon
|
|
|
|
pre-install:
|
|
@PKG_PREFIX="${PREFIX}" ${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
|
|
|
|
post-install:
|
|
@${CAT} ${PKGMESSAGE}
|
|
|
|
|
|
.include <bsd.port.mk>
|