summaryrefslogtreecommitdiff
path: root/mail/postfix-current/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'mail/postfix-current/Makefile')
-rw-r--r--mail/postfix-current/Makefile256
1 files changed, 79 insertions, 177 deletions
diff --git a/mail/postfix-current/Makefile b/mail/postfix-current/Makefile
index a4951caad9b..5ee02d0e406 100644
--- a/mail/postfix-current/Makefile
+++ b/mail/postfix-current/Makefile
@@ -1,9 +1,10 @@
-# $NetBSD: Makefile,v 1.35 2004/07/24 22:45:15 recht Exp $
+# $NetBSD: Makefile,v 1.36 2004/07/31 05:53:44 jlam Exp $
DISTNAME= postfix-2.2-20040628
CATEGORIES= mail
MASTER_SITES= ftp://ftp.porcupine.org/mirrors/postfix-release/experimental/ \
http://public.planetmirror.com.au/pub/postfix/experimental/
+DIST_SUBDIR= postfix
MAINTAINER= tech-pkg@NetBSD.org
HOMEPAGE= http://www.postfix.org/
@@ -11,174 +12,86 @@ COMMENT= Postfix SMTP server and tools
CONFLICTS+= sendmail-[0-9]* fastforward>=0.51nb2
-DIST_SUBDIR= postfix
-
PKG_INSTALLATION_TYPES= overwrite pkgviews
+USE_BUILDLINK3= yes
-USE_BUILDLINK3= yes
-USE_PKGINSTALL= yes
-
-PKG_SYSCONFSUBDIR= postfix
-POSTFIX_SPOOL= /var/spool/postfix
+.include "../../mk/bsd.prefs.mk"
-OWN_DIRS= ${POSTFIX_SPOOL}
+# POSTFIX_QUEUE_DIR is the default queue directory for Postfix. This is
+# merely a default, and may be changed by setting "queue_directory" in
+# ${PKG_SYSCONFDIR}/main.cf.
+#
+POSTFIX_QUEUE_DIR?= ${VARBASE}/spool/postfix
+
+# CCARGS is a list of options to pass to the preprocessor/compiler.
+# AUXLIBS is a list of options to pass to the linker.
+#
+CCARGS= # empty
+AUXLIBS= # empty
+FIX_RPATH+= AUXLIBS
CCARGS+= -DDEF_CONFIG_DIR=\"${PKG_SYSCONFDIR}\"
+CCARGS+= -DDEF_QUEUE_DIR=\"${POSTFIX_QUEUE_DIR}\"
+CCARGS+= -DDEF_COMMAND_DIR=\"${PREFIX}/sbin\"
+CCARGS+= -DDEF_DAEMON_DIR=\"${LIBEXECDIR}\"
CCARGS+= -DDEF_SENDMAIL_PATH=\"${PREFIX}/sbin/sendmail\"
CCARGS+= -DDEF_MAILQ_PATH=\"${PREFIX}/bin/mailq\"
CCARGS+= -DDEF_NEWALIAS_PATH=\"${PREFIX}/bin/newaliases\"
-CCARGS+= -DDEF_COMMAND_DIR=\"${PREFIX}/sbin\"
-CCARGS+= -DDEF_DAEMON_DIR=\"${LIBEXECDIR}\"
-
-.include "../../mk/bsd.prefs.mk"
-# NetBSD 1.5 and above has /etc/rc.d/postfix already which is
-# suitable.
-.if empty(MACHINE_PLATFORM:MNetBSD-1.[5-9]*-*)
-RCD_SCRIPTS= postfix
-.endif
+# Makefile.options appends to CCARGS and AUXLIBS the options needed to
+# build Postfix with support for various add-on modules.
+#
+.include "Makefile.options"
-FIX_RPATH+= AUXLIBS
+PKG_SYSCONFSUBDIR= postfix
+LIBEXECDIR= ${PREFIX}/libexec/postfix
+DOCDIR= ${PREFIX}/share/doc/postfix
+EXAMPLEDIR= ${PREFIX}/share/examples/postfix
-BUILD_DEFS+= POSTFIX_USE_INET6
-BUILD_DEFS+= POSTFIX_USE_TLS
-BUILD_DEFS+= POSTFIX_USE_PCRE
-BUILD_DEFS+= POSTFIX_USE_MYSQL
-BUILD_DEFS+= POSTFIX_USE_PGSQL
-BUILD_DEFS+= USE_OPENLDAP
-BUILD_DEFS+= USE_SASL
-BUILD_DEFS+= USE_SASL2
-
-# .if defined(POSTFIX_USE_INET6) && ${POSTFIX_USE_INET6} == "YES"
-# . include "../../security/openssl/buildlink3.mk"
-# PATCHFILES+= tls+ipv6-1.25-pf-2.2-20040616.patch.gz
-# PATCH_SITES+= ftp://ftp.stack.nl/pub/postfix/tls+ipv6/1.25/
-# PATCH_DIST_STRIP= -p1
-#
-# CCARGS+= -DHAS_SSL
-# AUXLIBS+= -L${BUILDLINK_PREFIX.openssl}/lib \
-# -Wl,${RPATH_FLAG}${BUILDLINK_PREFIX.openssl}/lib \
-# -lssl -lcrypto
-#
-# PLIST_SRC+= ${PKGDIR}/PLIST.tls
-# MESSAGE_SRC+= ${PKGDIR}/MESSAGE.tls
-# .endif
-
-.if defined(POSTFIX_USE_PCRE) && ${POSTFIX_USE_PCRE} == "YES"
-. include "../../devel/pcre/buildlink3.mk"
-CCARGS+= -DHAS_PCRE
-AUXLIBS+= -L${BUILDLINK_PREFIX.pcre}/lib \
- -Wl,${RPATH_FLAG}${BUILDLINK_PREFIX.pcre}/lib \
- -lpcre
-.else
-CCARGS+= -DNO_PCRE
-.endif
+FILES_SUBST+= EXAMPLEDIR=${EXAMPLEDIR}
+MESSAGE_SUBST+= EXAMPLEDIR=${EXAMPLEDIR}
+MESSAGE_SUBST+= DOCDIR=${DOCDIR}
-.if defined(USE_OPENLDAP) && ${USE_OPENLDAP} == "YES"
-. include "../../databases/openldap/buildlink3.mk"
-CCARGS+= -DHAS_LDAP
-AUXLIBS+= -L${BUILDLINK_PREFIX.openldap}/lib \
- -Wl,${RPATH_FLAG}${BUILDLINK_PREFIX.openldap}/lib \
- -lldap -llber
-. if ${OPSYS} != "Linux"
-. include "../../databases/db4/buildlink3.mk"
-CCARGS+= -I${BUILDLINK_PREFIX.db4}/include/db4
-AUXLIBS+= -L${BUILDLINK_PREFIX.db4}/lib \
- -Wl,${RPATH_FLAG}${BUILDLINK_PREFIX.db4}/lib \
- -ldb4
-. endif
+MESSAGE_SRC+= ${PKGDIR}/MESSAGE
+.if exists(${PKGDIR}/MESSAGE.${OPSYS})
+MESSAGE_SRC+= ${PKGDIR}/MESSAGE.${OPSYS}
.endif
+PLIST_SRC+= ${PKGDIR}/PLIST
-.if defined(POSTFIX_USE_MYSQL) && ${POSTFIX_USE_MYSQL} == "YES"
-. include "../../databases/mysql-client/buildlink3.mk"
-CCARGS+= -DHAS_MYSQL -I${BUILDLINK_PREFIX.mysql-client}/include/mysql
-AUXLIBS+= -L${BUILDLINK_PREFIX.mysql-client}/lib/mysql \
- -Wl,${RPATH_FLAG}${BUILDLINK_PREFIX.mysql-client}/lib/mysql \
- -lmysqlclient -lz -lm
-.endif
+ALL_TARGET= # empty
+MAKE_ENV= CC="${CC}" OPT="${CFLAGS}"
+MAKE_ENV+= AUXLIBS="${AUXLIBS}" CCARGS="${CCARGS}"
-## .if defined(POSTFIX_USE_PGSQL) && ${POSTFIX_USE_PGSQL} == "YES"
-## . include "../../mk/pgsql.buildlink3.mk"
-## . include "../../security/openssl/buildlink3.mk"
-## PATCHFILES+= postfix-pg.postfix-2.0.0.2.patch
-## PATCH_SITES+= http://www.mat.cc/postfix/
-## PATCH_DIST_STRIP= -p1
-##
-## CCARGS+= -DHAS_PGSQL -I${PGSQL_PREFIX}/include/pgsql
-## AUXLIBS+= -L${PGSQL_PREFIX}/lib -lpq \
-## -L${BUILDLINK_PREFIX.openssl}/lib -lcrypt
-## .endif
-
-.if defined(USE_SASL2) && ${USE_SASL2} == "YES"
-USING_SASL= YES
-. include "../../security/cyrus-sasl2/buildlink3.mk"
-CCARGS+= -DUSE_SASL2_AUTH
-AUXLIBS+= -L${BUILDLINK_PREFIX.cyrus-sasl}/lib \
- -Wl,${RPATH_FLAG}${BUILDLINK_PREFIX.cyrus-sasl}/lib \
- -lsasl2
-.elif defined(USE_SASL) && ${USE_SASL} == "YES"
-USING_SASL=YES
-. include "../../security/cyrus-sasl/buildlink3.mk"
-CCARGS+= -DUSE_SASL_AUTH
-AUXLIBS+= -L${BUILDLINK_PREFIX.cyrus-sasl}/lib \
- -Wl,${RPATH_FLAG}${BUILDLINK_PREFIX.cyrus-sasl}/lib \
- -lsasl
-.endif
+USE_PKGINSTALL= yes
+RCD_SCRIPTS= postfix
+OWN_DIRS+= ${POSTFIX_QUEUE_DIR}
+MAKE_DIRS+= ${PKG_SYSCONFDIR}
-.if defined(USING_SASL)
-PLIST_SRC+= ${PKGDIR}/PLIST.sasl
-MESSAGE_SRC+= ${PKGDIR}/MESSAGE.sasl
-MESSAGE_SUBST+= PKG_SYSCONFDIR=${PKG_SYSCONFDIR}
-.endif
+PKG_GROUPS?= postfix maildrop
+PKG_USERS?= postfix:postfix::Postfix\\ User:${POSTFIX_QUEUE_DIR}
-MESSAGE_SRC+= ${PKGDIR}/MESSAGE
-.if exists(${PKGDIR}/MESSAGE.${OPSYS})
-MESSAGE_SRC+= ${PKGDIR}/MESSAGE.${OPSYS}
-.endif
-PLIST_SRC+= ${PKGDIR}/PLIST
-ALL_TARGET= #empty
-MAKE_ENV= CC="${CC}" OPT="${CFLAGS}"
-MAKE_ENV+= AUXLIBS="${AUXLIBS}" CCARGS="${CCARGS}"
-
-POSTFIX_CONF_FILES= conf/main.cf src/util/sys_defs.h postfix-install
-POSTFIX_CONF_FILES+= src/global/mail_params.h
-
-FILES_SUBST+= SHAREDIR=${SHAREDIR}
-MESSAGE_SUBST+= SHAREDIR=${SHAREDIR}
-PLIST_SUBST+= POSTFIX_SPOOL=${POSTFIX_SPOOL}
-
-PKG_GROUPS?= postfix maildrop
-PKG_USERS?= postfix:postfix::Postfix\\ User:${POSTFIX_SPOOL}
-
-LIBEXECDIR= ${PREFIX}/libexec/${PKGBASE}
-SHAREDIR= ${PREFIX}/share/examples/${PKGBASE}
-
-CONF_FILES= ${SHAREDIR}/main.cf ${PKG_SYSCONFDIR}/main.cf
-CONF_FILES+= ${SHAREDIR}/master.cf ${PKG_SYSCONFDIR}/master.cf
-.if defined(USING_SASL)
-. if defined(USE_SASL2)
-MAKE_DIRS+= ${PREFIX}/lib/sasl2
-CONF_FILES+= ${SHAREDIR}/smtpd.conf ${PREFIX}/lib/sasl2/smtpd.conf
-. else
-MAKE_DIRS+= ${PREFIX}/lib/sasl
-CONF_FILES+= ${SHAREDIR}/smtpd.conf ${PREFIX}/lib/sasl/smtpd.conf
-. endif
-.endif
+CONF_FILES= # empty
+.for _file_ in main.cf master.cf postfix-files
+CONF_FILES+= ${EXAMPLEDIR}/${_file_} ${PKG_SYSCONFDIR}/${_file_}
+.endfor
CONF_FILES_PERMS= # empty
-.for confscr in post-install postfix-files postfix-script
-CONF_FILES_PERMS+= ${SHAREDIR}/${confscr} ${PKG_SYSCONFDIR}/${confscr} \
+.for _file_ in post-install postfix-script
+CONF_FILES_PERMS+= ${EXAMPLEDIR}/${_file_} ${PKG_SYSCONFDIR}/${_file_} \
${ROOT_USER} ${ROOT_GROUP} 755
.endfor
-.undef confscr
+.undef _file_
+.if !empty(PKG_OPTIONS:Msasl)
+MAKE_DIRS+= ${SASLLIBDIR}
+CONF_FILES+= ${EXAMPLEDIR}/smtpd.conf ${SASLLIBDIR}/smtpd.conf
+.endif
-INSTALL_EXTRA_TMPL+= ${PKGDIR}/INSTALL
+POSTFIX_CONF_FILES= conf/main.cf src/util/sys_defs.h \
+ src/global/mail_params.h postfix-install
pre-configure:
@for i in ${POSTFIX_CONF_FILES}; do \
${CP} ${WRKSRC}/$${i} ${WRKSRC}/$${i}.dist; \
- ${SED} -e 's|__PREFIX|'${PREFIX}'|g' \
- -e 's|__PKG_SYSCONFDIR|'${PKG_SYSCONFDIR}'|g' \
- < ${WRKSRC}/$${i}.dist \
+ ${SED} ${FILES_SUBST_SED} ${WRKSRC}/$${i}.dist \
> ${WRKSRC}/$${i}; \
done
@@ -188,42 +101,31 @@ do-configure:
'CCARGS=${CCARGS}' 'AUXLIBS=${AUXLIBS}'
post-build:
- ${SED} -e 's#@@PREFIX@@#${PREFIX}#g' \
- <${FILESDIR}/mailer.conf >${WRKDIR}/mailer.conf.postfix
-
-pre-install:
- ${INSTALL_DATA_DIR} ${PKG_SYSCONFDIR}
- ${INSTALL_DATA_DIR} ${SHAREDIR}
- ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/postfix
- ${INSTALL_DATA_DIR} ${LIBEXECDIR}
- ${CHOWN} ${ROOT_USER}:${ROOT_GROUP} ${SHAREDIR} ${LIBEXECDIR}
- ${CHMOD} 755 ${SHAREDIR} ${LIBEXECDIR}
- -${RM} -f ${WRKSRC}/conf/*.orig
-.if defined(USING_SASL)
-. if defined(USE_SASL2)
- ${ECHO} "pwcheck_method: auxprop" > ${WRKDIR}/smtpd.conf
-. else
- ${ECHO} "pwcheck_method: sasldb" > ${WRKDIR}/smtpd.conf
-. endif
- ${INSTALL_DATA} ${WRKDIR}/smtpd.conf ${SHAREDIR}
+ @${SED} ${FILES_SUBST_SED} ${FILESDIR}/mailer.conf \
+ > ${WRKDIR}/mailer.conf
+.if !empty(PKG_OPTIONS:Msasl)
+ ${ECHO} "pwcheck_method: ${PWCHECK_METHOD}" > ${WRKDIR}/smtpd.conf
.endif
- ${INSTALL_SCRIPT} ${WRKSRC}/conf/post-install ${SHAREDIR}
- ${INSTALL_SCRIPT} ${WRKSRC}/conf/postfix-files ${SHAREDIR}
- ${INSTALL_SCRIPT} ${WRKSRC}/conf/postfix-script ${SHAREDIR}
- ${INSTALL_DATA} ${WRKSRC}/conf/main.cf ${SHAREDIR}
- ${INSTALL_DATA} ${WRKSRC}/conf/master.cf ${SHAREDIR}
- ${INSTALL_DATA} ${WRKDIR}/mailer.conf.postfix ${SHAREDIR}/mailer.conf
+
+POSTFIX_EXAMPLE_FILES= LICENSE access aliases canonical header_checks \
+ main.cf main.cf.default makedefs.out master.cf \
+ postfix-files relocated transport virtual
do-install:
- cd ${WRKSRC} && ${SETENV} config_directory="${SHAREDIR}" \
- ${SH} postfix-install -non-interactive
-
-.if ${OPSYS} == "Linux"
-. include "../../databases/db/buildlink3.mk"
-CCARGS+= -I${BUILDLINK_PREFIX.db2}/include/db2
-AUXLIBS+= -L${BUILDLINK_PREFIX.db2}/lib \
- -Wl,${RPATH_FLAG}${BUILDLINK_PREFIX.db2}/lib \
- -ldb2
+ ${INSTALL_DATA_DIR} ${LIBEXECDIR}
+ ${INSTALL_DATA_DIR} ${EXAMPLEDIR}
+ ${INSTALL_DATA_DIR} ${DOCDIR}
+ -${RM} -f ${WRKSRC}/conf/*.orig
+.if !empty(PKG_OPTIONS:Msasl)
+ ${INSTALL_DATA} ${WRKDIR}/smtpd.conf ${EXAMPLEDIR}
.endif
+ @for i in ${POSTFIX_EXAMPLE_FILES}; do \
+ ${INSTALL_DATA} ${WRKSRC}/conf/$$i ${EXAMPLEDIR}/$$i; \
+ done
+ ${INSTALL_SCRIPT} ${WRKSRC}/conf/post-install ${EXAMPLEDIR}
+ ${INSTALL_SCRIPT} ${WRKSRC}/conf/postfix-script ${EXAMPLEDIR}
+ ${INSTALL_DATA} ${WRKDIR}/mailer.conf ${EXAMPLEDIR}/mailer.conf
+ cd ${WRKSRC}; ${SH} ./postfix-install -non-interactive \
+ config_directory="${EXAMPLEDIR}"
.include "../../mk/bsd.pkg.mk"