diff options
author | pi <pi@FreeBSD.org> | 2016-01-28 19:50:35 +0800 |
---|---|---|
committer | pi <pi@FreeBSD.org> | 2016-01-28 19:50:35 +0800 |
commit | 926a4c2c971d04b06ba5847a1ae4af7fb26350a5 (patch) | |
tree | 4b2c7e7e7378112cec7d5a358d08c13a925617fd /mail/mutt | |
parent | 2f802164f2ec85407c8bb4b2df4ba84272db94a7 (diff) | |
download | freebsd-ports-gnome-926a4c2c971d04b06ba5847a1ae4af7fb26350a5.tar.gz freebsd-ports-gnome-926a4c2c971d04b06ba5847a1ae4af7fb26350a5.tar.zst freebsd-ports-gnome-926a4c2c971d04b06ba5847a1ae4af7fb26350a5.zip |
mail/mutt: provide options to build with GSSAPI variants
The port rolls its own GSSAPI handling system, looking for installed
libraries, rather than employing the "Uses" knobs (which probably
post-date the mutt Port's GSSAPI support).
When linking against OpenSSL from Ports, this results in one mutt
process pulling in both libcrypto.so.8 from Ports and libcrypto.so.7
from the base system (FreeBSD 10.1), leading to environ corruption
problems when running external commands, which complain at startup
(libc routines detect the corruption). These look like:
sh: environment corrupt; missing value for SOME_VAR
and can be seen when, eg, viewing a PGP-signed mail with GnuPG
integration turned on.
This patch switches mail/mutt to use the GSSAPI "Uses" system.
PR: 206220
Submitted by: Phil Pennock <freebsd@phil.spodhuis.org>
Approved by: Udo Schweigert <Udo.Schweigert@siemens.com> (maintainer)
Diffstat (limited to 'mail/mutt')
-rw-r--r-- | mail/mutt/Makefile | 35 | ||||
-rw-r--r-- | mail/mutt/files/patch-m4-gssapi.m4 | 10 |
2 files changed, 23 insertions, 22 deletions
diff --git a/mail/mutt/Makefile b/mail/mutt/Makefile index dddec14cbc3f..08c61ba25a8e 100644 --- a/mail/mutt/Makefile +++ b/mail/mutt/Makefile @@ -3,7 +3,7 @@ PORTNAME= mutt PORTVERSION= 1.5.24 -PORTREVISION?= 2 +PORTREVISION?= 3 CATEGORIES+= mail ipv6 MASTER_SITES= ftp://ftp.mutt.org/mutt/ \ ftp://ftp.fu-berlin.de/pub/unix/mail/mutt/ \ @@ -54,7 +54,7 @@ LITE= yes OPTIONS_UNSET= NLS DOCS EXAMPLES .else OPTIONS_DEFINE= COMPRESSED_FOLDERS SASL DEBUG DOCS EXAMPLES FLOCK \ - GPGME GREETING_PATCH GSSAPI HTML ICONV IDN IFDEF_PATCH \ + GPGME GREETING_PATCH HTML ICONV IDN IFDEF_PATCH \ IMAP_HEADER_CACHE LOCALES_FIX MAILBOX_MANPAGES \ MAILDIR_HEADER_CACHE MAILDIR_MTIME_PATCH \ MIXMASTER NLS NNTP PARENT_CHILD_MATCH_PATCH \ @@ -62,9 +62,10 @@ OPTIONS_DEFINE= COMPRESSED_FOLDERS SASL DEBUG DOCS EXAMPLES FLOCK \ SIGNATURE_MENU SMART_DATE SMIME_OUTLOOK_COMPAT SMTP \ TOKYOCABINET TRASH_PATCH URLVIEW XML -OPTIONS_SINGLE= SCREEN +OPTIONS_SINGLE= GSSAPI SCREEN OPTIONS_RADIO= SPELL OPTIONS_RADIO_SPELL= ASPELL ISPELL +OPTIONS_SINGLE_GSSAPI= GSSAPI_BASE GSSAPI_HEIMDAL GSSAPI_MIT GSSAPI_NONE OPTIONS_SINGLE_SCREEN= NCURSES SLANG COMPRESSED_FOLDERS_DESC= Compressed folders @@ -73,7 +74,6 @@ DEBUG_DESC= Debugging capabilities FLOCK_DESC= flock() usage GPGME_DESC= Gpgme interface GREETING_PATCH_DESC= Greeting support -GSSAPI_DESC= Use the gss API HTML_DESC= HTML documentation IFDEF_PATCH_DESC= ifdef feature IMAP_HEADER_CACHE_DESC= IMAP header cache @@ -141,6 +141,15 @@ NCURSES_USES= ncurses NLS_USES= gettext NLS_CONFIGURE_OFF= --disable-nls +# Handle GSSAPI from various places +GSSAPI_BASE_USES= gssapi +GSSAPI_BASE_CONFIGURE_ON= --with-gss=${GSSAPIBASEDIR} ${GSSAPI_CONFIGURE_ARGS} +GSSAPI_HEIMDAL_USES= gssapi:heimdal +GSSAPI_HEIMDAL_CONFIGURE_ON= --with-gss=${GSSAPIBASEDIR} ${GSSAPI_CONFIGURE_ARGS} +GSSAPI_MIT_USES= gssapi:mit +GSSAPI_MIT_CONFIGURE_ON= --with-gss=${GSSAPIBASEDIR} ${GSSAPI_CONFIGURE_ARGS} +GSSAPI_NONE_CONFIGURE_ON= --without-gss + ICONV_USES= iconv:translit ICONV_CONFIGURE_ON= ${ICONV_CONFIGURE_ARG} ICONV_CONFIGURE_OFF= --disable-iconv @@ -229,24 +238,6 @@ pre-build:: -e "s|^(AUTOHEADER = ).+|\1${AUTOHEADER}|" \ ${BUILD_WRKSRC}/Makefile -.if ${PORT_OPTIONS:MGSSAPI} -.if exists(${LOCALBASE}/bin/krb5-config) -LIB_DEPENDS+= libgssapi_krb5.so:${PORTSDIR}/security/krb5 -CONFIGURE_ARGS+= --with-gss=${LOCALBASE} -.elif exists(${KRB5_HOME}/bin/krb5-config) -LIB_DEPENDS+= libgssapi_krb5.so:${PORTSDIR}/security/krb5 -CONFIGURE_ARGS+= --with-gss=${KRB5_HOME} -LDFLAGS+= -L${KRB5_HOME}/lib -Wl,-rpath=${KRB5_HOME}/lib -ltinfow -.elif exists(${HEIMDAL_HOME}/bin/krb5-config) -LIB_DEPENDS+= libgssapi_krb5.so:${PORTSDIR}/security/krb5 -CONFIGURE_ARGS+= --with-gss=${HEIMDAL_HOME} -LDFLAGS+= -L${HEIMDAL_HOME}/lib -Wl,-rpath=${HEIMDAL_HOME}/lib -ltinfow -.elif (defined(MAKE_KERBEROS5)) || exists(/usr/lib/libkrb5.a) -CONFIGURE_ARGS+= --with-gss -WITH_KRB5_SYS=yes -.endif -.endif - LDFLAGS+= -L${LOCALBASE}/lib -Wl,-rpath=${LOCALBASE}/lib:/usr/lib -ltinfow CFLAGS+= ${CFLAGS_ADD} LDFLAGS+= ${LDFLAGS_ADD} diff --git a/mail/mutt/files/patch-m4-gssapi.m4 b/mail/mutt/files/patch-m4-gssapi.m4 new file mode 100644 index 000000000000..24bfbb384e64 --- /dev/null +++ b/mail/mutt/files/patch-m4-gssapi.m4 @@ -0,0 +1,10 @@ +--- m4/gssapi.m4.orig 2015-08-30 19:06:38.000000000 +0200 ++++ m4/gssapi.m4 2016-01-25 15:04:37.448609000 +0100 +@@ -27,6 +27,7 @@ + GSSAPI_LIBS="$MUTTLIBS `$KRB5CFGPATH --libs gssapi`" + case "`$KRB5CFGPATH --version`" in + "Kerberos 5 "*) GSSAPI_IMPL="MIT";; ++ "FreeBSD heimdal"*) GSSAPI_IMPL="Heimdal";; + ?eimdal*) GSSAPI_IMPL="Heimdal";; + *) GSSAPI_IMPL="Unknown";; + esac |