diff -u --recursive --new-file elm2.4.orig/Makefile elm2.4/Makefile --- elm2.4.orig/Makefile Wed Dec 31 18:00:00 1969 +++ elm2.4/Makefile Tue Dec 12 00:43:40 1995 @@ -0,0 +1,108 @@ +# +# : Makefile.SH,v 5.3 1993/04/21 01:53:10 syd Exp $ +# +# Makefile for the entire ELM mail system +# +# (C) Copyright 1986,1987, by Dave Taylor +# (C) Copyright 1988-1992, USENET Community Trust +# +# $Log: Makefile.SH,v $ +# Revision 5.3 1993/04/21 01:53:10 syd +# take out parallelism, effects standard make +# +# Revision 5.2 1993/04/21 01:26:18 syd +# Support parallel makes in subdirectories with e.g. "make J=2". +# From: decwrl!uunet.UU.NET!fin!chip (Chip Salzenberg) +# +# Revision 5.1 1992/10/03 22:12:17 syd +# Initial checkin as of 2.4 Release at PL0 +# +# +# + +# Variables established by Configure +CAT = /bin/cat +GREP = /usr/bin/grep +ECHO = /bin/echo +MAKE = /usr/bin/pmake +PR = /usr/bin/pr +SHAR = /usr/bin/shar -s 60000 +SLEEP = /usr/bin/sleep +TAR = /bin/tar +TAPE = unknown-remote-tape-unit + +# Other variables +SHELL = /bin/sh +SOURCE_FILES = `$(GREP) -v 'doc/' MANIFEST` +DISTRIBUTED_FILES = `$(CAT) MANIFEST` + +# Targets +# Give default target first and alone +default_target: all + +# Targets that are simply executed in each subordinate makefile as is +all install uninstall lint clean: + cd lib; $(MAKE) $(MJ) -$(MAKEFLAGS) $@ + cd src; $(MAKE) $(MJ) -$(MAKEFLAGS) $@ + cd utils; $(MAKE) $(MJ) -$(MAKEFLAGS) $@ + cd filter; $(MAKE) $(MJ) -$(MAKEFLAGS) $@ + cd doc; $(MAKE) $(MJ) -$(MAKEFLAGS) $@ + +# Targets that apply to all elm at once +listing: + @$(ECHO) "Making source listing in file LISTING." + @$(PR) -n -f $(SOURCE_FILES) > LISTING + +# This is the only target that gets installed even if not out-of-date +# with respect the files from which it is installed. +rmt-install: rmt-defined + @($(ECHO) "Warning: This assumes you have already installed";\ + $(ECHO) "ELM on the remote machine <$(REMOTE)>. If this is";\ + $(ECHO) "not the case, interrupt this process quickly!";\ + $(SLEEP) 10;) + cd lib; $(MAKE) $(MJ) -$(MAKEFLAGS) REMOTE=$(REMOTE) $@ + cd src; $(MAKE) $(MJ) -$(MAKEFLAGS) REMOTE=$(REMOTE) $@ + cd filter; $(MAKE) $(MJ) -$(MAKEFLAGS) REMOTE=$(REMOTE) $@ + cd utils; $(MAKE) $(MJ) -$(MAKEFLAGS) REMOTE=$(REMOTE) $@ + cd doc; $(MAKE) $(MJ) -$(MAKEFLAGS) REMOTE=$(REMOTE) $@ + +rmt-defined: + @(if [ "$(REMOTE)" = "" ];\ + then\ + $(ECHO) "You need to define 'REMOTE' as the remote file system";\ + $(ECHO) "for this particular command. The easiest way to do this";\ + $(ECHO) "to type:";\ + $(ECHO) " make REMOTE= rmt-install";\ + exit 1;\ + fi); + +shar: + $(SHAR) $(DISTRIBUTED_FILES) + +tar: + $(TAR) cvf $(TAPE) $(DISTRIBUTED_FILES) + +# Targets that are really in subordinate make files +documentation: + cd doc; $(MAKE) $(MJ) -$(MAKEFLAGS) $@ + +elm: + cd lib; $(MAKE) $(MJ) -$(MAKEFLAGS) all + cd src; $(MAKE) $(MJ) -$(MAKEFLAGS) all + +# The dummy dependency here prevents make from thinking the target is the +# filter directory that sits in the current directory, rather than +# an abstract target. +filter: _filter + +_filter: + cd filter; $(MAKE) $(MJ) -$(MAKEFLAGS) all + +# The dummy dependency here prevents make from thinking the target is the +# utils directory that sits in the current directory, rather than +# an abstract target. +utils: _utils + +_utils: + cd utils; $(MAKE) $(MJ) -$(MAKEFLAGS) all + diff -u --recursive --new-file elm2.4.orig/config.h elm2.4/config.h --- elm2.4.orig/config.h Wed Dec 31 18:00:00 1969 +++ elm2.4/config.h Tue Dec 12 00:43:40 1995 @@ -0,0 +1,590 @@ +/* config.h + * This file was produced by running the config.h.SH script, which + * gets its values from config.sh, which is generally produced by + * running Configure. + * + * Feel free to modify any of this as the need arises. Note, however, + * that running config.h.SH again will wipe out any changes you've made. + * For a more permanent change edit config.sh and rerun config.h.SH. + */ + + +/* BIN: + * This symbol holds the name of the directory in which the user wants + * to put publicly executable images for the package in question. It + * is most often a local directory such as /usr/local/bin. + */ +#define BIN "/usr/bin" /**/ + +/* CPPSTDIN: + * This symbol contains the first part of the string which will invoke + * the C preprocessor on the standard input and produce to standard + * output. Typical value of "cc -E" or "/lib/cpp". + */ +/* CPPMINUS: + * This symbol contains the second part of the string which will invoke + * the C preprocessor on the standard input and produce to standard + * output. This symbol will have the value "-" if CPPSTDIN needs a minus + * to specify standard input, otherwise the value is "". + */ +#define CPPSTDIN "/lib/cpp" +#define CPPMINUS "" + +/* GETOPT: + * This symbol, if defined, indicates that the getopt() routine exists. + */ +#define GETOPT /**/ + +/* MEMCPY: + * This symbol, if defined, indicates that the memcpy routine is available + * to copy blocks of memory. Otherwise you should probably use bcopy(). + * If neither is defined, roll your own. + */ +#define MEMCPY /**/ + +/* MKDIR: + * This symbol, if defined, indicates that the mkdir routine is available + * to create directories. Otherwise you should fork off a new process to + * exec /bin/mkdir. + */ +/*#undef MKDIR /**/ + +/* RENAME: + * This symbol, if defined, indicates that the rename routine is available + * to rename files. Otherwise you should do the unlink(), link(), unlink() + * trick. + */ +#define RENAME /**/ + +/* SYMLINK: + * This symbol, if defined, indicates that the symlink routine is available + * to create symbolic links. + */ +/*#undef SYMLINK /**/ + +/* WHOAMI: + * This symbol, if defined, indicates that the program may include + * whoami.h. + */ +/*#undef WHOAMI /**/ + +/* PREFSHELL: + * This symbol contains the full name of the preferred user shell on this + * system. Usual values are /bin/csh, /bin/ksh, /bin/sh. + */ +#define PREFSHELL "/bin/bash" /**/ + +/* EUNICE: + * This symbol, if defined, indicates that the program is being compiled + * under the EUNICE package under VMS. The program will need to handle + * things like files that don't go away the first time you unlink them, + * due to version numbering. It will also need to compensate for lack + * of a respectable link() command. + */ +/* VMS: + * This symbol, if defined, indicates that the program is running under + * VMS. It is currently only set in conjunction with the EUNICE symbol. + */ +/*#undef EUNICE /**/ +/*#undef VMS /**/ + +/* CONFIGURE_DATE + * This symbol contains the last date that configure was run for elm -v output. + */ +#define CONFIGURE_DATE "Tue Dec 12 00:42:07 CST 1995" + +/* ASCII_CTYPE: + * This symbol, if defined, indicates that the ctype functions and + * macros are ASCII specific and not 8-bit clean. + */ +/*#undef ASCII_CTYPE /**/ + +/* BROKE_CTYPE: + * This symbol, if defined, indicates that toupper and tolower + * routines/macros are not safe to use. + */ +/*#undef BROKE_CTYPE /**/ + +/* ENABLE_CALENDAR: + * This symbol, if defined, indicates that the calendar feature + * should be supported. + */ +/*#undef ENABLE_CALENDAR /**/ +#define dflt_calendar_file "" + +/* CHOWN_NEG1: + */ +#define CHOWN_NEG1 /**/ + +/* DONT_ESCAPE_MESSAGES: + * This symbol, if defined, indicates that a binary capable MTA is in use + * that honors the content-length header and no message constructs need + * to be escaped. + */ +/*#undef DONT_ESCAPE_MESSAGES /**/ + +/* CRYPT: + * This symbol, if defined, indicates that the crypt routine is available + * to encrypt passwords and the like. + */ +#define CRYPT /**/ + +/* HAS_CUSERID: + * This symbol, if defined, means not to include our own cuserid(). + */ +#define HAS_CUSERID /**/ + +/* DISP_HOST: + * This symbol, if defined, indicates that elm should display the + * host name on the index screen. + */ +/*#undef DISP_HOST /**/ + +/* GETDOMAINNAME + * This symbol, if defined, indicates that the getdomainname system call + * is available to obtain the domain name. Note that the /domain + * file overrides the value of getdomainname(). If getdomainname() exists, + * MYDOMAIN will be ignored. + */ +/* USEGETDOMAINNAME + * This symbol, if defined, indicates that the getdomainname system call + * should be used to obtain the domain name. Note that the /domain + * file overrides the value of getdomainname(). If this variable is set + * MYDOMAIN (and therefore DEFAULT_DOMAIN) will be ignored. + */ +/*#undef GETDOMAINNAME /**/ + +/*#undef USEGETDOMAINNAME /**/ + +/* ERRLST: + * This symbol, if defined, indicates that the sys_errlist and sys_nerr + * symbols exist. + */ +/*#undef ERRLST /**/ + +/* USE_FLOCK_LOCKING + * This symbol, if defined, indicates that the flock mailbox locking should be used. + */ +/* USE_DOTLOCK_LOCKING + * This symbol, if defined, indicates that the .lock mailbox locking should be used. + */ +/* USE_FCNTL_LOCKING + * This symbol, if defined, indicates that SYSV style fcntl file locking should be used. + */ +/* LOCK_DIR + * This symbol is the name of the lock directory for access (not mailbox) locks. + * It will be /usr/spool/locks or /usr/spool/uucp + */ +/*#undef USE_FLOCK_LOCKING /**/ + +#define USE_DOTLOCK_LOCKING /**/ + +/*#undef USE_FCNTL_LOCKING /**/ + +#define LOCK_DIR "/usr/spool/locks" /**/ + +/* FTRUNCATE: + * This symbol, if defined, indicates that the ftruncate() routine exists. + */ +#define FTRUNCATE /**/ + +/* GETHOSTNAME: + * This symbol, if defined, indicates that the C program may use the + * gethostname() routine to derive the host name. See also DOUNAME. + */ +/* DOUNAME: + * This symbol, if defined, indicates that the C program may use the + * uname() routine to derive the host name. See also GETHOSTNAME. + */ +/* HOSTCOMPILED: + * This symbol, if defined, indicated that the host name is compiled + * in from the string hostname + */ +/*#undef GETHOSTNAME /**/ +/*#undef DOUNAME /**/ +#define HOSTCOMPILED /**/ + +/* HAVETERMLIB: + * This symbol, when defined, indicates that termlib-style routines + * are available. There is nothing to include. + */ +#define HAVETERMLIB /**/ + +/* index: + * This preprocessor symbol is defined, along with rindex, if the system + * uses the strchr and strrchr routines instead. + */ +/* rindex: + * This preprocessor symbol is defined, along with index, if the system + * uses the strchr and strrchr routines instead. + */ +#define index strchr /* cultural */ +#define rindex strrchr /* differences? */ + +/* INTERNET: + * This symbol, if defined, indicates that there is a mailer available + * which supports internet-style addresses (user@site.domain). + */ +#define INTERNET /**/ + +/* ISPELL: + * This symbol, if defined, indicates that the GNU ispell + * spelling checker that is available to Elm. + */ +/* ISPELL_PATH: + * This symbol contains the path to the GNU ispell + * spelling checker that is available to Elm. + */ +/* ISPELL_OPTIONS: + * This symbol contains the options to the GNU ispell + * spelling checker that is available to Elm. + */ +#define ISPELL /**/ +#define ISPELL_PATH "/usr/bin/ispell" /**/ +#define ISPELL_OPTIONS "-x" /**/ + +/* I_LOCALE: + * This symbol, if defined, indicates that the file locale.h + * should be included + */ +/* MSGCAT: + * This symbol, if defined, indicates that the MSGCAT NLS libraries + * are available. + */ +/* USENLS: + * This symbol, if defined, indicates that the Elm NLS libraries + * are being used instead of the system NLS libraries. + */ +#define I_LOCALE /**/ +#define I_NL_TYPES /**/ +/*#undef MSGCAT /**/ +#define USENLS /**/ + +/* MALLOCVOID: + * This symbol, if defined, indicates that the malloc_t type should + * be void * instead of char * + */ +#define MALLOCVOID /**/ + +/* ALLOW_MAILBOX_EDITING: + * This symbol, if defined, indicates that the E)dit mailbox + * function is to be allowed. + */ +/*#undef ALLOW_MAILBOX_EDITING /**/ + +/* MIME: + * This symbol, if defined, indicates that the MIME mail + * extension utilities are available + */ +#define MIME /**/ + +/* MMDF: + * This symbol, if defined, indicates that mailboxes are in + * the MMDF format. + */ +/*#undef MMDF /**/ + +/* AUTO_BACKGROUND: + * This symbol, if defined, indicates that newmail should go to + * the background automatically. + */ +#define AUTO_BACKGROUND /**/ + +/* DONT_ADD_FROM: + * This symbol, if defined, indicates that elm should not add + * the From: header + */ +/* USE_DOMAIN: + * This symbol, if defined, indicates that elm should add + * the domain name to our address + */ +#define DONT_ADD_FROM /**/ +/*#undef USE_DOMAIN /**/ + +/* NO_XHEADER: + * This symbol, if defined, will not automatically add "X-Mailer:" + * headers. + */ +/*#undef NO_XHEADER /**/ + +/* PIDCHECK: + * This symbol, if defined, means that the kill(pid, 0) will + * check for an active pid. + */ +#define PIDCHECK /**/ + +/* PTEM: + * This symbol, if defined, indicates that the sys/ptem.h include file is + * needed for window sizing. + */ +/*#undef PTEM /**/ + +/* PUTENV: + * This symbol, if defined, indicates that putenv() exists. + */ +#define PUTENV /**/ + +/* REMOVE_AT_LAST: + * This symbol, if defined, tells the C code to remove the lock + * file on lock failure. + */ +/* MAX_ATTEMPTS: + * This symbol defines to the C code the number of times to try + * locking the mail file. + */ +/*#undef REMOVE_AT_LAST /**/ +#define MAX_ATTEMPTS 6 + +/* SAVE_GROUP_MAILBOX_ID: + * This symbol, if defined, indicates that Elm needs to restore the + * group id of the file, as it is running setgid. + */ +#define SAVE_GROUP_MAILBOX_ID /**/ + +/* SIGVEC: + * This symbol, if defined, indicates that BSD reliable signals routine + * sigvec is available. + */ +/* SIGVECTOR: + * This symbol, if defined, indicates that the sigvec() routine is called + * sigvector() instead, and that sigspace() is provided instead of + * sigstack(). This is probably only true for HP-UX. + */ +/* SIGSET: + * This symbol, if defined, indicates that BSD reliable signal routine + * sigset is available. + */ +/* POSIX_SIGNALS: + * This symbol, if defined, indicated that POSIX sigaction + * routine is available. + */ +/* HASSIGHOLD: + * This symbol, if defined, indicates that sighold routine is + * available. + */ +/* HASSIGBLOCK + * This symbol, if defined, indicates that the sigblock routine is + * available. + */ +/* HASSIGPROCMASK: + * This symbol, if defined, indicates that POSIX sigprocmask + * routine is available. + */ +/*#undef SIGVEC /**/ + +/*#undef SIGVECTOR /**/ + +/*#undef SIGSET /**/ + +/*#undef POSIX_SIGNALS /**/ + +/*#undef HASSIGHOLD /**/ + +#define HASSIGBLOCK /**/ + +/*#undef HASSIGPROCMASK /**/ + +/* STRSPN: + * This symbol, if defined, indicates that the strspn() routine exists. + */ +/* STRCSPN: + * This symbol, if defined, indicates that the strcspn() routine exists. + */ +/* STRPBRK: + * This symbol, if defined, indicates that the strpbrk() routine exists. + */ +#define STRSPN /**/ + +#define STRCSPN /**/ + +#define STRPBRK /**/ + +/* STRERROR: + * This symbol, if defined, indicates that strerror() exists. + */ +#define STRERROR /**/ + +/* STRFTIME: + * This symbol, if defined, indicates that strftime() exists. + */ +#define STRFTIME /**/ + +/* STRINGS: + * This symbol, if defined, indicates that the file strings.h + * should be included not string.h + */ +/* PWDINSYS: + * This symbol, if defined, indicates that the file pwd.h + * is in the sys sub directory + */ +/*#undef STRINGS /**/ +/*#undef PWDINSYS /**/ + +/* STRSTR: + * This symbol, if defined, indicates that strstr() exists. + */ +#define STRSTR /**/ + +/* STRTOK: + * This symbol, if defined, indicates that strtok() exists. + */ +#define STRTOK /**/ + +/* ALLOW_SUBSHELL: + * This symbol, if defined, indicates that the '!' subshell + * function is to be allowed at various places. + */ +#define ALLOW_SUBSHELL /**/ + +/* TEMPNAM: + * This symbol, if defined, indicates that the tempnam() routine exists. + */ +#define TEMPNAM /**/ + +/* TERMIOS: + * This symbol, if defined, indicates that the program should include + * termios.h rather than sgtty.h or termio.h. There are also differences + * in the ioctl() calls that depend on the value of this symbol. + */ +/* TERMIO: + * This symbol, if defined, indicates that the program should include + * termio.h rather than sgtty.h. There are also differences in the + * ioctl() calls that depend on the value of this symbol. + */ +#define TERMIOS /**/ + +/*#undef TERMIO /**/ + +/* USE_EMBEDDED_ADDRESSES: + * This symbol, if defined, indicates that replyto: and from: + * headers can be trusted. + */ +#define USE_EMBEDDED_ADDRESSES /**/ + +/* UTIMBUF: + * This symbol is defined if this system defines struct utimbuf. + */ +#define UTIMBUF /**/ + +/* VFORK: + * This symbol, if defined, indicates that vfork() exists. + */ +/*#undef VFORK /**/ + +/* DEFEDITOR: + * This symbol contains the name of the default editor. + */ +/* EDITOROPTS: + * This symbol contains the command line options for the default editor. + */ +#define DEFEDITOR "/usr/bin/vi" /**/ + +#define EDITOROPTS "" /**/ + +/* HOSTNAME: + * This symbol contains name of the host the program is going to run on. + * The domain is not kept with hostname, but must be gotten from MYDOMAIN. + * The dot comes with MYDOMAIN, and need not be supplied by the program. + * If gethostname() or uname() exist, HOSTNAME may be ignored. + */ +/* MYDOMAIN: + * This symbol contains the domain of the host the program is going to + * run on. The domain must be appended to HOSTNAME to form a complete + * host name. The dot comes with MYDOMAIN, and need not be supplied by + * the program. If the host name is derived from PHOSTNAME, the domain + * may or may not already be there, and the program should check. + */ +#define HOSTNAME "fuzzy" /**/ +#define MYDOMAIN ".is.a.good.cat" /**/ + +/* I_MEMORY: + * This symbol, if defined, indicates that the file memory.h + * should be included instead of declaring the memory routines. + */ +#define I_MEMORY /**/ + +/* I_STDARG: + * This symbol, if defined, indicates that the file stdarg.h + * should be included instead of varargs + */ +/*#undef I_STDARG /**/ + +/* I_STDLIB: + * This symbol, if defined, indicates that the file stdlib.h + * should be included instead of declaring the stdlib routines. + */ +#define I_STDLIB /**/ + +/* I_TIME: + * This symbol is defined if the program should include . + */ +/* I_SYSTIME: + * This symbol is defined if the program should include . + */ +/* I_SYSTIMEKERNEL: + * This symbol is defined if the program should include + * with KERNEL defined. + */ +#define I_TIME /**/ +#define I_SYSTIME /**/ +/*#undef SYSTIMEKERNEL /**/ + +/* I_UNISTD: + * This symbol, if defined, indicates that the file unistd.h + * should be included instead of declaring the unistd routines. + */ +#define I_UNISTD /**/ + +/* I_UTIME: + * This symbol, if defined, indicates that the file utime.h + * should be included instead of declaring our own utimbuf. + */ +/* I_USYSTIME: + * This symbol, if defined, indicates that the file sys/utime.h + * should be included instead of declaring our own utimbuf. + */ +#define I_UTIME /**/ +/*#undef I_SYSUTIME /**/ + +/* PASSNAMES: + * This symbol, if defined, indicates that full names are stored in + * the /etc/passwd file. + */ +/* BERKNAMES: + * This symbol, if defined, indicates that full names are stored in + * the /etc/passwd file in Berkeley format (name first thing, everything + * up to first comma, with & replaced by capitalized login ID, yuck). + */ +/* USGNAMES: + * This symbol, if defined, indicates that full names are stored in + * the /etc/passwd file in USG format (everything after - and before ( is + * the name). + */ +#define PASSNAMES /* (undef to take name from ~/.fullname) */ +#define BERKNAMES /* (that is, ":name,stuff:") */ +/*#undef USGNAMES /* (that is, ":stuff-name(stuff):") */ + +/* SIG_TYPE: + * This symbol contains the type name of the signal handler functions. + */ +#define SIGHAND_TYPE void + +/* TZNAME_USE_xxxxxx: + * Specify how to get timezone name. Possible values are: + * TZNAME_USE_TM_NAME use (struct tm *)->tm_name + * TZNAME_USE_TM_ZONE use (struct tm *)->tm_zone + * TZNAME_USE_TZNAME use "tzname[]" external + * TZNAME_USE_TIMEZONE use timezone() function + */ +#define TZNAME_USE_TZNAME + +/* XENIX: + * This symbol, if defined, indicates this is a Xenix system, + * for knocking out the far keyword in selected places. + */ +/* BSD: + * This symbol, if defined, indicates this is a BSD type system, + */ +/*#undef XENIX /**/ +/*#undef BSD /**/ + diff -u --recursive --new-file elm2.4.orig/config.sh elm2.4/config.sh --- elm2.4.orig/config.sh Wed Dec 31 18:00:00 1969 +++ elm2.4/config.sh Tue Dec 12 00:43:38 1995 @@ -0,0 +1,283 @@ +#!/bin/sh +# config.sh +# This file was produced by running the Configure script. + +Log='$Log' +Header='$Header' +bin='/usr/bin' +contains='grep' +cppstdin='/lib/cpp' +cppminus='' +d_getopt='define' +d_memcpy='define' +d_mkdir='undef' +d_rename='define' +d_symlink='undef' +d_whoami='undef' +n='-n' +c='' +orderlib='false' +ranlib=':' +package='elm2' +pager='builtin+' +prefshell='/bin/bash' +startsh='#!/bin/sh' +d_eunice='undef' +define='define' +eunicefix=':' +loclist=' +cat +chgrp +chmod +cp +echo +expr +grep +ln +ls +make +mv +rm +sed +sleep +touch +tr +' +expr='/usr/bin/expr' +sed='/usr/bin/sed' +echo='/bin/echo' +cat='/bin/cat' +rm='/bin/rm' +mv='/bin/mv' +cp='/bin/cp' +tail='' +tr='/usr/bin/tr' +mkdir='' +sort='' +uniq='' +grep='/usr/bin/grep' +trylist=' +Mcc +compress +cpp +date +emacs +execmail +ispell +line +lint +lp +lpr +mailx +mips +more +nroff +pack +pg +pmake +pr +rmail +sendmail +shar +smail +submit +tar +tbl +test +troff +uname +uuname +vi +' +test='test' +inews='' +ispell='/usr/bin/ispell' +egrep='' +more='/bin/more' +pg='pg' +Mcc='Mcc' +vi='/usr/bin/vi' +mailx='/bin/mailx' +mail='' +cpp='/lib/cpp' +perl='' +emacs='emacs' +ls='/bin/ls' +rmail='/usr/bin/rmail' +sendmail='/usr/bin/sendmail' +shar='/usr/bin/shar' +smail='smail' +submit='' +tbl='/usr/bin/tbl' +troff='/usr/bin/troff' +nroff='/usr/bin/nroff' +uname='/bin/uname' +uuname='uuname' +line='line' +chgrp='/bin/chgrp' +chmod='/bin/chmod' +lint='lint' +sleep='/usr/bin/sleep' +pr='/usr/bin/pr' +tar='/bin/tar' +ln='/bin/ln' +lpr='/usr/bin/lpr' +lp='lp' +touch='/bin/touch' +make='/usr/bin/pmake' +date='/bin/date' +csh='' +pmake='/usr/bin/pmake' +mips='false' +col='' +pack='pack' +compress='/bin/compress' +execmail='' +libswanted='intl nls' +c_date='Tue Dec 12 00:42:07 CST 1995' +d_ascii='undef' +d_broke_ctype='undef' +d_calendar='undef' +calendar='' +d_chown_neg1='define' +d_content='undef' +d_crypt='define' +cryptlib='' +d_cuserid='define' +d_disphost='undef' +d_domname='undef' +d_usegetdom='undef' +d_errlst='undef' +d_flock='undef' +d_dotlock='define' +d_fcntlock='undef' +lock_dir='/usr/spool/locks' +has_flock='undef' +has_fcntl='undef' +d_ftruncate='define' +d_gethname='undef' +d_douname='undef' +d_host_comp='define' +ign_hname='' +d_havetlib='define' +termlib='-ltermcap' +d_index='define' +d_internet='define' +d_ispell='define' +ispell_path='/usr/bin/ispell' +ispell_options='-x' +d_locale='define' +d_nl_types='define' +d_msgcat='undef' +d_usenls='define' +d_mallocvoid='define' +d_mboxedit='undef' +d_mime='define' +defencoding='7bit' +defcharset='US-ASCII' +defdispcharset='US-ASCII' +d_mmdf='undef' +d_newauto='define' +d_noaddfrom='define' +d_usedomain='undef' +d_noxheader='undef' +d_pidcheck='define' +d_ptem='undef' +d_putenv='define' +d_remlock='undef' +maxattempts='6' +d_setgid='define' +d_savegrpmboxid='define' +mailermode='2755' +d_sigvec='undef' +d_sigvectr='undef' +d_sigset='undef' +d_sighold='undef' +d_sigprocmask='undef' +d_sigblock='define' +d_sigaction='undef' +d_strcspn='define' +d_strspn='define' +d_strpbrk='define' +d_strerror='define' +d_strftime='define' +d_strings='undef' +d_pwdinsys='undef' +strings='/usr/include/string.h' +includepath='' +d_strstr='define' +d_strtok='define' +d_subshell='define' +d_tempnam='define' +tempnamo='' +tempnamc='' +d_termio='undef' +d_termios='define' +d_useembed='define' +d_utimbuf='define' +d_vfork='undef' +defbatsub='no subject (file transmission)' +defeditor='/usr/bin/vi' +editoropts='' +hostname='fuzzy' +phostname='hostname' +mydomain='.is.a.good.cat' +autohostname='define' +i_memory='define' +i_stdarg='undef' +i_stdlib='define' +i_time='define' +i_systime='define' +d_systimekernel='undef' +i_unistd='define' +i_utime='define' +i_sysutime='undef' +lib='/var/lib/elm' +libc='/usr/lib/libc.a' +linepr='/usr/bin/lpr' +maildir='/var/spool/mail' +mailer='/usr/bin/sendmail' +mailgrp='mail' +mansrc='/usr/man/man1' +catmansrc='/var/man/cat1' +manext='.1' +manext_choice='.1' +catmanext='.1' +catmanext_choice='.1' +packed='n' +manroff='/usr/bin/groff' +manroffopts='-Tascii -mandoc' +suffix='' +packer='' +models='none' +split='' +small='' +medium='' +large='' +huge='' +optimize='-O' +ccflags='-fpcc-struct-return -traditional' +cppflags=' -D__GNUC__' +ldflags='' +cc='gcc' +libs='' +nametype='bsd' +d_passnames='define' +d_berknames='define' +d_usgnames='undef' +passcat='cat /etc/passwd' +rmttape='unknown-remote-tape-unit' +roff='/usr/bin/troff' +roffopts='-Tascii -mandoc' +sigtype='void' +spitshell='cat' +shsharp='true' +sharpbang='#!' +tmpdir='/tmp' +tzname_handling='TZNAME' +use_pmake='y' +xencf='' +xenlf='' +d_xenix='undef' +d_bsd='undef' +CONFIG=true diff -u --recursive --new-file elm2.4.orig/doc/Makefile elm2.4/doc/Makefile --- elm2.4.orig/doc/Makefile Wed Dec 31 18:00:00 1969 +++ elm2.4/doc/Makefile Tue Dec 12 00:43:41 1995 @@ -0,0 +1,510 @@ +# +# : Makefile.SH,v 5.12 1994/03/10 17:20:23 syd Exp $ +# +# Makefile for the documentation of the ELM mail system +# +# (C) Copyright 1988-1992, USENET Community Trust +# +# $Log: Makefile.SH,v $ +# Revision 5.12 1994/03/10 17:20:23 syd +# Remove autoreply +# From: Syd +# +# Revision 5.11 1993/04/12 02:12:07 syd +# Added elmalias.1 man page. Updated Users.guide to mention elmalias. +# From: chip@chinacat.unicom.com (Chip Rosenthal) +# +# Revision 5.10 1993/01/20 03:11:51 syd +# During 'make uninstall', an error occurs with the make for doc/, +# due to a wrongly-extended "if" statement in the Makefile. +# From: Allan Kugel +# +# Revision 5.9 1992/12/13 18:00:05 syd +# Add one more missing rm of a previously packed man page +# From: Bo Asbjorn Muldbak +# +# Revision 5.8 1992/12/12 01:28:50 syd +# Remove the old packed manual page before trying to pack the new one. +# From: Tom Moore +# +# Revision 5.7 1992/12/07 05:05:27 syd +# fix ; placement +# From: Syd +# +# Revision 5.6 1992/12/07 03:28:35 syd +# add else clause with true to TEST lines as some Makefiles exit if +# the if construct doesnt execute a clause as the if returns an error +# status. +# From: Syd via requests from several people +# +# Revision 5.5 1992/12/07 02:17:14 syd +# Add missing -n flag to doc makefile. +# From: gwh@dogmatix.inmos.co.uk +# +# Revision 5.4 1992/11/22 00:47:02 syd +# Change the way Configure and doc/Makefile.SH deal with installing +# man pages. +# From: Tom Moore +# +# Revision 5.3 1992/11/07 16:13:00 syd +# Limit test arguments to -f instead of -x as several shells and +# their resulting test commands dont have -x +# From: Syd via request from Tim Pierce +# +# Revision 5.2 1992/10/30 21:06:09 syd +# add missing MAKE variable definition +# From: syd via note from Keith Petersen w8sdz@tacom-emh1.army.mil +# +# Revision 5.1 1992/10/03 20:51:50 syd +# Initial checkin as of 2.4 Release at PL0 +# +# +# +# Variables +# Variables established by Configure +CHMOD = /bin/chmod +CP = /bin/cp +DEST = /usr/bin +ECHO = /bin/echo +FORMATTER = /usr/bin/troff +FORMATTER_OPTS = -Tascii -mandoc +LIB = /var/lib/elm +LN = /bin/ln +MAKE = /usr/bin/pmake +MAN = /usr/man/man1 +MANEXT = .1 +CATMAN = /var/man/cat1 +CATMANEXT = .1 +RM = /bin/rm -f +TBL = /usr/bin/tbl +MANROFF = /usr/bin/groff +MANROFF_OPTS = -Tascii -mandoc +MV = /bin/mv +TEST = test +SUFFIX = +PACKED = n +PACKER = + +# Other variables +SHELL = /bin/sh + +# List of installed man pages (except for wnemail.1 - handled differently) +MAN_LIST = $(MAN)/answer$(MANEXT) \ + $(MAN)/checkalias$(MANEXT) \ + $(MAN)/elm$(MANEXT) \ + $(MAN)/elmalias$(MANEXT) \ + $(MAN)/fastmail$(MANEXT) \ + $(MAN)/filter$(MANEXT) \ + $(MAN)/frm$(MANEXT) \ + $(MAN)/listalias$(MANEXT) \ + $(MAN)/messages$(MANEXT) \ + $(MAN)/newalias$(MANEXT) \ + $(MAN)/newmail$(MANEXT) \ + $(MAN)/printmail$(MANEXT) \ + $(MAN)/readmsg$(MANEXT) + +# List of installed catman pages (except for wnemail.1 - handled differently) +CATMAN_LIST = $(CATMAN)/answer$(CATMANEXT)$(SUFFIX) \ + $(CATMAN)/checkalias$(CATMANEXT)$(SUFFIX)\ + $(CATMAN)/elm$(CATMANEXT)$(SUFFIX) \ + $(CATMAN)/elmalias$(CATMANEXT)$(SUFFIX)\ + $(CATMAN)/fastmail$(CATMANEXT)$(SUFFIX) \ + $(CATMAN)/filter$(CATMANEXT)$(SUFFIX) \ + $(CATMAN)/frm$(CATMANEXT)$(SUFFIX) \ + $(CATMAN)/listalias$(CATMANEXT)$(SUFFIX) \ + $(CATMAN)/messages$(CATMANEXT)$(SUFFIX) \ + $(CATMAN)/newalias$(CATMANEXT)$(SUFFIX) \ + $(CATMAN)/newmail$(CATMANEXT)$(SUFFIX) \ + $(CATMAN)/printmail$(CATMANEXT)$(SUFFIX) \ + $(CATMAN)/readmsg$(CATMANEXT)$(SUFFIX) + +# List of formatted pages for catman +FORMATTED_PAGES_LIST = catman/answer$(CATMANEXT)$(SUFFIX) \ + catman/checkalias$(CATMANEXT)$(SUFFIX)\ + catman/elm$(CATMANEXT)$(SUFFIX) \ + catman/elmalias$(CATMANEXT)$(SUFFIX)\ + catman/fastmail$(CATMANEXT)$(SUFFIX) \ + catman/filter$(CATMANEXT)$(SUFFIX) \ + catman/frm$(CATMANEXT)$(SUFFIX) \ + catman/listalias$(CATMANEXT)$(SUFFIX) \ + catman/messages$(CATMANEXT)$(SUFFIX) \ + catman/newalias$(CATMANEXT)$(SUFFIX) \ + catman/newmail$(CATMANEXT)$(SUFFIX) \ + catman/printmail$(CATMANEXT)$(SUFFIX) \ + catman/readmsg$(CATMANEXT)$(SUFFIX) + +# List of remotely installed man pages (except for wnemail.1 - handled +# differently) +REMOTE_MAN_LIST = $(REMOTE)$(MAN)/answer$(MANEXT) \ + $(REMOTE)$(MAN)/checkalias$(MANEXT) \ + $(REMOTE)$(MAN)/elm$(MANEXT) \ + $(REMOTE)$(MAN)/elmalias$(MANEXT) \ + $(REMOTE)$(MAN)/fastmail$(MANEXT) \ + $(REMOTE)$(MAN)/filter$(MANEXT) \ + $(REMOTE)$(MAN)/frm$(MANEXT) \ + $(REMOTE)$(MAN)/listalias$(MANEXT) \ + $(REMOTE)$(MAN)/messages$(MANEXT) \ + $(REMOTE)$(MAN)/newalias$(MANEXT) \ + $(REMOTE)$(MAN)/newmail$(MANEXT) \ + $(REMOTE)$(MAN)/printmail$(MANEXT) \ + $(REMOTE)$(MAN)/readmsg$(MANEXT) + +# List of files installed in LIB directory +LIB_LIST = $(LIB)/elm-help.0 \ + $(LIB)/elm-help.1 \ + $(LIB)/elm-help.2 \ + $(LIB)/elm-help.3 \ + $(LIB)/elmrc-info + +# List of files installed in remote LIB directory +REMOTE_LIB_LIST = $(REMOTE)$(LIB)/elm-help.0 \ + $(REMOTE)$(LIB)/elm-help.1 \ + $(REMOTE)$(LIB)/elm-help.2 \ + $(REMOTE)$(LIB)/elm-help.3 \ + $(REMOTE)$(LIB)/elmrc-info + +# List of formatted guides +FORMATTED_LIST = Alias.fmtd \ + Config.fmtd \ + Cover.fmtd \ + Filter.fmtd \ + Form.fmtd \ + Ref.fmtd \ + Users.fmtd + +# Targets +all: + @if $(TEST) '$(CATMAN)' != none; then $(MAKE) formatted_pages ; else true ; fi + +# The following are no-ops +lint: +clean: + +formatted_pages: catman $(FORMATTED_PAGES_LIST) + +catman: + mkdir catman + +install: $(LIB_LIST) + @if $(TEST) '$(MAN)' != none; then $(MAKE) install_man ; else true ; fi + @if $(TEST) '$(CATMAN)' != none; then $(MAKE) install_catman ; else true ; fi + +install_man: $(MAN_LIST) $(MAN)/wnewmail$(MANEXT) + +install_catman: $(CATMAN_LIST) $(CATMAN)/wnewmail$(CATMANEXT)$(SUFFIX) + +uninstall: + $(RM) $(LIB_LIST) + @if $(TEST) '$(MAN)' != none; then \ + $(RM) $(MAN_LIST) $(MAN)/wnewmail$(MANEXT) ; \ + else \ + true ; \ + fi + @if $(TEST) '$(CATMAN)' != none; then \ + $(RM) $(CATMAN_LIST) $(CATMAN)/wnewmail$(CATMANEXT)$(SUFFIX) ; \ + else \ + true ; \ + fi + +# Dependencies and rules for installing man pages and lib files +# taken from a remote system +# This is the only target that gets installed even if not out-of-date +# with respect the files from which it is installed. +rmt-install: rmt-defined + $(RM) $(MAN)/newmail$(MANEXT) $(MAN)/wnewmail$(MANEXT) + $(CP) $(REMOTE_MAN_LIST) $(MAN) + $(CHMOD) u=rw,go=r $(MAN_LIST) + $(LN) $(MAN)/newmail$(MANEXT) $(MAN)/wnewmail$(MANEXT) + $(CP) $(REMOTE_LIB_LIST) $(LIB) + $(CHMOD) u=rw,go=r $(LIB_LIST) + +rmt-defined: + @(if [ "$(REMOTE)" = "" ];\ + then\ + $(ECHO) "You need to define 'REMOTE' as the remote file system";\ + $(ECHO) "for this particular command. The easiest way to do this";\ + $(ECHO) "to type:";\ + $(ECHO) " make REMOTE= rmt-install";\ + exit 1;\ + fi); + +# Dependencies and rules for installing man pages and lib files +$(MAN)/answer$(MANEXT): answer.1 + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(MAN)/checkalias$(MANEXT): chkalias.1 + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(MAN)/elm$(MANEXT): elm.1 + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(MAN)/elmalias$(MANEXT): elmalias.1 + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(MAN)/fastmail$(MANEXT): fastmail.1 + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(MAN)/filter$(MANEXT): filter.1 + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(MAN)/frm$(MANEXT): frm.1 + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(MAN)/listalias$(MANEXT): listalias.1 + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(MAN)/messages$(MANEXT): messages.1 + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(MAN)/newalias$(MANEXT): newalias.1 + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(MAN)/newmail$(MANEXT): newmail.1 + $(RM) $@ + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(MAN)/printmail$(MANEXT): printmail.1 + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(MAN)/readmsg$(MANEXT): readmsg.1 + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(MAN)/wnewmail$(MANEXT): $(MAN)/newmail$(MANEXT) + $(RM) $@ + $(LN) $? $@ + +$(LIB)/elm-help.0: elm-help.0 + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(LIB)/elm-help.1: elm-help.1 + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(LIB)/elm-help.2: elm-help.2 + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(LIB)/elm-help.3: elm-help.3 + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(LIB)/elmrc-info: elmrc-info + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +# Dependencies and rules for installing catman +$(CATMAN)/answer$(CATMANEXT)$(SUFFIX): catman/answer$(CATMANEXT)$(SUFFIX) + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(CATMAN)/checkalias$(CATMANEXT)$(SUFFIX): catman/checkalias$(CATMANEXT)$(SUFFIX) + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(CATMAN)/elm$(CATMANEXT)$(SUFFIX): catman/elm$(CATMANEXT)$(SUFFIX) + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(CATMAN)/elmalias$(CATMANEXT)$(SUFFIX): catman/elmalias$(CATMANEXT)$(SUFFIX) + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(CATMAN)/fastmail$(CATMANEXT)$(SUFFIX): catman/fastmail$(CATMANEXT)$(SUFFIX) + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(CATMAN)/filter$(CATMANEXT)$(SUFFIX): catman/filter$(CATMANEXT)$(SUFFIX) + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(CATMAN)/frm$(CATMANEXT)$(SUFFIX): catman/frm$(CATMANEXT)$(SUFFIX) + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(CATMAN)/listalias$(CATMANEXT)$(SUFFIX): catman/listalias$(CATMANEXT)$(SUFFIX) + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(CATMAN)/messages$(CATMANEXT)$(SUFFIX): catman/messages$(CATMANEXT)$(SUFFIX) + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(CATMAN)/newalias$(CATMANEXT)$(SUFFIX): catman/newalias$(CATMANEXT)$(SUFFIX) + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(CATMAN)/newmail$(CATMANEXT)$(SUFFIX): catman/newmail$(CATMANEXT)$(SUFFIX) + $(RM) $@ + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(CATMAN)/printmail$(CATMANEXT)$(SUFFIX): catman/printmail$(CATMANEXT)$(SUFFIX) + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(CATMAN)/readmsg$(CATMANEXT)$(SUFFIX): catman/readmsg$(CATMANEXT)$(SUFFIX) + $(CP) $? $@ + $(CHMOD) u=rw,go=r $@ + +$(CATMAN)/wnewmail$(CATMANEXT)$(SUFFIX): $(CATMAN)/newmail$(CATMANEXT)$(SUFFIX) + $(RM) $@ + $(LN) $? $@ + + +# Dependencies and rules for making catman pages +catman/answer$(CATMANEXT)$(SUFFIX): answer.1 + $(MANROFF) $(MANROFF_OPTS) -man $? > catman/answer$(CATMANEXT) + @if $(TEST) "$(PACKED)" = y ; then \ + $(RM) $@ ; \ + $(PACKER) catman/answer$(CATMANEXT) ; \ + else \ + true ; \ + fi + +catman/checkalias$(CATMANEXT)$(SUFFIX): chkalias.1 + $(MANROFF) $(MANROFF_OPTS) -man $? > catman/checkalias$(CATMANEXT) + @if $(TEST) "$(PACKED)" = y ; then \ + $(RM) $@ ; \ + $(PACKER) catman/checkalias$(CATMANEXT) ; \ + else \ + true ; \ + fi + +catman/elm$(CATMANEXT)$(SUFFIX): elm.1 + $(MANROFF) $(MANROFF_OPTS) -man $? > catman/elm$(CATMANEXT) + @if $(TEST) "$(PACKED)" = y ; then \ + $(RM) $@ ; \ + $(PACKER) catman/elm$(CATMANEXT) ; \ + else \ + true ; \ + fi + +catman/elmalias$(CATMANEXT)$(SUFFIX): elmalias.1 + $(MANROFF) $(MANROFF_OPTS) -man $? > catman/elmalias$(CATMANEXT) + @if $(TEST) "$(PACKED)" = y ; then \ + $(RM) $@ ; \ + $(PACKER) catman/elmalias$(CATMANEXT) ; \ + else \ + true ; \ + fi + +catman/fastmail$(CATMANEXT)$(SUFFIX): fastmail.1 + $(MANROFF) $(MANROFF_OPTS) -man $? > catman/fastmail$(CATMANEXT) + @if $(TEST) "$(PACKED)" = y ; then \ + $(RM) $@ ; \ + $(PACKER) catman/fastmail$(CATMANEXT) ; \ + else \ + true ; \ + fi + +catman/filter$(CATMANEXT)$(SUFFIX): filter.1 + $(MANROFF) $(MANROFF_OPTS) -man $? > catman/filter$(CATMANEXT) + @if $(TEST) "$(PACKED)" = y ; then \ + $(RM) $@ ; \ + $(PACKER) catman/filter$(CATMANEXT) ; \ + else \ + true ; \ + fi + +catman/frm$(CATMANEXT)$(SUFFIX): frm.1 + $(MANROFF) $(MANROFF_OPTS) -man $? > catman/frm$(CATMANEXT) + @if $(TEST) "$(PACKED)" = y ; then \ + $(RM) $@ ; \ + $(PACKER) catman/frm$(CATMANEXT) ; \ + else \ + true ; \ + fi + +catman/listalias$(CATMANEXT)$(SUFFIX): listalias.1 + $(MANROFF) $(MANROFF_OPTS) -man $? > catman/listalias$(CATMANEXT) + @if $(TEST) "$(PACKED)" = y ; then \ + $(RM) $@ ; \ + $(PACKER) catman/listalias$(CATMANEXT) ; \ + else \ + true ; \ + fi + +catman/messages$(CATMANEXT)$(SUFFIX): messages.1 + $(MANROFF) $(MANROFF_OPTS) -man $? > catman/messages$(CATMANEXT) + @if $(TEST) "$(PACKED)" = y ; then \ + $(RM) $@ ; \ + $(PACKER) catman/messages$(CATMANEXT) ; \ + else \ + true ; \ + fi + +catman/newalias$(CATMANEXT)$(SUFFIX): newalias.1 + $(MANROFF) $(MANROFF_OPTS) -man $? > catman/newalias$(CATMANEXT) + @if $(TEST) "$(PACKED)" = y ; then \ + $(RM) $@ ; \ + $(PACKER) catman/newalias$(CATMANEXT) ; \ + else \ + true ; \ + fi + +catman/newmail$(CATMANEXT)$(SUFFIX): newmail.1 + $(MANROFF) $(MANROFF_OPTS) -man $? > catman/newmail$(CATMANEXT) + @if $(TEST) "$(PACKED)" = y ; then \ + $(RM) $@ ; \ + $(PACKER) catman/newmail$(CATMANEXT) ; \ + else \ + true ; \ + fi + +catman/printmail$(CATMANEXT)$(SUFFIX): printmail.1 + $(MANROFF) $(MANROFF_OPTS) -man $? > catman/printmail$(CATMANEXT) + @if $(TEST) "$(PACKED)" = y ; then \ + $(RM) $@ ; \ + $(PACKER) catman/printmail$(CATMANEXT) ; \ + else \ + true ; \ + fi + +catman/readmsg$(CATMANEXT)$(SUFFIX): readmsg.1 + $(MANROFF) $(MANROFF_OPTS) -man $? > catman/readmsg$(CATMANEXT) + @if $(TEST) "$(PACKED)" = y ; then \ + $(RM) $@ ; \ + $(PACKER) catman/readmsg$(CATMANEXT) ; \ + else \ + true ; \ + fi + + +# Dependencies and rules for formatting guides +documentation: $(FORMATTED_LIST) + +Alias.fmtd: Alias.guide + $(TBL) $? | $(FORMATTER) $(FORMATTER_OPTS) tmac.n - > $@ + +Config.fmtd: Config.guid + $(TBL) $? | $(FORMATTER) $(FORMATTER_OPTS) tmac.n - > $@ + +Cover.fmtd: Elm.cover + $(FORMATTER) $(FORMATTER_OPTS) tmac.n $? > $@ + +Filter.fmtd: Filter.guid + $(TBL) $? | $(FORMATTER) $(FORMATTER_OPTS) tmac.n - > $@ + +Form.fmtd: Form.guide + $(FORMATTER) $(FORMATTER_OPTS) tmac.n $? > $@ + +Ref.fmtd: Ref.guide + $(FORMATTER) $(FORMATTER_OPTS) tmac.n $? > $@ + +Users.fmtd: Users.guide + $(TBL) $? | $(FORMATTER) $(FORMATTER_OPTS) tmac.n - > $@ + diff -u --recursive --new-file elm2.4.orig/filter/Makefile elm2.4/filter/Makefile --- elm2.4.orig/filter/Makefile Wed Dec 31 18:00:00 1969 +++ elm2.4/filter/Makefile Tue Dec 12 00:43:41 1995 @@ -0,0 +1,160 @@ +# +# @(#): Makefile.SH,v 5.5 1993/06/06 17:35:04 syd Exp $ +# Makefile for the Elm system filter program +# +# (C) Copyright 1986,1987, by Dave Taylor +# (C) Copyright 1988-1992, USENET Community Trust +# +# Bug reports, patches, comments, suggestions should be sent to: +# +# Syd Weinstein - elm@DSI.COM +# dsinc!elm +# +# $Log: Makefile.SH,v $ +# Revision 5.5 1993/06/06 17:35:04 syd +# Remove useless buffer.c +# +# Revision 5.4 1993/02/03 16:22:06 syd +# add libutil.a as strtokq moved to lib +# +# Revision 5.3 1993/01/27 19:40:01 syd +# I implemented a change to filter's default verbose message format +# including %x %X style date and time along with username +# From: mark@drd.com (Mark Lawrence) +# +# Revision 5.2 1992/11/15 01:40:43 syd +# Add regexp processing to filter. +# Add execc operator +# From: Jan Djarv +# +# Revision 5.1 1992/10/03 22:18:09 syd +# Initial checkin as of 2.4 Release at PL0 +# +# +# Variables +# Variables established by Configure +CC = gcc +CCFLAGS = -fpcc-struct-return -traditional +CHGRP = /bin/chgrp +CHMOD = /bin/chmod +CP = /bin/cp +DEST = /usr/bin +ECHO = /bin/echo +LFLAGS = +LIB = /var/lib/elm +LIB2 = +LIBS = -ltermcap +LINT = lint +MAILGRP = mail +MAILERMODE = 2755 +MAKE = /usr/bin/pmake +MV = /bin/mv +OPTIMIZE = -O +RM = /bin/rm -f +TOUCH = /bin/touch + +# Variables you may want to manually edit +# If you want debug logging then you'll +# want to uncomment the following. +#DEBUG = -DDEBUG + +# Other variables +BIN = ../bin +INCLDIR = ../hdrs +CFLAGS = $(CCFLAGS) $(OPTIMIZE) -I$(INCLDIR) $(DEBUG) $(DACSNET) +LINTFLAGS = -I$(INCLDIR) +SHELL = /bin/sh + +# Definitions of variables +FILTER_SRC = actions.c \ + filter.c \ + lock.c \ + parse.c \ + regexp.c \ + rules.c \ + summarize.c \ + utils.c \ + audit.c + +FILTER_OBJ = actions.o \ + filter.o \ + lock.o \ + parse.o \ + regexp.o \ + rules.o \ + summarize.o \ + utils.o \ + audit.o \ + ../lib/libutil.a + +# Standard targets +all: $(BIN)/filter + +install: $(DEST)/filter + +uninstall: + $(RM) $(DEST)/filter + +# This is the only target that gets installed even if not out-of-date +# with respect the files from which it is installed. +rmt-install: rmt-defined + -$(MV) $(DEST)/filter $(DEST)/filter.old + -$(RM) $(DEST)/filter.old + $(CP) $(REMOTE)$(DEST)/filter $(DEST)/filter + $(CHGRP) $(MAILGRP) $(DEST)/filter + $(CHMOD) $(MAILERMODE) $(DEST)/filter + +rmt-defined: + @(if [ "$(REMOTE)" = "" ];\ + then\ + $(ECHO) "You need to define 'REMOTE' as the remote file system";\ + $(ECHO) "for this particular command. The easiest way to do this";\ + $(ECHO) "to type:";\ + $(ECHO) " make REMOTE= rmt-install";\ + exit 1;\ + fi); + +lint: + $(LINT) $(LINTFLAGS) $(FILTER_SRC) > LINT.OUT + +clean: + $(RM) $(FILTER_OBJ) $(BIN)/filter + +# Dependencies and rules +# Dependencies of header files upon other header files they include +.PRECIOUS: $(INCLDIR)/defs.h $(INCLDIR)/elm.h $(INCLDIR)/headers.h + +$(INCLDIR)/defs.h: $(INCLDIR)/../config.h $(INCLDIR)/sysdefs.h + $(CHMOD) u+w $@ + $(TOUCH) $@ + +$(INCLDIR)/elm.h: $(INCLDIR)/curses.h $(INCLDIR)/defs.h + $(CHMOD) u+w $@ + $(TOUCH) $@ + +$(INCLDIR)/headers.h: $(INCLDIR)/curses.h $(INCLDIR)/defs.h + $(CHMOD) u+w $@ + $(TOUCH) $@ + +# Dependencies and rules for C object files +actions.o: $(INCLDIR)/defs.h $(INCLDIR)/filter.h $(INCLDIR)/s_filter.h +filter.o: $(INCLDIR)/defs.h $(INCLDIR)/filter.h $(INCLDIR)/s_filter.h +lock.o: $(INCLDIR)/defs.h $(INCLDIR)/filter.h $(INCLDIR)/s_filter.h +parse.o: $(INCLDIR)/defs.h $(INCLDIR)/filter.h $(INCLDIR)/s_filter.h +regexp.o: $(INCLDIR)/defs.h $(INCLDIR)/regexp.h +rules.o: $(INCLDIR)/defs.h $(INCLDIR)/filter.h $(INCLDIR)/s_filter.h +summarize.o: $(INCLDIR)/defs.h $(INCLDIR)/filter.h $(INCLDIR)/s_filter.h +utils.o: $(INCLDIR)/defs.h $(INCLDIR)/filter.h $(INCLDIR)/s_filter.h +audit.o: $(INCLDIR)/defs.h $(INCLDIR)/filter.h $(INCLDIR)/s_filter.h + +# Dependencies and rules for compiling programs +$(BIN)/filter: $& $(FILTER_OBJ) + $(CC) $(LFLAGS) -o $@ $(FILTER_OBJ) ../lib/libutil.a $(LIB2) + +# Dependencies and rules for installing programs from bin directory +$(DEST)/filter: $(BIN)/filter + -$(MV) $(DEST)/filter $(DEST)/filter.old + -$(RM) $(DEST)/filter.old + $(CP) $? $@ + $(CHGRP) $(MAILGRP) $@ + $(CHMOD) $(MAILERMODE) $@ diff -u --recursive --new-file elm2.4.orig/hdrs/sysdefs.h elm2.4/hdrs/sysdefs.h --- elm2.4.orig/hdrs/sysdefs.h Wed Dec 31 18:00:00 1969 +++ elm2.4/hdrs/sysdefs.h Tue Dec 12 00:43:41 1995 @@ -0,0 +1,145 @@ +/* : sysdefs.SH,v 5.4 1992/12/24 19:24:10 syd Exp $ */ +/******************************************************************************* + * The Elm Mail System - : 5.4 $ : Exp $ + * + * Copyright (c) 1988-1992 USENET Community Trust + * Copyright (c) 1986,1987 Dave Taylor + ******************************************************************************* + * Bug reports, patches, comments, suggestions should be sent to: + * + * Syd Weinstein, Elm Coordinator + * elm@DSI.COM dsinc!elm + * + ******************************************************************************* + * $Log: sysdefs.SH,v $ + * Revision 5.4 1992/12/24 19:24:10 syd + * EDITOROPTS and DEFEDITOR appear to be unused but here is + * a patch to make use of . + * From: "Robert L. Howard" + * + * Revision 5.3 1992/11/22 01:14:20 syd + * Allow SCO MMDF to use the mmdf library for mailer via execmail. + * From: Larry Philps + * + * Revision 5.2 1992/10/24 13:44:41 syd + * There is now an additional elmrc option "displaycharset", which + * sets the charset supported on your terminal. This is to prevent + * elm from calling out to metamail too often. + * Plus a slight documentation update for MIME composition (added examples) + * From: Klaus Steinberger + * + * Revision 5.1 1992/10/03 22:34:39 syd + * Initial checkin as of 2.4 Release at PL0 + * + * + ******************************************************************************/ + +/** System level, configurable, defines for the ELM mail system. **/ + + +#define MAX_IN_WEEDLIST 150 /* max headers to weed out */ + +#define MAX_HOPS 35 /* max hops in return addr to E)veryone */ + +#define DEFAULT_BATCH_SUBJECT "no subject (file transmission)" + +#define DEFAULT_DOMAIN ".is.a.good.cat" /* if mydomain file is missing */ + +/** If you want to implement 'site hiding' in the mail, then you'll need to + uncomment the following lines and set them to reasonable values. See + the configuration guide for more details....(actually these are undoc- + umented because they're fairly dangerous to use. Just ignore 'em and + perhaps one day you'll find out what they do, ok?) +**/ + +/**************************************************************************** + +#define SITE_HIDING +#define HIDDEN_SITE_NAME "fake-machine-name" +#define HIDDEN_SITE_USERS "/usr/mail/lists/hidden_site_users" + +****************************************************************************/ + +#define system_text_file "/var/lib/elm/aliases.text" +#define system_data_file "/var/lib/elm/aliases" +#define system_rc_file "/var/lib/elm/elm.rc" + +#define ALIAS_TEXT ".elm/aliases.text" +#define ALIAS_DATA ".elm/aliases" + +#define hostdomfile "/var/lib/elm/domain" + +/** where to put the output of the elm -d command... (in home dir) **/ +#define DEBUGFILE "ELM:debug.info" +#define OLDEBUG "ELM:debug.last" + +#define default_temp "/tmp/" +#define temp_file "snd." +#define temp_form_file "form." +#define temp_mbox "mbox." +#define temp_print "print." +#define temp_edit "elm-edit" +#define temp_uuname "uuname." +#define temp_state "est." + +#define emacs_editor "emacs" +#define vi_editor "/usr/bin/vi" + +#define default_editor "/usr/bin/vi " +#define mailhome "/var/spool/mail/" + +#define default_shell "/bin/bash" +#define default_pager "builtin+" +#define default_printout "/bin/cat %s | /usr/bin/lpr" + +#define default_charset "US-ASCII" +#define default_display_charset "US-ASCII" +#define default_encoding "7bit" +#define execmail "" +#define emflags "" +#define emflagsv "-d" /* Verbose voyuer mode */ +#define emflagmt "-m" /* metoo copy to sender */ + +#define sendmail "/usr/bin/sendmail" +#define smflags "-oi -oem" /* ignore dots and mail back errors */ +#define smflagsv "-oi -oem -v" /* Verbose voyuer mode */ +#define smflagmt " -om" /* metoo copy to sender */ +#define submitmail "" +#define submitflags "-mlrnvxto,cc*" +#define submitflags_s "-mlrnv" +#define mailer "/usr/bin/sendmail" + +#define mailx "/bin/mailx" + +#define helphome "/var/lib/elm" +#define helpfile "elm-help" + +#define ELMRC_INFO "/var/lib/elm/elmrc-info" + +#define elmrcfile ".elm/elmrc" +#define old_elmrcfile ".elm/elmrc.old" +#define mailheaders ".elm/elmheaders" +#define dead_letter "Canceled.mail" + +#define unedited_mail "emergency.mbox" + +#define newalias "newalias 1>&2 > /dev/null" +#define readmsg "readmsg" + +#define remove_cmd "/bin/rm -f" /* how to remove a file */ +#define cat "/bin/cat" /* how to display files */ +#define sed_cmd "/usr/bin/sed" /* how to access sed */ +#define move_cmd "/bin/mv" /* how to access sed */ +#define uuname "uuname" /* how to get a uuname */ + +#define MSG_SEPARATOR "\001\001\001\001\n" /* mmdf message seperator */ + +#ifdef CRAY +/* avoid conflict with typedef'd word */ +#define word wrd +#endif /* CRAY */ + +#ifndef STRSTR +char *strstr(); +#endif + diff -u --recursive --new-file elm2.4.orig/lib/Makefile elm2.4/lib/Makefile --- elm2.4.orig/lib/Makefile Wed Dec 31 18:00:00 1969 +++ elm2.4/lib/Makefile Tue Dec 12 00:43:41 1995 @@ -0,0 +1,327 @@ +# : Makefile.SH,v 5.15 1993/08/03 19:28:39 syd Exp $ +# +# Makefile for the ELM mail program. +# +# Copyright (c) 1986,1987 Dave Taylor +# Copyright (c) 1988-1992 USENET Community Trust +# +# Bug reports, patches, comments, suggestions should be sent to: +# +# Syd Weinstein - elm@DSI.COM +# dsinc!elm +# +# $Log: Makefile.SH,v $ +# Revision 5.15 1993/08/03 19:28:39 syd +# Elm tries to replace the system toupper() and tolower() on current +# BSD systems, which is unnecessary. Even worse, the replacements +# collide during linking with routines in isctype.o. This patch adds +# a Configure test to determine whether replacements are really needed +# (BROKE_CTYPE definition). The header file is now included +# globally through hdrs/defs.h and the BROKE_CTYPE patchup is handled +# there. Inclusion of was removed from *all* the individual +# files, and the toupper() and tolower() routines in lib/opt_utils.c +# were dropped. +# From: chip@chinacat.unicom.com (Chip Rosenthal) +# +# Revision 5.14 1993/08/03 19:17:33 syd +# Implement new timezone handling. New file lib/get_tz.c with new timezone +# routines. Added new TZMINS_USE_xxxxxx and TZNAME_USE_xxxxxx configuration +# definitions. Obsoleted TZNAME, ALTCHECK, and TZ_MINUTESWEST configuration +# definitions. Updated Configure. Modified lib/getarpdate.c and +# lib/strftime.c to use new timezone routines. +# +# From: chip@chinacat.unicom.com (Chip Rosenthal) +# +# Revision 5.13 1993/08/02 18:14:35 syd +# add missing references for mcprt.c/mcprtlib.c to defs.h +# From: Syd +# +# Revision 5.12 1993/06/10 03:02:46 syd +# break_down_tolist() tried to blindly split address lists at "," which +# caused bogus results with addreses that had a comma inside a comment +# or quoted text, such as "user@domain (Last, First)". This patch steps +# through the address in quanta of RFC-822 tokens when searching for a +# delimiting comma. It also adds "rfc822_toklen()" to the library to +# get that length. +# From: chip@chinacat.unicom.com (Chip Rosenthal) +# +# Revision 5.11 1993/04/12 01:51:42 syd +# Added safe_malloc(), safe_realloc(), and safe_strdup(). They +# will be used in the new elmalias utility. +# From: chip@chinacat.unicom.com (Chip Rosenthal) +# +# Revision 5.10 1993/02/03 16:21:03 syd +# add strtokq +# From: Syd +# +# Revision 5.9 1993/01/27 18:52:03 syd +# add strftime as optional component +# +# Revision 5.8 1993/01/19 05:07:05 syd +# Trim erroreous extra log entry +# From: Syd +# +# Revision 5.7 1993/01/19 04:47:12 syd +# Significant changes to provide consistent Date and From_ header +# cracking. Overhauled date utilities and moved into library. Moved +# real_from() into library. Modified frm, newmail, and readmsg utilities +# to use library version of real_from(). Moved get_word() from Elm +# source into library. Added new library routines atonum() and strfcpy(). +# Fixed trailing backslash bug in len_next(). +# From: chip@chinacat.unicom.com (Chip Rosenthal) +# +# Revision 5.6 1992/12/24 19:33:59 syd +# tune dependency list further +# From: Syd +# +# Revision 5.5 1992/12/24 19:30:46 syd +# Make all object depend on config.h, so a reconfig for a new +# arch in shared sources (or copied sources) forces a recompile +# of all modules. +# From: Syd +# +# Revision 5.4 1992/12/20 05:15:58 syd +# Add a c)hange alias, -u and -t options to listalias to list only user +# and only system aliases respectively. +# From: "Robert L. Howard" +# +# Revision 5.3 1992/11/07 20:07:23 syd +# Add header_cmp routine +# From: Syd +# +# Revision 5.2 1992/10/27 01:43:40 syd +# Move posix_signal to lib directory +# From: tom@osf.org +# +# Revision 5.1 1992/10/03 22:41:36 syd +# Initial checkin as of 2.4 Release at PL0 +# +# +# +# Variables +# Variables established by Configure +AR = ar +CC = gcc +CCFLAGS = -fpcc-struct-return -traditional +CHMOD = /bin/chmod +LINT = lint +OPTIMIZE = -O +RANLIB = : +RM = /bin/rm -f +TOUCH = /bin/touch +TAGS = ctags + +MCSRC = mcprt.c mcprtlib.c msgcat.c +MCOBJ = mcprt.o mcprtlib.o msgcat.o + +STRSRC = +STROBJ = + +FTIMESRC = +FTIMEOBJ = + + +# Variables you may want to manually edit +# If you want debug logging then you'll +# want to uncomment the following. +#DEBUG = -DDEBUG + +# If you're on an ACSnet system (Australia) then +# you'll want to uncomment the following. +# DACSNET = -DACSNET + +# Other general variables +CFLAGS = $(CCFLAGS) $(OPTIMIZE) -I$(INCLDIR) $(DEBUG) $(DACSNET) +INCLDIR = ../hdrs +LINTFLAGS = -I$(INCLDIR) +SHELL = /bin/sh + +# Lists +LIB_SRC = add_site.c \ + addrmchusr.c \ + atonum.c \ + mk_aliases.c \ + aliasdb.c \ + mk_lockname.c \ + can_access.c \ + can_open.c \ + chloc.c \ + date_util.c \ + errno.c \ + expand.c \ + figadrssee.c \ + gcos_name.c \ + getaddrfrm.c \ + getarpdate.c \ + getfullnam.c \ + getword.c \ + get_tz.c \ + header_cmp.c \ + in_list.c \ + in_string.c \ + istrcmp.c \ + ldstate.c \ + len_next.c \ + mail_gets.c \ + $(MCSRC) \ + move_left.c \ + ndbz.c \ + okay_addr.c \ + opt_utils.c \ + parsarpdat.c \ + parsarpwho.c \ + posixsig.c \ + putenv.c \ + realfrom.c \ + qstrings.c \ + remfirstwd.c \ + reverse.c \ + rfc822tlen.c \ + safemalloc.c \ + shiftlower.c \ + strfcpy.c \ + strincmp.c \ + striparens.c \ + $(STRSRC) \ + $(FTIMESRC) \ + strtokq.c \ + tail_of.c \ + validname.c + +LIB_OBJ = add_site.o \ + addrmchusr.o \ + atonum.o \ + mk_aliases.o \ + aliasdb.o \ + mk_lockname.o \ + can_access.o \ + can_open.o \ + chloc.o \ + date_util.o \ + errno.o \ + expand.o \ + figadrssee.o \ + gcos_name.o \ + get_tz.o \ + getaddrfrm.o \ + getarpdate.o \ + getfullnam.o \ + getword.o \ + header_cmp.o \ + in_list.o \ + in_string.o \ + istrcmp.o \ + ldstate.o \ + len_next.o \ + mail_gets.o \ + $(MCOBJ) \ + move_left.o \ + ndbz.o \ + okay_addr.o \ + opt_utils.o \ + parsarpdat.o \ + parsarpwho.o \ + posixsig.o \ + putenv.o \ + qstrings.o \ + realfrom.o \ + remfirstwd.o \ + reverse.o \ + rfc822tlen.o \ + safemalloc.o \ + shiftlower.o \ + strfcpy.o \ + strincmp.o \ + striparens.o \ + $(STROBJ) \ + $(FTIMEOBJ) \ + strtokq.o \ + tail_of.o \ + validname.o + +all: libutil.a + +install: libutil.a + +uninstall: libutil.a + +libutil.a: $(LIB_OBJ) + $(AR) r $@ $? + $(RANLIB) $@ + +lint: + $(LINT) $(LINTFLAGS) $(LIB_SRC) > LINT.OUT + +tags: + $(TAGS) $(LIB_SRC) + +clean: + $(RM) $(LIB_OBJ) libutil.a + +# Dependencies and rules +# Dependencies of header files upon other header files they include +.PRECIOUS: $(INCLDIR)/defs.h $(INCLDIR)/elm.h $(INCLDIR)/headers.h + +$(INCLDIR)/defs.h: $(INCLDIR)/../config.h $(INCLDIR)/sysdefs.h + $(CHMOD) u+w $@ + $(TOUCH) $@ + +$(INCLDIR)/elm.h: $(INCLDIR)/curses.h $(INCLDIR)/defs.h + $(CHMOD) u+w $@ + $(TOUCH) $@ + +$(INCLDIR)/headers.h: $(INCLDIR)/curses.h $(INCLDIR)/defs.h + $(CHMOD) u+w $@ + $(TOUCH) $@ + +# Dependencies of C object files +add_site.o: $(INCLDIR)/headers.h +addrmchusr.o: $(INCLDIR)/headers.h +atonum.o: $(INCLDIR)/defs.h +mk_aliases.o: $(INCLDIR)/headers.h $(INCLDIR)/ndbz.h $(INCLDIR)/s_newalias.h +aliasdb.o: $(INCLDIR)/headers.h $(INCLDIR)/ndbz.h +mk_lockname.o: $(INCLDIR)/headers.h +can_access.o: $(INCLDIR)/headers.h +can_open.o: $(INCLDIR)/headers.h +chloc.o: $(INCLDIR)/headers.h +date_util.o: $(INCLDIR)/headers.h +errno.o: $(INCLDIR)/headers.h +expand.o: $(INCLDIR)/defs.h $(INCLDIR)/s_elmrc.h +figadrssee.o: $(INCLDIR)/headers.h +gcos_name.o: $(INCLDIR)/headers.h +get_tz.o: $(INCLDIR)/defs.h +getaddrfrm.o: $(INCLDIR)/headers.h +getarpdate.o: $(INCLDIR)/headers.h +getfullnam.o: $(INCLDIR)/headers.h +getword.o: $(INCLDIR)/defs.h +header_cmp.o: $(INCLDIR)/headers.h +in_list.o: $(INCLDIR)/headers.h +in_string.o: $(INCLDIR)/headers.h +istrcmp.o: $(INCLDIR)/headers.h +ldstate.o: $(INCLDIR)/defs.h +len_next.o: ../config.h +mail_gets.o: ../config.h +mcprt.o: $(INCLDIR)/mcprt.h $(INCLDIR)/mcprtlib.h $(INCLDIR)/defs.h +mcprtlib.o: $(INCLDIR)/mcprtlib.h $(INCLDIR)/nl_types.h $(INCLDIR)/defs.h +move_left.o: $(INCLDIR)/headers.h +msgcat.o: $(INCLDIR)/msgcat.h $(INCLDIR)/nl_types.h +ndbz.o: $(INCLDIR)/headers.h $(INCLDIR)/ndbz.h +okay_addr.o: $(INCLDIR)/headers.h +opt_utils.o: $(INCLDIR)/headers.h $(INCLDIR)/s_error.h +parsarpdat.o: $(INCLDIR)/headers.h +parsarpwho.o: $(INCLDIR)/headers.h +posixsig.o: $(INCLDIR)/headers.h +putenv.o: $(INCLDIR)/headers.h +realfrom.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +qstrings.o: ../config.h +remfirstwd.o: $(INCLDIR)/headers.h +reverse.o: $(INCLDIR)/headers.h +safemalloc.o: $(INCLDIR)/defs.h +shiftlower.o: $(INCLDIR)/headers.h +strincmp.o: $(INCLDIR)/headers.h +striparens.o: $(INCLDIR)/headers.h +strstr.o: $(INCLDIR)/headers.h +strtokq.o: $(INCLDIR)/headers.h +tail_of.o: $(INCLDIR)/headers.h +validname.o: $(INCLDIR)/defs.h + diff -u --recursive --new-file elm2.4.orig/src/Makefile elm2.4/src/Makefile --- elm2.4.orig/src/Makefile Wed Dec 31 18:00:00 1969 +++ elm2.4/src/Makefile Tue Dec 12 00:43:42 1995 @@ -0,0 +1,309 @@ +# : Makefile.SH,v 5.1 1992/10/03 22:58:40 syd Exp $ +# +# Makefile for the ELM mail program. +# +# Copyright (c) 1988-1992 USENET Community Trust +# Copyright (c) 1986,1987 Dave Taylor +# +# Bug reports, patches, comments, suggestions should be sent to: +# +# Syd Weinstein - elm@DSI.COM +# dsinc!elm +# +# $Log: Makefile.SH,v $ +# Revision 5.1 1992/10/03 22:58:40 syd +# Initial checkin as of 2.4 Release at PL0 +# +# Revision 5.1 1992/10/03 22:58:40 syd +# Initial checkin as of 2.4 Release at PL0 +# +# +# +# Variables +# Variables established by Configure +CC = gcc +CCFLAGS = -fpcc-struct-return -traditional +CHGRP = /bin/chgrp +CHMOD = /bin/chmod +CP = /bin/cp +DEST = /usr/bin +ECHO = /bin/echo +LFLAGS = +LIB = /var/lib/elm +LIB2 = +LIBS = -ltermcap +LINT = lint +MAILGRP = mail +MAILERMODE = 2755 +MV = /bin/mv +OPTIMIZE = -O +RM = /bin/rm -f +TOUCH = /bin/touch +TAGS = ctags + + +# Variables you may want to manually edit +# If you want debug logging then you'll +# want to uncomment the following. +#DEBUG = -DDEBUG + +# If you're on an ACSnet system (Australia) then +# you'll want to uncomment the following. +# DACSNET = -DACSNET + +# Other general variables +BIN = ../bin +CFLAGS = $(CCFLAGS) $(OPTIMIZE) -I$(INCLDIR) $(DEBUG) $(DACSNET) +INCLDIR = ../hdrs +LINTFLAGS = -I$(INCLDIR) +SHELL = /bin/sh + +# Lists +ELM_SRC = addr_util.c \ + alias.c \ + aliaslib.c \ + args.c \ + a_edit.c \ + a_screen.c \ + a_sort.c \ + a_quit.c \ + bouncebk.c \ + builtin.c \ + calendar.c \ + curses.c \ + date.c \ + delete.c \ + edit.c \ + editmsg.c \ + elm.c \ + encode.c \ + exitprog.c \ + expires.c \ + file.c \ + file_util.c \ + fileio.c \ + find_alias.c \ + forms.c \ + hdrconfg.c \ + help.c \ + in_utils.c \ + init.c \ + leavembox.c \ + lock.c \ + limit.c \ + mailmsg1.c \ + mailmsg2.c \ + mime.c \ + mkhdrs.c \ + newmbox.c \ + options.c \ + out_utils.c \ + pattern.c \ + pmalloc.c \ + quit.c \ + read_rc.c \ + remail.c \ + reply.c \ + returnadd.c \ + save_opts.c \ + savecopy.c \ + screen.c \ + showmsg.c \ + showmsg_c.c \ + signals.c \ + softkeys.c \ + sort.c \ + string2.c \ + strings.c \ + syscall.c \ + utils.c \ + wildcards.c \ + wordwrap.c + +ELM_OBJ = addr_util.o \ + alias.o \ + aliaslib.o \ + args.o \ + a_edit.o \ + a_screen.o \ + a_sort.o \ + a_quit.o \ + bouncebk.o \ + builtin.o \ + calendar.o \ + curses.o \ + date.o \ + delete.o \ + edit.o \ + editmsg.o \ + elm.o \ + encode.o \ + exitprog.o \ + expires.o \ + file.o \ + file_util.o \ + fileio.o \ + find_alias.o \ + forms.o \ + hdrconfg.o \ + help.o \ + in_utils.o \ + init.o \ + leavembox.o \ + lock.o \ + limit.o \ + mailmsg1.o \ + mailmsg2.o \ + mime.o \ + mkhdrs.o \ + newmbox.o \ + options.o \ + out_utils.o \ + pattern.o \ + pmalloc.o \ + quit.o \ + read_rc.o \ + remail.o \ + reply.o \ + returnadd.o \ + save_opts.o \ + savecopy.o \ + screen.o \ + showmsg.o \ + showmsg_c.o \ + signals.o \ + softkeys.o \ + sort.o \ + string2.o \ + strings.o \ + syscall.o \ + utils.o \ + wildcards.o \ + wordwrap.o + +# Standard targets +all: $(BIN)/elm + +install: $(DEST)/elm + +uninstall: + $(RM) $(DEST)/elm + +# This is the only target that gets installed even if not out-of-date +# with respect the files from which it is installed. +rmt-install: rmt-defined + -$(MV) $(DEST)/elm $(DEST)/elm.old + -$(RM) $(DEST)/elm.old + $(CP) $(REMOTE)$(DEST)/elm $(DEST)/elm + $(CHGRP) $(MAILGRP) $(DEST)/elm + $(CHMOD) $(MAILERMODE) $(DEST)/elm + +rmt-defined: + @(if [ "$(REMOTE)" = "" ];\ + then\ + $(ECHO) "You need to define 'REMOTE' as the remote file system";\ + $(ECHO) "for this particular command. The easiest way to do this";\ + $(ECHO) "to type:";\ + $(ECHO) " make REMOTE= rmt-install";\ + exit 1;\ + fi); + +lint: + $(LINT) $(LINTFLAGS) $(ELM_SRC) > LINT.OUT + +tags: + $(TAGS) $(ELM_SRC) + +clean: + $(RM) $(ELM_OBJ) $(BIN)/elm + +# Dependencies and rules +# Dependencies of header files upon other header files they include +.PRECIOUS: $(INCLDIR)/defs.h $(INCLDIR)/elm.h $(INCLDIR)/headers.h + +$(INCLDIR)/defs.h: $(INCLDIR)/../config.h $(INCLDIR)/sysdefs.h + $(CHMOD) u+w $@ + $(TOUCH) $@ + +$(INCLDIR)/elm.h: $(INCLDIR)/curses.h $(INCLDIR)/defs.h + $(CHMOD) u+w $@ + $(TOUCH) $@ + +$(INCLDIR)/headers.h: $(INCLDIR)/curses.h $(INCLDIR)/defs.h + $(CHMOD) u+w $@ + $(TOUCH) $@ + +# Dependencies of C object files +addr_util.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +alias.o: $(INCLDIR)/headers.h $(INCLDIR)/ndbz.h $(INCLDIR)/s_aliases.h $(INCLDIR)/s_elm.h +aliaslib.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +args.o: $(INCLDIR)/headers.h $(INCLDIR)/patchlevel.h $(INCLDIR)/s_elm.h +a_edit.o: $(INCLDIR)/headers.h +a_screen.o: $(INCLDIR)/headers.h $(INCLDIR)/s_aliases.h +a_sort.o: $(INCLDIR)/headers.h $(INCLDIR)/s_aliases.h +a_quit.o: $(INCLDIR)/headers.h $(INCLDIR)/s_aliases.h +bouncebk.o: $(INCLDIR)/headers.h +builtin.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +calendar.o: $(INCLDIR)/headers.h +curses.o: $(INCLDIR)/headers.h +date.o: $(INCLDIR)/headers.h +delete.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +edit.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +editmsg.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +elm.o: $(INCLDIR)/elm.h $(INCLDIR)/s_elm.h +encode.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +exitprog.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +expires.o: $(INCLDIR)/headers.h +file.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +file_util.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +fileio.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +find_alias.o: $(INCLDIR)/headers.h +forms.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +hdrconfg.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +help.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +in_utils.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +init.o: $(INCLDIR)/headers.h $(INCLDIR)/patchlevel.h $(INCLDIR)/s_elm.h +leavembox.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +lock.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +limit.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h $(INCLDIR)/s_aliases.h +mailmsg1.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +mailmsg2.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +mkhdrs.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +mime.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +newmbox.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +options.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h $(INCLDIR)/save_opts.h +out_utils.o: $(INCLDIR)/headers.h +pattern.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +pmalloc.o: $(INCLDIR)/defs.h $(INCLDIR)/s_elm.h +quit.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +read_rc.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h $(INCLDIR)/save_opts.h +remail.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +reply.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +returnadd.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +save_opts.o: $(INCLDIR)/save_opts.h $(INCLDIR)/headers.h $(INCLDIR)/s_elmrc.h +savecopy.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +screen.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +showmsg.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +showmsg_c.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +signals.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +softkeys.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +sort.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +string2.o: $(INCLDIR)/headers.h +strings.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +syscall.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +utils.o: $(INCLDIR)/headers.h $(INCLDIR)/s_elm.h +wildcards.o: $(INCLDIR)/defs.h +wordwrap.o: $(INCLDIR)/headers.h + +# Dependencies and rules for compiling C programs +$(BIN)/elm: $& $(ELM_OBJ) ../lib/libutil.a + $(CC) $(LFLAGS) -o $@ $(ELM_OBJ) ../lib/libutil.a $(LIBS) $(LIB2) + +# Dependencies and rules for installing C programs +$(DEST)/elm: $(BIN)/elm + -$(MV) $@ $@.old + -$(RM) $@.old + $(CP) $(BIN)/elm $@ + $(CHGRP) $(MAILGRP) $@ + $(CHMOD) $(MAILERMODE) $@ + diff -u --recursive --new-file elm2.4.orig/utils/Makefile elm2.4/utils/Makefile --- elm2.4.orig/utils/Makefile Wed Dec 31 18:00:00 1969 +++ elm2.4/utils/Makefile Tue Dec 12 00:43:42 1995 @@ -0,0 +1,403 @@ + +# @(#): Makefile.SH,v 5.6 1994/03/10 17:20:23 syd Exp $ +# +# Makefile for the Elm system utilities +# +# (C) Copyright 1986,1987, by Dave Taylor +# (C) Copyright 1988-1992, USENET Community Trust +# +# Bug reports, patches, comments, suggestions should be sent to: +# +# Syd Weinstein - elm@DSI.COM +# dsinc!elm +# +# $Log: Makefile.SH,v $ +# Revision 5.6 1994/03/10 17:20:23 syd +# Remove autoreply +# From: Syd +# +# Revision 5.5 1993/05/31 19:17:28 syd +# In the Makefile listalias was given only a+x permission +# though it should have been a+rx. +# From: Jukka Ukkonen +# +# Revision 5.4 1993/04/16 05:07:10 syd +# add elmalias +# +# Revision 5.3 1993/04/12 02:14:15 syd +# Fix comments +# +# Revision 5.2 1993/04/12 02:11:05 syd +# Added new utilities "elmalias" and "prlong". Modified "checkalias" +# and "listalias" to use them. +# From: chip@chinacat.unicom.com (Chip Rosenthal) +# +# Revision 5.1 1992/10/04 00:46:45 syd +# Initial checkin as of 2.4 Release at PL0 +# +# +# +# Variables +# Variables established by Configure +CC = gcc +CCFLAGS = -fpcc-struct-return -traditional +CHMOD = /bin/chmod +CP = /bin/cp +DEST = /usr/bin +ECHO = /bin/echo +LFLAGS = +LIB = /var/lib/elm +LIB2 = +LIBS = -ltermcap +LINT = lint +LN = /bin/ln +MAKE = /usr/bin/pmake +MV = /bin/mv +OPTIMIZE = -O +RM = /bin/rm -f +TOUCH = /bin/touch +# Variables you may want to manually edit +# If you want debug logging then you'll +# want to uncomment the following. +#DEBUG = -DDEBUG + +# Other general variables +BIN = ../bin +CFLAGS = $(CCFLAGS) $(OPTIMIZE) -I$(INCLDIR) $(DEBUG) $(DACSNET) +INCLDIR = ../hdrs +LINTFLAGS = -I$(INCLDIR) +SHELL = /bin/sh + +# Lists +# List of installed programs - excludes wnewmail and nfrm, +# which are handled separately +INSTALL_LIST = $(DEST)/answer \ + $(DEST)/checkalias \ + $(DEST)/elmalias \ + $(DEST)/fastmail \ + $(DEST)/frm \ + $(DEST)/listalias \ + $(DEST)/messages \ + $(DEST)/newalias \ + $(DEST)/newmail \ + $(DEST)/printmail \ + $(DEST)/readmsg \ + $(LIB)/prlong + +# List of remotely install programs +REMOTE_LIST = $(REMOTE)$(DEST)/answer \ + $(REMOTE)$(DEST)/checkalias \ + $(REMOTE)$(DEST)/elmalias \ + $(REMOTE)$(DEST)/fastmail \ + $(REMOTE)$(DEST)/frm \ + $(REMOTE)$(DEST)/listalias \ + $(REMOTE)$(DEST)/messages \ + $(REMOTE)$(DEST)/newalias \ + $(REMOTE)$(DEST)/newmail \ + $(REMOTE)$(DEST)/printmail \ + $(REMOTE)$(DEST)/readmsg + +# List of programs in bin directory +BINARY_LIST = $(BIN)/answer \ + $(BIN)/checkalias \ + $(BIN)/elmalias \ + $(BIN)/fastmail \ + $(BIN)/frm \ + $(BIN)/listalias \ + $(BIN)/messages \ + $(BIN)/newalias \ + $(BIN)/newmail \ + $(BIN)/printmail \ + $(BIN)/readmsg \ + $(BIN)/prlong + +# List of programs to $(LINT) - only C programs +LINT_LIST = answer_lint \ + elmalias_lint \ + fastmail_lint \ + frm_lint \ + newalias_lint \ + newmail_lint \ + readmsg_lint \ + prlong_lint + +# List of all object files in all util programs (used in parallel makes) +UTIL_OBJ = answer.o \ + elmalias.o \ + fastmail.o \ + from.o \ + newalias.o \ + newmail.o \ + readmsg.o \ + prlong.o + +# Lists of source and object files for each C program +ANSWER_SRC = answer.c +ANSWER_OBJ = answer.o +ELMALIAS_SRC = elmalias.c +ELMALIAS_OBJ = elmalias.o +FASTMAIL_SRC = fastmail.c +FASTMAIL_OBJ = fastmail.o +FRM_SRC = from.c +FRM_OBJ = from.o +NEWALIAS_SRC = newalias.c +NEWALIAS_OBJ = newalias.o +NEWMAIL_SRC = newmail.c +NEWMAIL_OBJ = newmail.o +PRLONG_SRC = prlong.c +PRLONG_OBJ = prlong.o +READMSG_SRC = readmsg.c +READMSG_OBJ = readmsg.o + +# Standard targets +all: objects $(BINARY_LIST) + +# This unusual target enables highly efficial compilation of object files +# on systems that have the parallel make feature. +objects: $& $(UTIL_OBJ) + +install: $(INSTALL_LIST) $(DEST)/wnewmail $(DEST)/nfrm + +uninstall: + $(RM) $(INSTALL_LIST) $(DEST)/wnewmail $(DEST)/nfrm + +# This is the only target that gets installed even if not out-of-date +# with respect the files from which it is installed. +rmt-install: rmt-defined + -$(MV) $(DEST)/answer $(DEST)/answer.old + -$(MV) $(DEST)/checkalias $(DEST)/checkalias.old + -$(MV) $(DEST)/elmalias $(DEST)/elmalias.old + -$(MV) $(DEST)/fastmail $(DEST)/fastmail.old + -$(MV) $(DEST)/frm $(DEST)/frm.old + -$(MV) $(DEST)/nfrm $(DEST)/nfrm.old + -$(MV) $(DEST)/listalias $(DEST)/listalias.old + -$(MV) $(DEST)/messages $(DEST)/messages.old + -$(MV) $(DEST)/newalias $(DEST)/newalias.old + -$(MV) $(DEST)/newmail $(DEST)/newmail.old + -$(MV) $(DEST)/printmail $(DEST)/printmail.old + -$(MV) $(DEST)/readmsg $(DEST)/readmsg.old + -$(MV) $(DEST)/wnewmail $(DEST)/wnewmail.old + -$(RM) $(DEST)/answer.old + -$(RM) $(DEST)/checkalias.old + -$(RM) $(DEST)/elmalias.old + -$(RM) $(DEST)/fastmail.old + -$(RM) $(DEST)/frm.old + -$(RM) $(DEST)/nfrm.old + -$(RM) $(DEST)/listalias.old + -$(RM) $(DEST)/messages.old + -$(RM) $(DEST)/newalias.old + -$(RM) $(DEST)/newmail.old + -$(RM) $(DEST)/printmail.old + -$(RM) $(DEST)/readmsg.old + -$(RM) $(DEST)/wnewmail.old + $(CP) $(REMOTE_LIST) $(DEST) + $(LN) $(DEST)/frm $(DEST)/nfrm + $(LN) $(DEST)/newmail $(DEST)/wnewmail + -$(MV) $(LIB)/prlong $(DEST)/prlong.old + -$(RM) $(LIB)/prlong.old + $(CP) prlong $(LIB) + $(CHMOD) a+rx $(INSTALL_LIST) + +rmt-defined: + @(if [ "$(REMOTE)" = "" ];\ + then\ + $(ECHO) "You need to define 'REMOTE' as the remote file system";\ + $(ECHO) "for this particular command. The easiest way to do this";\ + $(ECHO) "to type:";\ + $(ECHO) " make REMOTE= rmt-install";\ + exit 1;\ + fi); + +# This rule allows us to put lint output for each program on the +# same file, but make sure we start off fresh each time. +lint: + $(RM) LINT.OUT; $(MAKE) -$(MAKEFLAGS) $(LINT_LIST) + +clean: + $(RM) $(UTIL_OBJ) $(BINARY_LIST) + +# Dependencies and rules +# Dependencies and rules for compiling and linting C programs +.PRECIOUS: $(INCLDIR)/defs.h $(INCLDIR)/elm.h \ + $(INCLDIR)/headers.h ../lib/libutil.a + +checkalias: checkalias.SH ; sh $? +listalias: listalias.SH ; sh $? +messages: messages.SH ; sh $? +printmail: printmail.SH ; sh $? + +$(BIN)/answer: $(ANSWER_OBJ) ../lib/libutil.a + $(CC) $(LFLAGS) -o $@ $(ANSWER_OBJ) ../lib/libutil.a $(LIB2) + +answer_lint: $(ANSWER_SRC) + $(LINT) $(LINTFLAGS) $(ANSWER_SRC) >> LINT.OUT + +$(BIN)/elmalias: $(ELMALIAS_OBJ) ../lib/libutil.a + $(CC) $(LFLAGS) -o $@ $(ELMALIAS_OBJ) ../lib/libutil.a $(LIB2) + +elmalias_lint: $(ELMALIAS_SRC) + $(LINT) $(LINTFLAGS) $(ELMALIAS_SRC) >> LINT.OUT + +$(BIN)/fastmail: $(FASTMAIL_OBJ) ../lib/libutil.a + $(CC) $(LFLAGS) -o $@ $(FASTMAIL_OBJ) ../lib/libutil.a $(LIB2) + +fastmail_lint: $(FASTMAIL_SRC) + $(LINT) $(LINTFLAGS) $(FASTMAIL_SRC) >> LINT.OUT + +$(BIN)/frm: $(FRM_OBJ) ../lib/libutil.a + $(CC) $(LFLAGS) -o $@ $(FRM_OBJ) ../lib/libutil.a $(LIB2) + +frm_lint: $(FRM_SRC) + $(LINT) $(LINTFLAGS) $(FRM_SRC) >> LINT.OUT + +$(BIN)/newalias: $(NEWALIAS_OBJ) ../lib/libutil.a + $(CC) $(LFLAGS) -o $@ $(NEWALIAS_OBJ) ../lib/libutil.a $(LIB2) + +newalias_lint: $(NEWALIAS_SRC) + $(LINT) $(LINTFLAGS) $(NEWALIAS_SRC) >> LINT.OUT + +$(BIN)/newmail: $(NEWMAIL_OBJ) ../lib/libutil.a + $(CC) $(LFLAGS) -o $@ $(NEWMAIL_OBJ) ../lib/libutil.a $(LIB2) + +newmail_lint: $(NEWMAIL_SRC) + $(LINT) $(LINTFLAGS) $(NEWMAIL_SRC) >> LINT.OUT + +$(BIN)/readmsg: $(READMSG_OBJ) ../lib/libutil.a + $(CC) $(LFLAGS) -o $@ $(READMSG_OBJ) ../lib/libutil.a $(LIB2) + +readmsg_lint: $(READMSG_SRC) + $(LINT) $(LINTFLAGS) $(READMSG_SRC) >> LINT.OUT + +$(BIN)/prlong: $(PRLONG_OBJ) ../lib/libutil.a + $(CC) $(LFLAGS) -o $@ $(PRLONG_OBJ) ../lib/libutil.a $(LIB2) + +prlong_lint: $(PRLONG_SRC) + $(LINT) $(LINTFLAGS) $(PRLONG_SRC) >> LINT.OUT + + +# Rules to make shell scripts in bin directory +$(BIN)/checkalias: checkalias + $(CP) $? $@ + $(CHMOD) u+w,a+rx $@ + +$(BIN)/listalias: listalias + $(CP) $? $@ + $(CHMOD) u+w,a+rx $@ + +$(BIN)/messages: messages + $(CP) $? $@ + $(CHMOD) u+w,a+rx $@ + +$(BIN)/printmail: printmail + $(CP) $? $@ + $(CHMOD) u+w,a+rx $@ + +# Dependencies of header files upon other header files they include +$(INCLDIR)/defs.h: $(INCLDIR)/../config.h $(INCLDIR)/sysdefs.h + $(CHMOD) u+w $@ + $(TOUCH) $@ + +$(INCLDIR)/elmutil.h: $(INCLDIR)/curses.h $(INCLDIR)/defs.h + $(CHMOD) u+w $@ + $(TOUCH) $@ + +$(INCLDIR)/headers.h: $(INCLDIR)/curses.h $(INCLDIR)/defs.h + $(CHMOD) u+w $@ + $(TOUCH) $@ + +# Dependencies of C object files +answer.o: $(INCLDIR)/ndbz.h $(INCLDIR)/elmutil.h $(INCLDIR)/s_answer.h +elmalias.o: $(INCLDIR)/elmutil.h $(INCLDIR)/s_elmalias.h +fastmail.o: $(INCLDIR)/patchlevel.h $(INCLDIR)/elmutil.h $(INCLDIR)/s_fastmail.h +from.o: $(INCLDIR)/elmutil.h $(INCLDIR)/s_from.h +newalias.o: $(INCLDIR)/elmutil.h $(INCLDIR)/sysdefs.h $(INCLDIR)/s_newalias.h +newmail.o: $(INCLDIR)/elmutil.h $(INCLDIR)/s_newmail.h +readmsg.o: $(INCLDIR)/elmutil.h $(INCLDIR)/s_readmsg.h +prlong.o: $(INCLDIR)/defs.h + +# Dependencies and rules for installing programs from bin directory +$(DEST)/answer: $(BIN)/answer + -$(MV) $@ $@.old + -$(RM) $@.old + $(CP) $? $@ + $(CHMOD) a+x $@ + +$(DEST)/checkalias: $(BIN)/checkalias + -$(MV) $@ $@.old + -$(RM) $@.old + $(CP) $? $@ + $(CHMOD) a+rx $@ + +$(DEST)/elmalias: $(BIN)/elmalias + -$(MV) $@ $@.old + -$(RM) $@.old + $(CP) $? $@ + $(CHMOD) a+x $@ + +$(DEST)/fastmail: $(BIN)/fastmail + -$(MV) $@ $@.old + -$(RM) $@.old + $(CP) $? $@ + $(CHMOD) a+x $@ + +$(DEST)/frm: $(BIN)/frm + -$(MV) $@ $@.old + -$(RM) $@.old + $(CP) $? $@ + $(CHMOD) a+x $@ + +$(DEST)/nfrm: $(DEST)/frm + -$(MV) $@ $@.old + -$(RM) $@.old + $(RM) $@ + $(LN) $? $@ + +$(DEST)/listalias: $(BIN)/listalias + -$(MV) $@ $@.old + -$(RM) $@.old + $(CP) $? $@ + $(CHMOD) a+rx $@ + +$(DEST)/messages: $(BIN)/messages + -$(MV) $@ $@.old + -$(RM) $@.old + $(CP) $? $@ + $(CHMOD) a+rx $@ + +$(DEST)/newalias: $(BIN)/newalias + -$(MV) $@ $@.old + -$(RM) $@.old + $(CP) $? $@ + $(CHMOD) a+x $@ + +$(DEST)/newmail: $(BIN)/newmail + -$(MV) $@ $@.old + -$(RM) $@.old + $(RM) $@ + $(CP) $? $@ + $(CHMOD) a+x $@ + +$(DEST)/printmail: $(BIN)/printmail + -$(MV) $@ $@.old + -$(RM) $@.old + $(CP) $? $@ + $(CHMOD) a+rx $@ + +$(DEST)/readmsg: $(BIN)/readmsg + -$(MV) $@ $@.old + -$(RM) $@.old + $(CP) $? $@ + $(CHMOD) a+x $@ + +$(DEST)/wnewmail: $(DEST)/newmail + -$(MV) $@ $@.old + -$(RM) $@.old + $(RM) $@ + $(LN) $? $@ + +$(LIB)/prlong: $(BIN)/prlong + -$(MV) $@ $@.old + -$(RM) $@.old + $(CP) $? $@ + $(CHMOD) a+x $@ + diff -u --recursive --new-file elm2.4.orig/utils/checkalias elm2.4/utils/checkalias --- elm2.4.orig/utils/checkalias Wed Dec 31 18:00:00 1969 +++ elm2.4/utils/checkalias Tue Dec 12 00:43:42 1995 @@ -0,0 +1,16 @@ +#!/bin/sh +# checkalias: part of the Elm mail system +# @(#): checkalias.SH,v 5.2 1993/04/12 02:11:05 syd Exp $ +# Copyright (c) 1988-1992 USENET Community Trust +# Copyright (c) 1986,1987 Dave Taylor + + +if [ $# -eq 0 ] ; then + echo "usage: $0 alias ..." 1>&2 + exit 1 +fi + +elmalias -en $@ | \ + /var/lib/elm/prlong -w 78 -1 "Expands to: " -l " " -f ", " +exit $? + diff -u --recursive --new-file elm2.4.orig/utils/listalias elm2.4/utils/listalias --- elm2.4.orig/utils/listalias Wed Dec 31 18:00:00 1969 +++ elm2.4/utils/listalias Tue Dec 12 00:43:43 1995 @@ -0,0 +1,46 @@ +#!/bin/sh +# listalias: part of the Elm mail system +# @(#)$Id: listalias.SH,v 5.1 1993/04/12 02:10:26 syd Exp $ +# Copyright (c) 1988-1992 USENET Community Trust +# Copyright (c) 1986,1987 Dave Taylor + +USAGE="usage: $0 [-u | -s] [optional-regular-expression]" + +opts= + +while : ; do + case "$1" in + -u|-s) opts="$opts $1" ; shift ;; + --) shift ; break ;; + -*) echo "$USAGE" 1>&2 ; exit 1 ;; + *) break ;; + esac +done + +listit="elmalias -v $opts" +grepit= +sortit="| sort" + +case "$#" in + +0) ;; + +1) # BSD uses "-y" for case insensitive, SysV uses "-i". + grepit="| grep \"$1\"" + for flag in -i -y ; do + x=`echo HELLO | grep $flag hello 2>/dev/null` + if test $? -eq 0 -a "X$x" = "XHELLO" ; then + grepit="| grep $flag \"$1\"" + break + fi + done + ;; + +*) echo "$USAGE" 1>&2 + exit 1 + ;; + +esac + +eval "$listit $grepit $sortit" +exit $? diff -u --recursive --new-file elm2.4.orig/utils/messages elm2.4/utils/messages --- elm2.4.orig/utils/messages Wed Dec 31 18:00:00 1969 +++ elm2.4/utils/messages Tue Dec 12 00:43:43 1995 @@ -0,0 +1,41 @@ +#!/bin/sh +# messages: part of the Elm mail system +# @(#)$Id: messages.SH,v 5.2 1992/10/17 22:38:58 syd Exp $ +# Copyright (c) 1988-1992 USENET Community Trust +# Copyright (c) 1986,1987 Dave Taylor + +if [ "$2" != "" ]; then + echo Usage: messages \{folder-name\} 1>&2 + exit 1 +fi + +if [ "$1" = "" ]; then + fname=${MAIL-/var/spool/mail/$LOGNAME} + optional="in your incoming mailbox" +else + optional="in folder $1" + first=`expr "$1" : "\(.\).*"` + if [ "$first" = "=" ]; then + last=`expr "$1" : ".\(.*\)"` + fname="`grep maildir $HOME/.elm/elmrc | awk -F= '{print $2}'| tr -d ' '`/$last" + else + fname=$1 + fi +fi + +if [ -f "$fname" ]; then + mcount=`egrep -c "^From " $fname` +else + echo "Folder $1 does not exist." + exit 0 +fi + +if [ "$mcount" -eq 1 ]; then + echo There is 1 message $optional. +elif [ "$mcount" -eq 0 ]; then + echo There are no messages $optional. +else + echo There are $mcount messages $optional. +fi + +exit $mcount diff -u --recursive --new-file elm2.4.orig/utils/printmail elm2.4/utils/printmail --- elm2.4.orig/utils/printmail Wed Dec 31 18:00:00 1969 +++ elm2.4/utils/printmail Tue Dec 12 00:43:43 1995 @@ -0,0 +1,21 @@ +#!/bin/sh +# printmail: part of the Elm mail system +# @(#)$Id: printmail.SH,v 5.1 1992/10/04 00:46:45 syd Exp $ +# Copyright (c) 1988-1992 USENET Community Trust +# Copyright (c) 1986,1987 Dave Taylor + +if [ "$1" = "-p" ]; then + flags="-p";shift +fi + +if [ "$1" != "" ]; then + if [ ! -r $1 ]; then + echo printmail: cannot open folder $1 1>&2 + exit 1 + else + flags="$flags -f $1" + fi +fi + +# and now invoke readmsg +exec readmsg $flags \*