1 # $NetBSD: Makefile,v 1.73 2013/03/02 20:33:27 wiz Exp $
6 MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=dspam/}
8 MAINTAINER= pkgsrc-users@NetBSD.org
9 HOMEPAGE= http://dspam.sourceforge.net/
10 COMMENT= Extremely scalable, statistical-hybrid anti-spam filter
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+= src/tools/dspam_notify.in
21 REPLACE_PERL+= webui/cgi-bin/*.cgi webui/cgi-bin/configure.pl.in
22 REPLACE_PERL+= webui/cgi-bin/htmlize.pl
23 REPLACE_PERL+= webui/cgi-bin/templates/strings.pl
24 REPLACE_PERL+= webui/cgi-bin/templates/*/strings.pl
26 PKGCONFIG_OVERRIDE+= src/dspam.pc.in
29 SUBST_STAGE.cgi= post-patch
30 SUBST_FILES.cgi= webui/cgi-bin/templates/nav_performance.html
31 SUBST_FILES.cgi+= webui/cgi-bin/configure.pl.in
32 SUBST_FILES.cgi+= webui/cgi-bin/dspam.cgi webui/cgi-bin/admin.cgi
33 SUBST_FILES.cgi+= webui/cgi-bin/graph.cgi webui/cgi-bin/admingraph.cgi
34 SUBST_SED.cgi= -e "s|auxw|${DSPAM_PSFLAGS}|g"
35 SUBST_SED.cgi+= -e "s|yourdomain.com|${DSPAM_DOMAIN}|g"
36 SUBST_SED.cgi+= -e "s|./admins|${PKG_SYSCONFDIR}/cgi-admins|"
37 SUBST_SED.cgi+= -e "s|configure.pl|${PKG_SYSCONFDIR}/configure.pl|"
38 SUBST_SED.cgi+= -e "s|\"\\/\";|\"${DSPAM_WWWHOME}\";|"
39 SUBST_SED.cgi+= -e "s|\$$FILE = \"./default.prefs\";|\$$FILE = \"${PKG_SYSCONFDIR}/cgi-default.prefs\";|"
40 SUBST_MESSAGE.cgi= Fixing paths and default options.
42 BUILD_DEFS+= DSPAM_HOME VARBASE
43 BUILD_DEFS+= DSPAM_SIGNATURE_LIFE
44 BUILD_DEFS+= DSPAM_BINMODE
45 BUILD_DEFS+= DSPAM_LOGDIR
46 BUILD_DEFS+= DSPAM_LOGFILE
47 BUILD_DEFS+= DSPAM_DOMAIN
48 BUILD_DEFS+= DSPAM_WWWHOME
49 BUILD_DEFS+= DSPAM_PIDDIR
50 BUILD_DEFS+= APACHE_USER
51 BUILD_DEFS+= APACHE_GROUP
53 .include "../../mk/bsd.prefs.mk"
55 DSPAM_HOME?= ${VARBASE}/dspam
56 DSPAM_SIGNATURE_LIFE?= 14
61 DSPAM_LOGDIR?= ${DSPAM_HOME}/log
62 DSPAM_LOGFILE?= ${DSPAM_LOGDIR}/dspam.log
63 DSPAM_DOMAIN?= yourdomain.com
64 DSPAM_WWWHOME?= /dspam
65 DSPAM_PIDDIR?= ${VARBASE}/run/dspam
66 DSPAM_WWWUSER?= ${APACHE_USER}
67 DSPAM_WWWGROUP?= ${APACHE_GROUP}
69 PKG_GROUPS_VARS+= DSPAM_GROUP DSPAM_WWWGROUP
70 PKG_USERS_VARS+= DSPAM_USER DSPAM_WWWUSER
72 CONFIGURE_ARGS+= --with-signature-life=${DSPAM_SIGNATURE_LIFE}
73 CONFIGURE_ARGS+= --with-dspam-home=${DSPAM_HOME} \
74 --with-dspam-home-owner=${DSPAM_USER} \
75 --with-dspam-home-group=${DSPAM_GROUP} \
76 --with-dspam-owner=${DSPAM_USER} \
77 --with-dspam-group=${DSPAM_GROUP} \
78 --with-dspam-mode=${DSPAM_BINMODE} \
79 --with-logdir=${DSPAM_LOGDIR} \
80 --sysconfdir=${PKG_SYSCONFDIR}
83 .include "../../mk/pthread.buildlink3.mk"
85 DOCDIR= ${PREFIX}/share/doc/dspam
86 DATADIR= ${PREFIX}/share/dspam
87 EGDIR= ${PREFIX}/share/examples/dspam
91 PKG_SYSCONFSUBDIR= dspam
93 CONF_FILES_PERMS= ${EGDIR}/dspam.conf ${PKG_SYSCONFDIR}/dspam.conf \
94 ${DSPAM_USER} ${DSPAM_WWWGROUP} 0640
95 CONF_FILES_PERMS+= ${EGDIR}/cgi-admins ${PKG_SYSCONFDIR}/cgi-admins \
96 ${DSPAM_WWWUSER} ${DSPAM_WWWGROUP} 0640
97 CONF_FILES_PERMS+= ${EGDIR}/cgi-default.prefs \
98 ${PKG_SYSCONFDIR}/cgi-default.prefs \
99 ${DSPAM_WWWUSER} ${DSPAM_WWWGROUP} 0640
100 CONF_FILES_PERMS+= ${EGDIR}/configure.pl ${PKG_SYSCONFDIR}/configure.pl \
101 ${DSPAM_WWWUSER} ${DSPAM_WWWGROUP} 0640
103 PKG_GROUPS= ${DSPAM_GROUP}
104 PKG_USERS= ${DSPAM_USER}:${DSPAM_GROUP}
105 SPECIAL_PERMS= ${PREFIX}/bin/dspam ${DSPAM_USER} ${DSPAM_GROUP} \
107 OWN_DIRS_PERMS= ${DSPAM_HOME} ${DSPAM_USER} ${DSPAM_WWWGROUP} 0775
108 OWN_DIRS_PERMS+= ${DSPAM_LOGDIR} ${DSPAM_USER} ${DSPAM_GROUP} 0775
109 OWN_DIRS_PERMS+= ${DSPAM_PIDDIR} ${DSPAM_USER} ${DSPAM_GROUP} 0770
111 FILES_SUBST+= DSPAM_USER=${DSPAM_USER}
112 FILES_SUBST+= DSPAM_GROUP=${DSPAM_GROUP}
113 FILES_SUBST+= DSPAM_PIDDIR=${DSPAM_PIDDIR}
116 SUBST_STAGE.conf= pre-install
117 SUBST_FILES.conf= src/dspam.conf.in
118 SUBST_SED.conf= -e "s|@dspam_home@|${DSPAM_HOME}|g"
119 SUBST_SED.conf+= -e "s|@delivery_agent@|${DSPAM_DELIVERY_AGENT_BIN}|g"
120 SUBST_SED.conf+= -e "s|@PREFIX@|${PREFIX}|g"
121 SUBST_SED.conf+= -e "s|@VARBASE@|${VARBASE}|g"
122 SUBST_SED.conf+= -e "s|@DSPAM_PIDDIR@|${DSPAM_PIDDIR}|g"
123 SUBST_MESSAGE.conf= Fixing configuration file.
126 ${CHMOD} -R go-w ${WRKSRC}
128 INSTALLATION_DIRS+= ${DOCDIR} ${DATADIR} ${EGDIR}
131 ${INSTALL_DATA} ${WRKSRC}/README ${DESTDIR}${DOCDIR}
132 ${INSTALL_DATA} ${WRKSRC}/RELEASE.NOTES ${DESTDIR}${DOCDIR}
133 ${INSTALL_DATA} ${WRKSRC}/UPGRADING ${DESTDIR}${DOCDIR}
134 ${INSTALL_DATA} ${WRKSRC}/doc/*.txt ${DESTDIR}${DOCDIR}
135 ${INSTALL_DATA} ${WRKSRC}/src/dspam.conf.in ${DESTDIR}${EGDIR}/dspam.conf
136 ${INSTALL_DATA} ${WRKSRC}/webui/cgi-bin/admins ${DESTDIR}${EGDIR}/cgi-admins
137 ${INSTALL_DATA} ${WRKSRC}/webui/cgi-bin/default.prefs \
138 ${DESTDIR}${EGDIR}/cgi-default.prefs
139 ${INSTALL_DATA} ${WRKSRC}/webui/cgi-bin/configure.pl \
140 ${DESTDIR}${EGDIR}/configure.pl
142 .for d in txt webui/cgi-bin webui/htdocs
143 ${INSTALL_DATA_DIR} ${DESTDIR}${DATADIR}/${d}
144 cd ${WRKSRC}/${d} && pax -rwppm '-s|.*/Makefile.*$$||' \
145 '-s|./admins.*$$||' '-s|./default.prefs.*$$||' \
146 '-s|./configure.pl.*$$||' . ${DESTDIR}${DATADIR}/${d}
149 .for drv in mysql pgsql
150 . if !empty(DSPAM_STORAGE_DRIVER:M${drv})
151 ${INSTALL_DATA_DIR} ${DESTDIR}${DATADIR}/${drv}
152 cd ${WRKSRC}/src/tools.${drv}_drv && \
153 pax -rwpm ./*.sql ${DESTDIR}${DATADIR}/${drv}
157 .if !empty(DSPAM_STORAGE_DRIVER:Msqlite*)
158 ${INSTALL_DATA_DIR} ${DESTDIR}${DATADIR}/sqlite
159 cd ${WRKSRC}/src/tools.sqlite_drv && \
160 pax -rwpm '-s|.*/Makefile.*$$||' . ${DESTDIR}${DATADIR}/sqlite
163 ${CHMOD} ${SHAREMODE} ${DESTDIR}${DATADIR}/webui/cgi-bin/*.txt
164 ${CHMOD} ${SHAREMODE} ${DESTDIR}${DATADIR}/webui/cgi-bin/templates/*.html
165 ${CHMOD} ${SHAREMODE} ${DESTDIR}${DATADIR}/webui/htdocs/*.css
166 ${CHMOD} ${SHAREMODE} ${DESTDIR}${DATADIR}/webui/htdocs/*.gif
168 .include "../../mk/bsd.pkg.mk"