srcdir= .
SHELL= /bin/sh
TOPDIR= ..
PZCONFIG= $(TOPDIR)/zmailer.Config
INSTALL= /usr/bin/install -c
MKDIR= mkdir -p
MD5SUM= /usr/bin/md5sum
PMAILSHARE= scheduler.conf sm.conf smtpserver.conf scheduler.auth \
smtp-tls.conf
PMAILBIN= mailrm.sh newaliases newfqdnaliases newdb zmailer.sh \
newdbprocessor post-install.sh
all:
@echo Usage: '"make [ dirs | config | mailbin | mailshare | db | cf | forms | guides | install | install-bin ]"'
install: dirs mailbin mailshare db cf forms guides
install-bin: dirs mailbin cf db
FRC:
$(PZCONFIG):
@cd $(TOPDIR) ; $(MAKE) $(MFLAGS) zmailer.Config
$(MD5SUM):
if [ "$(MD5SUM)" = "$(TOPDIR)/utils/md5sum" ]; then \
cd $(TOPDIR); $(MAKE) $(MFLAGS) md5sum ; \
fi
# Ensure all necessary directories exist
dirs: $(PZCONFIG)
-@(. $(PZCONFIG) ; \
umask 022 ; \
if [ -n "$(DESTDIR)" ] ; then \
$(MKDIR) -m 755 $(DESTDIR) ; \
fi ; \
if [ ! -d $(DESTDIR)$$MAILSHARE ]; then \
echo $(MKDIR) $(DESTDIR)$$MAILSHARE && \
$(MKDIR) $(DESTDIR)$$MAILSHARE ; \
fi ; \
if [ ! -d $(DESTDIR)$$MAILVAR ]; then \
echo $(MKDIR) $(DESTDIR)$$MAILVAR && \
$(MKDIR) $(DESTDIR)$$MAILVAR ; \
fi ; \
if [ ! -d $(DESTDIR)$$MAILVAR/db ]; then \
echo $(MKDIR) $(DESTDIR)$$MAILVAR/db && \
$(MKDIR) $(DESTDIR)$$MAILVAR/db ; \
fi ; \
if [ ! -d $(DESTDIR)$$MAILVAR/db/proto ]; then \
echo $(MKDIR) $(DESTDIR)$$MAILVAR/db/proto && \
$(MKDIR) $(DESTDIR)$$MAILVAR/db/proto ; \
fi ; \
if [ ! -d $(DESTDIR)$$MAILVAR/lists ]; then \
echo $(MKDIR) $(DESTDIR)$$MAILVAR/lists && \
$(MKDIR) $(DESTDIR)$$MAILVAR/lists ; \
fi ; \
if [ ! -d $(DESTDIR)$$MAILVAR/fqlists ]; then \
echo $(MKDIR) $(DESTDIR)$$MAILVAR/dqlists && \
$(MKDIR) $(DESTDIR)$$MAILVAR/fqlists ; \
fi ; \
if [ ! -d $(DESTDIR)$$MAILSHARE/forms ]; then \
echo $(MKDIR) $(DESTDIR)$$MAILSHARE/forms && \
$(MKDIR) $(DESTDIR)$$MAILSHARE/forms ; \
fi ; \
if [ ! -d $(DESTDIR)$$MAILSHARE/forms/proto ]; then \
echo $(MKDIR) $(DESTDIR)$$MAILSHARE/forms/proto && \
$(MKDIR) $(DESTDIR)$$MAILSHARE/forms/proto ; \
fi ; \
if [ ! -d $(DESTDIR)$$MAILSHARE/proto ]; then \
echo $(MKDIR) $(DESTDIR)$$MAILSHARE/proto && \
$(MKDIR) $(DESTDIR)$$MAILSHARE/proto ; \
fi ; \
if [ ! -d $(DESTDIR)$$MAILSHARE/bak ]; then \
echo $(MKDIR) $(DESTDIR)$$MAILSHARE/bak && \
$(MKDIR) $(DESTDIR)$$MAILSHARE/bak ; \
fi ; \
if [ ! -d $(DESTDIR)$$MAILSHARE/guides ]; then \
echo $(MKDIR) $(DESTDIR)$$MAILSHARE/guides && \
$(MKDIR) $(DESTDIR)$$MAILSHARE/guides ; \
fi ; \
if [ ! -d $(DESTDIR)$$MAILBIN ]; then \
echo $(MKDIR) $(DESTDIR)$$MAILBIN && \
$(MKDIR) $(DESTDIR)$$MAILBIN ; \
fi ; \
if [ ! -d $(DESTDIR)$$MAILBIN/ta ]; then \
echo $(MKDIR) $(DESTDIR)$$MAILBIN/ta && \
$(MKDIR) $(DESTDIR)$$MAILBIN/ta ; \
fi ; \
if [ ! -d $(DESTDIR)$$MAILBIN/bak ]; then \
echo $(MKDIR) $(DESTDIR)$$MAILBIN/bak && \
$(MKDIR) $(DESTDIR)$$MAILBIN/bak ; \
fi ; \
if [ ! -d $(DESTDIR)$$POSTOFFICE ]; then \
echo $(MKDIR) $(DESTDIR)$$POSTOFFICE && \
$(MKDIR) $(DESTDIR)$$POSTOFFICE ; \
chmod 2755 $(DESTDIR)$$POSTOFFICE ; \
chmod g+s $(DESTDIR)$$POSTOFFICE ; \
fi; \
echo " " ; \
echo "Running post-install creates $$POSTOFFICE subdirs!"; \
echo " " ; \
if [ ! -d $(DESTDIR)$$LOGDIR ]; then \
echo $(MKDIR) $(DESTDIR)$$LOGDIR && \
$(MKDIR) $(DESTDIR)$$LOGDIR ; \
chmod 755 $(DESTDIR)$$LOGDIR ; \
fi )
clientdirs: $(PZCONFIG)
-@(. $(PZCONFIG) ; \
if [ ! -d $(DESTDIR)$$MAILBIN ]; then \
echo $(MKDIR) $(DESTDIR)$$MAILBIN && \
$(MKDIR) $(DESTDIR)$$MAILBIN ; \
fi )
# This is only good for testing "make dirs"
cleandirs: FRC $(PZCONFIG)
-@( . $(PZCONFIG) ; \
echo tar -cf /tmp/zmstuff.tar $(DESTDIR)$$MAILBIN $(DESTDIR)$$MAILSHARE $(DESTDIR)$$POSTOFFICE && \
tar -cf /tmp/zmstuff.tar $(DESTDIR)$$MAILBIN $(DESTDIR)$$MAILSHARE $(DESTDIR)$$POSTOFFICE && \
echo rm -rf $(DESTDIR)$$MAILBIN $(DESTDIR)$$MAILSHARE $(DESTDIR)$$POSTOFFICE && \
rm -rf $(DESTDIR)$$MAILBIN $(DESTDIR)$$MAILSHARE $(DESTDIR)$$POSTOFFICE ; \
rm -f +dirs )
mailbin: $(PZCONFIG) $(PMAILBIN) $(MD5SUM)
-@(. $(PZCONFIG) ; \
if [ ! -d $(DESTDIR)$$MAILBIN/bak ]; then $(MKDIR) $(DESTDIR)$$MAILBIN/bak ; fi ; \
for file in $(PMAILBIN) ; \
do \
name=`expr $$file : '\([^.]*\)'` ; \
echo $(INSTALL) -m 755 $$file $(DESTDIR)$$MAILBIN/$$name ; \
$(INSTALL) -m 755 $$file $(DESTDIR)$$MAILBIN/$$name ; \
done)
mailshare: $(PZCONFIG) $(PMAILSHARE) $(MD5SUM)
-@(. $(PZCONFIG) ; pwd=`pwd` ; \
MAILSHARE=$(DESTDIR)$$MAILSHARE ; \
if [ ! -d $$MAILSHARE/bak ]; then $(MKDIR) $$MAILSHARE/bak ; fi ; \
for file in $(PMAILSHARE) ; \
do \
(echo "# Do not edit this file, instead edit $$pwd/$$file" ; \
echo '#' ; cat $$file) > ms.$$$$ ; \
echo $(INSTALL) -m 644 $$file $$MAILSHARE/proto/$$file ; \
$(INSTALL) -m 644 ms.$$$$ $$MAILSHARE/proto/$$file ; \
rm -f ms.$$$$ ; \
done )
forms: FRC $(MD5SUM)
@( . $(PZCONFIG) ; \
FORMSDIR="$(DESTDIR)$$MAILSHARE/forms" ; \
if [ ! -d "$$FORMSDIR/bak" ]; then \
$(MKDIR) "$$FORMSDIR/bak" ; \
fi ; \
if [ ! -d "$$FORMSDIR/proto" ]; then \
$(MKDIR) "$$FORMSDIR/proto" ; \
fi ; \
for file in ${srcdir}/forms/????* ; \
do \
name="`basename $$file`" ; \
echo $(INSTALL) -m 644 $$file $$FORMSDIR/proto/$$name ; \
$(INSTALL) -m 644 $$file $$FORMSDIR/proto/$$name ; \
done )
db: FRC
-@( . $(PZCONFIG) ; \
MAILVAR=$(DESTDIR)$$MAILVAR ; \
MAILSHARE=$(DESTDIR)$$MAILSHARE; \
if [ ! -d $$MAILVAR/db ]; then \
$(MKDIR) $$MAILVAR/db ; \
fi ; \
if [ ! -d $$MAILVAR/db/proto ]; then \
$(MKDIR) $$MAILVAR/db/proto ; \
fi ; \
echo "Don't forget to set up MAILVAR/db by hand -- if there is nothing, we seed it now" ; \
$(INSTALL) -m 644 db/aliases $$MAILVAR/db/proto/aliases ; \
for x in fqdnaliases fqdnroutes dbases.conf localnames routes \
smtp-policy.mx smtp-policy.src smtp-policy.relay \
userdb kill-headers ; \
do \
$(INSTALL) -m 644 $(srcdir)/db/$$x $$MAILVAR/db/proto/$$x ; \
done ; )
cf: FRC $(MD5SUM)
-@(. $(PZCONFIG) ; \
MAILSHARE=$(DESTDIR)$$MAILSHARE; \
if [ ! -d $$MAILSHARE/proto ]; then \
$(MKDIR) $$MAILSHARE/proto ; \
fi ; \
if [ ! -d $$MAILSHARE/cf ]; then \
$(MKDIR) $$MAILSHARE/cf ; \
fi ; \
if [ ! -d $$MAILSHARE/cf/proto ]; then \
$(MKDIR) $$MAILSHARE/cf/proto ; \
fi ; \
if [ ! -d $$MAILSHARE/cf/fc ]; then \
$(MKDIR) $$MAILSHARE/cf/fc ; \
fi ; \
cp -p $(srcdir)/cf/*.cf $$MAILSHARE/cf/proto ; \
cp -p cf/*.cf $$MAILSHARE/cf/proto/ ; \
cp -p cf/SMTP.cf $$MAILSHARE/proto/router.cf ; \
/bin/rm -f `find $$MAILSHARE/. -name "*.fc" -print` \
foo-file ; \
)
guides: FRC
-. $(PZCONFIG) ; \
MAILSHARE=$(DESTDIR)$$MAILSHARE ; \
src=$(srcdir)/$(TOPDIR)/doc/guides ; \
cp -p $$src/* $$MAILSHARE/guides/
clean mostlyclean: FRC
rm -f ./+* *~
distclean: clean
rm -f Makefile sm.conf zmailer.sh
rm -f newfqdnaliases newaliases newdb mailrm.sh
rm -f scheduler.conf post-install.sh smtp-tls.conf
rm -f smtpserver.conf newdbprocessor scheduler.auth
depend:
syntax highlighted by Code2HTML, v. 0.9.1