freebsd-ports/mail/exim/Makefile
Sheldon Hearn c637f5af10 * Add a WITH_IPV6 knob. Exim breaks if compiled with IPv6 support and
run with a kernel that has had IPv6 ommitted from its configuration,
  so I can't make this a default (yet).

* Remove crazy handling of exim.sh and replace it with something much
  simpler and more sane.  This allows non-root users to build, even if
  they can't install (properly).
2001-06-12 18:05:59 +00:00

186 lines
5.1 KiB
Makefile

# New ports collection makefile for: exim
# Date created: 23 June 1996
# Whom: markm@FreeBSD.org
#
# $FreeBSD$
#
PORTNAME= exim
PORTVERSION= 3.22
PORTREVISION= 6
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.22.tar.gz exim-texinfo-3.20.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 one of UMICHIGAN,
# NETSCAPE or SOLARIS7.
LDAP_LIB_TYPE=UMICHIGAN
# 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)
LIB_DEPENDS+= lber.1:${PORTSDIR}/net/openldap
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}/pgsql/lib -lpq,' \
-e 's,XX_PGSQL_INCLUDE_XX,-I${PREFIX}/pgsql/include,' \
-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
${SED} ${SEDLIST} < ${FILESDIR}/configure.default \
> ${WRKSRC}/src/configure.default
${CP} ${WRKSRC}/exim_monitor/EDITME ${WRKSRC}/Local/eximon.conf
cd ${WRKSRC}/doc && \
for i in ../../exim-texinfo-3.20/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:
${INSTALL_SCRIPT} ${FILESDIR}/exim.sh ${PREFIX}/etc/rc.d
.include <bsd.port.mk>