[comp.sources.d] smail under SCO xenix

chip@killer.UUCP (Chip Rosenthal) (12/07/87)

The solution for running "smail" under SCO XENIX posted to
comp.unix.xenix by Chip Salzenberg (chip@ateng.UUCP) is better than 
the one I posted comp.sources.misc.  If you are using the one I posted,
I suggest that you convert to his.  I have modified the installation
procedure in my Makefile to correspond to the setup he suggests.  It
follows:

=== cut here ===============================================================
# Makefile for smail under SCO XENIX
#
# Wed Nov 25 13:02:54 CST 1987 - C. Rosenthal
#	Documented for net distribution.
# Mon Dec  7 10:11:48 CST 1987 - C. Rosenthal
#	Modified to use "execmail.x" for local delivery agent.
#	No longer needs "lmail".

# @(#)Makefile	2.5 (smail) 9/15/87

# Things to do:
#	make			make executables
#	make all		 "       "
#	make install		perform XENIX installation
#	make remove		de-install smail
#	make clean		cleanup this directory
#	make clobber		...and remove executables from this dir

SHELL=		/bin/sh
CFLAGS	=	-i -O
#LIBS	=	-lmalloc	** don't use -lmalloc!! it causes core dumps **

OBJECTS =	main.o map.o resolve.o deliver.o misc.o alias.o pw.o headers.o getpath.o str.o getopt.o

all:		smail execmail
#all:		smail svbinmail lcasep pathproc mkfnames nptx

smail:		$(OBJECTS)
		cc -F 5000 $(CFLAGS) $(OBJECTS) -o smail $(LIBS)

$(OBJECTS):	defs.h
		cc $(CFLAGS) -c $<

svbinmail:	svbinmail.c defs.h
		cc $(CFLAGS) svbinmail.c -o $@

lcasep:		lcasep.c
		cc $(CFLAGS) lcasep.c -o lcasep

pathproc:	pathproc.sh
		cp pathproc.sh pathproc
		chmod 755 pathproc

mkfnames:	mkfnames.sh
		cp mkfnames.sh mkfnames
		chmod 755 mkfnames

nptx:		nptx.o pw.o str.o
		cc $(CFLAGS) nptx.o pw.o str.o -o nptx $(LIBS)

nptx.o:		nptx.c
		cc $(CFLAGS) -c nptx.c

execmail:	execmail.c
		cc $(CFLAGS) execmail.c -o execmail

clean:
		rm -f *.o *.ln a.out core

clobber:	clean
		rm -f smail rmail lcasep pathproc mkfnames svbinmail nptx execmail

##########################
# SCO XENIX Installation #
##########################

INSTALL=	/bin/rmail /bin/smail /usr/lib/mail/execmail
CHANGE=		/usr/bin/rmail.old /usr/lib/mail/execmail.x

MANDIR=		/usr/man/local/man8
MANSUF=		8L

MANPAGES=	$(MANDIR)/aliases.$(MANSUF)	\
		$(MANDIR)/paths.$(MANSUF)	\
		$(MANDIR)/smail.$(MANSUF)

#MANPAGES=	$(MANDIR)/aliases.$(MANSUF)	\
#		$(MANDIR)/lcasep.$(MANSUF)	\
#		$(MANDIR)/mkfnames.$(MANSUF)	\
#		$(MANDIR)/nptx.$(MANSUF)	\
#		$(MANDIR)/pathproc.$(MANSUF)	\
#		$(MANDIR)/paths.$(MANSUF)	\
#		$(MANDIR)/smail.$(MANSUF)

install:	all $(CHANGE) $(INSTALL) $(MANPAGES)
		@echo "=== Your global mailrc needs to contain 'set execmail'."
		@echo "=== I'll check and add it if required..."
		grep 'set execmail' /usr/lib/mail/mailrc > /dev/null || \
		    echo 'set execmail' >> /usr/lib/mail/mailrc

remove:		
		-rm $(INSTALL)
		-rm $(MANPAGES)
		-mv /usr/bin/rmail.old /usr/bin/rmail
		-mv /usr/lib/mail/execmail.x /usr/lib/mail/execmail

/usr/bin/rmail.old:				; mv /usr/bin/rmail $@
/usr/lib/mail/execmail.x:			; mv /usr/lib/mail/execmail $@

/bin/smail:		smail				; cp $? $@
/bin/rmail:		/bin/smail			; -ln $? $@
/usr/lib/mail/execmail:	execmail			; cp $? $@

$(MANDIR)/aliases.$(MANSUF):	aliases.8		; cp $? $@
$(MANDIR)/lcasep.$(MANSUF):	lcasep.8		; cp $? $@
$(MANDIR)/mkfnames.$(MANSUF):	mkfnames.8		; cp $? $@
$(MANDIR)/nptx.$(MANSUF):	nptx.8			; cp $? $@
$(MANDIR)/pathproc.$(MANSUF):	pathproc.8		; cp $? $@
$(MANDIR)/paths.$(MANSUF):	paths.8			; cp $? $@
$(MANDIR)/smail.$(MANSUF):	smail.8			; cp $? $@
=== cut here ===============================================================

-- 
Chip Rosenthal         chip@vector.UUCP		| But if you want to sing the
Dallas Semiconductor     (214) 450-0400		|  blues, then boy you better
{texsun,ihnp4,cbosgd}!killer!vector!chip	|  learn how to lose.