X-Git-Url: https://git.pld-linux.org/?p=packages%2Fmutt.git;a=blobdiff_plain;f=mutt-home_etc.patch;h=9c24e2358fa23073943bb84d2f676e4d3b3d66c7;hp=108a173786000ae7152cd072da7bbf9ccc4075a6;hb=9b7ff4e7ae64b6a8036923fcb4c9f77e15cd8432;hpb=1bd25f335b267ec7a33f391579a56b008e4650e6 diff --git a/mutt-home_etc.patch b/mutt-home_etc.patch index 108a173..9c24e23 100644 --- a/mutt-home_etc.patch +++ b/mutt-home_etc.patch @@ -1,90 +1,208 @@ -diff -Nru mutt-1.4.1.orig/doc/mutt.man mutt-1.4.1/doc/mutt.man ---- mutt-1.4.1.orig/doc/mutt.man Wed Jul 24 10:41:31 2002 -+++ mutt-1.4.1/doc/mutt.man Wed Oct 8 20:11:11 2003 -@@ -122,13 +122,13 @@ +diff -Nur mutt-1.5.11.orig/configure.ac mutt-1.5.11/configure.ac +--- mutt-1.5.11.orig/configure.ac 2006-05-11 23:23:13.000000000 +0200 ++++ mutt-1.5.11/configure.ac 2006-05-12 00:58:13.000000000 +0200 +@@ -816,6 +816,32 @@ + fi]) + dnl -- end cache -- + ++dnl -- home-etc -- ++AC_ARG_WITH(home-etc, [ --with-home-etc[=PFX] Use HOME-ETC library to allow user keeping it's configuration files in a non-standard place ], ++ [ ++ if test "$with_home_etc" != "no" ++ then ++ if test "$with_home_etc" != "yes" ++ then ++ LDFLAGS="$LDFLAGS -L$with_home_etc/lib" ++ fi ++ ++ saved_LIBS="$LIBS" ++ ++ AC_CHECK_LIB(home_etc, get_home_etc_static,, ++ AC_MSG_ERROR([could not find libhome_etc]),) ++ ++ AC_CHECK_HEADERS(home_etc.h) ++ ++ MUTTLIBS="$MUTTLIBS -lhome_etc" ++ LIBS="$saved_LIBS" ++ AC_DEFINE(USE_HOME_ETC,1, ++ [ Define if want to use the HOME-ETC library. ]) ++ need_home_etc=yes ++ fi ++ ]) ++AM_CONDITIONAL(USE_HOME_ETC, test x$need_home_etc = xyes) ++ + if test "$need_md5" = "yes" + then + MUTT_LIB_OBJECTS="$MUTT_LIB_OBJECTS md5c.o" +diff -Nur mutt-1.5.11.orig/doc/mutt.man mutt-1.5.11/doc/mutt.man +--- mutt-1.5.11.orig/doc/mutt.man 2005-08-18 21:38:54.000000000 +0200 ++++ mutt-1.5.11/doc/mutt.man 2006-05-12 00:58:13.000000000 +0200 +@@ -122,6 +122,8 @@ + .IP "MAILDIR" + Full path of the user's spool mailbox if MAIL is unset. Commonly used when the spool + mailbox is a ++.IP "HOME_ETC" ++Path to alternative configuration directory. + .B maildir (5) + folder. + .IP "MAILCAPS" +@@ -138,17 +140,17 @@ Specifies the editor to use when composing messages. .SH FILES .PP -.IP "~/.muttrc or ~/.mutt/muttrc" +.IP "$HOME_ETC/.muttrc" or "$HOME_ETC/.mutt/muttrc" or "~/.muttrc" or "~/.mutt/muttrc" User configuration file. - .IP "/etc/Muttrc" + .IP "@sysconfdir@/Muttrc" System-wide configuration file. .IP "/tmp/muttXXXXXX" Temporary files created by Mutt. -.IP "~/.mailcap" -+.IP "$HOME_ETC/.mailcap" or "~/.mailcap" ++.IP "~/.mailcap or $HOME_ETC/.mailcap" User definition for handling non-text MIME types. - .IP "/etc/mailcap" + .IP "@sysconfdir@/mailcap" System definition for handling non-text MIME types. -diff -Nur mutt-1.4.1.orig/init.c mutt-1.4.1/init.c ---- mutt-1.4.1.orig/init.c Sun Dec 7 14:34:23 2003 -+++ mutt-1.4.1/init.c Sun Dec 7 15:08:22 2003 -@@ -25,6 +25,7 @@ - #include "mbyte.h" - #include "charset.h" +-.IP "~/.mime.types" ++.IP "~/.mime.types or $HOME_ETC/.mime.types" + User's personal mapping between MIME types and file extensions. + .IP "@sysconfdir@/mime.types" + System mapping between MIME types and file extensions. +diff -Nur mutt-1.5.11.orig/init.c mutt-1.5.11/init.c +--- mutt-1.5.11.orig/init.c 2006-05-11 23:23:13.000000000 +0200 ++++ mutt-1.5.11/init.c 2006-05-12 00:58:40.000000000 +0200 +@@ -35,7 +35,12 @@ + #include "mutt_ssl.h" + #endif -+#include +- ++#ifdef HAVE_HOME_ETC_H ++# include ++# define H_CFDIR _HEdir ++#else ++# define H_CFDIR Homedir ++#endif - #ifdef HAVE_PGP - #include "pgp.h" -@@ -1892,13 +1893,13 @@ + #include "mx.h" + #include "init.h" +@@ -2334,7 +2339,21 @@ + else + { + /* Default search path from RFC1524 */ +- MailcapPath = safe_strdup ("~/.mailcap:" PKGDATADIR "/mailcap:" SYSCONFDIR "/mailcap:/etc/mailcap:/usr/etc/mailcap:/usr/local/etc/mailcap"); ++ ++#define MAILCAPPATHS "~/.mailcap:" PKGDATADIR "/mailcap:" SYSCONFDIR "/mailcap:/etc/mailcap:/usr/etc/mailcap:/usr/local/etc/mailcap" ++#ifdef HAVE_HOME_ETC_H ++ ++ MailcapPath = safe_malloc (mutt_strlen (MAILCAPPATHS) + mutt_strlen (_HEdir) + 2); ++ if (_HEdir != NULL && (mutt_strlen (_HEdir)) > 0) ++ sprintf (MailcapPath, "%s:%s", _HEdir, MAILCAPPATHS); /* __SPRINTF_CHECKED__ */ ++ else ++ strcpy (MailcapPath, MAILCAPPATHS); /* __SPRCPY_CHECKED__ */ ++ ++#else ++ ++ MailcapPath = safe_strdup (MAILCAPPATHS); ++ ++#endif + } + + Tempdir = safe_strdup ((p = getenv ("TMPDIR")) ? p : "/tmp"); +@@ -2981,15 +2981,15 @@ if (!Muttrc) { - snprintf (buffer, sizeof(buffer), "%s/.muttrc-%s", NONULL(Homedir), MUTT_VERSION); -+ snprintf (buffer, sizeof(buffer), "%s/.muttrc-%s", NONULL(_HEdir), MUTT_VERSION); ++ snprintf (buffer, sizeof(buffer), "%s/.muttrc-%s", NONULL(H_CFDIR), MUTT_VERSION); if (access(buffer, F_OK) == -1) - snprintf (buffer, sizeof(buffer), "%s/.muttrc", NONULL(Homedir)); -+ snprintf (buffer, sizeof(buffer), "%s/.muttrc", NONULL(_HEdir)); ++ snprintf (buffer, sizeof(buffer), "%s/.muttrc", NONULL(H_CFDIR)); if (access(buffer, F_OK) == -1) - snprintf (buffer, sizeof (buffer), "%s/.mutt/muttrc-%s", NONULL(Homedir), MUTT_VERSION); -+ snprintf (buffer, sizeof (buffer), "%s/.mutt/muttrc-%s", NONULL(_HEdir), MUTT_VERSION); ++ snprintf (buffer, sizeof (buffer), "%s/.mutt/muttrc-%s", NONULL(H_CFDIR), MUTT_VERSION); if (access(buffer, F_OK) == -1) - snprintf (buffer, sizeof (buffer), "%s/.mutt/muttrc", NONULL(Homedir)); -+ snprintf (buffer, sizeof (buffer), "%s/.mutt/muttrc", NONULL(_HEdir)); - ++ snprintf (buffer, sizeof (buffer), "%s/.mutt/muttrc", NONULL(H_CFDIR)); + if (access(buffer, F_OK) == -1) /* default to .muttrc for alias_file */ +- snprintf (buffer, sizeof(buffer), "%s/.muttrc", NONULL(Homedir)); ++ snprintf (buffer, sizeof(buffer), "%s/.muttrc", NONULL(H_CFDIR)); + default_rc = 1; Muttrc = safe_strdup (buffer); -diff -Nru mutt-1.4.1.orig/muttbug.sh.in mutt-1.4.1/muttbug.sh.in ---- mutt-1.4.1.orig/muttbug.sh.in Wed Oct 8 19:33:11 2003 -+++ mutt-1.4.1/muttbug.sh.in Wed Oct 8 20:19:05 2003 -@@ -244,13 +244,21 @@ - if test "$personal" = "yes" ; then - CANDIDATES=".muttrc-${MUTTVERSION} .muttrc .mutt/muttrc-${MUTTVERSION} .mutt/muttrc" - MATCHED="none" -+ if test -n "$HOME_ETC" ; then -+ for f in $CANDIDATES; do -+ if test -f "${HOME_ETC}/$f" ; then -+ MATCHED="${HOME_ETC}/$f" -+ break -+ fi -+ done -+ else - for f in $CANDIDATES; do - if test -f "${HOME}/$f" ; then - MATCHED="${HOME}/$f" - break - fi - done -- -+ fi - if test "$MATCHED" = "none" ; then - echo "Warning: Can't find your personal .muttrc." >&2 - else -diff -Nur mutt-1.4.1.orig/sendlib.c mutt-1.4.1/sendlib.c ---- mutt-1.4.1.orig/sendlib.c Sun Dec 7 14:34:23 2003 -+++ mutt-1.4.1/sendlib.c Sun Dec 7 15:18:25 2003 -@@ -40,6 +40,8 @@ +@@ -2526,10 +2545,10 @@ + } + + uname (&u); +- pathlen = strlen (Homedir) + sizeof("/.slrnfaces/") ++ pathlen = strlen (H_CFDIR) + sizeof("/.slrnfaces/") + + strlen (u.nodename) + 30; + fifo = safe_malloc (pathlen); +- sprintf (fifo, "%s/.slrnfaces", Homedir); ++ sprintf (fifo, "%s/.slrnfaces", H_CFDIR); + if (mkdir (fifo, 0700)) + { + if (errno != EEXIST) +@@ -2544,7 +2563,7 @@ + FILE *fp; + + /* We'll abuse fifo filename memory here. It's long enough. */ +- sprintf (fifo, "%s/.slrnfaces/README", Homedir); ++ sprintf (fifo, "%s/.slrnfaces/README", H_CFDIR); + if ((fp = fopen (fifo, "w")) != NULL) + { + fputs (_( +@@ -2560,7 +2579,7 @@ + } + } + +- status = snprintf (fifo, pathlen, "%s/.slrnfaces/%s.%ld", Homedir, ++ status = snprintf (fifo, pathlen, "%s/.slrnfaces/%s.%ld", H_CFDIR, + u.nodename, (long)getpid()); + if (status < 0) + goto clean_face; +diff -Nur mutt-1.5.11.orig/mutt_ssl.c mutt-1.5.11/mutt_ssl.c +--- mutt-1.5.11.orig/mutt_ssl.c 2005-08-03 11:17:46.000000000 +0200 ++++ mutt-1.5.11/mutt_ssl.c 2006-05-12 00:58:13.000000000 +0200 +@@ -58,6 +58,13 @@ + #define HAVE_ENTROPY() (!access(DEVRANDOM, R_OK) || entropy_byte_count >= 16) + #endif + ++#ifdef HAVE_HOME_ETC_H ++# include ++# define H_CFDIR _HEdir ++#else ++# define H_CFDIR Homedir ++#endif ++ + /* keep a handle on accepted certificates in case we want to + * open up another connection to the same server in this session */ + static STACK_OF(X509) *SslSessionCerts = NULL; +@@ -162,7 +169,7 @@ + /* load entropy from egd sockets */ + #ifdef HAVE_RAND_EGD + add_entropy (getenv ("EGDSOCKET")); +- snprintf (path, sizeof(path), "%s/.entropy", NONULL(Homedir)); ++ snprintf (path, sizeof(path), "%s/.entropy", NONULL(H_CFDIR)); + add_entropy (path); + add_entropy ("/tmp/entropy"); + #endif +diff -Nur mutt-1.5.11.orig/sendlib.c mutt-1.5.11/sendlib.c +--- mutt-1.5.11.orig/sendlib.c 2006-05-11 23:23:13.000000000 +0200 ++++ mutt-1.5.11/sendlib.c 2006-05-12 00:58:13.000000000 +0200 +@@ -45,6 +45,13 @@ #include #include -+#include ++#ifdef HAVE_HOME_ETC_H ++# include ++# define H_CFDIR _HEdir ++#else ++# define H_CFDIR Homedir ++#endif + #ifdef HAVE_SYSEXITS_H #include #else /* Make sure EX_OK is defined */ -@@ -958,9 +960,9 @@ +@@ -908,9 +915,9 @@ /* Given a file with path ``s'', see if there is a registered MIME type. * returns the major MIME type, and copies the subtype to ``d''. First look @@ -96,46 +214,13 @@ diff -Nur mutt-1.4.1.orig/sendlib.c mutt-1.4.1/sendlib.c + * match `ps.gz' when `gz' also exists. */ - static int lookup_mime_type (BODY *att, const char *path) -@@ -989,7 +991,7 @@ + int mutt_lookup_mime_type (BODY *att, const char *path) +@@ -939,7 +946,7 @@ switch (count) { case 0: - snprintf (buf, sizeof (buf), "%s/.mime.types", NONULL(Homedir)); -+ snprintf (buf, sizeof (buf), "%s/.mime.types", NONULL(_HEdir)); ++ snprintf (buf, sizeof (buf), "%s/.mime.types", NONULL(H_CFDIR)); break; case 1: strfcpy (buf, SYSCONFDIR"/mime.types", sizeof(buf)); -diff -Nur mutt-1.4.1.orig/configure.in mutt-1.4.1/configure.in ---- mutt-1.4.1.orig/configure.in Sun Dec 7 14:34:23 2003 -+++ mutt-1.4.1/configure.in Sun Dec 7 18:38:04 2003 -@@ -592,6 +592,29 @@ - ]) - AM_CONDITIONAL(USE_SASL, test x$need_sasl = xyes) - -+AC_ARG_WITH(home-etc, [ --with-home-etc[=PFX] Use HOME-ETC library to allow user keeping it's configuration files in a non-standard place ], -+ [ -+ if test "$with_home_etc" != "no" -+ then -+ if test "$with_home_etc" != "yes" -+ then -+ LDFLAGS="$LDFLAGS -L$with_home_etc/lib" -+ fi -+ -+ saved_LIBS="$LIBS" -+ -+ AC_CHECK_LIB(home_etc, get_home_etc_static,, -+ AC_MSG_ERROR([could not find libhome_etc]),) -+ -+ MUTTLIBS="$MUTTLIBS -lhome_etc" -+ LIBS="$saved_LIBS" -+ AC_DEFINE(USE_SASL,1, -+ [ Define if want to use the HOME-ETC library. ]) -+ need_home_etc=yes -+ fi -+ ]) -+AM_CONDITIONAL(USE_HOME_ETC, test x$need_home_etc = xyes) -+ - if test "$need_md5" = "yes" - then - MUTT_LIB_OBJECTS="$MUTT_LIB_OBJECTS md5c.o"