freebsd-ports/mail/mutt-devel/Makefile
David W. Chapman Jr. aa07b26acd Improve maildir support
PR:		38147
Submitted by:	maintainer, lioux
2002-05-16 15:51:16 +00:00

397 lines
12 KiB
Makefile

# ex:ts=8
# Ports collection makefile for: mutt development
# Date created: 6 Jun 2001
# Whom: Udo Schweigert
#
# $FreeBSD$
#
# There are several knobs which are used to define additions to the core
# mutt functionality.
#
# As all of the knobs have a unique name which should not interfere with
# other ports you can add them to /etc/make.conf, e.g. a line like
# "WITH_MUTT_HTML=yes" will enable mutt's HTML documentation.
#
# In addition to the knobs listed below you can enable other configuration
# options of mutt by adding them to the MUTT_CONFIGURE_ARGS variable. For
# example you could say "MUTT_CONFIGURE_ARGS=--with-homespool=MyMail" to
# configure a different file for mutt's homespool.
#
# The two most important knobs are:
#
# In general you can choose between using the SLANG port (WITH_MUTT_SLANG)
# and ncurses (WITH_MUTT_NCURSES) which is the default. Note that you may
# have to set the variables COLORTERM=yes and COLORFGBG=color,color in your
# environment to get slang function properly.
#
# If you want to install the mutt documentation in html format define:
# WITH_MUTT_HTML
#
# If you do not want that the documentation is rebuilt using sgmlformat
# define:
# WITHOUT_MUTT_SGMLFORMAT
# (this can't be stated if WITH_MUTT_HTML is defined)
#
# If you want to read and post news with mutt define:
# WITH_MUTT_NNTP
#
# WITH_MUTT_SSL can be enabled if your IMAP/POP server is SSL capable.
#
# If you want to use the SASL authentication features with your email server
# define
# WITH_MUTT_CYRUS_SASL
#
# If you want to access compressed email folders define:
# WITH_MUTT_COMPRESSED_FOLDERS
#
# If you want to enable extended quoting functions define:
# WITH_MUTT_QUOTE_PATCH
#
# If you want to enable the pgp_outlook_compat function for use with pgp define:
# WITH_MUTT_PGP_OUTLOOK_PATCH
#
# If you want to enable some functions whoch improve maildir handling define:
# WITH_MUTT_MAILDIR_PATCH
PORTNAME= mutt-devel
PORTVERSION= 1.3.99
PORTREVISION?= 2
CATEGORIES+= mail
.if defined(WITH_MUTT_NNTP)
CATEGORIES+= news
.endif
MASTER_SITES= ftp://ftp.demon.co.uk/pub/mirrors/mutt/ \
ftp://ftp.parodius.com/pub/mutt/ \
ftp://ftp.demon.co.uk/pub/mirrors/mutt/devel/ \
ftp://ftp.parodius.com/pub/mutt/devel/ \
ftp://ftp.mutt.org/pub/mutt/ \
ftp://ftp.mutt.org/pub/mutt/devel/
DISTNAME= mutt-${PORTVERSION}i
MAINTAINER= udo.schweigert@siemens.com
DIST_SUBDIR= mutt
CONFIGURE_ENV= CC="${CC} -I${LOCALBASE}/include" LDFLAGS=-L${LOCALBASE}/lib
CONFIGURE_ARGS= --enable-flock --disable-fcntl \
--with-sharedir=${PREFIX}/share/mutt \
--with-docdir=${PREFIX}/share/doc/mutt \
--sysconfdir=${PREFIX}/etc --enable-external-dotlock \
--with-libiconv-prefix=${PREFIX} --enable-pop --enable-imap
.if defined(MUTT_CONFIGURE_ARGS)
CONFIGURE_ARGS+= ${MUTT_CONFIGURE_ARGS}
.endif
.include <bsd.port.pre.mk>
USE_AUTOMAKE= yes
.if defined(WITH_MUTT_COMPRESSED_FOLDERS) || defined(WITH_MUTT_NNTP) || \
defined(WITH_MUTT_QUOTE_PATCH)
PATCH_SITES+= http://www.mutt.org.ua/download/mutt-${PATCH_VERSION}/ \
http://www2.mutt.org.ua/download/mutt-${PATCH_VERSION}/ \
ftp://ftp.mutt.org.ua/pub/mutt/mutt-${PATCH_VERSION}/ \
ftp://ftp2.mutt.org.ua/pub/mutt/mutt-${PATCH_VERSION}/
.endif
# XXX
# this should be done automagically by aclocal but ....
# for now, this will have to do
pre-build:
@${PERL} -pi -e "s/^(ACLOCAL = ).+/\1${ACLOCAL}/; s/^(AUTOCONF = ).+/\1${AUTOCONF}/; \
s/^(AUTOMAKE = ).+/\1${AUTOMAKE}/; s/^(AUTOHEADER = ).+/\1${AUTOHEADER}/" \
${BUILD_WRKSRC}/Makefile
.if defined(WITH_MUTT_MAILDIR_PATCH)
.for file in Makefile.am globals.h init.h mh.c mutt.h
EXTRA_PATCHES+= ${WRKSRC}/patch-${file}
pre-patch::
${CP} ${PATCHDIR}/extra-maildir-patch-${file} ${WRKSRC}/patch-${file}
.endfor
.for file in maildir_clean_dir.h maildir_clean_dir.c
pre-patch::
${CP} ${PATCHDIR}/${file} ${WRKSRC}/${file}
.endfor
.endif
.if !defined(PATCH_VERSION)
PATCH_VERSION= ${PORTVERSION}
.endif
.if defined(PACKAGE_BUILDING)
WITH_MUTT_SSL= yes
WITH_MUTT_NCURSES= yes
WITH_MUTT_HTML= yes
BUILD_DEPENDS+= ispell:${PORTSDIR}/textproc/ispell
RUN_DEPENDS= ispell:${PORTSDIR}/textproc/ispell \
urlview:${PORTSDIR}/textproc/urlview
.endif
.if defined(WITH_MUTT_NCURSES_PORT)
WITH_MUTT_NCURSES= yes
.endif
.if defined(WITH_MUTT_NCURSES)
USE_NCURSES= yes
.endif
.if defined(WITH_MUTT_SLANG) && !defined(USE_NCURSES)
USE_SLANG= yes
.endif
.if !defined(USE_NCURSES) && !defined(WITHOUT_MUTT_NCURSES) && !defined(USE_SLANG)
USE_NCURSES= yes
.endif
.if defined(WITHOUT_MUTT_SGMLFORMAT)
SGML_USED= no
.endif
.if !defined(SGML_USED)
SGML_USED= no
.endif
LIB_DEPENDS= intl.2:${PORTSDIR}/devel/gettext
.if defined(NOPORTDOCS)
SGML_USED= no
.endif
.if defined(USE_NCURSES) && ${OSVERSION} < 400000
LIB_DEPENDS+= ncurses.5:${PORTSDIR}/devel/ncurses
CFLAGS+= -I${PREFIX}/include/ncurses -I${PREFIX}/include
.elif defined(USE_SLANG)
LIB_DEPENDS+= slang.1:${PORTSDIR}/devel/libslang
.endif
.if defined(WITH_MUTT_SSL)
USE_OPENSSL= yes
.endif
.if defined(WITH_MUTT_CYRUS_SASL)
LIB_DEPENDS+= sasl.8:${PORTSDIR}/security/cyrus-sasl
.endif
.if exists(${LOCALBASE}/bin/pgp)
WITH_MUTT_PGP_OUTLOOK_PATCH= yes
.endif
.if defined(WITH_MUTT_PGP_OUTLOOK_PATCH)
pre-configure::
${PATCH} ${PATCH_ARGS} < ${PATCHDIR}/extra-patch-pgp-outlook
.endif
.if defined(WITH_MUTT_LOCALES_FIX)
CONFIGURE_ARGS+= --enable-locales-fix
.endif
.if defined(USE_NCURSES) && ${OSVERSION} < 400000
CONFIGURE_ARGS+= --with-curses=${PREFIX}
.elif defined(USE_SLANG)
CONFIGURE_ARGS+= --with-slang=${PREFIX}
.endif
.if defined(WITH_MUTT_SSL)
CONFIGURE_ARGS+= --with-ssl=${OPENSSLBASE}
.endif
.if defined(WITH_MUTT_CYRUS_SASL)
CONFIGURE_ARGS+= --with-sasl=${LOCALBASE}
.endif
PATCH_DIST_STRIP= -p1
.if defined(WITH_MUTT_COMPRESSED_FOLDERS)
PATCHFILES+= patch-${PATCH_VERSION}.rr.compressed.gz
CONFIGURE_ARGS+= --enable-compressed
.if !defined(WITHOUT_MUTT_SGMLFORMAT)
SGML_USED= yes
.endif
.endif
.if defined(WITH_MUTT_NNTP)
PATCHFILES+= patch-${PATCH_VERSION}.vvv.nntp.gz
CONFIGURE_ARGS+= --enable-nntp
.endif
.if defined(WITH_MUTT_QUOTE_PATCH)
PATCHFILES+= patch-${PATCH_VERSION}.vvv.initials.gz \
patch-${PATCH_VERSION}.vvv.quote.gz
.endif
WRKSRC= ${WRKDIR}/${DISTNAME:S/i$//}
MAN1= flea.1 mutt.1 mutt_dotlock.1 muttbug.1
MAN5= muttrc.5 mbox.5
post-patch::
@${PERL} -pi.fbsd -e 's,/usr/bin/gpg,${LOCALBASE}/bin/gpg,g' \
${WRKSRC}/contrib/gpg.rc
pre-configure::
@(cd ${WRKSRC}; ${ACLOCAL} -I m4)
.if !defined(NOPORTDOCS)
post-build:
${PATCH} ${PATCH_ARGS} < ${PATCHDIR}/extra-patch-doc-ref
printf ",s|\$${PREFIX}|%s|g\nw\nq\n" ${PREFIX} | \
ed -s ${WRKSRC}/doc/mutt.man
.if defined(WITH_MUTT_NNTP)
.if !defined(WITHOUT_MUTT_SGMLFORMAT)
SGML_USED= yes
.endif
PLIST_SUB+= SUB_NNTP=""
.else
PLIST_SUB+= SUB_NNTP="@comment "
.endif
.if defined(WITH_MUTT_HTML)
SGML_USED= yes
PLIST_SUB+= SUB_HTML=""
.if defined(WITH_MUTT_COMPRESSED_FOLDERS) && defined(WITH_MUTT_NNTP) && \
defined(WITH_MUTT_QUOTE_PATCH)
PLIST_SUB+= SUB_ADD_G=""
PLIST_SUB+= SUB_ADD_A="@comment "
PLIST_SUB+= SUB_ADD_B="@comment "
PLIST_SUB+= SUB_ADD_C="@comment "
PLIST_SUB+= SUB_ADD_D="@comment "
PLIST_SUB+= SUB_ADD_E="@comment "
PLIST_SUB+= SUB_ADD_F="@comment "
PLIST_SUB+= SUB_PGP_A="@comment "
.elif defined(WITH_MUTT_COMPRESSED_FOLDERS) && defined(WITH_MUTT_NNTP) && \
!defined(WITH_MUTT_QUOTE_PATCH)
PLIST_SUB+= SUB_ADD_F=""
PLIST_SUB+= SUB_ADD_A="@comment "
PLIST_SUB+= SUB_ADD_B="@comment "
PLIST_SUB+= SUB_ADD_C="@comment "
PLIST_SUB+= SUB_ADD_D="@comment "
PLIST_SUB+= SUB_ADD_E="@comment "
PLIST_SUB+= SUB_ADD_G="@comment "
PLIST_SUB+= SUB_PGP_A="@comment "
.elif defined(WITH_MUTT_COMPRESSED_FOLDERS) && !defined(WITH_MUTT_NNTP) && \
defined(WITH_MUTT_QUOTE_PATCH)
PLIST_SUB+= SUB_ADD_C=""
PLIST_SUB+= SUB_ADD_A="@comment "
PLIST_SUB+= SUB_ADD_B="@comment "
PLIST_SUB+= SUB_ADD_D="@comment "
PLIST_SUB+= SUB_ADD_E="@comment "
PLIST_SUB+= SUB_ADD_F="@comment "
PLIST_SUB+= SUB_ADD_G="@comment "
PLIST_SUB+= SUB_PGP_A="@comment "
.elif defined(WITH_MUTT_COMPRESSED_FOLDERS) && !defined(WITH_MUTT_NNTP) && \
!defined(WITH_MUTT_QUOTE_PATCH)
PLIST_SUB+= SUB_ADD_B=""
PLIST_SUB+= SUB_ADD_A="@comment "
PLIST_SUB+= SUB_ADD_C="@comment "
PLIST_SUB+= SUB_ADD_D="@comment "
PLIST_SUB+= SUB_ADD_E="@comment "
PLIST_SUB+= SUB_ADD_F="@comment "
PLIST_SUB+= SUB_ADD_G="@comment "
PLIST_SUB+= SUB_PGP_A="@comment "
.elif !defined(WITH_MUTT_COMPRESSED_FOLDERS) && defined(WITH_MUTT_NNTP) && \
defined(WITH_MUTT_QUOTE_PATCH)
PLIST_SUB+= SUB_ADD_E=""
PLIST_SUB+= SUB_ADD_A="@comment "
PLIST_SUB+= SUB_ADD_B="@comment "
PLIST_SUB+= SUB_ADD_C="@comment "
PLIST_SUB+= SUB_ADD_D="@comment "
PLIST_SUB+= SUB_ADD_F="@comment "
PLIST_SUB+= SUB_ADD_G="@comment "
PLIST_SUB+= SUB_PGP_A="@comment "
.elif !defined(WITH_MUTT_COMPRESSED_FOLDERS) && defined(WITH_MUTT_NNTP) && \
!defined(WITH_MUTT_QUOTE_PATCH)
PLIST_SUB+= SUB_ADD_D=""
PLIST_SUB+= SUB_ADD_A="@comment "
PLIST_SUB+= SUB_ADD_B="@comment "
PLIST_SUB+= SUB_ADD_C="@comment "
PLIST_SUB+= SUB_ADD_E="@comment "
PLIST_SUB+= SUB_ADD_F="@comment "
PLIST_SUB+= SUB_ADD_G="@comment "
PLIST_SUB+= SUB_PGP_A="@comment "
.elif !defined(WITH_MUTT_COMPRESSED_FOLDERS) && !defined(WITH_MUTT_NNTP) && \
defined(WITH_MUTT_QUOTE_PATCH)
PLIST_SUB+= SUB_ADD_A=""
PLIST_SUB+= SUB_ADD_B="@comment "
PLIST_SUB+= SUB_ADD_C="@comment "
PLIST_SUB+= SUB_ADD_D="@comment "
PLIST_SUB+= SUB_ADD_E="@comment "
PLIST_SUB+= SUB_ADD_F="@comment "
PLIST_SUB+= SUB_ADD_G="@comment "
PLIST_SUB+= SUB_PGP_A="@comment "
.elif !defined(WITH_MUTT_COMPRESSED_FOLDERS) && !defined(WITH_MUTT_NNTP) && \
!defined(WITH_MUTT_QUOTE_PATCH)
PLIST_SUB+= SUB_ADD_A="@comment "
PLIST_SUB+= SUB_ADD_B="@comment "
PLIST_SUB+= SUB_ADD_C="@comment "
PLIST_SUB+= SUB_ADD_D="@comment "
PLIST_SUB+= SUB_ADD_E="@comment "
PLIST_SUB+= SUB_ADD_F="@comment "
PLIST_SUB+= SUB_ADD_G="@comment "
PLIST_SUB+= SUB_PGP_A=""
.else # patches
PLIST_SUB+= SUB_ADD_A="@comment "
PLIST_SUB+= SUB_ADD_B="@comment "
PLIST_SUB+= SUB_ADD_C="@comment "
PLIST_SUB+= SUB_ADD_D="@comment "
PLIST_SUB+= SUB_ADD_E="@comment "
PLIST_SUB+= SUB_ADD_F="@comment "
PLIST_SUB+= SUB_ADD_G="@comment "
PLIST_SUB+= SUB_PGP_A=""
.endif
.else # HTML
PLIST_SUB+= SUB_HTML="@comment "
PLIST_SUB+= SUB_ADD_A="@comment "
PLIST_SUB+= SUB_ADD_B="@comment "
PLIST_SUB+= SUB_ADD_C="@comment "
PLIST_SUB+= SUB_ADD_D="@comment "
PLIST_SUB+= SUB_ADD_E="@comment "
PLIST_SUB+= SUB_ADD_F="@comment "
PLIST_SUB+= SUB_ADD_G="@comment "
PLIST_SUB+= SUB_PGP_A="@comment "
.endif
.else # NOPORTDOCS
PLIST_SUB+= SUB_HTML="@comment "
PLIST_SUB+= SUB_NNTP="@comment "
PLIST_SUB+= SUB_ADD_A="@comment "
PLIST_SUB+= SUB_ADD_B="@comment "
PLIST_SUB+= SUB_ADD_C="@comment "
PLIST_SUB+= SUB_ADD_D="@comment "
PLIST_SUB+= SUB_ADD_E="@comment "
PLIST_SUB+= SUB_ADD_F="@comment "
PLIST_SUB+= SUB_ADD_G="@comment "
PLIST_SUB+= SUB_PGP_A="@comment "
post-patch::
${PATCH} ${PATCH_ARGS} < ${PATCHDIR}/extra-patch-nodoc-contrib
.endif
.if defined(WITH_MUTT_PGP_OUTLOOK_PATCH) && !defined(WITH_MUTT_MAILDIR_PATCH)
PLIST_SUB+= SUB_PGP=""
.else
PLIST_SUB+= SUB_PGP="@comment "
.endif
.if defined(WITH_MUTT_MAILDIR_PATCH) && !defined(WITH_MUTT_PGP_OUTLOOK_PATCH)
PLIST_SUB+= SUB_MAILDIR=""
.else
PLIST_SUB+= SUB_MAILDIR="@comment "
.endif
.if defined(WITH_MUTT_PGP_OUTLOOK_PATCH) && defined(WITH_MUTT_MAILDIR_PATCH)
PLIST_SUB+= SUB_MAILDIRPGP=""
.else
PLIST_SUB+= SUB_MAILDIRPGP="@comment "
.endif
.if ${SGML_USED} == yes
BUILD_DEPENDS+= sgmlfmt:${PORTSDIR}/textproc/sgmlformat
post-patch::
${PATCH} ${PATCH_ARGS} < ${PATCHDIR}/extra-patch-sgmlformat
PLIST_SUB+= SUB_SGML=""
.else
PLIST_SUB+= SUB_SGML="@comment "
.endif
post-install:
@strip ${PREFIX}/bin/mutt
.if !defined(NOPORTDOCS)
@${ECHO} "===> Installing Mutt documentation"
@${MKDIR} ${PREFIX}/share/doc/mutt && \
${CHMOD} a+rx ${PREFIX}/share/doc/mutt
@cd ${WRKSRC}/doc ; ${INSTALL_MAN} manual.txt \
PGP-Notes.txt ../ABOUT-NLS ../contrib/language* \
${PREFIX}/share/doc/mutt
.if ${SGML_USED} == yes
@cd ${WRKSRC}/doc ; ${INSTALL_MAN} manual.latin1 \
${PREFIX}/share/doc/mutt
.endif
.if defined(WITH_MUTT_NNTP)
@cd ${WRKSRC} ; ${INSTALL_MAN} ChangeLog.nntp \
${PREFIX}/share/doc/mutt
.endif
.if defined(WITH_MUTT_HTML)
@${MKDIR} ${PREFIX}/share/doc/mutt/html && \
${CHMOD} a+rx ${PREFIX}/share/doc/mutt/html
${INSTALL_MAN} ${WRKSRC}/doc/*.html ${PREFIX}/share/doc/mutt/html
.endif
.endif
.include <bsd.port.post.mk>