1 LOCALBASE?= /usr/local/
5 BINDIR= ${LOCALBASE}/libexec/opensmtpd/
6 MANDIR= ${LOCALBASE}/share/man/man8
12 SRCS+= main.c mheader.c
14 CFLAGS+=-I${LOCALBASE}/include
15 CFLAGS+=-Wall -I${.CURDIR}
16 CFLAGS+=-Wstrict-prototypes -Wmissing-prototypes
17 CFLAGS+=-Wmissing-declarations
18 CFLAGS+=-Wshadow -Wpointer-arith -Wcast-qual
19 CFLAGS+=-Wsign-compare
20 CFLAGS+=-I${CURDIR} -I${CURDIR}/openbsd-compat/
22 LDFLAGS+=-L${LOCALBASE}/lib
23 LDLIBS+=-lcrypto -lopensmtpd
27 NEED_RECALLOCARRAY?= 1
35 ifeq (${NEED_RECALLOCARRAY}, 1)
36 SRCS+= ${CURDIR}/openbsd-compat/recallocarray.c
37 CFLAGS+= -DNEED_RECALLOCARRAY=1
39 recallocarray.o: ${CURDIR}/openbsd-compat/recallocarray.c
40 ${CC} ${CFLAGS} -c -o recallocarray.o ${CURDIR}/openbsd-compat/recallocarray.c
42 ifeq (${NEED_STRLCAT}, 1)
43 SRCS+= ${CURDIR}/openbsd-compat/strlcat.c
44 CFLAGS+= -DNEED_STRLCAT=1
46 strlcat.o: ${CURDIR}/openbsd-compat/strlcat.c
47 ${CC} ${CFLAGS} -c -o strlcat.o ${CURDIR}/openbsd-compat/strlcat.c
49 ifeq (${NEED_STRTONUM}, 1)
50 SRCS+= ${CURDIR}/openbsd-compat/strtonum.c
51 CFLAGS+= -DNEED_STRTONUM=1
53 strtonum.o: ${CURDIR}/openbsd-compat/strtonum.c
54 ${CC} ${CFLAGS} -c -o strtonum.o ${CURDIR}/openbsd-compat/strtonum.c
56 ifeq (${NEED_PLEDGE}, 1)
57 CFLAGS+= -DNEED_PLEDGE=1
61 ${CC} ${CFLAGS} -MM $< >$@
63 OBJS= ${notdir ${SRCS:.c=.o}}
66 ${CC} ${LDFLAGS} -o $@ $^ ${LDLIBS}
74 ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m ${BINPERM} ${PROG} ${BINDIR}