Provide a new make.conf knob, SENDMAIL_SUBMIT_MC to allow users to pick
the .mc file used for /etc/mail/submit.cf. By default, /etc/mail/freebsd.submit.mc is installed and used. Requested by: fenner Submitted by: ume MFC after: 1 week
This commit is contained in:
parent
de25faf452
commit
b7ddd3c1a9
@ -41,14 +41,19 @@
|
||||
# running sendmail to pick up the changes as well.
|
||||
#
|
||||
# ------------------------------------------------------------------------
|
||||
#
|
||||
# This makefile uses `<HOSTNAME>.mc' as the default .mc file. This can
|
||||
# be changed by defining SENDMAIL_MC in /etc/make.conf, e.g.:
|
||||
# This Makefile uses `<HOSTNAME>.mc' as the default MTA .mc file. This
|
||||
# can be changed by defining SENDMAIL_MC in /etc/make.conf, e.g.:
|
||||
#
|
||||
# SENDMAIL_MC=/etc/mail/myconfig.mc
|
||||
#
|
||||
# If '<HOSTNAME>.mc' does not exist, it is created using 'freebsd.mc'
|
||||
# as a template.
|
||||
#
|
||||
# It also uses 'freebsd.submit.mc' as the default mail submission .mc file.
|
||||
# This can be changed by defining SENDMAIL_SUBMIT_MC in /etc/make.conf,
|
||||
# e.g.:
|
||||
#
|
||||
# SENDMAIL_SUBMIT_MC=/etc/mail/mysubmit.mc
|
||||
# ------------------------------------------------------------------------
|
||||
#
|
||||
# The Makefile knows about the following maps:
|
||||
@ -64,8 +69,14 @@ ${SENDMAIL_MC}:
|
||||
cp freebsd.mc ${SENDMAIL_MC}
|
||||
.endif
|
||||
|
||||
SENDMAIL_SUBMIT_MC?= freebsd.submit.mc
|
||||
|
||||
INSTALL_CF= ${SENDMAIL_MC:R}.cf
|
||||
|
||||
.ifndef SENDMAIL_SET_USER_ID
|
||||
INSTALL_SUBMIT_CF= ${SENDMAIL_SUBMIT_MC:R}.cf
|
||||
.endif
|
||||
|
||||
SENDMAIL_ALIASES?= /etc/mail/aliases
|
||||
|
||||
#
|
||||
@ -160,24 +171,35 @@ clean:
|
||||
|
||||
depend:
|
||||
|
||||
cf: ${INSTALL_CF}
|
||||
cf: ${INSTALL_CF} ${INSTALL_SUBMIT_CF}
|
||||
|
||||
submit.cf: submit.mc
|
||||
.ifdef SENDMAIL_SET_USER_ID
|
||||
install: install-cf
|
||||
.else
|
||||
install: install-cf install-submit-cf
|
||||
.endif
|
||||
|
||||
install-cf: ${INSTALL_CF}
|
||||
.if ${INSTALL_CF} != /etc/mail/sendmail.cf
|
||||
${INSTALL} -c -m ${SHAREMODE} ${INSTALL_CF} /etc/mail/sendmail.cf
|
||||
.endif
|
||||
|
||||
|
||||
install-submit-cf: ${INSTALL_SUBMIT_CF}
|
||||
.ifdef SENDMAIL_SET_USER_ID
|
||||
@echo ">>> ERROR: You should not create a submit.cf file if you are using a"
|
||||
@echo " set-user-ID sendmail binary (SENDMAIL_SET_USER_ID is set"
|
||||
@echo " in make.conf)."
|
||||
@false
|
||||
.else
|
||||
.if ${INSTALL_SUBMIT_CF} != /etc/mail/submit.cf
|
||||
${INSTALL} -c -m ${SHAREMODE} ${INSTALL_SUBMIT_CF} /etc/mail/submit.cf
|
||||
.endif
|
||||
.endif
|
||||
|
||||
maps: ${SENDMAIL_MAP_OBJ}
|
||||
|
||||
aliases: ${SENDMAIL_ALIASES}.db
|
||||
|
||||
install: ${INSTALL_CF}
|
||||
.if ${INSTALL_CF} != /etc/mail/sendmail.cf
|
||||
${INSTALL} -c -m ${SHAREMODE} ${INSTALL_CF} /etc/mail/sendmail.cf
|
||||
.endif
|
||||
maps: ${SENDMAIL_MAP_OBJ}
|
||||
|
||||
start start-mta start-mspq:
|
||||
@if [ -r ${SENDMAIL_START_SCRIPT} ]; then \
|
||||
|
@ -37,9 +37,16 @@ INSTALL_CF= ${SENDMAIL_CF}
|
||||
.endif
|
||||
.endif
|
||||
|
||||
DEST_CF= ${DESTDIR}/etc/mail/sendmail.cf
|
||||
.ifndef SENDMAIL_SET_USER_ID
|
||||
.if defined(SENDMAIL_SUBMIT_MC)
|
||||
INSTALL_SUBMIT_CF=${SENDMAIL_SUBMIT_MC:R}.cf
|
||||
.endif
|
||||
.endif
|
||||
|
||||
ALL+= ${INSTALL_CF}
|
||||
DEST_CF= ${DESTDIR}/etc/mail/sendmail.cf
|
||||
DEST_SUBMIT_CF= ${DESTDIR}/etc/mail/submit.cf
|
||||
|
||||
ALL+= ${INSTALL_CF} ${INSTALL_SUBMIT_CF}
|
||||
|
||||
# Make sure we don't remove /etc/mail/sendmail.cf on make clean
|
||||
# since this will break a running system during a buildworld.
|
||||
@ -49,6 +56,12 @@ CLEANFILES+= ${INSTALL_CF}
|
||||
.endif
|
||||
.endif
|
||||
|
||||
.if defined(INSTALL_SUBMIT_CF)
|
||||
.if ${INSTALL_SUBMIT_CF} != ${DEST_SUBMIT_CF}
|
||||
CLEANFILES+= ${INSTALL_SUBMIT_CF}
|
||||
.endif
|
||||
.endif
|
||||
|
||||
# Additional .cf files to build
|
||||
.if defined(SENDMAIL_ADDITIONAL_MC)
|
||||
SENDMAIL_ADDITIONAL_CF= ${SENDMAIL_ADDITIONAL_MC:S/.mc$/.cf/g}
|
||||
@ -60,7 +73,7 @@ all: ${ALL}
|
||||
|
||||
depend:
|
||||
|
||||
install: ${INSTALL_CF}
|
||||
install: ${INSTALL_CF} ${INSTALL_SUBMIT_CF}
|
||||
.if (defined(SENDMAIL_MC) && defined(SENDMAIL_CF))
|
||||
@echo ">>> ERROR: Both SENDMAIL_CF and SENDMAIL_MC can not be set"
|
||||
@false
|
||||
@ -70,14 +83,22 @@ install: ${INSTALL_CF}
|
||||
${INSTALL} ${COPY} -o ${BINOWN} -g ${BINGRP} -m 644 ${INSTALL_CF} \
|
||||
${DEST_CF}
|
||||
.endif
|
||||
.endif
|
||||
.if defined(SENDMAIL_ADDITIONAL_CF)
|
||||
${INSTALL} ${COPY} -o ${BINOWN} -g ${BINGRP} -m 644 \
|
||||
${SENDMAIL_ADDITIONAL_CF} ${DESTDIR}/etc/mail
|
||||
.endif
|
||||
.ifndef SENDMAIL_SET_USER_ID
|
||||
.if defined(INSTALL_SUBMIT_CF)
|
||||
.if ${INSTALL_SUBMIT_CF} != ${DEST_SUBMIT_CF}
|
||||
${INSTALL} ${COPY} -o ${BINOWN} -g ${BINGRP} -m 644 \
|
||||
${INSTALL_SUBMIT_CF} ${DEST_SUBMIT_CF}
|
||||
.endif
|
||||
.endif
|
||||
.endif
|
||||
|
||||
# Helper for src/etc/Makefile
|
||||
distribution: freebsd.cf freebsd.mc ${INSTALL_CF}
|
||||
distribution: freebsd.cf freebsd.mc ${INSTALL_CF} ${INSTALL_SUBMIT_CF}
|
||||
.if (defined(SENDMAIL_MC) && defined(SENDMAIL_CF))
|
||||
@echo ">>> ERROR: Both SENDMAIL_CF and SENDMAIL_MC can not be set"
|
||||
@false
|
||||
@ -97,11 +118,20 @@ distribution: freebsd.cf freebsd.mc ${INSTALL_CF}
|
||||
${INSTALL} ${COPY} -o ${BINOWN} -g ${BINGRP} -m 644 freebsd.cf \
|
||||
${DEST_CF}
|
||||
.endif
|
||||
.ifndef SENDMAIL_SET_USER_ID
|
||||
${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m 444 ${CFDIR}/cf/submit.mc \
|
||||
${DESTDIR}/etc/mail/submit.mc
|
||||
${DESTDIR}/etc/mail/freebsd.submit.mc
|
||||
${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m 444 ${CFDIR}/cf/submit.cf \
|
||||
${DESTDIR}/etc/mail/submit.cf
|
||||
${DESTDIR}/etc/mail/freebsd.submit.cf
|
||||
.ifndef SENDMAIL_SET_USER_ID
|
||||
.if defined(INSTALL_SUBMIT_CF)
|
||||
.if ${INSTALL_SUBMIT_CF} != ${DEST_SUBMIT_CF}
|
||||
${INSTALL} ${COPY} -o ${BINOWN} -g ${BINGRP} -m 644 \
|
||||
${INSTALL_SUBMIT_CF} ${DEST_SUBMIT_CF}
|
||||
.endif
|
||||
.else
|
||||
${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m 444 ${CFDIR}/cf/submit.cf \
|
||||
${DEST_SUBMIT_CF}
|
||||
.endif
|
||||
.endif
|
||||
${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m 444 ${SMDIR}/helpfile \
|
||||
${DESTDIR}/etc/mail/helpfile
|
||||
|
@ -258,6 +258,13 @@
|
||||
#
|
||||
#SENDMAIL_MC=/etc/mail/myconfig.mc
|
||||
#
|
||||
# The following sets the default m4 configuration file for mail
|
||||
# submission to use at install time. Use with caution as a make
|
||||
# install will overwrite any existing /etc/mail/submit.cf. The
|
||||
# value should be a fully qualified path name.
|
||||
#
|
||||
#SENDMAIL_SUBMIT_MC=/etc/mail/mysubmit.mc
|
||||
#
|
||||
# If you need to build additional .cf files during a make buildworld,
|
||||
# include the full paths to the .mc files in SENDMAIL_ADDITIONAL_MC.
|
||||
#
|
||||
|
@ -520,6 +520,16 @@ Use with caution as a make install will overwrite any existing
|
||||
Note that
|
||||
.Va SENDMAIL_CF
|
||||
is now deprecated.
|
||||
.It Va SENDMAIL_SUBMIT_MC
|
||||
.Pq Vt str
|
||||
The default m4 configuration file for mail submission
|
||||
to use at install time.
|
||||
The value should include the full path to the
|
||||
.Pa .mc
|
||||
file, e.g.,
|
||||
.Pa /etc/mail/mysubmit.mc .
|
||||
Use with caution as a make install will overwrite any existing
|
||||
.Pa /etc/mail/submit.cf .
|
||||
.It Va SENDMAIL_ADDITIONAL_MC
|
||||
.Pq Vt str
|
||||
Additional
|
||||
|
Loading…
Reference in New Issue
Block a user