/[smecontribs]/rpms/ezmlm-idx/contribs7/ezmlm-idx-std.spec
ViewVC logotype

Contents of /rpms/ezmlm-idx/contribs7/ezmlm-idx-std.spec

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


Revision 1.5 - (show annotations) (download)
Tue Nov 25 16:20:11 2008 UTC (15 years, 5 months ago) by slords
Branch: MAIN
CVS Tags: HEAD
Changes since 1.4: +0 -0 lines
Restore

1 # $Id: ezmlm-idx-std.spec,v 1.3 2008/04/23 20:09:32 slords Exp $
2 # Authority: gordonr
3 # Name: Gordon Rowell
4
5 %{expand: %%{global} _i_am_%{_target_os} %%{nil}}
6 # If OS is Linux
7 %{?_i_am_linux: %global ezroot /usr}
8 %{?_i_am_linux: %global ezcgi /var/www/cgi-bin}
9 %{?_i_am_linux: %global rcdir /etc/ezmlm}
10 # If OS is not Linux
11 %{!?_i_am_linux: %global ezroot /usr/local}
12 %{!?_i_am_linux: %global ezcgi /usr/local/apache/cgi-bin}
13 %{!?_i_am_linux: %global rcdir /usr/local/etc/ezmlm}
14 # endif OS
15 %define dbase std
16 %define destdir %buildroot
17 %global ezver 0.53
18 %global idxver 5.1.2
19 Buildprereq: rpm >= 3.0.2
20 Buildroot: %_tmppath/%name-%version-root
21 License: GPL
22 Group: Utilities/System
23 Name: ezmlm-idx
24 Prereq: rpm >= 3.0.2
25 Release: 1%{?dist}
26 Source0: ftp://cr.yp.to/software/ezmlm-%{ezver}.tar.gz
27 Source1: http://ezmlm.org/archive/%{idxver}/%{name}-%{idxver}.tar.gz
28 Source3: ezmlm-idx.spec-kit.tar.gz
29 Summary: Qmail Easy Mailing List Manager + IDX patches.
30 URL: http://www.ezmlm.org
31 Version: %{idxver}
32 BuildRequires: groff
33
34 %description
35 None. See subpackages.
36
37 %package %{dbase}
38 Summary: Qmail Easy Mailing List Manager + IDX patches with %{dbase} database support.
39 Group: Utilities/System
40 Obsoletes: ezmlm-idx
41 Provides: EZMLM
42 Conflicts: ezmlm ezmlm-idx-mysql ezmlm-idx-pgsql
43
44 %description %{dbase}
45 ezmlm lets users set up their own mailing lists within qmail's address
46 hierarchy. A user, Joe, types
47
48 ezmlm-make ~/SOS ~/.qmail-sos joe-sos isp.net
49
50 and instantly has a functioning mailing list, joe-sos@isp.net, with all
51 relevant information stored in a new ~/SOS directory.
52
53 ezmlm sets up joe-sos-subscribe and joe-sos-unsubscribe for automatic
54 processing of subscription and unsubscription requests. Any message to
55 joe-sos-subscribe will work; Joe doesn't have to explain any tricky
56 command formats. ezmlm will send back instructions if a subscriber sends
57 a message to joe-sos-request or joe-sos-help.
58
59 ezmlm automatically archives new messages. Messages are labelled with
60 sequence numbers; a subscriber can fetch message 123 by sending mail to
61 joe-sos-get.123. The archive format supports fast message retrieval even
62 when there are thousands of messages.
63
64 ezmlm takes advantage of qmail's VERPs to reliably determine the
65 recipient address and message number for every incoming bounce message.
66 It waits ten days and then sends the subscriber a list of message
67 numbers that bounced. If that warning bounces, ezmlm sends a probe; if
68 the probe bounces, ezmlm automatically removes the subscriber from the
69 mailing list.
70
71
72 ezmlm is easy for users to control. Joe can edit ~/SOS/text/* to change
73 any of the administrative messages sent to subscribers. He can remove
74 ~/SOS/public and ~/SOS/archived to disable automatic subscription and
75 archiving. He can put his own address into ~/SOS/editor to set up a
76 moderated mailing list. He can edit ~/SOS/{headeradd,headerremove} to
77 control outgoing headers. ezmlm has several utilities to manually
78 inspect and manage mailing lists.
79
80 ezmlm uses Delivered-To to stop forwarding loops, Mailing-List to
81 protect other mailing lists against false subscription requests, and
82 real cryptographic cookies to protect normal users against false
83 subscription requests. ezmlm can also be used for a sublist,
84 redistributing messages from another list.
85
86 ezmlm is reliable, even in the face of system crashes. It writes each
87 new subscription and each new message safely to disk before it reports
88 success to qmail.
89
90 ezmlm doesn't mind huge mailing lists. Lists don't even have to fit into
91 memory. ezmlm hashes the subscription list into a set of independent
92 files so that it can handle subscription requests quickly. ezmlm uses
93 qmail for blazingly fast parallel SMTP deliveries.
94
95 The IDX patches add: Indexing, (Remote) Moderation, digest, make
96 patches, multi-language, MIME, global interface, %{dbase} database support.
97
98 %description %{dbase} -l pl
99 Menad<BF>er pocztowych list dyskusyjnych, ca<B3>kowicie spolszczony, mo<BF>liwo
100 <B6><F6> zdalnego moderowania, MIME.
101
102 %package cgi
103 Prefix: %ezcgi
104 Summary: www archiver for %name
105 Group: Utilities/System
106 Requires: EZMLM
107
108 %description cgi
109 www archiver for %name.
110
111
112 %prep
113 %setup -q -T -b 0 -n ezmlm-%{ezver}
114 %setup -q -D -T -a 1 -n ezmlm-%{ezver}
115 mv -f ezmlm-idx-%{idxver}/* .
116
117 patch -s < idx.patch
118
119 %build
120 echo gcc -O2 --include /usr/include/errno.h > conf-cc
121 echo %{rcdir} >conf-etc
122 echo %{ezroot}/bin > conf-bin
123 echo %{ezroot}/man > conf-man
124
125 if [ "%{dbase}" = "mysql" ]; then
126 echo "cc -s -lz" > conf-ld
127 fi
128
129
130 # Check for gcc version with optimizer bug
131
132 GCC_VERSION="$(cc -v 2>& 1 | tail -1 |awk '{print $3}')"
133
134 if [ "$GCC_VERSION" = "2.95" ] || [ "$GCC_VERSION" = "2.95.1" ]; then
135 echo cc > conf-cc
136 fi
137
138 echo %{dbase} >conf-sub
139 make it man install
140
141 %install
142 /bin/rm -rf %destdir
143
144 mkdir -p %destdir/%{ezroot}/{bin,man}
145 mkdir -p %destdir/%{rcdir}
146 mkdir -p %destdir/%ezcgi
147
148 # Do not create cat subdirs on Linux
149 %ifos Linux
150 sed '/cat/d' MAN > MAN.tmp
151 mv MAN.tmp MAN
152 %endif
153
154 ./install %{destdir}/%{rcdir} < ETC
155 ./install %{destdir}/%{ezroot}/bin < BIN
156 ./install %{destdir}/%{ezroot}/man < MAN
157 ln -s `head -n 1 conf-lang` %{destdir}/%{rcdir}/default
158
159 cp ezmlm-cgi %destdir/%ezcgi
160
161 # create file list for man pages (without ezmlm-cgi.1)
162 find %destdir/%{ezroot}/man -type f \
163 | sed -e "s}%destdir}}" -e "s}$}*}" > man-list
164
165 cp ezmlm-cgi.1 %destdir/%{ezroot}/man/man1
166 chmod 644 %destdir/%{ezroot}/man/man1/ezmlm-cgi.1
167
168 # Create INSTALL file for how to set up ezcgi
169 cat <<EOF > INSTALL.cgi
170 The script ezmlm-cgi is installed as %ezcgi/ezmlm-cgi with
171 permissions 0444. In order to use it, you need to make it
172 SUID root. So do
173
174 chmod 4755 %ezcgi/ezmlm-cgi
175
176 Please see INSTALL.idx 16-22) in this package's doc directory and the
177 man page ezmlm-cgi.1 for more details on setting up and using ezmlm-cgi.
178
179 EOF
180
181 %post %{dbase}
182 echo To create an ezmlmrc file for a language other than US English
183 echo go to this package\'s doc directory, and type
184 echo " make iso"
185 echo 'where "iso" is the ISO language designation.'
186 echo For currently supported languages, see the INSTALL.idx
187 echo file, section 7.
188
189 %clean
190 /bin/rm -rf %destdir
191
192 %files %{dbase} -f man-list
193 %defattr(-, root, root)
194 %dir %{rcdir}
195 %config(noreplace) %{rcdir}/*
196 %doc BLURB CHANGES* FAQ.idx INSTALL INSTALL.idx README*
197 %doc THANKS TODO UPGRADE.idx ChangeLog
198 %doc DOWNGRADE.idx ezmlmrc.template
199 %dir %{ezroot}
200 %dir %{ezroot}/*
201 %{ezroot}/bin/*
202
203 %files cgi
204 %defattr(-, root, root)
205 %doc INSTALL.idx INSTALL.cgi ezcgirc ezcgi.css
206 %attr(0444,root,root) %ezcgi/*
207 %{ezroot}/man/man1/ezmlm-cgi.1.gz

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