Makefile revision 120397
1210284Sjmallett#	@(#)Makefile	8.19 (Berkeley) 1/14/97
2210284Sjmallett# $FreeBSD: head/etc/sendmail/Makefile 120397 2003-09-24 04:19:26Z gshapiro $
3210284Sjmallett
4210284SjmallettM4=		m4
5210284SjmallettCHMOD=		chmod
6210284SjmallettROMODE=		444
7210284SjmallettRM=		rm -f
8210284Sjmallett
9210284SjmallettSENDMAIL_DIR=	${.CURDIR}/../../contrib/sendmail
10210284SjmallettSMDIR=		${SENDMAIL_DIR}/src
11210284SjmallettSENDMAIL_CF_DIR?=${SENDMAIL_DIR}/cf
12210284Sjmallett
13210284Sjmallett# this is overkill, but....
14210284SjmallettM4FILES!=	find ${SENDMAIL_CF_DIR} -type f -name '*.m4' -print
15210284Sjmallett
16210284Sjmallett.SUFFIXES: .mc .cf
17210284Sjmallett
18210284Sjmallett.mc.cf: ${M4FILES}
19210284Sjmallett	${RM} ${.TARGET}
20210284Sjmallett	${M4} -D_CF_DIR_=${SENDMAIL_CF_DIR}/ ${SENDMAIL_M4_FLAGS} \
21210284Sjmallett	    ${SENDMAIL_CF_DIR}/m4/cf.m4 ${.IMPSRC} > ${.TARGET}
22210284Sjmallett	${CHMOD} ${ROMODE} ${.TARGET}
23210284Sjmallett
24210284SjmallettDEST_CF=	${DESTDIR}/etc/mail/sendmail.cf
25210284SjmallettDEST_SUBMIT_CF=	${DESTDIR}/etc/mail/submit.cf
26210284Sjmallett
27210284SjmallettALL=		freebsd.cf freebsd.submit.cf
28210284SjmallettCLEANFILES=	freebsd.cf freebsd.submit.cf
29210284Sjmallett
30210284Sjmallett# Local SENDMAIL_MC or SENDMAIL_CF may be set in /etc/make.conf.
31210284Sjmallett# Warning!  If set, this causes 'make install' to always copy it
32210284Sjmallett# over /etc/mail/sendmail.cf!!!
33210284Sjmallett# Caveat emptor!  Be sure you want this before you enable it.
34210284Sjmallett.if defined(SENDMAIL_MC)
35210284SjmallettINSTALL_CF=	${SENDMAIL_MC:T:R}.cf
36210284SjmallettALL+=		${INSTALL_CF}
37210284SjmallettCLEANFILES+=	${SENDMAIL_MC:T:R}.cf
38210284Sjmallett${INSTALL_CF}: ${SENDMAIL_MC}
39210284Sjmallett.elif defined(SENDMAIL_CF)
40210284SjmallettALL+=		${SENDMAIL_CF}
41210284SjmallettINSTALL_CF=	${SENDMAIL_CF}
42210284Sjmallett.endif
43210284Sjmallett
44210284Sjmallett.if !defined(SENDMAIL_SET_USER_ID) && defined(SENDMAIL_SUBMIT_MC)
45210284SjmallettINSTALL_SUBMIT_CF= ${SENDMAIL_SUBMIT_MC:T:R}.cf
46210284SjmallettALL+=		${INSTALL_SUBMIT_CF}
47210284SjmallettCLEANFILES+=	${INSTALL_SUBMIT_CF}
48210284Sjmallett${INSTALL_SUBMIT_CF}: ${SENDMAIL_SUBMIT_MC}
49210284Sjmallett.endif
50210284Sjmallett
51210284Sjmallett# Additional .cf files to build.
52210284Sjmallett.if defined(SENDMAIL_ADDITIONAL_MC)
53210284SjmallettSENDMAIL_ADDITIONAL_CF= ${SENDMAIL_ADDITIONAL_MC:T:S/.mc$/.cf/}
54210284SjmallettALL+=		${SENDMAIL_ADDITIONAL_CF}
55210284SjmallettCLEANFILES+=	${SENDMAIL_ADDITIONAL_CF}
56210284Sjmallett.for mc in ${SENDMAIL_ADDITIONAL_MC}
57210284Sjmallett${mc:T:R}.cf: ${mc}
58210284Sjmallett.endfor
59210284Sjmallett.endif
60210284Sjmallett
61210284Sjmallettall: ${ALL}
62210284Sjmallett
63210284Sjmallett# Build the installed submit.cf from the sendmail distributed submit.mc.
64210284Sjmallettfreebsd.submit.cf:	${SENDMAIL_CF_DIR}/cf/submit.mc
65210284Sjmallett	${RM} ${.TARGET}
66210284Sjmallett	${M4} -D_CF_DIR_=${SENDMAIL_CF_DIR}/ ${SENDMAIL_M4_FLAGS} \
67210284Sjmallett	    ${SENDMAIL_CF_DIR}/m4/cf.m4 ${.ALLSRC} > ${.TARGET}
68210284Sjmallett	${CHMOD} ${ROMODE} ${.TARGET}
69210284Sjmallett
70210284Sjmallettinstall distribution:
71210284Sjmallett.if defined(SENDMAIL_MC) && defined(SENDMAIL_CF)
72210284Sjmallett	@echo ">>> ERROR: Both SENDMAIL_MC and SENDMAIL_CF cannot be set"
73210284Sjmallett	@false
74210284Sjmallett.endif
75210284Sjmallett.if make(distribution)
76210284Sjmallett	${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 644 \
77210284Sjmallett	    ${.CURDIR}/freebsd.mc freebsd.cf ${DESTDIR}/etc/mail
78210284Sjmallett	${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 444 \
79210284Sjmallett	    ${SENDMAIL_CF_DIR}/cf/submit.mc \
80210284Sjmallett	    ${DESTDIR}/etc/mail/freebsd.submit.mc
81210284Sjmallett	${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 444 \
82210284Sjmallett	    freebsd.submit.cf ${DESTDIR}/etc/mail
83210284Sjmallett	${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 444 \
84210284Sjmallett	    ${SMDIR}/helpfile ${DESTDIR}/etc/mail
85210284Sjmallett	${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 640 \
86210284Sjmallett	    /dev/null ${DESTDIR}/var/log/sendmail.st
87210284Sjmallett.endif
88210284Sjmallett.if defined(INSTALL_CF) && ${INSTALL_CF} != ${DEST_CF}
89210284Sjmallett	${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 644 \
90210284Sjmallett	    ${INSTALL_CF} ${DEST_CF}
91210284Sjmallett.elif make(distribution)
92210284Sjmallett	${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 644 \
93210284Sjmallett	    freebsd.cf ${DEST_CF}
94210284Sjmallett.endif
95210284Sjmallett.if defined(SENDMAIL_ADDITIONAL_CF) && make(install)
96210284Sjmallett	${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 644 \
97210284Sjmallett	    ${SENDMAIL_ADDITIONAL_CF} ${DESTDIR}/etc/mail
98210284Sjmallett.endif
99210284Sjmallett.if !defined(SENDMAIL_SET_USER_ID)
100210284Sjmallett.if defined(INSTALL_SUBMIT_CF) && ${INSTALL_SUBMIT_CF} != ${DEST_SUBMIT_CF}
101210284Sjmallett	${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 644 \
102210284Sjmallett	    ${INSTALL_SUBMIT_CF} ${DEST_SUBMIT_CF}
103210284Sjmallett.elif make(distribution)
104210284Sjmallett	${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 444 \
105210284Sjmallett	    freebsd.submit.cf ${DEST_SUBMIT_CF}
106210284Sjmallett.endif
107210284Sjmallett.endif
108210284Sjmallett
109210284Sjmallett.include <bsd.prog.mk>
110210284Sjmallett