##############################################################################
#	Instructions to Make, for POP support processes
#
#	@(MHWARNING)
# @(#)pop,v 1.1.1.1 1993/01/30 04:40:18 jtc Exp
##############################################################################

# The following entries were inserted during MH configuration
BINDIR	=	$(DESTDIR)@(MHBINPATH)
ETCDIR	=	$(DESTDIR)@(MHPOPDPATH)
LIBDIR	=	$(DESTDIR)@(MHETCPATH)
OPTIONS	=	@(MHOPTIONS) @(POPUUMBOX) -I..
LDOPTIONS=	@(LDOPTIONS)
LDOPTLIB=	@(LDOPTLIB)
@BEGIN: MPOP
LDCURSES=	@(LDCURSES)
@END: MPOP
PGMPROT	=	0755
REMOVE	=	@(MHREMOVE)
CHOWN	=	@(MHCHOWNPATH)
POPUID	=	50
@BEGIN: APOP
Apop	=	popauth
IApop	=	inst-popauth
Lpop	=	l-popauth
Tpop	=	xpopauth
@END: APOP
@BEGIN: POP
@BEGIN: KPOP
KPOPLIBS=	-lkrb -ldes
@END: KPOP
ALL	=	popd popaka $(Apop) popwrd popd-knet
INST-ALL=	inst-popd inst-popaka $(IApop) inst-popwrd inst-popd-knet
LALL	=	l-popd l-popaka $(Lpop) l-popwrd 
TALL	=	xpopd xpopaka $(Tpop) xpopwrd
@END: POP

CP      =       @(CP)
CC      =	@(MHCOMPILER)
@BEGIN: STDLIB
LD	=	@(MHCOMPILER)
@END: STDLIB
@BEGIN: SHAREDLIB
LD	=	LD_LIBRARY_PATH=../../sbr @(MHCOMPILER)
@END: SHAREDLIB
@BEGIN: OPTIM
CFLAGS  =	$(OPTIONS)
@END: OPTIM
@BEGIN: DEBUG
CFLAGS  =	      $(OPTIONS)
@END: DEBUG
LDFLAGS	=	$(LDOPTIONS)
LIBES1	=	../../zotnet/libzot.a ../../mts/libmts.a
@BEGIN: STDLIB
LIBES2	=	../../config/config.o ../../sbr/libmh.a $(LIBES1)
LDLIBS1	=	$(LIBES1) $(LDOPTLIB)
LDLIBS2	=	$(LIBES2) ../../config/version.o $(LDOPTLIB)
@END: STDLIB
@BEGIN: SUN4SHLIB
SLIBVER	=	.@(SLIBVER)
@END: SUN4SHLIB
@BEGIN: SHAREDLIB
LIBES2	=	../../config/config.o ../../sbr/libmh.so $(LIBES1)
LDLIBS1	=	$(LIBES1) $(LDOPTLIB)
LDLIBS2	=	../../config/config.o ../../config/version.o \
		-Bdynamic @(SLDFLAG) -lmh$(SLIBVER) $(LIBES1) $(LDOPTLIB)
@END: SHAREDLIB

LINT	=	lint
LFLAGS	=	-bhu $(OPTIONS)
LLIBS1	=	../../zotnet/llib-lzotnet
LLIBS2	=	../../sbr/llib-lmh $(LLIBS1)

.c:;		echo $@

################################################################
# Here it is...
################################################################

all:		$(ALL)

lint:		$(LALL)

install:	$(INST-ALL)

tar:		$(ALL)
@BEGIN: POP
		@touch $(TALL)
		@make -n install > MAKEPOP
		@chmod +x MAKEPOP
		tar $(TFLAGS) MAKEPOP $(TALL)
		@rm -f MAKEPOP
@END: POP

uninstall:;	-cd $(ETCDIR); rm -f popd
		-cd $(LIBDIR); rm -f popaka popwrd
		-cd $(BINDIR); rm -f popauth


################################################################
# popd
################################################################

inst-popd:	$(ETCDIR)/popd

$(ETCDIR)/popd:	xpopd
		-$(REMOVE) $@ zpopd
		-rm -f $@
		install -c -s -m $(PGMPROT) xpopd $@


popd:		xpopd;

xpopd:		popd.o popser.o syslog.o \
			../../uip/dropsbr.o \
@BEGIN: MPOP
			../../uip/scansbr.o \
@END: MPOP
			$(LIBES2)
		$(LD) $(LDFLAGS) -o $@ popd.o popser.o syslog.o \
			../../uip/dropsbr.o \
@BEGIN: MPOP
			../../uip/scansbr.o \
@END: MPOP
			$(LDLIBS2) $(LDCURSES) $(KPOPLIBS)

l-popd:;	$(LINT) $(LFLAGS) popd.c popser.c \
			../../uip/dropsbr.c \
@BEGIN: MPOP
			../../uip/scansbr.c \
@END: MPOP
			$(LLIBS2)

../../uip/dropsbr.o:
		$(CC) $(CFLAGS) -c ../../uip/dropsbr.c
		-mv dropsbr.o ../../uip/dropsbr.o

################################################################
# popd-knet
################################################################

inst-popd-knet:	$(ETCDIR)/popd-knet

$(ETCDIR)/popd-knet:	xpopd-knet
		-$(REMOVE) $@ zpopd-knet
		install -c -s -m $(PGMPROT) xpopd-knet $@

popd-knet:	xpopd-knet;

popd-knet.o:	popd.c
		rm -f popd-knet.c; ln -s popd.c popd-knet.c
		$(CC) $(CFLAGS) -DKNETD -c popd-knet.c

xpopd-knet:	popd-knet.o popser.o syslog.o \
			../../uip/dropsbr.o $(LIBES2)
		$(CC) $(LDFLAGS) -o $@ popd-knet.o popser.o syslog.o \
			../../uip/dropsbr.o $(LDLIBS2) -lknet $(KPOPLIBS)



################################################################
# popaka
################################################################

inst-popaka:	$(LIBDIR)/popaka

$(LIBDIR)/popaka:	xpopaka
		-$(REMOVE) $@ zpopaka
		install -c -s -m $(PGMPROT) xpopaka $@

popaka:		xpopaka;

xpopaka:	popaka.o $(LIBES1)
		$(LD) $(LDFLAGS) -o $@ popaka.o $(LDLIBS1)

l-popaka:;	$(LINT) $(LFLAGS) popaka.c $(LLIBS1)


################################################################
# popauth
################################################################

inst-popauth:	$(BINDIR)/popauth

$(BINDIR)/popauth:	xpopauth
		-$(REMOVE) $@ zpopauth
		install -c -s -m $(PGMPROT) -o $(POPUID) -m 4755 xpopauth $@


popauth:	xpopauth;

xpopauth:	popauth.o $(LIBES1)
		$(LD) $(LDFLAGS) -o $@ popauth.o $(LDLIBS2)

l-popauth:;	$(LINT) $(LFLAGS) popauth.c $(LLIBS2)


################################################################
# popwrd
################################################################

inst-popwrd:	$(LIBDIR)/popwrd

$(LIBDIR)/popwrd:	xpopwrd
		-$(REMOVE) $@ zpopwrd
		-chmod u-s zpopwrd
		install -c -s -o $(POPUID) -m 4755 xpopwrd $@

popwrd:		xpopwrd;

xpopwrd:	popwrd.o $(LIBES1)
		$(LD) $(LDFLAGS) -o $@ popwrd.o $(LDLIBS1)

l-popwrd:;	$(LINT) $(LFLAGS) popwrd.c $(LLIBS1)


################################################################
# smtpd
################################################################

inst-smtpd:	$(ETCDIR)/smtpd

$(ETCDIR)/smtpd:	xsmtpd
		-$(REMOVE) $@ zsmtpd
		install -c -s -m $(PGMPROT) xsmtpd $@

smtpd:		xsmtpd;

xsmtpd:		smtpd.o syslog.o
		$(LD) $(LDFLAGS) -o $@ smtpd.o syslog.o

l-smtpd:;	$(LINT) $(LFLAGS) smtpd.c


##############################################################################
#	Miscellaneous tasks
##############################################################################

unconfig:	distribution
		-rm -f mmdfII/pop/lock.c
		-rm -f Makefile

distribution:   clean

clean:		unclean
		-rm -f x* *.o

unclean:;	-rm -f z* _* :* core eddep makedep MAKEPOP


##############################################################################
#	Dependencies
##############################################################################

MODULES	=	popd.c popser.c popaka.c popauth.c popwrd.c

depend:;	makedepend $(CFLAGS) $(MODULES)
