]>
Commit | Line | Data |
---|---|---|
86e4d161 | 1 | # |
0eaf0584 SS |
2 | # Depending on your operating system, you might want to influence |
3 | # the conditional inclusion of some helper functions: | |
4 | # | |
5 | # Define HAVE_* (in caps) if your system already provides: | |
6 | # reallocf | |
7 | # strlcpy | |
8 | # getprogname | |
f8352d61 SS |
9 | # |
10 | ||
d062346c SS |
11 | version= $(shell sh get-version.sh) |
12 | ||
f8352d61 SS |
13 | CC?= gcc |
14 | CFLAGS?= -O -pipe | |
15 | LDADD?= -lssl -lcrypto -lresolv | |
16 | ||
d062346c | 17 | CFLAGS+= -Wall -DDMA_VERSION='"${version}"' |
4f5584b3 | 18 | |
f8352d61 | 19 | INSTALL?= install -p |
350685ee SS |
20 | CHGRP?= chgrp |
21 | CHMOD?= chmod | |
22 | ||
f8352d61 SS |
23 | PREFIX?= /usr/local |
24 | SBIN?= ${PREFIX}/sbin | |
3256b688 | 25 | CONFDIR?= /etc |
f8352d61 | 26 | MAN?= ${PREFIX}/share/man |
350685ee SS |
27 | VAR?= /var |
28 | DMASPOOL?= ${VAR}/spool/dma | |
29 | VARMAIL?= ${VAR}/mail | |
f8352d61 SS |
30 | |
31 | YACC?= yacc | |
32 | LEX?= lex | |
33 | ||
34 | OBJS= aliases_parse.o aliases_scan.o base64.o conf.o crypto.o | |
35 | OBJS+= dma.o dns.o local.o mail.o net.o spool.o util.o | |
36 | OBJS+= dfcompat.o | |
37 | ||
38 | all: dma | |
39 | ||
40 | clean: | |
41 | -rm -f .depend dma *.[do] | |
42 | -rm -f aliases_parse.[ch] aliases_scan.c | |
43 | ||
44 | install: all | |
45 | ${INSTALL} -d ${DESTDIR}${SBIN} ${DESTDIR}${CONFDIR} | |
46 | ${INSTALL} -d ${DESTDIR}${MAN}/man8 | |
350685ee | 47 | ${INSTALL} -m 2755 -o root -g mail dma ${DESTDIR}${SBIN} |
f8352d61 | 48 | ${INSTALL} -m 0644 dma.8 ${DESTDIR}${MAN}/man8/ |
350685ee SS |
49 | ${INSTALL} -d -m 2775 -o root -g mail ${DESTDIR}${DMASPOOL} |
50 | ${INSTALL} -d -m 2775 -o root -g mail ${DESTDIR}${VARMAIL} | |
585bd308 SS |
51 | |
52 | permissions: | |
350685ee SS |
53 | -${CHGRP} mail ${DESTDIR}${VARMAIL}/* |
54 | -${CHMOD} g+w ${DESTDIR}${VARMAIL}/* | |
86e4d161 | 55 | |
f8352d61 SS |
56 | aliases_parse.c: aliases_parse.y |
57 | ${YACC} -d -o aliases_parse.c aliases_parse.y | |
86e4d161 | 58 | |
f8352d61 SS |
59 | aliases_scan.c: aliases_scan.l |
60 | ${LEX} -t aliases_scan.l > aliases_scan.c | |
86e4d161 | 61 | |
f8352d61 | 62 | .SUFFIXES: .c .o |
86e4d161 | 63 | |
f8352d61 SS |
64 | .c.o: |
65 | ${CC} ${CFLAGS} ${CPPFLAGS} -include dfcompat.h -o $@ -c $< | |
86e4d161 | 66 | |
f8352d61 | 67 | dma: ${OBJS} |
4b3ad5a7 | 68 | ${CC} ${LDFLAGS} ${LDADD} -o $@ ${OBJS} |
d511b674 SS |
69 | |
70 | ||
71 | ppa: | |
72 | @if [ -z '${DEB_DIST}' ]; then echo "please set DEB_DIST to build"; exit 1; fi | |
73 | ver=$$(sh get-version.sh | sed -Ee 's/^v//;s/[.]([[:digit:]]+)[.](g[[:xdigit:]]+)$$/+\1-\2/'); \ | |
74 | dch -v "$$ver~${DEB_DIST}" -D ${DEB_DIST} "${DEB_DIST} build" | |
75 | debuild -S -sa | |
76 | ver=$$(dpkg-parsechangelog -n1 | awk '$$1 == "Version:" { print $$2 }'); \ | |
77 | dput ppa:corecode/dma ../$${ver}_source.changes |