1 # Created by: Sunagawa Koji <koj@ofug.net>
8 CATEGORIES= japanese mail
9 MASTER_SITES= http://www.python.jp/doc/contrib/mailman/_static/ \
10 LOCAL/tota/${PORTNAME}
11 DISTNAME= ${PORTNAME}-${PORTVERSION:S/.j/+j/}
14 MAINTAINER= tota@FreeBSD.org
15 COMMENT= Japanized mailman which is a mailing list manager with a web front-end
18 LICENSE_FILE= ${WRKSRC}/gnu-COPYING-GPL
20 CONFLICTS= mailman-2.1.*
22 PORTSCOUT= limit:.*\.j\d+$$
24 USE_AUTOTOOLS= autoconf
25 USES= gettext python:2 tar:tgz
28 GNU_CONFIGURE_PREFIX= ${MAILMANDIR}
29 CONFIGURE_ARGS+=--with-python=${PYTHON_CMD} \
30 --with-username=${MM_USERNAME} \
31 --with-groupname=${MM_GROUPNAME} \
32 --with-mail-gid=${MAIL_GID} --with-cgi-gid=${CGI_GID} \
35 # The Mailman port supports a number of variables that may be tweaked at
36 # build time. Getting the values of some of them right is crucial!
40 MM_GROUPNAME?= ${MM_USERNAME}
41 MM_GROUPID?= ${MM_USERID}
46 # End of user-configurable variables.
49 GROUPS= ${MM_GROUPNAME}
51 MAILMANDIR= ${PREFIX}/${MM_DIR}
52 PLIST_SUB= MMDIR=${MM_DIR} IMGDIR=${IMGDIR}
53 SUB_FILES= pkg-message pkg-install pkg-deinstall
54 SUB_LIST= MAILMANDIR=${MAILMANDIR} USER=${MM_USERNAME} GROUP=${MM_GROUPNAME}
56 IMGFILES= PythonPowered.png mailman.jpg mm-icon.png
58 PORTDOCS= ACKNOWLEDGMENTS BUGS FAQ INSTALL NEWS NEWS.japan.utf-8 \
59 README README-I18N.en README.CONTRIB README.NETSCAPE \
60 README.USERAGENT README.japan.utf-8 STYLEGUIDE.txt \
65 FreeBSD-post-install-notes
67 OPTIONS_DEFINE= DOCS NAMAZU2
70 OPTIONS_SINGLE_MTA= SENDMAIL EXIM4 POSTFIX COURIER
72 NAMAZU2_DESC= Make private archives searchable with namazu2
73 MTA_DESC= Integrate with which MTA?
74 SENDMAIL_DESC= for use with sendmail
75 EXIM4_DESC= for use with exim4
76 POSTFIX_DESC= for use with postfix
77 COURIER_DESC= for use with courier
79 OPTIONS_DEFAULT= SENDMAIL
81 .include <bsd.port.options.mk>
83 .if ${PORT_OPTIONS:MSENDMAIL}
87 .if ${PORT_OPTIONS:MEXIM4}
91 .if ${PORT_OPTIONS:MPOSTFIX}
92 RUN_DEPENDS+= ${LOCALBASE}/sbin/postconf:mail/postfix
93 BUILD_DEPENDS+= ${LOCALBASE}/sbin/postconf:mail/postfix
95 EXTRA_PATCHES+= ${FILESDIR}/postfix-verp.diff
98 .if ${PORT_OPTIONS:MCOURIER}
102 .if ${PORT_OPTIONS:MNAMAZU2}
103 RUN_DEPENDS+= mknmz:japanese/namazu2
104 EXTRA_PATCHES+= ${FILESDIR}/extra-patch-Mailman-Cgi-private.py
109 @${ECHO} "You may change the following build options:"
111 @${ECHO} "Option Default Value Description"
112 @${ECHO} "------------- --------------- ------------------------------------------------"
113 @${ECHO} "MM_USERNAME mailman The username of the Mailman user."
114 @${ECHO} "MM_USERID 91 The user ID of the Mailman user."
115 @${ECHO} "MM_GROUPNAME mailman The group to which the Mailman user will belong."
116 @${ECHO} "MM_GROUPID \$$MM_USERID The group ID for the Mailman user."
117 @${ECHO} "MM_DIR mailman Mailman will be installed in"
118 @${ECHO} " ${PREFIX}/${MM_DIR}."
119 @${ECHO} "CGI_GID www The group name or id under which your web"
120 @${ECHO} " server executes CGI scripts."
121 @${ECHO} "IMGDIR www/icons Icon images will be installed in"
122 @${ECHO} " ${PREFIX}/${IMGDIR}."
126 @${REINPLACE_CMD} -e 's#%%LOCALBASE%%#${LOCALBASE}#g' \
127 ${WRKSRC}/Mailman/Defaults.py.in
128 @${REINPLACE_CMD} -e 's/^0,5,10/#&/' ${WRKSRC}/cron/crontab.in.in
131 @${ECHO} "DEFAULT_SERVER_LANGUAGE = 'ja'" >> ${WRKSRC}/Mailman/mm_cfg.py.dist.in
132 @${ECHO} "GLOBAL_PIPELINE.insert(1, 'iso2022jpfix')" >> ${WRKSRC}/Mailman/mm_cfg.py.dist.in
133 .if ${PORT_OPTIONS:MPOSTFIX}
134 @${ECHO} "MTA = 'Postfix'" >> ${WRKSRC}/Mailman/mm_cfg.py.dist.in
138 .for i in admin admindb confirm create edithtml listinfo options private \
139 rmlist roster subscribe
140 ${STRIP_CMD} ${STAGEDIR}${MAILMANDIR}/cgi-bin/${i}
142 ${STRIP_CMD} ${STAGEDIR}${MAILMANDIR}/mail/mailman
143 ${STRIP_CMD} ${STAGEDIR}${MAILMANDIR}/pythonlib/pykf.so
144 # Compile additional Python scripts:
145 .for dir in Mailman bin pythonlib
146 (cd ${STAGEDIR}${MAILMANDIR} \
147 && ${PYTHON_CMD} ${PYTHON_LIBDIR}/compileall.py \
148 -f -d ${MAILMANDIR}/${dir} ${dir})
150 @${RM} ${STAGEDIR}${MAILMANDIR}/pythonlib/*.egg-info
151 # mm_cfg.py is handled by pkg-plist:
152 @${RM} ${STAGEDIR}${MAILMANDIR}/Mailman/mm_cfg.py
153 @${RM} ${STAGEDIR}${MAILMANDIR}/Mailman/mm_cfg.pyc
154 @${MKDIR} ${STAGEDIR}${PREFIX}/${IMGDIR}
155 .for imgfile in ${IMGFILES}
156 ${CP} ${STAGEDIR}${MAILMANDIR}/icons/${imgfile} ${STAGEDIR}${PREFIX}/${IMGDIR}
158 uudecode -p ${FILESDIR}/powerlogo.gif.uue > \
159 ${STAGEDIR}${PREFIX}/${IMGDIR}/powerlogo.gif
160 .if ${PORT_OPTIONS:MDOCS}
161 ${CP} -R ${WRKSRC}/doc/* ${WRKSRC}/
162 @${MKDIR} ${STAGEDIR}${DOCSDIR}
163 ${INSTALL_DATA} ${FILESDIR}/FreeBSD-post-install-notes ${STAGEDIR}${DOCSDIR}
164 .for docfile in ${PORTDOCS:NFreeBSD-post-install-notes}
165 ${INSTALL_DATA} ${WRKSRC}/${docfile} ${STAGEDIR}${DOCSDIR}
168 @${MKDIR} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
169 ${ECHO} "This marker file ensures that Python's upgrade-site-packages handles ${PKGNAME}." >${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/mailman-info.txt
170 .if ${PORT_OPTIONS:MPOSTFIX}
171 @if [ "x`${LOCALBASE}/sbin/postconf -h myhostname`" != "xlocalhost" ]; then \
173 ${ECHO_CMD} "Your Postfix hostname is non-default."; \
174 ${ECHO_CMD} -n "You must add \"SMTPHOST = "; \
175 ${ECHO_CMD} -n `${LOCALBASE}/sbin/postconf -h myhostname`; \
176 ${ECHO_CMD} "\" to the bottom of mm_cfg.py."; \
181 .include <bsd.port.mk>