#
# Rebuild databases of sendmail
#

ETC	=	$(DESTDIR)/etc/
MAIL	=	$(ETC)mail/
NOFOLD	=	$(shell . $(ETC)sysconfig/sendmail 2> /dev/null;\
		  test "$$SENDMAIL_DB_FOLD" = "no" && echo -f)
CONF	=	$(shell test -n "$(DESTDIR)" && echo "-C $(ETC)sendmail.cf")

all:	$(ETC)aliases.db \
	$(MAIL)mailertable.db \
	$(MAIL)genericstable.db \
	$(MAIL)virtusertable.db \
	$(MAIL)access.db \
	$(MAIL)auth/auth-info.db \
	$(MAIL)domaintable.db \
	$(MAIL)userdb.db

short:	$(MAIL)mailertable.db \
	$(MAIL)genericstable.db \
	$(MAIL)virtusertable.db \
	$(MAIL)access.db \
	$(MAIL)auth/auth-info.db \
	$(MAIL)domaintable.db \
	$(MAIL)userdb.db

#
# newaliases
#
SHELL      = /bin/sh
ALIAS_FILE = $(shell find $(ETC)aliases.d/ -type f)
$(ETC)aliases.db: $(ETC)aliases $(ALIAS_FILE)
	@echo "Rebuilding $@."
	sendmail $(CONF) -bi
	test -e $@ && touch $@
	chmod --reference=$< $@

#
# Default db type is hash
#
%.db: %
	@echo "Rebuilding $@."
	makemap $(CONF) hash $(NOFOLD) $@ < $<
	test -e $@ && touch $@
	chmod --reference=$< $@

#
# For user db we use btree type
#
$(MAIL)userdb.db: $(MAIL)userdb
	@echo "Rebuilding $@."
	makemap $(CONF) btree $(NOFOLD) $@ < $<
	test -e $@ && touch $@
	chmod --reference=$< $@

#
