1# $NetBSD$ 2 3.include <bsd.own.mk> 4 5USE_FORT?= yes # network client and server 6CWARNFLAGS.clang+= -Wno-empty-body -Wno-format-extra-args 7 8WARNS?= 0 9 10PFIX_DISTDIR= ${NETBSDSRCDIR}/external/ibm-public/postfix/dist 11 12CPPFLAGS+= -DNETBSD4 -DUSE_SASL_AUTH \ 13 -I${DIST} \ 14 -I${PFIX_DISTDIR}/src/dns -I${PFIX_DISTDIR}/src/global \ 15 -I${PFIX_DISTDIR}/src/master -I${PFIX_DISTDIR}/src/util \ 16 -I${PFIX_DISTDIR}/src/tls -I${PFIX_DISTDIR}/src/milter \ 17 -I${PFIX_DISTDIR}/src/xsasl \ 18 ${${ACTIVE_CC} == "clang":?-Wno-comment:} 19 20CPPFLAGS+= -DUSE_SASL_AUTH 21CPPFLAGS+= -DDEF_SERVER_SASL_TYPE=\"dovecot\" 22 23.if (${MKCRYPTO} != "no") 24CPPFLAGS+= -DUSE_SASLC_SASL 25CPPFLAGS+= -DDEF_CLIENT_SASL_TYPE=\"saslc\" 26DPADD+= ${LIBSASCL} ${LIBSSL} 27LDADD+= -lsaslc -lssl 28. if (${MKKERBEROS} != "no") 29DPADD+= ${LIBGSSAPI} 30LDADD+= -lgssapi 31. endif 32.endif 33 34.if defined(HAVE_PCC) 35# code uses gcc-specific aggregate dynamic array 36CPPFLAGS+= -DCANT_USE_SEND_RECV_MSG 37.endif 38 39# TLS support. 40.if ${MKCRYPTO} != "no" 41CPPFLAGS+= -DUSE_TLS 42.endif 43 44# IPv6 support. 45.if ${MKINET6} == "no" 46CPPFLAGS+= -DNO_IPV6 47.endif 48 49# SQLite support. 50CPPFLAGS+= -DHAS_SQLITE 51. if defined(PROG) 52DPADD+= ${LIBSQLITE3} 53LDADD+= -lsqlite3 54.endif 55 56# LDAP support. 57.if ${USE_LDAP} != "no" 58CPPFLAGS+= -DHAS_LDAP 59 60# Automatically link in libldap for a program. 61. if defined(PROG) 62LDADD+= -lldap 63DPADD+= ${LIBLDAP} 64. if (${MKPIC} == "no" || (defined(LDSTATIC) && ${LDSTATIC} != "")) 65LDADD+= -llber 66DPADD+= ${LIBLBER} 67. if ${MKCRYPTO} != "no" 68DPADD+= ${LIBSSL} ${LIBCRYPTO} 69LDADD+= -lssl -lcrypto 70. endif 71. endif 72. endif 73.endif # USE_LDAP != no 74 75PFIX_SRCDIR= ${NETBSDSRCDIR}/external/ibm-public/postfix 76PFIX_LIBSDIRS= dns dns masterlib master global global util util \ 77 milter milter xsasl xsasl 78 79.if ${MKCRYPTO} != "no" 80PFIX_LIBSDIRS+= tls tls 81.endif 82 83.for _LD _LL in ${PFIX_LIBSDIRS} 84.if !defined(POBJDIR.${_LL}) 85POBJDIR.${_LL}!=cd ${PFIX_SRCDIR}/lib/${_LD} && ${PRINTOBJDIR} 86.MAKEOVERRIDES+=POBJDIR.${_LL} 87.endif 88LIBP${_LL:tu}= ${POBJDIR.${_LL}}/lib${_LL}.a 89.endfor 90 91 92# Directories to install into. 93# 94PFIX_LIBEXECDIR=/usr/libexec/postfix 95PFIX_ETCDIR= /etc/postfix 96PFIX_EXAMPLEDIR=/usr/share/examples/postfix 97PFIX_HTMLDIR= /usr/share/doc/html/postfix 98PFIX_SBINDIR= /usr/sbin 99 100# override defaults which are otherwise empty and/or so postconf is correct 101CPPFLAGS+= -DDEF_HTML_DIR=\"${PFIX_HTMLDIR}\" \ 102 -DDEF_README_DIR=\"${PFIX_EXAMPLEDIR}\" \ 103 -DDEF_SAMPLE_DIR=\"${PFIX_EXAMPLEDIR}\" \ 104 -DDEF_MANPAGE_DIR=\"${MANDIR}\" 105 106# postfix check wants a lot of files to be owned by root 107BINOWN= root 108