1262266Sbapt# 2262266Sbapt# Depending on your operating system, you might want to influence 3262266Sbapt# the conditional inclusion of some helper functions: 4262266Sbapt# 5262266Sbapt# Define HAVE_* (in caps) if your system already provides: 6262266Sbapt# reallocf 7262266Sbapt# strlcpy 8262266Sbapt# getprogname 9262266Sbapt# 10262266Sbapt 11262266SbaptSH?= sh 12262266Sbapt 13262266Sbaptversion= $(shell ${SH} get-version.sh) 14262266Sbaptdebversion= $(shell ${SH} get-version.sh | sed -Ee 's/^v//;s/[.]([[:digit:]]+)[.](g[[:xdigit:]]+)$$/+\1+\2/') 15262266Sbapt 16262266SbaptCC?= gcc 17262266SbaptCFLAGS?= -O -pipe 18262266SbaptLDADD?= -lssl -lcrypto -lresolv 19262266Sbapt 20262266SbaptCFLAGS+= -Wall -DDMA_VERSION='"${version}"' -DLIBEXEC_PATH='"${LIBEXEC}"' -DCONF_PATH='"${CONFDIR}"' 21262266Sbapt 22262266SbaptINSTALL?= install -p 23262266SbaptCHGRP?= chgrp 24262266SbaptCHMOD?= chmod 25262266Sbapt 26262266SbaptPREFIX?= /usr/local 27262266SbaptSBIN?= ${PREFIX}/sbin 28262266SbaptLIBEXEC?= ${PREFIX}/lib 29262266SbaptCONFDIR?= /etc/dma 30262266SbaptMAN?= ${PREFIX}/share/man 31262266SbaptVAR?= /var 32262266SbaptDMASPOOL?= ${VAR}/spool/dma 33262266SbaptVARMAIL?= ${VAR}/mail 34262266SbaptSYMLINK?= -s # or empty to create hard link 35262266Sbapt 36262266SbaptYACC?= yacc 37262266SbaptLEX?= lex 38262266SbaptLN?= ln 39262266Sbapt 40262266SbaptOBJS= aliases_parse.o aliases_scan.o base64.o conf.o crypto.o 41262266SbaptOBJS+= dma.o dns.o local.o mail.o net.o spool.o util.o 42262266SbaptOBJS+= dfcompat.o 43262266Sbapt 44262266Sbaptall: dma dma-mbox-create 45262266Sbapt 46262266Sbaptclean: 47262266Sbapt -rm -f .depend dma dma-mbox-create *.[do] 48262266Sbapt -rm -f aliases_parse.[ch] aliases_scan.c 49262266Sbapt 50262266Sbaptinstall: all 51262266Sbapt ${INSTALL} -d ${DESTDIR}${SBIN} 52262266Sbapt ${INSTALL} -d ${DESTDIR}${MAN}/man8 ${DESTDIR}${LIBEXEC} 53262266Sbapt ${INSTALL} -m 2755 -o root -g mail dma ${DESTDIR}${SBIN} 54262266Sbapt ${INSTALL} -m 4754 -o root -g mail dma-mbox-create ${DESTDIR}${LIBEXEC} 55262266Sbapt ${INSTALL} -m 0644 dma.8 ${DESTDIR}${MAN}/man8/ 56262266Sbapt 57262266Sbaptsendmail-link: 58262266Sbapt cd ${DESTDIR}${SBIN} && ${LN} ${SYMLINK} dma sendmail 59262266Sbapt 60262266Sbaptmailq-link: 61262266Sbapt cd ${DESTDIR}${SBIN} && ${LN} ${SYMLINK} dma mailq 62262266Sbapt 63262266Sbaptinstall-spool-dirs: 64262266Sbapt ${INSTALL} -d -m 2775 -o root -g mail ${DESTDIR}${DMASPOOL} 65262266Sbapt ${INSTALL} -d -m 2775 -o root -g mail ${DESTDIR}${VARMAIL} 66262266Sbapt 67262266Sbaptpermissions: 68262266Sbapt -${CHGRP} mail ${DESTDIR}${VARMAIL}/* 69262266Sbapt -${CHMOD} g+w ${DESTDIR}${VARMAIL}/* 70262266Sbapt -${CHMOD} 660 ${DESTDIR}${DMASPOOL}/flush 71262266Sbapt 72262266Sbaptinstall-etc: 73262266Sbapt ${INSTALL} -d ${DESTDIR}${CONFDIR} 74262266Sbapt @if [ -e ${DESTDIR}${CONFDIR}/dma.conf ]; then \ 75262266Sbapt echo "Not overwriting ${DESTDIR}${CONFDIR}/dma.conf."; \ 76262266Sbapt else \ 77262266Sbapt echo ${INSTALL} -m 644 -o root -g mail dma.conf ${DESTDIR}${CONFDIR}; \ 78262266Sbapt ${INSTALL} -m 644 -o root -g mail dma.conf ${DESTDIR}${CONFDIR}; \ 79262266Sbapt fi 80262266Sbapt @if [ -e ${DESTDIR}${CONFDIR}/auth.conf ]; then \ 81262266Sbapt echo "Not overwriting ${DESTDIR}${CONFDIR}/auth.conf."; \ 82262266Sbapt else \ 83262266Sbapt echo ${INSTALL} -m 640 -o root -g mail auth.conf ${DESTDIR}${CONFDIR}; \ 84262266Sbapt ${INSTALL} -m 640 -o root -g mail auth.conf ${DESTDIR}${CONFDIR}; \ 85262266Sbapt fi 86262266Sbapt 87262266Sbaptaliases_parse.c: aliases_parse.y 88262266Sbapt ${YACC} -d -o aliases_parse.c aliases_parse.y 89262266Sbapt 90262266Sbaptaliases_scan.c: aliases_scan.l 91262266Sbapt ${LEX} -t aliases_scan.l > aliases_scan.c 92262266Sbapt 93262266Sbapt.SUFFIXES: .c .o 94262266Sbapt 95262266Sbapt.c.o: 96262266Sbapt ${CC} ${CFLAGS} ${CPPFLAGS} -include dfcompat.h -o $@ -c $< 97262266Sbapt 98262266Sbaptdma: ${OBJS} 99262266Sbapt ${CC} ${LDFLAGS} -o $@ ${OBJS} ${LDADD} 100262266Sbapt 101262266Sbapt 102262266Sbaptdch: 103262266Sbapt dch --release-heuristic changelog -v ${debversion} 104262266Sbapt 105262266Sbapt 106262266Sbaptppa: 107262266Sbapt @if [ -z '${DEB_DIST}' ]; then echo "please set DEB_DIST to build"; exit 1; fi 108262266Sbapt dch -v "${debversion}~${DEB_DIST}" -D ${DEB_DIST} "${DEB_DIST} build" -b 109262266Sbapt debuild -S -sa 110262266Sbapt ver=$$(dpkg-parsechangelog -n1 | awk '$$1 == "Version:" { print $$2 }'); \ 111262266Sbapt dput ppa:corecode/dma ../dma_$${ver}_source.changes 112