MH-6.8.4-JP-3.05をCentOS4.3付属のgcc3.4.6でコンパイル
できた!
なんでまた…、というのは俺も思うけどしゃーないのです。
http://media.laic.u-hyogo.ac.jp/~hayashi/internet/mh-plus.html
http://www.jp.freebsd.org/cgi/cvsweb.cgi/ports/japanese/mh/files/
varargs.h → stdarg.h とか
errno.h の extern int errno; とか。
以下、パッチ。
diff -cr mh-6.8.4-JP-3.05/conf/config/mts.c mh-6.8.4-JP-3.05_PATCHED/conf/config/mts.c *** mh-6.8.4-JP-3.05/conf/config/mts.c 2001-04-02 22:36:26.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/conf/config/mts.c 2006-10-18 02:11:41.000000000 +0900 *************** *** 33,42 **** #define NULLCP ((char *) 0) - #ifdef __CYGWIN32__ #include <errno.h> - #endif - extern int errno; static char *tailor_value (); --- 33,39 ---- diff -cr mh-6.8.4-JP-3.05/h/mh.h mh-6.8.4-JP-3.05_PATCHED/h/mh.h *** mh-6.8.4-JP-3.05/h/mh.h 1998-12-02 02:05:00.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/h/mh.h 2006-10-18 02:08:36.000000000 +0900 *************** *** 253,259 **** int atooi (); char **brkstring (); void closefds (); ! char *concat (); char *copy (); char **copyip (); void cpydata (); --- 253,259 ---- int atooi (); char **brkstring (); void closefds (); ! char *concat (char *, ...); char *copy (); char **copyip (); void cpydata (); diff -cr mh-6.8.4-JP-3.05/h/strings.h mh-6.8.4-JP-3.05_PATCHED/h/strings.h *** mh-6.8.4-JP-3.05/h/strings.h 2001-04-02 19:35:24.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/h/strings.h 2006-10-18 02:29:52.000000000 +0900 *************** *** 24,30 **** #define rindex strrchr #endif /* SYS5 */ ! #if defined(BSD42) || defined(SVR4) || defined(hpux) || defined(__osf__) #if !defined(SVR4) && !defined(__386BSD__) && !defined(BSD44) #include <strings.h> #else --- 24,30 ---- #define rindex strrchr #endif /* SYS5 */ ! #if defined(BSD42) || defined(SVR4) || defined(hpux) || defined(__osf__) || defined(linux) #if !defined(SVR4) && !defined(__386BSD__) && !defined(BSD44) #include <strings.h> #else *************** *** 55,61 **** char *strncpy (); #endif ! #if !defined(SVR4) && !defined(__386BSD__) && !defined(BSD44) char *getenv (); char *calloc (), *malloc (), *realloc (); #endif /* SVR4 */ --- 55,61 ---- char *strncpy (); #endif ! #if !defined(SVR4) && !defined(__386BSD__) && !defined(BSD44) && !defined(linux) char *getenv (); char *calloc (), *malloc (), *realloc (); #endif /* SVR4 */ diff -cr mh-6.8.4-JP-3.05/sbr/advertise.c mh-6.8.4-JP-3.05_PATCHED/sbr/advertise.c *** mh-6.8.4-JP-3.05/sbr/advertise.c 2001-04-03 04:27:52.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/sbr/advertise.c 2006-10-18 02:12:54.000000000 +0900 *************** *** 15,31 **** output... More importantly though, it's a sexy syscall()... */ - #ifdef __CYGWIN32__ #include <errno.h> - #endif - extern int errno; #if !defined(BSD44) && !defined(__GNU_LIBRARY__) /* in <stdio.h> */ extern int sys_nerr; extern char *sys_errlist[]; #endif - #ifdef __NetBSD__ /* XXX */ - #include <errno.h> - #endif /* */ --- 15,25 ---- diff -cr mh-6.8.4-JP-3.05/sbr/concat.c mh-6.8.4-JP-3.05_PATCHED/sbr/concat.c *** mh-6.8.4-JP-3.05/sbr/concat.c 1993-12-01 13:01:21.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/sbr/concat.c 2006-10-18 02:08:49.000000000 +0900 *************** *** 2,14 **** #include "../h/mh.h" #include <stdio.h> ! #include <varargs.h> /* VARARGS */ ! char *concat (va_alist) ! va_dcl { register char *cp, *dp, --- 2,13 ---- #include "../h/mh.h" #include <stdio.h> ! #include <stdarg.h> /* VARARGS */ ! char *concat (char *first, ...) { register char *cp, *dp, *************** *** 17,35 **** register va_list list; len = 1; ! va_start (list); ! while (cp = va_arg (list, char *)) ! len += strlen (cp); ! va_end (list); dp = sp = malloc (len); if (dp == NULL) adios (NULLCP, "unable to allocate string storage"); ! va_start (list); ! while (cp = va_arg (list, char *)) ! sp = copy (cp, sp); ! va_end (list); return dp; } --- 16,41 ---- register va_list list; len = 1; ! if (first) { ! len += strlen (first); ! va_start (list, first); ! while (cp = va_arg (list, char *)) ! len += strlen (cp); ! va_end (list); ! } dp = sp = malloc (len); if (dp == NULL) adios (NULLCP, "unable to allocate string storage"); ! *sp = '\0'; ! if (first) { ! sp = copy (first, sp); ! va_start (list, first); ! while (cp = va_arg (list, char *)) ! sp = copy (cp, sp); ! va_end (list); ! } return dp; } diff -cr mh-6.8.4-JP-3.05/sbr/makedir.c mh-6.8.4-JP-3.05_PATCHED/sbr/makedir.c *** mh-6.8.4-JP-3.05/sbr/makedir.c 2001-04-02 19:42:20.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/sbr/makedir.c 2006-10-18 02:13:56.000000000 +0900 *************** *** 29,36 **** #include <unistd.h> #endif - extern int errno; - makedir (dir) register char *dir; { --- 29,34 ---- diff -cr mh-6.8.4-JP-3.05/sbr/m_draft.c mh-6.8.4-JP-3.05_PATCHED/sbr/m_draft.c *** mh-6.8.4-JP-3.05/sbr/m_draft.c 1993-12-01 13:01:23.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/sbr/m_draft.c 2006-10-18 02:13:12.000000000 +0900 *************** *** 10,16 **** #include <sys/stat.h> - extern int errno; char *m_draft (folder, msg, use, isdf) --- 10,15 ---- diff -cr mh-6.8.4-JP-3.05/sbr/m_getdefs.c mh-6.8.4-JP-3.05_PATCHED/sbr/m_getdefs.c *** mh-6.8.4-JP-3.05/sbr/m_getdefs.c 2001-04-05 01:05:15.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/sbr/m_getdefs.c 2006-10-18 02:13:26.000000000 +0900 *************** *** 14,20 **** #include <pwd.h> - extern int errno; #ifndef __STDC__ #ifdef SYS5 --- 14,19 ---- diff -cr mh-6.8.4-JP-3.05/sbr/ruserpass.c mh-6.8.4-JP-3.05_PATCHED/sbr/ruserpass.c *** mh-6.8.4-JP-3.05/sbr/ruserpass.c 1998-12-02 02:05:00.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/sbr/ruserpass.c 2006-10-18 02:14:27.000000000 +0900 *************** *** 66,72 **** char myname[MAXHOSTNAMELEN], *mydomain; int t, i, c, usedefault = 0; struct stat stb; - extern int errno; hdir = getenv("HOME"); if (hdir == NULL) --- 66,71 ---- diff -cr mh-6.8.4-JP-3.05/support/bboards/mmdfII/bboards/lock.c mh-6.8.4-JP-3.05_PATCHED/support/bboards/mmdfII/bboards/lock.c *** mh-6.8.4-JP-3.05/support/bboards/mmdfII/bboards/lock.c 2001-04-03 16:22:46.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/support/bboards/mmdfII/bboards/lock.c 2006-10-18 02:15:15.000000000 +0900 *************** *** 77,86 **** #define FLOCK /* LOCKF will override this, if defined */ #endif - #ifdef __CYGWIN32__ #include <errno.h> - #endif - extern int errno; #ifdef LOCKONLY #ifndef MMDFONLY --- 77,83 ---- diff -cr mh-6.8.4-JP-3.05/support/pop/mmdfII/pop/lock.c mh-6.8.4-JP-3.05_PATCHED/support/pop/mmdfII/pop/lock.c *** mh-6.8.4-JP-3.05/support/pop/mmdfII/pop/lock.c 2001-04-03 16:22:46.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/support/pop/mmdfII/pop/lock.c 2006-10-18 02:15:15.000000000 +0900 *************** *** 77,86 **** #define FLOCK /* LOCKF will override this, if defined */ #endif - #ifdef __CYGWIN32__ #include <errno.h> - #endif - extern int errno; #ifdef LOCKONLY #ifndef MMDFONLY --- 77,83 ---- diff -cr mh-6.8.4-JP-3.05/support/pop/popwrd.c mh-6.8.4-JP-3.05_PATCHED/support/pop/popwrd.c *** mh-6.8.4-JP-3.05/support/pop/popwrd.c 1999-02-09 20:30:00.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/support/pop/popwrd.c 2006-10-18 02:16:37.000000000 +0900 *************** *** 24,30 **** static char temp[] = "ptmp"; static char home[BUFSIZ]; - extern int errno; char *crypt (), *getpass (), *tail (); time_t time (); --- 24,29 ---- diff -cr mh-6.8.4-JP-3.05/uip/annosbr.c mh-6.8.4-JP-3.05_PATCHED/uip/annosbr.c *** mh-6.8.4-JP-3.05/uip/annosbr.c 2001-04-02 21:03:43.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/uip/annosbr.c 2006-10-18 02:17:11.000000000 +0900 *************** *** 11,17 **** #include <sys/stat.h> - extern int errno; off_t lseek (); static annosbr(); --- 11,16 ---- diff -cr mh-6.8.4-JP-3.05/uip/bbc.c mh-6.8.4-JP-3.05_PATCHED/uip/bbc.c *** mh-6.8.4-JP-3.05/uip/bbc.c 1998-12-02 02:05:00.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/uip/bbc.c 2006-10-18 02:17:26.000000000 +0900 *************** *** 112,118 **** /* */ - extern int errno; static int changed = 0; static int oops = 0; --- 112,117 ---- diff -cr mh-6.8.4-JP-3.05/uip/dropsbr.c mh-6.8.4-JP-3.05_PATCHED/uip/dropsbr.c *** mh-6.8.4-JP-3.05/uip/dropsbr.c 1998-04-24 06:02:00.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/uip/dropsbr.c 2006-10-18 02:17:38.000000000 +0900 *************** *** 33,39 **** static int mbx_create(), mbx_chk(), map_open(); - extern int errno; off_t lseek (); --- 33,38 ---- diff -cr mh-6.8.4-JP-3.05/uip/folder.c mh-6.8.4-JP-3.05_PATCHED/uip/folder.c *** mh-6.8.4-JP-3.05/uip/folder.c 2001-04-02 19:35:24.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/uip/folder.c 2006-10-18 02:17:46.000000000 +0900 *************** *** 74,80 **** /* */ - extern int errno; static int fshort = 0; static int fcreat = 0; --- 74,79 ---- diff -cr mh-6.8.4-JP-3.05/uip/ftpsbr.c mh-6.8.4-JP-3.05_PATCHED/uip/ftpsbr.c *** mh-6.8.4-JP-3.05/uip/ftpsbr.c 2001-04-02 19:49:08.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/uip/ftpsbr.c 2006-10-18 02:18:23.000000000 +0900 *************** *** 66,75 **** /* */ - #ifdef __CYGWIN32__ #include <errno.h> - #endif - extern int errno; #if !defined(BSD44) && !defined(__GNU_LIBRARY__) extern int sys_nerr; extern char *sys_errlist[]; --- 66,72 ---- diff -cr mh-6.8.4-JP-3.05/uip/inc.c mh-6.8.4-JP-3.05_PATCHED/uip/inc.c *** mh-6.8.4-JP-3.05/uip/inc.c 2001-04-05 01:05:16.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/uip/inc.c 2006-10-18 02:18:34.000000000 +0900 *************** *** 142,148 **** /* */ - extern int errno; #ifdef POP int snoop = 0; --- 142,147 ---- diff -cr mh-6.8.4-JP-3.05/uip/mhn.c mh-6.8.4-JP-3.05_PATCHED/uip/mhn.c *** mh-6.8.4-JP-3.05/uip/mhn.c 2001-08-30 11:57:33.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/uip/mhn.c 2006-10-18 02:18:45.000000000 +0900 *************** *** 219,225 **** static char *tmp; - extern int errno; #if !defined(BSD44) && !defined(__GNU_LIBRARY__) extern int sys_nerr; extern char *sys_errlist[]; --- 219,224 ---- diff -cr mh-6.8.4-JP-3.05/uip/mshcmds.c mh-6.8.4-JP-3.05_PATCHED/uip/mshcmds.c *** mh-6.8.4-JP-3.05/uip/mshcmds.c 2001-04-03 01:40:58.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/uip/mshcmds.c 2006-10-18 02:19:10.000000000 +0900 *************** *** 29,35 **** /* */ - extern int errno; /* BURST */ static char delim3[] = "-------";/* from burst.c */ --- 29,34 ---- *************** *** 3529,3535 **** (void) strcpy (tmpfil, m_scratch ("", invo_name)); if ((out = fopen (tmpfil, "w")) == NULL) { int olderr; - extern int errno; char newfil[80]; olderr = errno; --- 3528,3533 ---- diff -cr mh-6.8.4-JP-3.05/uip/packf.c mh-6.8.4-JP-3.05_PATCHED/uip/packf.c *** mh-6.8.4-JP-3.05/uip/packf.c 1998-04-24 06:02:00.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/uip/packf.c 2006-10-18 02:19:19.000000000 +0900 *************** *** 27,33 **** /* */ - extern int errno; static int md = NOTOK; --- 27,32 ---- diff -cr mh-6.8.4-JP-3.05/uip/popi.c mh-6.8.4-JP-3.05_PATCHED/uip/popi.c *** mh-6.8.4-JP-3.05/uip/popi.c 1998-04-24 06:02:00.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/uip/popi.c 2006-10-18 02:19:29.000000000 +0900 *************** *** 100,106 **** static struct msgs *mp; - extern int errno; extern char response[]; --- 100,105 ---- diff -cr mh-6.8.4-JP-3.05/uip/popsbr.c mh-6.8.4-JP-3.05_PATCHED/uip/popsbr.c *** mh-6.8.4-JP-3.05/uip/popsbr.c 2001-04-02 19:50:01.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/uip/popsbr.c 2006-10-18 02:19:41.000000000 +0900 *************** *** 27,36 **** #define TRM "." #define TRMLEN (sizeof TRM - 1) - #ifdef __CYGWIN32__ #include <errno.h> - #endif - extern int errno; #if !defined(BSD44) && !defined(__GNU_LIBRARY__) extern int sys_nerr; extern char *sys_errlist[]; --- 27,33 ---- diff -cr mh-6.8.4-JP-3.05/uip/prompter.c mh-6.8.4-JP-3.05_PATCHED/uip/prompter.c *** mh-6.8.4-JP-3.05/uip/prompter.c 1998-04-24 06:02:00.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/uip/prompter.c 2006-10-18 02:19:52.000000000 +0900 *************** *** 68,74 **** /* */ - extern int errno; #ifndef SYS5 --- 68,73 ---- diff -cr mh-6.8.4-JP-3.05/uip/pshsbr.c mh-6.8.4-JP-3.05_PATCHED/uip/pshsbr.c *** mh-6.8.4-JP-3.05/uip/pshsbr.c 2001-04-02 19:50:24.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/uip/pshsbr.c 2006-10-18 02:20:01.000000000 +0900 *************** *** 27,36 **** #define TRM "." #define TRMLEN (sizeof TRM - 1) - #ifdef __CYGWIN32__ #include <errno.h> - #endif - extern int errno; #if !defined(BSD44) && !defined(__GNU_LIBRARY__) extern int sys_nerr; extern char *sys_errlist[]; --- 27,33 ---- diff -cr mh-6.8.4-JP-3.05/uip/rcvstore.c mh-6.8.4-JP-3.05_PATCHED/uip/rcvstore.c *** mh-6.8.4-JP-3.05/uip/rcvstore.c 1998-04-24 06:02:00.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/uip/rcvstore.c 2006-10-18 02:20:17.000000000 +0900 *************** *** 43,49 **** /* */ - extern int errno; static char *tmpfilenam = NULLCP; /* */ --- 43,48 ---- diff -cr mh-6.8.4-JP-3.05/uip/refile.c mh-6.8.4-JP-3.05_PATCHED/uip/refile.c *** mh-6.8.4-JP-3.05/uip/refile.c 1998-04-24 06:02:00.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/uip/refile.c 2006-10-18 02:20:23.000000000 +0900 *************** *** 47,53 **** /* */ - extern int errno; static char maildir[BUFSIZ]; --- 47,52 ---- diff -cr mh-6.8.4-JP-3.05/uip/replsbr.c mh-6.8.4-JP-3.05_PATCHED/uip/replsbr.c *** mh-6.8.4-JP-3.05/uip/replsbr.c 2001-04-05 01:05:17.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/uip/replsbr.c 2006-10-18 02:08:54.000000000 +0900 *************** *** 195,205 **** } } while (cptr = cptr->c_next); ! while (state == FLDPLUS) state = m_getfld (state, name, tmpbuf, SBUFSIZ, inb); #ifdef JAPAN (void) ml_conv(tmpbuf); #endif /* JAPAN */ break; case LENERR: --- 195,206 ---- } } while (cptr = cptr->c_next); ! while (state == FLDPLUS) { state = m_getfld (state, name, tmpbuf, SBUFSIZ, inb); #ifdef JAPAN (void) ml_conv(tmpbuf); #endif /* JAPAN */ + } break; case LENERR: diff -cr mh-6.8.4-JP-3.05/uip/scan.c mh-6.8.4-JP-3.05_PATCHED/uip/scan.c *** mh-6.8.4-JP-3.05/uip/scan.c 1999-02-09 20:30:00.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/uip/scan.c 2006-10-18 02:20:52.000000000 +0900 *************** *** 50,56 **** /* */ - extern int errno; #ifdef LBL /* global for sbr/formatsbr.c - yech! */ extern struct msgs *fmt_current_folder; #endif --- 50,55 ---- diff -cr mh-6.8.4-JP-3.05/uip/send.c mh-6.8.4-JP-3.05_PATCHED/uip/send.c *** mh-6.8.4-JP-3.05/uip/send.c 1998-04-24 06:02:00.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/uip/send.c 2006-10-18 02:20:59.000000000 +0900 *************** *** 164,170 **** extern char *distfile; - extern int errno; /* */ --- 164,169 ---- diff -cr mh-6.8.4-JP-3.05/uip/trmsbr.c mh-6.8.4-JP-3.05_PATCHED/uip/trmsbr.c *** mh-6.8.4-JP-3.05/uip/trmsbr.c 1993-12-01 13:01:39.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/uip/trmsbr.c 2006-10-18 02:08:58.000000000 +0900 *************** *** 26,31 **** --- 26,34 ---- #define TXTSIZ BUFSIZ #endif + #if defined(linux) + #include <termcap.h> + #else #ifndef SYS5 extern char PC; extern short ospeed; *************** *** 33,38 **** --- 36,42 ---- char PC; short ospeed; #endif /* SYS5 */ + #endif int tgetent (), tgetnum (); char *tgetstr (); diff -cr mh-6.8.4-JP-3.05/uip/ttyd.h mh-6.8.4-JP-3.05_PATCHED/uip/ttyd.h *** mh-6.8.4-JP-3.05/uip/ttyd.h 1993-12-01 13:01:39.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/uip/ttyd.h 2006-10-18 02:21:41.000000000 +0900 *************** *** 35,41 **** #define serror \ (errno > 0 && errno < sys_nerr ? sys_errlist[errno] : "Unknown error") - extern int errno; #ifndef BSD44 extern int sys_nerr; extern char *sys_errlist[]; --- 35,40 ---- diff -cr mh-6.8.4-JP-3.05/uip/vmh.c mh-6.8.4-JP-3.05_PATCHED/uip/vmh.c *** mh-6.8.4-JP-3.05/uip/vmh.c 2001-04-21 20:16:49.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/uip/vmh.c 2006-10-18 02:22:22.000000000 +0900 *************** *** 116,121 **** --- 116,141 ---- #define XYZ /* XXX */ + #if defined(__FreeBSD__) && __FreeBSD__ >= 5 + struct ldat + { + NCURSES_CH_T *text; + NCURSES_SIZE_T firstchar; + NCURSES_SIZE_T lastchar; + NCURSES_SIZE_T oldindex; + }; + #endif + + #if (defined(__FreeBSD__) && __FreeBSD__ >= 5) || (defined(linux)) + struct ldat + { + NCURSES_CH_T *text; + NCURSES_SIZE_T firstchar; + NCURSES_SIZE_T lastchar; + NCURSES_SIZE_T oldindex; + }; + #endif + /* */ static struct swit switches[] = { *************** *** 229,235 **** /* MISCELLANY */ - extern int errno; #if !defined(BSD44) && !defined(__GNU_LIBRARY__) extern int sys_nerr; extern char *sys_errlist[]; --- 249,254 ---- Only in mh-6.8.4-JP-3.05_PATCHED/uip: vmh.c.orig diff -cr mh-6.8.4-JP-3.05/uip/vmhsbr.c mh-6.8.4-JP-3.05_PATCHED/uip/vmhsbr.c *** mh-6.8.4-JP-3.05/uip/vmhsbr.c 2001-04-02 19:50:46.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/uip/vmhsbr.c 2006-10-18 02:22:43.000000000 +0900 *************** *** 24,33 **** static int PEERrfd = NOTOK; static int PEERwfd = NOTOK; - #ifdef __CYGWIN32__ #include <errno.h> - #endif - extern int errno; #if !defined(BSD44) && !defined(__GNU_LIBRARY__) extern int sys_nerr; extern char *sys_errlist[]; --- 24,30 ---- diff -cr mh-6.8.4-JP-3.05/uip/wmh.c mh-6.8.4-JP-3.05_PATCHED/uip/wmh.c *** mh-6.8.4-JP-3.05/uip/wmh.c 2001-04-05 01:05:18.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/uip/wmh.c 2006-10-18 02:22:57.000000000 +0900 *************** *** 146,152 **** /* MISCELLANY */ - extern int errno; #if !defined(BSD44) && !defined(__GNU_LIBRARY__) extern int sys_nerr; extern char *sys_errlist[]; --- 146,151 ---- diff -cr mh-6.8.4-JP-3.05/zotnet/mf/mmdfI/src/uucp/uu_wtmail.c mh-6.8.4-JP-3.05_PATCHED/zotnet/mf/mmdfI/src/uucp/uu_wtmail.c *** mh-6.8.4-JP-3.05/zotnet/mf/mmdfI/src/uucp/uu_wtmail.c 1993-12-01 13:01:41.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/zotnet/mf/mmdfI/src/uucp/uu_wtmail.c 2006-10-18 02:23:37.000000000 +0900 *************** *** 4,13 **** #include "mmdf.h" #include "ch.h" #include <signal.h> /* */ - extern int errno; int broken_pipe; void pipeser (); --- 4,13 ---- #include "mmdf.h" #include "ch.h" #include <signal.h> + #include <errno.h> /* */ int broken_pipe; void pipeser (); diff -cr mh-6.8.4-JP-3.05/zotnet/mf/muinc.c mh-6.8.4-JP-3.05_PATCHED/zotnet/mf/muinc.c *** mh-6.8.4-JP-3.05/zotnet/mf/muinc.c 1993-12-01 13:01:42.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/zotnet/mf/muinc.c 2006-10-18 02:24:07.000000000 +0900 *************** *** 81,87 **** { int count, fd; - extern int errno; for (count = 2; count > 0; count--) if ((fd = lkopen (file, 1)) == NOTOK) --- 81,86 ---- diff -cr mh-6.8.4-JP-3.05/zotnet/mf/uminc.c mh-6.8.4-JP-3.05_PATCHED/zotnet/mf/uminc.c *** mh-6.8.4-JP-3.05/zotnet/mf/uminc.c 1993-12-01 13:01:42.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/zotnet/mf/uminc.c 2006-10-18 02:24:21.000000000 +0900 *************** *** 86,92 **** int clear, count, fd; - extern int errno; struct stat stbuf; for (clear = FALSE, count = 2; count > 0; count--) --- 86,91 ---- diff -cr mh-6.8.4-JP-3.05/zotnet/mts/client.c mh-6.8.4-JP-3.05_PATCHED/zotnet/mts/client.c *** mh-6.8.4-JP-3.05/zotnet/mts/client.c 2001-04-05 01:05:19.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/zotnet/mts/client.c 2006-10-18 02:24:35.000000000 +0900 *************** *** 52,58 **** /* */ - extern int errno; #if !defined(BSD44) && !defined(__GNU_LIBRARY__) extern int sys_nerr; extern char *sys_errlist[]; --- 52,57 ---- diff -cr mh-6.8.4-JP-3.05/zotnet/mts/lock.c mh-6.8.4-JP-3.05_PATCHED/zotnet/mts/lock.c *** mh-6.8.4-JP-3.05/zotnet/mts/lock.c 2001-04-03 16:22:46.000000000 +0900 --- mh-6.8.4-JP-3.05_PATCHED/zotnet/mts/lock.c 2006-10-18 02:15:15.000000000 +0900 *************** *** 77,86 **** #define FLOCK /* LOCKF will override this, if defined */ #endif - #ifdef __CYGWIN32__ #include <errno.h> - #endif - extern int errno; #ifdef LOCKONLY #ifndef MMDFONLY --- 77,83 ----
という内容を、↓こんな手順でやると当たります。
$ tar zxf mh-6.8.4-JP-3.05.tar.gz $ patch -p0 < patch-file-name
免責事項:絶対無保証。とりあえずコンパイルは通ったし、今回必要としてたxincのバイナリも作られた。でもそれ以上はテストも何もしてません。また、mh-plusをやって(る|た)人に送るつもりはありません。俺に↑のパッチ以上の何かを期待しないで下さい。