# -------------------------------------------------------------------------------
# Makefile
# Build utility for the sendmail files
# -------------------------------------------------------------------------------
MAILDIR	= /etc/mail
CFDIR	= /usr/src/sendmail/cf

# -------------------------------------------------------------------------------
# Default target
# -------------------------------------------------------------------------------
all:				configuration
	@echo $@ OK


# -------------------------------------------------------------------------------
# Rebuild everything
# -------------------------------------------------------------------------------
remake:					sendmail_stop \
						cleanup \
						configfiles \
						sendmail_start
	@echo $@ OK


# -------------------------------------------------------------------------------
# Configuration
# -------------------------------------------------------------------------------
configuration:			sendmail_stop \
						configfiles \
						sendmail_start
	@echo $@ OK


# -------------------------------------------------------------------------------
# Config files
# -------------------------------------------------------------------------------
configfiles:			$(MAILDIR)/sendmail.cf \
						$(MAILDIR)/aliases.db \
						$(MAILDIR)/access.db
	@echo $@ OK


# -------------------------------------------------------------------------------
# Cleanup
# -------------------------------------------------------------------------------
cleanup:				$(MAILDIR)/Makefile
	-rm -f $(MAILDIR)/sendmail.cf
	-rm -f $(MAILDIR)/access.db
	-rm -f $(MAILDIR)/aliases.db
	@echo $@ OK


# -------------------------------------------------------------------------------
# Common configuration file: sendmail.cf
# -------------------------------------------------------------------------------
$(MAILDIR)/sendmail.cf:	$(MAILDIR)/sendmail.mc
	@m4 -D_CF_DIR_=$(CFDIR)/ $(CFDIR)/m4/cf.m4 $(MAILDIR)/sendmail.mc > $(MAILDIR)/sendmail.cf
	@echo $@ OK


# -------------------------------------------------------------------------------
# Access database
# -------------------------------------------------------------------------------
$(MAILDIR)/access.db:	$(MAILDIR)/access
	-@rm -f $@
	@makemap hash $@ < $(MAILDIR)/access
	@echo $@ OK


# -------------------------------------------------------------------------------
# Aliases database
# -------------------------------------------------------------------------------
$(MAILDIR)/aliases.db:	$(MAILDIR)/aliases
	-@rm -f $@
	@makemap hash $@ < $(MAILDIR)/aliases
	-@newaliases
	@echo $@ OK


# -------------------------------------------------------------------------------
# Shut down the sendmail service
# -------------------------------------------------------------------------------
sendmail_stop:			$(MAILDIR)/Makefile
	-@service sendmail stop
	@echo $@ OK


# -------------------------------------------------------------------------------
# Bring up the sendmail service
# -------------------------------------------------------------------------------
sendmail_start:			$(MAILDIR)/Makefile
	-@service sendmail start
	@echo $@ OK


# -------------------------------------------------------------------------------
# EOF: Makefile
# -------------------------------------------------------------------------------
