1dnl $Id: Makefile.m4,v 8.91.2.1 2002/06/21 21:58:47 ca Exp $ 2include(confBUILDTOOLSDIR`/M4/switch.m4') 3 4define(`confREQUIRE_LIBSM', `true') 5bldPRODUCT_START(`executable', `sendmail') 6define(`bldBIN_TYPE', `G') 7define(`bldINSTALL_DIR', `') 8define(`bldSOURCES', `main.c alias.c arpadate.c bf.c collect.c conf.c control.c convtime.c daemon.c deliver.c domain.c envelope.c err.c headers.c macro.c map.c mci.c milter.c mime.c parseaddr.c queue.c readcf.c recipient.c sasl.c savemail.c sfsasl.c shmticklib.c sm_resolve.c srvrsmtp.c stab.c stats.c sysexits.c timers.c tls.c trace.c udb.c usersmtp.c util.c version.c ') 9PREPENDDEF(`confENVDEF', `confMAPDEF') 10bldPUSH_SMLIB(`sm') 11bldPUSH_SMLIB(`smutil') 12 13dnl hack: /etc/mail is not defined as "location of .cf" in the build system 14define(`bldTARGET_INST_DEP', ifdef(`confINST_DEP', `confINST_DEP', 15`${DESTDIR}/etc/mail/submit.cf ${DESTDIR}${MSPQ}'))dnl 16define(`bldTARGET_LINKS', ifdef(`confLINKS', `confLINKS', 17`${DESTDIR}${UBINDIR}/newaliases ${DESTDIR}${UBINDIR}/mailq ${DESTDIR}${UBINDIR}/hoststat ${DESTDIR}${UBINDIR}/purgestat') 18)dnl 19 20# location of sendmail statistics file (usually /etc/mail/ or /var/log) 21STDIR= ifdef(`confSTDIR', `confSTDIR', `/etc/mail') 22 23# full path to installed statistics file (usually ${STDIR}/statistics) 24STFILE= ${STDIR}/ifdef(`confSTFILE', `confSTFILE', `statistics') 25 26# location of sendmail helpfile file (usually /etc/mail) 27HFDIR= ifdef(`confHFDIR', `confHFDIR', `/etc/mail') 28 29# full path to installed help file (usually ${HFDIR}/helpfile) 30HFFILE= ${HFDIR}/ifdef(`confHFFILE', `confHFFILE', `helpfile') 31 32ifdef(`confSMSRCADD', `APPENDDEF(`confSRCADD', `confSMSRCADD')') 33ifdef(`confSMOBJADD', `APPENDDEF(`confOBJADD', `confSMOBJADD')') 34 35bldPUSH_TARGET(`statistics') 36divert(bldTARGETS_SECTION) 37statistics: 38 ${CP} /dev/null statistics 39 chmod ifdef(`confSTMODE', `confSTMODE', `0600') statistics 40 41${DESTDIR}/etc/mail/submit.cf: 42 @echo "Please read INSTALL if anything fails while installing the binary." 43 @echo "${DESTDIR}/etc/mail/submit.cf will be installed now." 44 cd ${SRCDIR}/cf/cf && make install-submit-cf 45 46MSPQ=ifdef(`confMSP_QUEUE_DIR', `confMSP_QUEUE_DIR', `/var/spool/clientmqueue') 47 48${DESTDIR}${MSPQ}: 49 @echo "Please read INSTALL if anything fails while installing the binary." 50 @echo "You must have setup a new user ${MSPQOWN} and a new group ${GBINGRP}" 51 @echo "as explained in sendmail/SECURITY." 52 mkdir -p ${DESTDIR}${MSPQ} 53 chown ${MSPQOWN} ${DESTDIR}${MSPQ} 54 chgrp ${GBINGRP} ${DESTDIR}${MSPQ} 55 chmod 0770 ${DESTDIR}${MSPQ} 56 57divert(0) 58 59ifdef(`confSETUSERID_INSTALL', `bldPUSH_INSTALL_TARGET(`install-set-user-id')') 60ifdef(`confMTA_INSTALL', `bldPUSH_INSTALL_TARGET(`install-sm-mta')') 61ifdef(`confNO_HELPFILE_INSTALL',, `bldPUSH_INSTALL_TARGET(`install-hf')') 62ifdef(`confNO_STATISTICS_INSTALL',, `bldPUSH_INSTALL_TARGET(`install-st')') 63divert(bldTARGETS_SECTION) 64 65install-set-user-id: bldCURRENT_PRODUCT ifdef(`confNO_HELPFILE_INSTALL',, `install-hf') ifdef(`confNO_STATISTICS_INSTALL',, `install-st') ifdef(`confNO_MAN_BUILD',, `install-docs') 66 ${INSTALL} -c -o ${S`'BINOWN} -g ${S`'BINGRP} -m ${S`'BINMODE} bldCURRENT_PRODUCT ${DESTDIR}${M`'BINDIR} 67 for i in ${sendmailTARGET_LINKS}; do \ 68 rm -f $$i; \ 69 ln -s ${M`'BINDIR}/sendmail $$i; \ 70 done 71 72define(`confMTA_LINKS', `${DESTDIR}${UBINDIR}/newaliases ${DESTDIR}${UBINDIR}/mailq ${DESTDIR}${UBINDIR}/hoststat ${DESTDIR}${UBINDIR}/purgestat') 73install-sm-mta: bldCURRENT_PRODUCT 74 ${INSTALL} -c -o ${M`'BINOWN} -g ${M`'BINGRP} -m ${M`'BINMODE} bldCURRENT_PRODUCT ${DESTDIR}${M`'BINDIR}/sm-mta 75 for i in confMTA_LINKS; do \ 76 rm -f $$i; \ 77 ln -s ${M`'BINDIR}/sm-mta $$i; \ 78 done 79 80install-hf: 81 if [ ! -d ${DESTDIR}${HFDIR} ]; then mkdir -p ${DESTDIR}${HFDIR}; else :; fi 82 ${INSTALL} -c -o ${UBINOWN} -g ${UBINGRP} -m 444 helpfile ${DESTDIR}${HFFILE} 83 84install-st: statistics 85 if [ ! -d ${DESTDIR}${STDIR} ]; then mkdir -p ${DESTDIR}${STDIR}; else :; fi 86 ${INSTALL} -c -o ${SBINOWN} -g ${UBINGRP} -m ifdef(`confSTMODE', `confSTMODE', `0600') statistics ${DESTDIR}${STFILE} 87divert(0) 88bldPRODUCT_END 89 90bldPRODUCT_START(`manpage', `sendmail') 91define(`bldSOURCES', `sendmail.8 aliases.5 mailq.1 newaliases.1') 92bldPRODUCT_END 93 94bldFINISH 95