[BACK]Return to Makefile CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / pkgsrc / mail / postfix-current

File: [cvs.NetBSD.org] / pkgsrc / mail / postfix-current / Attic / Makefile (download)

Revision 1.36, Sat Jul 31 05:53:44 2004 UTC (19 years, 8 months ago) by jlam
Branch: MAIN
Changes since 1.35: +80 -178 lines

Minimize diffs with pkgsrc/mail/postfix to simplify maintenance of this
package.

# $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/
COMMENT=	Postfix SMTP server and tools

CONFLICTS+=	sendmail-[0-9]* fastforward>=0.51nb2

PKG_INSTALLATION_TYPES=	overwrite pkgviews
USE_BUILDLINK3=		yes

.include "../../mk/bsd.prefs.mk"

# 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\"

# Makefile.options appends to CCARGS and AUXLIBS the options needed to
# build Postfix with support for various add-on modules.
#
.include "Makefile.options"

PKG_SYSCONFSUBDIR=	postfix
LIBEXECDIR=		${PREFIX}/libexec/postfix
DOCDIR=			${PREFIX}/share/doc/postfix
EXAMPLEDIR=		${PREFIX}/share/examples/postfix

FILES_SUBST+=		EXAMPLEDIR=${EXAMPLEDIR}
MESSAGE_SUBST+=		EXAMPLEDIR=${EXAMPLEDIR}
MESSAGE_SUBST+=		DOCDIR=${DOCDIR}

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}"

USE_PKGINSTALL=		yes
RCD_SCRIPTS=		postfix
OWN_DIRS+=		${POSTFIX_QUEUE_DIR}
MAKE_DIRS+=		${PKG_SYSCONFDIR}

PKG_GROUPS?=		postfix maildrop
PKG_USERS?=		postfix:postfix::Postfix\\ User:${POSTFIX_QUEUE_DIR}

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 _file_ in post-install postfix-script
CONF_FILES_PERMS+=	${EXAMPLEDIR}/${_file_} ${PKG_SYSCONFDIR}/${_file_} \
			${ROOT_USER} ${ROOT_GROUP} 755
.endfor
.undef _file_
.if !empty(PKG_OPTIONS:Msasl)
MAKE_DIRS+=		${SASLLIBDIR}
CONF_FILES+=		${EXAMPLEDIR}/smtpd.conf ${SASLLIBDIR}/smtpd.conf
.endif

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} ${FILES_SUBST_SED} ${WRKSRC}/$${i}.dist		\
			> ${WRKSRC}/$${i};				\
	done

do-configure:
	cd ${WRKSRC} &&							\
	${SETENV} ${MAKE_ENV} ${MAKE} -f Makefile.init makefiles	\
		'CCARGS=${CCARGS}' 'AUXLIBS=${AUXLIBS}'

post-build:
	@${SED} ${FILES_SUBST_SED} ${FILESDIR}/mailer.conf		\
		> ${WRKDIR}/mailer.conf
.if !empty(PKG_OPTIONS:Msasl)
	${ECHO} "pwcheck_method: ${PWCHECK_METHOD}" > ${WRKDIR}/smtpd.conf
.endif

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:
	${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"