update Wed Feb 3 18:37:00 PST 2010
[pkgsrc.git] / mail / dspam / Makefile
1 # $NetBSD: Makefile,v 1.65 2010/02/04 02:00:36 joerg Exp $
2
3 DISTNAME=       dspam-3.8.0
4 PKGREVISION=    5
5 CATEGORIES=     mail
6 MASTER_SITES=   http://dspam.nuclearelephant.com/sources/
7
8 MAINTAINER=     pkgsrc-users@NetBSD.org
9 HOMEPAGE=       http://dspam.nuclearelephant.com/
10 COMMENT=        Extremely scalable, statistical-hybrid anti-spam filter
11
12 PKG_DESTDIR_SUPPORT=    user-destdir
13
14 GNU_CONFIGURE=          yes
15 USE_LIBTOOL=            yes
16
17 USE_TOOLS+=             pax perl:run pkg-config
18 REPLACE_PERL=           src/tools/dspam_train.in
19 REPLACE_PERL+=          src/tools/dspam_logrotate
20 REPLACE_PERL+=          webui/cgi-bin/*.cgi webui/cgi-bin/configure.pl.in
21
22 PKGCONFIG_OVERRIDE+=    src/dspam.pc.in
23
24 SUBST_CLASSES+=         cgi
25 SUBST_STAGE.cgi=        post-patch
26 SUBST_FILES.cgi=        webui/cgi-bin/templates/nav_performance.html
27 SUBST_FILES.cgi+=       webui/cgi-bin/configure.pl.in
28 SUBST_FILES.cgi+=       webui/cgi-bin/dspam.cgi webui/cgi-bin/admin.cgi
29 SUBST_FILES.cgi+=       webui/cgi-bin/graph.cgi webui/cgi-bin/admingraph.cgi
30 SUBST_SED.cgi=          -e "s|auxw|${DSPAM_PSFLAGS}|g"
31 SUBST_SED.cgi+=         -e "s|yourdomain.com|${DSPAM_DOMAIN}|g"
32 SUBST_SED.cgi+=         -e "s|./admins|${PKG_SYSCONFDIR}/cgi-admins|"
33 SUBST_SED.cgi+=         -e "s|configure.pl|${PKG_SYSCONFDIR}/configure.pl|"
34 SUBST_SED.cgi+=         -e "s|\"\\/\";|\"${DSPAM_WWWHOME}\";|"
35 SUBST_SED.cgi+=         -e "s|\$$FILE = \"./default.prefs\";|\$$FILE = \"${PKG_SYSCONFDIR}/cgi-default.prefs\";|"
36 SUBST_MESSAGE.cgi=      Fixing paths and default options.
37
38 BUILD_DEFS+=            DSPAM_HOME VARBASE
39 BUILD_DEFS+=            DSPAM_SIGNATURE_LIFE
40 BUILD_DEFS+=            DSPAM_BINMODE
41 BUILD_DEFS+=            DSPAM_LOGDIR
42 BUILD_DEFS+=            DSPAM_LOGFILE
43 BUILD_DEFS+=            DSPAM_DOMAIN
44 BUILD_DEFS+=            DSPAM_WWWHOME
45 BUILD_DEFS+=            DSPAM_PIDDIR
46 BUILD_DEFS+=            APACHE_USER
47 BUILD_DEFS+=            APACHE_GROUP
48
49 .include "../../mk/bsd.prefs.mk"
50
51 DSPAM_HOME?=            ${VARBASE}/dspam
52 DSPAM_SIGNATURE_LIFE?=  14
53
54 DSPAM_BINMODE?=         4511
55 DSPAM_USER?=            dspam
56 DSPAM_GROUP?=           dspam
57 DSPAM_LOGDIR?=          ${DSPAM_HOME}/log
58 DSPAM_LOGFILE?=         ${DSPAM_LOGDIR}/dspam.log
59 DSPAM_DOMAIN?=          yourdomain.com
60 DSPAM_WWWHOME?=         /dspam
61 DSPAM_PIDDIR?=          ${VARBASE}/run/dspam
62 DSPAM_WWWUSER?=         ${APACHE_USER}
63 DSPAM_WWWGROUP?=        ${APACHE_GROUP}
64
65 PKG_GROUPS_VARS+=       DSPAM_GROUP DSPAM_WWWGROUP
66 PKG_USERS_VARS+=        DSPAM_USER DSPAM_WWWUSER
67
68 CONFIGURE_ARGS+=        --with-signature-life=${DSPAM_SIGNATURE_LIFE:Q}
69 CONFIGURE_ARGS+=        --with-dspam-home=${DSPAM_HOME:Q}               \
70                         --with-dspam-home-owner=${DSPAM_USER:Q}         \
71                         --with-dspam-home-group=${DSPAM_GROUP:Q}        \
72                         --with-dspam-owner=${DSPAM_USER:Q}              \
73                         --with-dspam-group=${DSPAM_GROUP:Q}             \
74                         --with-dspam-mode=${DSPAM_BINMODE:Q}            \
75                         --with-logdir=${DSPAM_LOGDIR:Q}                 \
76                         --sysconfdir=${PKG_SYSCONFDIR:Q}
77
78 .include "options.mk"
79 .include "../../mk/pthread.buildlink3.mk"
80
81 DOCDIR=         ${PREFIX}/share/doc/dspam
82 DATADIR=        ${PREFIX}/share/dspam
83 EGDIR=          ${PREFIX}/share/examples/dspam
84
85 RCD_SCRIPTS=            dspam
86
87 PKG_SYSCONFSUBDIR=      dspam
88
89 CONF_FILES_PERMS=       ${EGDIR}/dspam.conf ${PKG_SYSCONFDIR}/dspam.conf \
90                         ${DSPAM_USER} ${DSPAM_WWWGROUP} 0640
91 CONF_FILES_PERMS+=      ${EGDIR}/cgi-admins ${PKG_SYSCONFDIR}/cgi-admins \
92                         ${DSPAM_WWWUSER} ${DSPAM_WWWGROUP} 0640
93 CONF_FILES_PERMS+=      ${EGDIR}/cgi-default.prefs \
94                         ${PKG_SYSCONFDIR}/cgi-default.prefs \
95                         ${DSPAM_WWWUSER} ${DSPAM_WWWGROUP} 0640
96 CONF_FILES_PERMS+=      ${EGDIR}/configure.pl ${PKG_SYSCONFDIR}/configure.pl \
97                         ${DSPAM_WWWUSER} ${DSPAM_WWWGROUP} 0640
98
99 PKG_GROUPS=             ${DSPAM_GROUP}
100 PKG_USERS=              ${DSPAM_USER}:${DSPAM_GROUP}
101 SPECIAL_PERMS=          ${PREFIX}/bin/dspam ${DSPAM_USER} ${DSPAM_GROUP} \
102                         ${DSPAM_BINMODE}
103 OWN_DIRS_PERMS=         ${DSPAM_HOME} ${DSPAM_USER} ${DSPAM_WWWGROUP} 0775
104 OWN_DIRS_PERMS+=        ${DSPAM_LOGDIR} ${DSPAM_USER} ${DSPAM_GROUP} 0775
105 OWN_DIRS_PERMS+=        ${DSPAM_PIDDIR} ${DSPAM_USER} ${DSPAM_GROUP} 0770
106
107 FILES_SUBST+=           DSPAM_USER=${DSPAM_USER:Q}
108 FILES_SUBST+=           DSPAM_GROUP=${DSPAM_GROUP:Q}
109 FILES_SUBST+=           DSPAM_PIDDIR=${DSPAM_PIDDIR:Q}
110
111 SUBST_CLASSES+=         conf
112 SUBST_STAGE.conf=       pre-install
113 SUBST_FILES.conf=       src/dspam.conf.in
114 SUBST_SED.conf=         -e "s|@dspam_home@|${DSPAM_HOME}|g"
115 SUBST_SED.conf+=        -e "s|@delivery_agent@|${DSPAM_DELIVERY_AGENT_BIN}|g"
116 SUBST_SED.conf+=        -e "s|@PREFIX@|${PREFIX}|g"
117 SUBST_SED.conf+=        -e "s|@VARBASE@|${VARBASE}|g"
118 SUBST_SED.conf+=        -e "s|@DSPAM_PIDDIR@|${DSPAM_PIDDIR}|g"
119 SUBST_MESSAGE.conf=     Fixing configuration file.
120
121 post-extract:
122         ${CHMOD} -R go-w ${WRKSRC}
123
124 INSTALLATION_DIRS+=     ${DOCDIR} ${DATADIR} ${EGDIR}
125
126 post-install:
127         ${INSTALL_DATA} ${WRKSRC}/README ${DESTDIR}${DOCDIR}
128         ${INSTALL_DATA} ${WRKSRC}/RELEASE.NOTES ${DESTDIR}${DOCDIR}
129         ${INSTALL_DATA} ${WRKSRC}/UPGRADING ${DESTDIR}${DOCDIR}
130         ${INSTALL_DATA} ${WRKSRC}/doc/*.txt ${DESTDIR}${DOCDIR}
131         ${INSTALL_DATA} ${WRKSRC}/src/dspam.conf.in ${DESTDIR}${EGDIR}/dspam.conf
132         ${INSTALL_DATA} ${WRKSRC}/webui/cgi-bin/admins ${DESTDIR}${EGDIR}/cgi-admins
133         ${INSTALL_DATA} ${WRKSRC}/webui/cgi-bin/default.prefs \
134             ${DESTDIR}${EGDIR}/cgi-default.prefs
135         ${INSTALL_DATA} ${WRKSRC}/webui/cgi-bin/configure.pl \
136             ${DESTDIR}${EGDIR}/configure.pl
137
138 .for d in txt webui/cgi-bin webui/htdocs
139         ${INSTALL_DATA_DIR} ${DESTDIR}${DATADIR}/${d}
140         cd ${WRKSRC}/${d} && pax -rwppm '-s|.*/Makefile.*$$||'  \
141                 '-s|./admins.*$$||' '-s|./default.prefs.*$$||'          \
142                 '-s|./configure.pl.*$$||' . ${DESTDIR}${DATADIR}/${d}
143 .endfor
144
145 .for drv in mysql pgsql
146 .  if !empty(DSPAM_STORAGE_DRIVER:M${drv})
147         ${INSTALL_DATA_DIR} ${DESTDIR}${DATADIR}/${drv}
148         cd ${WRKSRC}/src/tools.${drv}_drv && \
149                 pax -rwpm ./*.sql ${DESTDIR}${DATADIR}/${drv}
150 .  endif
151 .endfor
152
153 .if !empty(DSPAM_STORAGE_DRIVER:Msqlite*)
154         ${INSTALL_DATA_DIR} ${DESTDIR}${DATADIR}/sqlite
155          cd ${WRKSRC}/src/tools.sqlite_drv && \
156                 pax -rwpm '-s|.*/Makefile.*$$||' . ${DESTDIR}${DATADIR}/sqlite
157 .endif
158
159         ${CHMOD} ${SHAREMODE} ${DESTDIR}${DATADIR}/webui/cgi-bin/*.txt
160         ${CHMOD} ${SHAREMODE} ${DESTDIR}${DATADIR}/webui/cgi-bin/templates/*.html
161         ${CHMOD} ${SHAREMODE} ${DESTDIR}${DATADIR}/webui/htdocs/*.css
162         ${CHMOD} ${SHAREMODE} ${DESTDIR}${DATADIR}/webui/htdocs/*.gif
163
164 .include "../../mk/bsd.pkg.mk"