/[smeserver]/rpms/qpsmtpd/sme8/qpsmtpd.spec
ViewVC logotype

Contents of /rpms/qpsmtpd/sme8/qpsmtpd.spec

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.17 - (show annotations) (download)
Fri Oct 16 22:45:26 2009 UTC (15 years, 1 month ago) by slords
Branch: MAIN
CVS Tags: qpsmtpd-0_83-0_1_el5_sme
Changes since 1.16: +123 -217 lines
Update to 0.83

1 # $Id: qpsmtpd.spec,v 1.16 2009/03/28 08:05:49 snetram Exp $
2
3 Name: qpsmtpd
4 Version: 0.83
5 Release: 0.1%{?dist}
6 Summary: qpsmtpd + qpsmtpd-apache + qpsmtpd-async
7 License: distributable
8 Group: System Environment/Daemons
9 URL: http://smtpd.develooper.com/
10 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
11 BuildRequires: perl >= 0:5.00503
12 BuildArchitectures: noarch
13 Requires: perl(Mail::Header), perl(Net::DNS) perl(Net::IP)
14
15 Source0: %{name}-%{version}.tar.gz
16 Source1: qpsmtpd-forkserver.rc
17 Source2: qpsmtpd-forkserver.sysconfig
18 Source3: qpsmtpd-plugin-file_connection
19 Source4: qpsmtpd-xinetd
20 Source5: in.qpsmtpd
21 Source6: qpsmtpd.conf
22 Source7: README.selinux
23
24 Patch100: qpsmtpd-0.40-badrcptto_allowrelay.patch
25 Patch101: qpsmtpd-0.83-peer_hooks.patch
26 Patch102: qpsmtpd-0.83-clamd_conf.patch
27 Patch103: qpsmtpd-0.83-clamav-headers.patch
28
29 %description
30 qpsmtpd is a flexible smtpd daemon written in Perl. Apart from the core
31 SMTP features, all functionality is implemented in small "extension
32 plugins" using the easy to use object oriented plugin API.
33
34 qpsmtpd was originally written as a drop-in qmail-smtpd replacement, but
35 now it also includes a smtp forward and a postfix "backend".
36
37 %package apache
38 Requires: perl(mod_perl2)
39 Summary: mod_perl-2 connection handler for qpsmtpd
40 Group: System Environment/Daemons
41
42 %package async
43 Summary: qpsmtpd using async I/O in a single process
44 Group: System Environment/Daemons
45
46 %description apache
47
48 This module implements a mod_perl/apache 2.0 connection handler
49 that turns Apache into an SMTP server using Qpsmtpd.
50
51 %description async
52 This package contains the Qpsmtpd::PollServer module, which allows
53 qpsmtd to handle many connections in a single process and the
54 qpsmpd-async which uses it.
55
56 %prep
57 %setup -q
58 %patch100 -p1
59 %patch101 -p1
60 %patch102 -p1
61 %patch103 -p1
62
63
64 %build
65 CFLAGS="$RPM_OPT_FLAGS" perl Makefile.PL INSTALLSITELIB=%{_prefix}/lib/perl5/site_perl
66 make
67
68 %clean
69 rm -rf $RPM_BUILD_ROOT
70 %install
71
72 rm -rf $RPM_BUILD_ROOT
73 eval `perl '-V:installarchlib'`
74 mkdir -p $RPM_BUILD_ROOT/$installarchlib
75 if grep -q DESTDIR Makefile
76 then
77 make DESTDIR=$RPM_BUILD_ROOT
78 find blib/lib -name '*.pm.*' -exec rm -f {} \;
79 make DESTDIR=$RPM_BUILD_ROOT install
80
81 else
82 make PREFIX=$RPM_BUILD_ROOT/usr
83 find blib/lib -name '*.pm.*' -exec rm -f {} \;
84 make PREFIX=$RPM_BUILD_ROOT/usr install
85 fi
86 mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/%{name}
87 rm -f ${RPM_BUILD_ROOT}%{_datadir}/%{name}/plugins/*.*
88 cp -r plugins ${RPM_BUILD_ROOT}%{_datadir}/%{name}/plugins
89 mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}
90 rm -f ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/*.*
91 cp -r config.sample/* ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/
92 echo %{_datadir}/%{name}/plugins > ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/plugin_dirs
93 echo %{_localstatedir}/spool/qpsmtpd > ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/spool_dir
94 echo logging/file_connection loglevel LOGINFO %{_localstatedir}/log/qpsmtpd/%Y-%m-%d > ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/logging
95 mkdir -p ${RPM_BUILD_ROOT}%{_initrddir}
96 cp %{SOURCE1} ${RPM_BUILD_ROOT}%{_initrddir}/qpsmtpd-forkserver
97 mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig
98 cp %{SOURCE2} ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/qpsmtpd-forkserver
99 cp %{SOURCE3} ${RPM_BUILD_ROOT}%{_datadir}/%{name}/plugins/logging/file_connection
100 mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/spool/qpsmtpd
101 mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/log/qpsmtpd
102 mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/xinetd.d
103 cp %{SOURCE4} ${RPM_BUILD_ROOT}%{_sysconfdir}/xinetd.d/smtp
104 mkdir -p ${RPM_BUILD_ROOT}%{_sbindir}
105 cp %{SOURCE5} ${RPM_BUILD_ROOT}%{_sbindir}/in.smtp
106 mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/httpd/conf.d
107 cp %{SOURCE6} ${RPM_BUILD_ROOT}%{_sysconfdir}/httpd/conf.d
108 mkdir -p $RPM_BUILD_ROOT%{_docdir}/%{name}-apache-%{version}
109 cp %{SOURCE7} $RPM_BUILD_ROOT%{_docdir}/%{name}-apache-%{version}
110 rm -f ${RPM_BUILD_ROOT}%{_bindir}/%{name}-prefork
111
112 [ -x /usr/lib/rpm/brp-compress ] && /usr/lib/rpm/brp-compress
113
114 find ${RPM_BUILD_ROOT}%{_prefix} \( -name perllocal.pod -o -name .packlist \) -exec rm {} \;
115 find ${RPM_BUILD_ROOT}%{_prefix} -type f -print | \
116 sed "s@^$RPM_BUILD_ROOT@@g" | \
117 grep -v [Aa]sync | \
118 grep -v packaging | \
119 grep -v README.selinux | \
120 grep -v /Apache | \
121 grep -v /Danga | \
122 grep -v Qpsmtpd/ConfigServer.pm | \
123 grep -v Qpsmtpd/PollServer.pm > %{name}-%{version}-%{release}-filelist
124 if [ "$(cat %{name}-%{version}-%{release}-filelist)X" = "X" ] ; then
125 echo "ERROR: EMPTY FILE LIST"
126 exit -1
127 fi
128
129 %files -f %{name}-%{version}-%{release}-filelist
130 %defattr(-,root,root)
131 %doc CREDITS Changes LICENSE README README.plugins STATUS
132 %{_initrddir}/qpsmtpd-forkserver
133 %config(noreplace) %{_sysconfdir}/qpsmtpd/*
134 %config(noreplace) %{_sysconfdir}/xinetd.d/smtp
135 %config(noreplace) %{_sysconfdir}/sysconfig/qpsmtpd-forkserver
136 %attr(0700,smtpd,smtpd) %dir %{_localstatedir}/spool/qpsmtpd
137 %attr(0750,smtpd,smtpd) %dir %{_localstatedir}/log/qpsmtpd
138
139 %files apache
140 %defattr(-,root,root)
141 %{_prefix}/lib/perl5/site_perl/Apache/Qpsmtpd.pm
142 %{_mandir}/man3/Apache::Qpsmtpd.3pm.gz
143 %config(noreplace) %{_sysconfdir}/httpd/conf.d/*
144 %doc %{_docdir}/%{name}-apache-%{version}/README.selinux
145
146 %files async
147 %defattr(-,root,root)
148 %{_bindir}/qpsmtpd-async
149 %{_prefix}/lib/perl5/site_perl/Danga/Client.pm
150 %{_prefix}/lib/perl5/site_perl/Danga/TimeoutSocket.pm
151 %{_prefix}/lib/perl5/site_perl/Qpsmtpd/ConfigServer.pm
152 %{_prefix}/lib/perl5/site_perl/Qpsmtpd/Plugin/Async/DNSBLBase.pm
153 %{_prefix}/lib/perl5/site_perl/Qpsmtpd/PollServer.pm
154 %{_mandir}/man1/qpsmtpd-async.1.gz
155 %{_datadir}/%{name}/plugins/async/*
156
157 %pre
158 if ! id smtpd >/dev/null 2>&1
159 then
160 # need to create smtpd user.
161 if perl -e 'exit ! defined(getgrnam("postdrop"))'
162 then
163 # if postfix is installed, we will probably use
164 # queue/postfix, which will need this:
165 supp="-G postdrop"
166 fi
167 useradd -r -m $supp smtpd
168 fi
169
170 %changelog
171 * Fri Sep 18 2009 <rpmbuild@robinbowes.com> 0.83-0.1.sme
172 - Update to 0.83
173 - add sme specific patches
174
175 * Sun Jul 12 2009 <rpmbuild@robinbowes.com> 0.82-0.1
176 - Update to latest release
177 - don't add qpsmtpd to start-up by default
178 - add apache config file to qpsmtpd-apache package
179 - remove all patches
180 - use rpm macros for dirs
181 - use a filelist for main package instead of a long list of files
182
183 * Tue Jul 15 2008 <rpmbuild@robinbowes.com> 0.43-0.7
184 - Removed SelectServer.pm from .spec file
185
186 * Tue Mar 18 2008 <rpmbuild@robinbowes.com> 0.43-0.6
187 - moved config files back to /etc/qpsmtpd following some changes
188 to the qpsmtpd src
189
190 * Tue Mar 18 2008 <rpmbuild@robinbowes.com> 0.43-0.5
191 - moved config files to /etc/qpsmtpd/config
192
193 * Tue Mar 18 2008 <rpmbuild@robinbowes.com> 0.43-0.4
194 - Moved qpsmtpd-async to /usr/bin
195 - Added qpsmtpd-async man page to async package
196 - Added async smtproute plugin to async package
197
198 * Wed Mar 12 2008 <rpmbuild@robinbowes.com> 0.43-0.3
199 - Makefile.PL now updated in svn, so remove hack
200
201 * Wed Mar 12 2008 <rpmbuild@robinbowes.com> 0.43-0.2
202 - Added qpsmtpd-prefork to qpsmtpd RPM, inc. hack to work round
203 deficiency in Makefile.PL
204
205 * Mon Mar 10 2008 <rpmbuild@robinbowes.com> 0.43-0.1
206 - Updated to work with Makefile to build from svn
207
208 * Wed Sep 12 2007 <rpmbuild@robinbowes.com> 0.40-2.0
209 - Updated to build trunk-r790
210
211 * Tue Jun 12 2007 <hjp@hjp.at> 0.40-1.0
212 - updated to 0.40 - no code change.
213
214 * Thu Jun 07 2007 <hjp@hjp.at> 0.40-0.2
215 - unset environment variables which are normally tainted in perl.
216 - updated to 0.40rc1
217 - added dependency on Net::IP (needed by some plugins)
218
219 * Sat May 05 2007 <hjp@hjp.at> 0.33-0.5
220 - moved environment cleanup into start() function, otherwise
221 LANG just gets reinitialized.
222
223 * Sat May 05 2007 <hjp@hjp.at> 0.33-0.4
224 - split qpsmtpd-async into a separate package to avoid dependency
225 on ParaDNS.
226
227 * Sat May 05 2007 <hjp@hjp.at> 0.33-0.3
228 - also unset LANG, LC_ALL and LC_TIME in startup script to prevent
229 locale specific Received headers (bug reported by Dominik Meyer)
230
231 * Sun Feb 25 2007 <hjp@hjp.at> 0.33-0.2
232 - 0.3x branch has been merged back to trunk.
233 Got current snapshot (r715) from trunk.
234
235 * Sun Feb 25 2007 <hjp@hjp.at> 0.33-0.1
236 - Start forkserver via "daemon" (Gavin Carr)
237 - Fixed 'service qpsmtpd-forkserver status' (Gavin Carr)
238 - Changed policy for config files to noreplace (Gavin Carr)
239
240 * Sun Nov 05 2006 <hjp@hjp.at> 0.33-0.0
241 - Upgraded to current snapshot from 0.3x branch (which should become
242 0.33 soon-ish)
243 - included xinetd-support again.
244
245 * Sat Mar 18 2006 <hjp@hjp.at> 0.32-2
246 - fix dnsbl to check whether answer fits query.
247 - randomize Net::DNS ids for qpsmtpd-forkserver child processes.
248
249 * Wed Mar 08 2006 <hjp@hjp.at> 0.32-1
250 - New upstream 0.32
251 - rc-file unsets PERL_UNICODE (bug #38397)
252
253 * Sat Jan 28 2006 <hjp@hjp.at> 0.31.1-3
254 - Use ${SOURCE*} macros to refer to source files
255 - Avoid invoking rpm and other cleanup in %pre section
256 - Invoke chkconfig in %post.
257 - (Thanks to Josko Plazonic for the reporting these problems and
258 suggesting fixes)
259
260 * Tue Nov 30 2005 <hjp@hjp.at> 0.31.1-2
261 - Revision 170 of plugins/loggin/file_connection:
262 Return DECLINED from open_log.
263 Open log in write_log if it isn't already open.
264
265 * Tue Nov 29 2005 <hjp@hjp.at> 0.31.1-1
266 - Commented out queue plugins from sample config
267 - Added dependencies
268 - Create smtpd user if it doesn't exist
269 - Added /var/log/qpsmtpd and /var/spool/qpsmtpd
270
271 * Sat Nov 26 2005 <hjp@hjp.at>
272 - Added file_connection plugin
273 - Startup file for qpsmtpd-forkserver now uses --detach and assumes that
274 a suitable logging module is configured (file_connection by default)
275
276 * Wed Nov 23 2005 <hjp@hjp.at>
277 - Forkserver drops privileges before loading plugins now.
278
279 * Sun Nov 20 2005 <hjp@hjp.at>
280 - New upstream 0.31.1
281
282 * Mon Nov 14 2005 <hjp@hjp.at> 0.31-8
283 - New upstream 0.31rc3.
284 - pre-connection patch slightly simplified since upstream fixed one of
285 the bugs.
286
287 * Tue Aug 23 2005 <hjp@hjp.at>
288 - forced INSTALLSITELIB=/usr/lib/perl5/site_perl as suggested by
289 Charlie Brady.
290
291 * Sat Aug 20 2005 <hjp@hjp.at> 0.31-7
292 - RC2 from upstream.
293 - Removed patches which aren't applied from spec file.
294
295 * Fri Jul 22 2005 <hjp@hjp.at> 0.31-6
296 - New upstream snapshot from 0.31 branch: svn revision 509.
297
298 * Sun Jul 17 2005 <hjp@hjp.at> 0.31-5
299 - include only /etc/init.d/qpsmtpd-forkserver, not /etc/init.d
300 it conflicts with old initscripts packages.
301
302 * Sun Jul 17 2005 <hjp@hjp.at> 0.31-4
303 - removed tabs from forkserver
304
305 * Sun Jul 17 2005 <hjp@hjp.at> 0.31-3
306 - added startup script for forkserver
307 - changed BuildArchitectures to noarch.
308
309 * Sat Jul 16 2005 <hjp@hjp.at> 0.31-2
310 - pre-connection hook is now actually called, not just defined.
311
312 * Fri Jul 15 2005 <hjp@hjp.at> 0.31-1
313 - merged with 0.31. Most of my patches are now in the official release.
314 - merged Gavin's per-user-config patch with my dirs patch, since the
315 latter needs a way to turn off logging.
316 - added /etc/qpsmtpd/plugin_dir to package.
317
318 * Mon Jun 13 2005 <hjp@hjp.at> 0.29-6
319 - fixed removal of patch backup files
320 - fixed option --pid-file
321
322 * Sun Jun 12 2005 <hjp@hjp.at>
323 - avoid installing patch backup files
324 - split Apache::Qpsmtpd into separate package to avoid dependency hell.
325 - fixed URL
326 - changed group to Daemons.
327 - Fixed installation for newer versions of ExtUtils::MakeMaker
328
329 * Wed Jun 1 2005 <hjp@hjp.at> 0.29-5
330 - Really don't reap children in signal handler.
331
332 * Tue May 31 2005 <hjp@hjp.at> 0.29-4
333 - Return 421 for DENYSOFT_DISCONNECT
334 - Don't reap children in signal handler.
335
336 * Thu May 19 2005 <hjp@hjp.at> 0.29-3
337 - removed code to accept paths without <>.
338
339 * Thu May 19 2005 <hjp@hjp.at> 0.29-2
340 - added QPSMTPD_CONFIG env variable and plugin_dir config.
341 - added supplemental groups and support for pid file
342 - added shared_connect hook
343 - changed log level for SMTP dialog from DEBUG to INFO
344
345 * Thu Apr 21 2005 hjp@hjp.at
346 - added plugins, /etc and docs.
347
348 * Mon Apr 18 2005 hjp@hjp.at
349 - Specfile autogenerated
350

admin@koozali.org
ViewVC Help
Powered by ViewVC 1.2.1 RSS 2.0 feed