45 Distribution: OpenPKG Community |
35 Distribution: OpenPKG Community |
46 Class: EVAL |
36 Class: EVAL |
47 Group: Mail |
37 Group: Mail |
48 License: MIT+LGPL |
38 License: MIT+LGPL |
49 Version: %{V_major}.%{V_minor} |
39 Version: %{V_major}.%{V_minor} |
50 Release: 20091104 |
40 Release: 20120208 |
51 |
41 |
52 # package options |
42 # package options |
53 %option with_fsl yes |
43 %option with_fsl yes |
54 %option with_pam yes |
|
55 %option with_sieve yes |
44 %option with_sieve yes |
56 %option with_managesieve yes |
45 %option with_pam no |
57 %option with_ldap no |
46 %option with_ldap no |
58 %option with_mysql no |
47 %option with_mysql no |
59 %option with_pgsql no |
48 %option with_pgsql no |
60 %option with_sqlite no |
49 %option with_sqlite no |
61 |
50 |
62 # list of sources |
51 # list of sources |
63 Source0: http://www.dovecot.org/releases/%{V_major}/dovecot-%{V_major}.%{V_minor}.tar.gz |
52 Source0: http://www.dovecot.org/releases/%{V_major}/dovecot-%{V_major}.%{V_minor}.tar.gz |
64 Source1: http://www.rename-it.nl/dovecot/%{V_major}/dovecot-%{V_sieve_base}-sieve-%{V_sieve}.tar.gz |
53 Source1: http://www.rename-it.nl/dovecot/%{V_major}/dovecot-%{V_major}-pigeonhole-%{V_pigeonhole}.tar.gz |
65 Source2: http://www.rename-it.nl/dovecot/%{V_major}/dovecot-%{V_managesieved_base}-managesieve-%{V_managesieved}.tar.gz |
54 Source2: fsl.dovecot |
66 Source3: fsl.dovecot |
55 Source3: rc.dovecot |
67 Source4: rc.dovecot |
56 Source4: dovecot.conf |
68 Source5: dovecot.conf |
|
69 Patch0: dovecot.patch |
57 Patch0: dovecot.patch |
70 Patch1: http://www.rename-it.nl/dovecot/%{V_major}/dovecot-%{V_managesieve_base}-managesieve-%{V_managesieve}.diff.gz |
|
71 |
58 |
72 # build information |
59 # build information |
73 Prefix: %{l_prefix} |
60 Prefix: %{l_prefix} |
74 BuildRoot: %{l_buildroot} |
61 BuildRoot: %{l_buildroot} |
75 BuildPreReq: OpenPKG, openpkg >= 20060823 |
62 BuildPreReq: OpenPKG, openpkg >= 20060823 |
76 PreReq: OpenPKG, openpkg >= 20060823, MTA, x509 |
63 PreReq: OpenPKG, openpkg >= 20060823, MTA, x509 |
77 BuildPreReq: libiconv, openssl |
64 BuildPreReq: libiconv, openssl, zlib, bzip2 |
78 PreReq: libiconv, openssl |
65 PreReq: libiconv, openssl, zlib, bzip2 |
79 %if "%{with_fsl}" == "yes" |
66 %if "%{with_fsl}" == "yes" |
80 BuildPreReq: fsl |
67 BuildPreReq: fsl |
81 PreReq: fsl |
68 PreReq: fsl |
82 %endif |
69 %endif |
83 %if "%{with_ldap}" == "yes" |
70 %if "%{with_ldap}" == "yes" |
84 BuildPreReq: openldap |
71 BuildPreReq: openldap |
85 PreReq: openldap |
72 PreReq: openldap |
86 %endif |
73 %endif |
87 %if "%{with_managesieve}" == "yes" |
74 %if "%{with_sieve}" == "yes" |
88 BuildPreReq: gettext |
75 BuildPreReq: gettext, autoconf, automake, libtool |
89 PreReq: gettext |
76 PreReq: gettext |
90 %endif |
77 %endif |
91 %if "%{with_pam}" == "yes" |
78 %if "%{with_pam}" == "yes" |
92 BuildPreReq: PAM |
79 BuildPreReq: PAM |
93 PreReq: PAM |
80 PreReq: PAM |
115 |
102 |
116 %track |
103 %track |
117 prog dovecot = { |
104 prog dovecot = { |
118 version = %{V_major}.%{V_minor} |
105 version = %{V_major}.%{V_minor} |
119 url = http://www.dovecot.org/download.html |
106 url = http://www.dovecot.org/download.html |
120 regex = dovecot-(__VER__)\.tar\.gz |
107 regex = dovecot-(\d+\.\d+(?:\.\d+))\.tar\.gz |
121 } |
108 } |
122 prog dovecot:sieve = { |
109 prog dovecot:sieve = { |
123 version = %{V_sieve} |
110 version = %{V_pigeonhole} |
124 url = http://www.rename-it.nl/dovecot/%{V_major}/ |
111 url = http://www.rename-it.nl/dovecot/%{V_major}/ |
125 regex = dovecot-%{V_sieve_base}-sieve-(__VER__)\.tar\.gz |
112 regex = dovecot-%{V_major}-pigeonhole-(__VER__)\.tar\.gz |
126 } |
|
127 prog dovecot:managesieved = { |
|
128 version = %{V_managesieved} |
|
129 url = http://www.rename-it.nl/dovecot/%{V_major}/ |
|
130 regex = dovecot-%{V_managesieved_base}-managesieve-(__VER__)\.tar\.gz |
|
131 } |
|
132 prog dovecot:managesieve = { |
|
133 version = %{V_managesieve} |
|
134 url = http://www.rename-it.nl/dovecot/%{V_major}/ |
|
135 regex = dovecot-%{V_managesieve_base}-managesieve-(__VER__)\.diff\.gz |
|
136 } |
113 } |
137 |
114 |
138 %prep |
115 %prep |
139 %setup -q |
116 %setup -q |
140 %if "%{with_sieve}" == "yes" |
117 %if "%{with_sieve}" == "yes" |
141 %setup -q -T -D -a 1 |
118 %setup -q -T -D -a 1 |
142 %endif |
119 %endif |
143 %if "%{with_managesieve}" == "yes" |
|
144 %setup -q -T -D -a 2 |
|
145 %{l_gzip} -dc <%{PATCH1} | %{l_patch} -p1 -b |
|
146 %endif |
|
147 %{l_sed} <%{PATCH0} %{l_value -s -a} | %{l_patch} -p0 -b |
120 %{l_sed} <%{PATCH0} %{l_value -s -a} | %{l_patch} -p0 -b |
148 |
121 |
149 %build |
122 %build |
|
123 # build Dovecot |
|
124 %{l_shtool} subst \ |
|
125 -e 's;/usr/sbin/sendmail;%{l_prefix}/sbin/sendmail;g' \ |
|
126 src/config/all-settings.c \ |
|
127 src/lib-lda/lda-settings.c |
150 cppflags="%{l_cppflags}" |
128 cppflags="%{l_cppflags}" |
151 ldflags="%{l_ldflags} %{l_fsl_ldflags}" |
129 ldflags="%{l_ldflags} %{l_fsl_ldflags}" |
152 libs="%{l_fsl_libs}" |
130 libs="%{l_fsl_libs}" |
153 sql_drivers="" |
131 sql_drivers="" |
154 %if "%{with_ldap}" == "yes" |
132 %if "%{with_ldap}" == "yes" |
155 libs="$libs -llber -lssl -lcrypto" |
133 libs="$libs -llber -lssl -lcrypto" |
156 %endif |
134 %endif |
157 %if "%{with_mysql}" == "yes" |
135 %if "%{with_mysql}" == "yes" |
158 cppflags="$cppflags %{l_cppflags mysql}" |
136 cppflags="$cppflags %{l_cppflags mysql}" |
159 ldflags="$ldflags %{l_ldflags mysql}" |
137 ldflags="$ldflags %{l_ldflags mysql}" |
160 sql_drivers="$sql_drivers,mysql" |
|
161 %endif |
138 %endif |
162 %if "%{with_pgsql}" == "yes" |
139 %if "%{with_pgsql}" == "yes" |
163 libs="$libs -lssl -lcrypto -lcrypt" |
140 libs="$libs -lssl -lcrypto -lcrypt" |
164 sql_drivers="$sql_drivers,pgsql" |
|
165 %endif |
|
166 %if "%{with_sqlite}" == "yes" |
|
167 sql_drivers="$sql_drivers,sqlite" |
|
168 %endif |
141 %endif |
169 sql_drivers=`echo "$sql_drivers" | sed 's;^,;;'` |
142 sql_drivers=`echo "$sql_drivers" | sed 's;^,;;'` |
170 |
|
171 CC="%{l_cc}" \ |
143 CC="%{l_cc}" \ |
172 CFLAGS="%{l_cflags -O}" \ |
144 CFLAGS="%{l_cflags -O}" \ |
173 CPPFLAGS="$cppflags" \ |
145 CPPFLAGS="$cppflags" \ |
174 LDFLAGS="$ldflags" \ |
146 LDFLAGS="$ldflags" \ |
175 LIBS="$libs" \ |
147 LIBS="$libs" \ |
176 ./configure \ |
148 ./configure \ |
177 --prefix=%{l_prefix} \ |
149 --prefix=%{l_prefix} \ |
178 --mandir=%{l_prefix}/man \ |
150 --mandir=%{l_prefix}/man \ |
179 --sysconfdir=%{l_prefix}/etc/dovecot \ |
151 --sysconfdir=%{l_prefix}/etc \ |
180 --with-ssldir=%{l_prefix}/etc/dovecot/ssl \ |
152 --with-ssldir=%{l_prefix}/etc/dovecot/ssl \ |
181 --datadir=%{l_prefix}/share/dovecot \ |
153 --datadir=%{l_prefix}/share/dovecot \ |
182 --docdir=%{l_prefix}/share/dovecot/doc \ |
154 --docdir=%{l_prefix}/share/dovecot/doc \ |
183 --with-rundir=%{l_prefix}/var/dovecot/run \ |
155 --with-rundir=%{l_prefix}/var/dovecot/run \ |
184 --with-statedir=%{l_prefix}/var/dovecot/dat \ |
|
185 --with-libiconv-prefix=%{l_prefix} \ |
156 --with-libiconv-prefix=%{l_prefix} \ |
186 --with-ssl=openssl \ |
157 --with-ssl=openssl \ |
187 --with-docs \ |
158 --with-docs \ |
188 %if "%{with_ldap}" == "yes" |
159 %if "%{with_ldap}" == "yes" |
189 --with-ldap \ |
160 --with-ldap \ |
190 %else |
161 %else |
191 --without-ldap \ |
162 --without-ldap \ |
192 %endif |
163 %endif |
193 %if "%{with_mysql}" == "yes" || "%{with_pgsql}" == "yes" || "%{with_sqlite}" == "yes" |
164 %if "%{with_mysql}" == "yes" || "%{with_pgsql}" == "yes" || "%{with_sqlite}" == "yes" |
194 --with-sql \ |
165 --with-sql \ |
195 --with-sql-drivers="$sql_drivers" \ |
|
196 %if "%{with_mysql}" == "yes" |
166 %if "%{with_mysql}" == "yes" |
197 --with-mysql \ |
167 --with-mysql \ |
198 %else |
168 %else |
199 --without-mysql \ |
169 --without-mysql \ |
200 %endif |
170 %endif |
222 %endif |
191 %endif |
223 --without-gc \ |
192 --without-gc \ |
224 --without-gssapi \ |
193 --without-gssapi \ |
225 --without-lucene \ |
194 --without-lucene \ |
226 --without-vpopmail \ |
195 --without-vpopmail \ |
|
196 --enable-shared \ |
227 --disable-static |
197 --disable-static |
228 %{l_make} %{l_mflags -O} |
198 %{l_make} %{l_mflags -O} |
229 |
199 |
230 %if "%{with_sieve}" == "yes" |
200 %if "%{with_sieve}" == "yes" |
231 # build optional Dovecot LDA sieve plugin |
201 # build optional Dovecot LDA sieve plugin |
232 ( cd dovecot-%{V_sieve_base}-sieve-%{V_sieve} |
202 ( cd dovecot-*-pigeonhole-* |
|
203 ./autogen.sh |
233 CC="%{l_cc}" \ |
204 CC="%{l_cc}" \ |
234 CFLAGS="%{l_cflags -O}" \ |
205 CFLAGS="%{l_cflags -O}" \ |
235 CPPFLAGS="%{l_cppflags}" \ |
206 CPPFLAGS="%{l_cppflags}" \ |
236 LDFLAGS="%{l_ldflags}" \ |
207 LDFLAGS="%{l_ldflags}" \ |
237 ./configure \ |
208 ./configure \ |
238 --prefix=%{l_prefix} \ |
209 --prefix=%{l_prefix} \ |
239 --mandir=%{l_prefix}/man \ |
210 --mandir=%{l_prefix}/man \ |
240 --with-dovecot=`pwd`/.. |
211 --with-dovecot=`pwd`/.. \ |
|
212 --with-managesieve |
241 %{l_make} %{l_mflags -O} |
213 %{l_make} %{l_mflags -O} |
242 ) || exit $? |
214 ) || exit $? |
243 %endif |
215 %endif |
244 %if "%{with_managesieve}" == "yes" |
|
245 # build optional Dovecot LDA managesieve daemon |
|
246 ( cd dovecot-%{V_managesieved_base}-managesieve-%{V_managesieved} |
|
247 CC="%{l_cc}" \ |
|
248 CFLAGS="%{l_cflags -O}" \ |
|
249 CPPFLAGS="%{l_cppflags}" \ |
|
250 LDFLAGS="%{l_ldflags}" \ |
|
251 ./configure \ |
|
252 --prefix=%{l_prefix} \ |
|
253 --mandir=%{l_prefix}/man \ |
|
254 --with-dovecot-sieve=`pwd`/../dovecot-%{V_sieve_base}-sieve-%{V_sieve} \ |
|
255 --with-dovecot=`pwd`/.. |
|
256 %{l_make} %{l_mflags -O} |
|
257 ) || exit $? |
|
258 %endif |
|
259 |
216 |
260 %install |
217 %install |
|
218 # clean build cruft |
261 rm -rf $RPM_BUILD_ROOT |
219 rm -rf $RPM_BUILD_ROOT |
262 %{l_make} %{l_mflags} install DESTDIR=$RPM_BUILD_ROOT |
220 |
|
221 # install Dovecot |
|
222 %{l_make} %{l_mflags} install DESTDIR="$RPM_BUILD_ROOT" |
263 |
223 |
264 %if "%{with_sieve}" == "yes" |
224 %if "%{with_sieve}" == "yes" |
265 # install optional Dovecot LDA sieve plugin |
225 # install optional Dovecot LDA sieve plugin |
266 ( cd dovecot-%{V_sieve_base}-sieve-%{V_sieve} |
226 ( cd dovecot-*-pigeonhole-* |
267 %{l_make} %{l_mflags} install DESTDIR=$RPM_BUILD_ROOT |
227 %{l_make} %{l_mflags} install DESTDIR="$RPM_BUILD_ROOT" |
268 ) || exit $? |
|
269 %endif |
|
270 %if "%{with_managesieve}" == "yes" |
|
271 # install optional Dovecot LDA managesieve daemon |
|
272 ( cd dovecot-%{V_managesieved_base}-managesieve-%{V_managesieved} |
|
273 %{l_make} %{l_mflags} install DESTDIR=$RPM_BUILD_ROOT |
|
274 ) || exit $? |
228 ) || exit $? |
275 %endif |
229 %endif |
276 |
230 |
277 # create additional dirctories |
231 # create additional dirctories |
278 %{l_shtool} mkdir -f -p -m 755 \ |
232 %{l_shtool} mkdir -f -p -m 755 \ |
279 $RPM_BUILD_ROOT%{l_prefix}/etc/dovecot/ssl \ |
233 $RPM_BUILD_ROOT%{l_prefix}/etc/dovecot/ssl \ |
280 $RPM_BUILD_ROOT%{l_prefix}/var/dovecot/dat \ |
|
281 $RPM_BUILD_ROOT%{l_prefix}/var/dovecot/log \ |
234 $RPM_BUILD_ROOT%{l_prefix}/var/dovecot/log \ |
282 $RPM_BUILD_ROOT%{l_prefix}/var/dovecot/run/login |
235 $RPM_BUILD_ROOT%{l_prefix}/var/dovecot/run/login |
283 |
236 |
284 # install runcommand script |
237 # install run-command script |
285 %{l_shtool} mkdir -f -p -m 755 \ |
238 %{l_shtool} mkdir -f -p -m 755 \ |
286 $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d |
239 $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d |
287 %{l_shtool} install -c -m 755 %{l_value -s -a} \ |
240 %{l_shtool} install -c -m 755 %{l_value -s -a} \ |
288 %{SOURCE rc.dovecot} \ |
241 %{SOURCE rc.dovecot} \ |
289 $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/ |
242 $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/ |
290 |
243 |
291 # strip installation |
244 # strip installation |
292 rm -f $RPM_BUILD_ROOT%{l_prefix}/etc/dovecot/dovecot*example.conf |
245 rm -rf $RPM_BUILD_ROOT%{l_prefix}/etc/dovecot/dovecot |
293 rm -f $RPM_BUILD_ROOT%{l_prefix}/lib/dovecot/{,*}/*.la \ |
246 rm -f $RPM_BUILD_ROOT%{l_prefix}/etc/dovecot/README |
294 >/dev/null 2>&1 || true |
247 rm -f $RPM_BUILD_ROOT%{l_prefix}/etc/dovecot/dovecot*example.conf |
295 rmdir $RPM_BUILD_ROOT%{l_prefix}/lib/dovecot/auth \ |
248 rm -rf $RPM_BUILD_ROOT%{l_prefix}/share/dovecot |
296 $RPM_BUILD_ROOT%{l_prefix}/include/dovecot \ |
249 rm -f $RPM_BUILD_ROOT%{l_prefix}/lib/dovecot/{,*}/*.a >/dev/null 2>&1 || true |
297 $RPM_BUILD_ROOT%{l_prefix}/include \ |
250 rm -f $RPM_BUILD_ROOT%{l_prefix}/lib/dovecot/{,*}/*.la >/dev/null 2>&1 || true |
298 >/dev/null 2>&1 || true |
|
299 strip \ |
251 strip \ |
300 $RPM_BUILD_ROOT%{l_prefix}/sbin/* \ |
252 $RPM_BUILD_ROOT%{l_prefix}/sbin/* \ |
301 $RPM_BUILD_ROOT%{l_prefix}/libexec/dovecot/* \ |
253 $RPM_BUILD_ROOT%{l_prefix}/libexec/dovecot/* \ |
302 >/dev/null 2>&1 || true |
254 >/dev/null 2>&1 || true |
303 |
255 |
304 # install default server configuration |
256 # install default server configuration |
305 %{l_shtool} mkdir -f -p -m 755 \ |
257 %{l_shtool} mkdir -f -p -m 755 \ |
306 $RPM_BUILD_ROOT%{l_prefix}/etc/dovecot |
258 $RPM_BUILD_ROOT%{l_prefix}/etc/dovecot |
307 %{l_shtool} install -c -m 640 %{l_value -s -a} \ |
259 %{l_shtool} install -c -m 644 %{l_value -s -a} \ |
308 %{SOURCE dovecot.conf} \ |
260 %{SOURCE dovecot.conf} \ |
309 $RPM_BUILD_ROOT%{l_prefix}/etc/dovecot/ |
261 $RPM_BUILD_ROOT%{l_prefix}/etc/dovecot/ |
310 |
262 |
311 # install OSSP fsl configuration |
263 # install OSSP fsl configuration |
312 %{l_shtool} mkdir -f -p -m 755 \ |
264 %{l_shtool} mkdir -f -p -m 755 \ |
318 # generate file list |
270 # generate file list |
319 %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std} \ |
271 %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std} \ |
320 '%not %dir %{l_prefix}/etc/fsl' \ |
272 '%not %dir %{l_prefix}/etc/fsl' \ |
321 '%config %{l_prefix}/etc/fsl/fsl.dovecot' \ |
273 '%config %{l_prefix}/etc/fsl/fsl.dovecot' \ |
322 '%config %attr(0600,%{l_musr},%{l_mgrp}) %{l_prefix}/etc/dovecot/*' \ |
274 '%config %attr(0600,%{l_musr},%{l_mgrp}) %{l_prefix}/etc/dovecot/*' \ |
323 '%config %attr(0640,%{l_musr},%{l_rgrp}) %{l_prefix}/etc/dovecot/dovecot.conf' \ |
275 '%config %attr(0644,%{l_musr},%{l_rgrp}) %{l_prefix}/etc/dovecot/dovecot.conf' \ |
324 '%dir %attr(0700,%{l_susr},%{l_mgrp}) %{l_prefix}/etc/dovecot/ssl' \ |
276 '%dir %attr(0700,%{l_susr},%{l_mgrp}) %{l_prefix}/etc/dovecot/ssl' \ |
325 '%dir %attr(0755,%{l_musr},%{l_mgrp}) %{l_prefix}/var/dovecot' \ |
277 '%dir %attr(0755,%{l_susr},%{l_mgrp}) %{l_prefix}/var/dovecot' \ |
326 '%dir %attr(0770,%{l_musr},%{l_rgrp}) %{l_prefix}/var/dovecot/dat' \ |
278 '%dir %attr(0770,%{l_susr},%{l_rgrp}) %{l_prefix}/var/dovecot/log' \ |
327 '%dir %attr(0770,%{l_musr},%{l_rgrp}) %{l_prefix}/var/dovecot/log' \ |
279 '%dir %attr(0755,%{l_susr},%{l_mgrp}) %{l_prefix}/var/dovecot/run' \ |
328 '%dir %attr(0750,%{l_musr},%{l_rgrp}) %{l_prefix}/var/dovecot/run' \ |
280 '%dir %attr(0750,%{l_susr},%{l_mgrp}) %{l_prefix}/var/dovecot/run/login' |
329 '%dir %attr(0750,%{l_musr},%{l_ngrp}) %{l_prefix}/var/dovecot/run/login' \ |
|
330 '%doc %{l_prefix}/share/dovecot/doc' \ |
|
331 '%doc %{l_prefix}/share/dovecot/doc/wiki' |
|
332 |
281 |
333 %files -f files |
282 %files -f files |
334 |
283 |
335 %clean |
284 %clean |
336 rm -rf $RPM_BUILD_ROOT |
285 rm -rf $RPM_BUILD_ROOT |