]> git.pld-linux.org Git - packages/openchange.git/blob - openchange.spec
31220ae95bcb7c7cc5213d0185ac374a117a3055
[packages/openchange.git] / openchange.spec
1 # TODO
2 # - nagios plugin (see it's files section for details)
3 #
4 # Conditional build:
5 %bcond_without  apidocs         # do not build and package API docs
6
7 %define cname   VULCAN
8 Summary:        OpenChange - portable implementation of MS Exchange Server and Exchange protocols
9 Summary(pl.UTF-8):      OpenChange - przenośna implementacja serwera oraz protokołów MS Exchange
10 Name:           openchange
11 Version:        2.3
12 Release:        10
13 License:        GPL v3+
14 Group:          Libraries
15 Source0:        https://github.com/openchange/openchange/archive/%{name}-%{version}-%{cname}.tar.gz
16 # Source0-md5:  96c13c78c2bcbd7040f7848746284b9f
17 Patch0:         %{name}-samba-private.patch
18 Patch1:         %{name}-link.patch
19 Patch2:         flex2.6.patch
20 URL:            http://www.openchange.org/
21 BuildRequires:  QtCore-devel >= 4.3.0
22 BuildRequires:  QtGui-devel >= 4.3.0
23 BuildRequires:  autoconf >= 2.57
24 BuildRequires:  automake
25 BuildRequires:  check-devel
26 BuildRequires:  doxygen
27 BuildRequires:  ldb-devel
28 BuildRequires:  libical-devel >= 0.46
29 BuildRequires:  libmagic-devel
30 BuildRequires:  libmemcached-devel >= 1.0.18
31 BuildRequires:  libpcap-devel
32 BuildRequires:  libstdc++-devel
33 BuildRequires:  mysql-devel
34 BuildRequires:  nanomsg-devel >= 0.5
35 BuildRequires:  perl-base
36 BuildRequires:  pkgconfig >= 1:0.20
37 BuildRequires:  popt-devel
38 BuildRequires:  python-devel >= 1:2.7
39 BuildRequires:  python-samba >= 4.2.2
40 BuildRequires:  rpmbuild(macros) >= 1.219
41 # with DCERCP multiplex and pending call support (upstream 4.1.18+ or 4.2.2+)
42 BuildRequires:  samba-devel >= 4.2.2
43 BuildRequires:  samba-pidl >= 4.2.2
44 BuildRequires:  sed >= 4.0
45 BuildRequires:  subunit-devel
46 BuildRequires:  talloc-devel
47 BuildRequires:  tdb-devel
48 BuildRequires:  zlib-devel
49 Requires:       %{name}-libs = %{version}-%{release}
50 Requires:       python-openchange = %{version}-%{release}
51 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
52
53 %description
54 OpenChange is a portable Open Source implementation of Microsoft
55 Exchange server and Exchange protocols. It provides a complete
56 solution to interoperate with Microsoft Outlook clients or Microsoft
57 Exchange servers.
58
59 OpenChange client-side library is used in existing messaging clients
60 and is the solution in new projects to communicate natively with
61 Microsoft Exchange and Exchange-compatible servers. OpenChange server
62 is a transparent Microsoft Exchange server replacement using native
63 Exchange protocols and does not require any plugin installation in
64 Outlook.
65
66 %description -l pl.UTF-8
67 OpenChange to przenośna, mająca otwarte źródła implementacja serwera
68 oraz protokołów Microsoft Exchange. Dostarcza kompletne rozwiązanie
69 pozwalające współpracować z klientami Microsoft Outlook oraz serwerami
70 Microsoft Exchange.
71
72 Biblioteka kliencka OpenChange jest używana przez istniejących
73 klientów pocztowych i pozwalają na natywną komunikację z serwerami
74 Microsoft Exchange oraz zgodnymi. Serwer OpenChange to przezroczysty
75 zamiennik serwera Microsoft Exchange wykorzystujący natywne protokoły
76 Exchange, nie wymagający instalowania żadnych wtyczek w Outlooku.
77
78 %package libs
79 Summary:        OpenChange client libraries
80 Summary(pl.UTF-8):      Biblioteki klienckie OpenChange
81 Group:          Libraries
82
83 %description libs
84 OpenChange client libraries.
85
86 %description libs -l pl.UTF-8
87 Biblioteki klienckie OpenChange.
88
89 %package devel
90 Summary:        Header files for OpenChange libraries
91 Summary(pl.UTF-8):      Pliki nagłówkowe bibliotek OpenChange
92 Group:          Development/Libraries
93 Requires:       %{name}-libs = %{version}-%{release}
94 Requires:       ldb-devel
95 Requires:       samba-devel >= 4.2.2
96 Requires:       talloc-devel
97 Requires:       tevent-devel
98 Requires:       zlib-devel
99
100 %description devel
101 Header files for OpenChange libraries.
102
103 %description devel -l pl.UTF-8
104 Pliki nagłówkowe bibliotek OpenChange.
105
106 %package c++
107 Summary:        C++ interface to OpenChange MAPI library
108 Summary(pl.UTF-8):      Interfejs C++ do biblioteki OpenChange MAPI
109 Group:          Libraries
110 Requires:       %{name}-libs = %{version}-%{release}
111
112 %description c++
113 C++ interface to OpenChange MAPI library.
114
115 %description c++ -l pl.UTF-8
116 Interfejs C++ do biblioteki OpenChange MAPI.
117
118 %package c++-devel
119 Summary:        Header files of C++ interface to OpenChange MAPI library
120 Summary(pl.UTF-8):      Pliki nagłówkowe interfejsu C++ do biblioteki OpenChange MAPI
121 Group:          Development/Libraries
122 Requires:       %{name}-c++ = %{version}-%{release}
123 Requires:       %{name}-devel = %{version}-%{release}
124 Requires:       libstdc++-devel
125
126 %description c++-devel
127 Header files of C++ interface to OpenChange MAPI library.
128
129 %description c++-devel -l pl.UTF-8
130 Pliki nagłówkowe interfejsu C++ do biblioteki OpenChange MAPI.
131
132 %package qt
133 Summary:        Qt interface to OpenChange MAPI library
134 Summary(pl.UTF-8):      Interfejs Qt do biblioteki OpenChange MAPI
135 Group:          Libraries
136 Requires:       %{name}-c++ = %{version}-%{release}
137 Requires:       QtCore >= 4.3.0
138 Requires:       QtGui >= 4.3.0
139
140 %description qt
141 Qt interface to OpenChange MAPI library.
142
143 %description qt -l pl.UTF-8
144 Interfejs Qt do biblioteki OpenChange MAPI.
145
146 %package qt-devel
147 Summary:        Header files of Qt interface to OpenChange MAPI library
148 Summary(pl.UTF-8):      Pliki nagłówkowe interfejsu Qt do biblioteki OpenChange MAPI
149 Group:          Development/Libraries
150 Requires:       %{name}-qt = %{version}-%{release}
151 Requires:       QtGui-devel >= 4.3.0
152
153 %description qt-devel
154 Header files of Qt interface to OpenChange MAPI library.
155
156 %description qt-devel -l pl.UTF-8
157 Pliki nagłówkowe interfejsu Qt do biblioteki OpenChange MAPI.
158
159 %package apidocs
160 Summary:        API documentation for OpenChange libraries
161 Summary(pl.UTF-8):      Dokumentacja API bibliotek OpenChange
162 Group:          Documentation
163 %if "%{_rpmversion}" >= "5"
164 BuildArch:      noarch
165 %endif
166
167 %description apidocs
168 API documentation for OpenChange libraries.
169
170 %description apidocs -l pl.UTF-8
171 Dokumentacja API bibliotek OpenChange.
172
173 %package -n python-openchange
174 Summary:        Python interface to OpenChange libraries
175 Summary(pl.UTF-8):      Interfejs Pythona do bibliotek OpenChange
176 Group:          Libraries/Python
177 Requires:       %{name}-libs = %{version}-%{release}
178
179 %description -n python-openchange
180 Python interface to OpenChange libraries.
181
182 %description -n python-openchange -l pl.UTF-8
183 Interfejs Pythona do bibliotek OpenChange.
184
185 %package -n nagios-plugin-openchange
186 Summary:        Nagios plugin to check Exchange/OpenChange services
187 Summary(pl.UTF-8):      Wtyczka Nagiosa do sprawdzania usług Exchange/OpenChange
188 Group:          Networking
189 Requires:       %{name} = %{version}-%{release}
190 Requires:       nagios
191
192 %description -n nagios-plugin-openchange
193 Nagios plugin to check Exchange/OpenChange services.
194
195 %description -n nagios-plugin-openchange -l pl.UTF-8
196 Wtyczka Nagiosa do sprawdzania usług Exchange/OpenChange.
197
198 %prep
199 %setup -q -n %{name}-%{name}-%{version}-%{cname}
200 %patch0 -p1
201 %patch1 -p1
202 %patch2 -p1
203
204 # no switch for verbose mode, enable manually :/
205 %{__sed} -i -e 's/^     @\(\$(\(PIDL\|CC\|CXX\|MOC\)\)/ \1/' Makefile
206
207 %build
208 %{__aclocal}
209 %{__autoconf}
210 %{__autoheader}
211 %configure \
212         --datadir=%{_datadir}/openchange \
213         --enable-openchange-qt4 \
214         --enable-pyopenchange \
215         --with-modulesdir=%{_libdir}/openchange/modules
216 %{__make}
217
218 %if %{with apidocs}
219 %{__make} doxygen
220 %endif
221
222 %install
223 rm -rf $RPM_BUILD_ROOT
224
225 %{__make} install \
226         DESTDIR=$RPM_BUILD_ROOT
227
228 # doxygen generated man pages are messy; use HTML docs and install man1 pages manually
229 %if 0
230 %{__make} installman \
231         DESTDIR=$RPM_BUILD_ROOT
232 %else
233 install -d $RPM_BUILD_ROOT%{_mandir}/man1
234 cp doc/man/man1/* $RPM_BUILD_ROOT%{_mandir}/man1
235 %endif
236
237 # missing from make install
238 install -d $RPM_BUILD_ROOT%{_includedir}/libqtmapi
239 cp -p qt/lib/*.h $RPM_BUILD_ROOT%{_includedir}/libqtmapi
240 cp -a libqtmapi.so.*.* libqtmapi.so $RPM_BUILD_ROOT%{_libdir}
241
242 # tests
243 %{__rm} $RPM_BUILD_ROOT%{_bindir}/{check_fasttransfer,openchange-testsuite,test_asyncnotif}
244
245 /sbin/ldconfig -n $RPM_BUILD_ROOT%{_libdir}
246
247 %py_comp $RPM_BUILD_ROOT%{py_sitedir}
248 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
249 %py_postclean
250
251 %clean
252 rm -rf $RPM_BUILD_ROOT
253
254 %post   libs -p /sbin/ldconfig
255 %postun libs -p /sbin/ldconfig
256
257 %post   c++ -p /sbin/ldconfig
258 %postun c++ -p /sbin/ldconfig
259
260 %post   qt -p /sbin/ldconfig
261 %postun qt -p /sbin/ldconfig
262
263 %files
264 %defattr(644,root,root,755)
265 %doc CHANGES.md IDL_LICENSE.txt README.md README.smbconf.md doc/howto.txt
266 %attr(755,root,root) %{_bindir}/exchange2ical
267 %attr(755,root,root) %{_bindir}/exchange2mbox
268 %attr(755,root,root) %{_bindir}/mapiprofile
269 %attr(755,root,root) %{_bindir}/mapipropsdump
270 %attr(755,root,root) %{_bindir}/mapitest
271 %attr(755,root,root) %{_bindir}/ocnotify
272 %attr(755,root,root) %{_bindir}/openchangeclient
273 %attr(755,root,root) %{_bindir}/openchangemapidump
274 %attr(755,root,root) %{_bindir}/openchangepfadmin
275 %attr(755,root,root) %{_bindir}/rpcextract
276 %attr(755,root,root) %{_bindir}/schemaIDGUID
277 %attr(755,root,root) %{_sbindir}/openchange_group
278 %attr(755,root,root) %{_sbindir}/openchange_migrate
279 %attr(755,root,root) %{_sbindir}/openchange_neworganization
280 %attr(755,root,root) %{_sbindir}/openchange_newuser
281 %attr(755,root,root) %{_sbindir}/openchange_provision
282 # XXX: dir specified by dcerpc_server.pc file, should belong to samba or samba-libs
283 %dir %{_libdir}/samba/dcerpc_server
284 %attr(755,root,root) %{_libdir}/samba/dcerpc_server/dcesrv_asyncemsmdb.so
285 %attr(755,root,root) %{_libdir}/samba/dcerpc_server/dcesrv_mapiproxy.so
286 %dir %{_libdir}/openchange
287 %dir %{_libdir}/openchange/modules
288 %dir %{_libdir}/openchange/modules/dcerpc_mapiproxy
289 %attr(755,root,root) %{_libdir}/openchange/modules/dcerpc_mapiproxy/mpm_cache.so
290 %attr(755,root,root) %{_libdir}/openchange/modules/dcerpc_mapiproxy/mpm_downgrade.so
291 %attr(755,root,root) %{_libdir}/openchange/modules/dcerpc_mapiproxy/mpm_dummy.so
292 %attr(755,root,root) %{_libdir}/openchange/modules/dcerpc_mapiproxy/mpm_pack.so
293 %dir %{_libdir}/openchange/modules/dcerpc_mapiproxy_server
294 %attr(755,root,root) %{_libdir}/openchange/modules/dcerpc_mapiproxy_server/exchange_ds_rfr.so
295 %attr(755,root,root) %{_libdir}/openchange/modules/dcerpc_mapiproxy_server/exchange_emsmdb.so
296 %attr(755,root,root) %{_libdir}/openchange/modules/dcerpc_mapiproxy_server/exchange_nsp.so
297 %dir %{_datadir}/openchange
298 %{_datadir}/openchange/mapitest
299 %dir %{_datadir}/openchange/setup
300 %{_datadir}/openchange/setup/mapistore
301 %{_datadir}/openchange/setup/openchangedb
302 %{_datadir}/openchange/setup/profiles
303 %dir %{_datadir}/samba/setup/AD
304 %{_datadir}/samba/setup/AD/oc_provision_*.ldif
305 %{_datadir}/samba/setup/AD/provision_schema_basedn_modify.ldif
306 %{_datadir}/samba/setup/AD/update_now.ldif
307 %{_datadir}/samba/setup/AD/prefixMap.txt
308 %{_mandir}/man1/exchange2ical.1*
309 %{_mandir}/man1/exchange2mbox.1*
310 %{_mandir}/man1/mapiprofile.1*
311 %{_mandir}/man1/mapitest.1*
312 %{_mandir}/man1/openchangeclient.1*
313 %{_mandir}/man1/openchangepfadmin.1*
314
315 %files libs
316 %defattr(644,root,root,755)
317 %attr(755,root,root) %{_libdir}/libmapi.so.*.*
318 %attr(755,root,root) %ghost %{_libdir}/libmapi.so.0
319 %attr(755,root,root) %{_libdir}/libmapiadmin.so.*.*
320 %attr(755,root,root) %ghost %{_libdir}/libmapiadmin.so.0
321 %attr(755,root,root) %{_libdir}/libmapiproxy.so.*.*
322 %attr(755,root,root) %ghost %{_libdir}/libmapiproxy.so.0
323 %attr(755,root,root) %{_libdir}/libmapiserver.so.*.*
324 %attr(755,root,root) %ghost %{_libdir}/libmapiserver.so.0
325 %attr(755,root,root) %{_libdir}/libmapistore.so.*.*
326 %attr(755,root,root) %ghost %{_libdir}/libmapistore.so.0
327 %attr(755,root,root) %{_libdir}/libocpf.so.*.*
328 %attr(755,root,root) %ghost %{_libdir}/libocpf.so.0
329
330 %files devel
331 %defattr(644,root,root,755)
332 %attr(755,root,root) %{_libdir}/libmapi.so
333 %attr(755,root,root) %{_libdir}/libmapiadmin.so
334 %attr(755,root,root) %{_libdir}/libmapiproxy.so
335 %attr(755,root,root) %{_libdir}/libmapiserver.so
336 %attr(755,root,root) %{_libdir}/libmapistore.so
337 %attr(755,root,root) %{_libdir}/libocpf.so
338 %{_includedir}/gen_ndr
339 %{_includedir}/libmapi
340 %{_includedir}/libmapiadmin
341 %{_includedir}/libocpf
342 %{_includedir}/mapistore
343 %{_includedir}/libmapiproxy.h
344 %{_includedir}/libmapiserver.h
345 %{_pkgconfigdir}/libmapi.pc
346 %{_pkgconfigdir}/libmapiadmin.pc
347 %{_pkgconfigdir}/libmapiproxy.pc
348 %{_pkgconfigdir}/libmapiserver.pc
349 %{_pkgconfigdir}/libmapistore.pc
350 %{_pkgconfigdir}/libocpf.pc
351
352 %files c++
353 %defattr(644,root,root,755)
354 %attr(755,root,root) %{_libdir}/libmapipp.so.*.*
355 %attr(755,root,root) %ghost %{_libdir}/libmapipp.so.0
356
357 %files c++-devel
358 %defattr(644,root,root,755)
359 %attr(755,root,root) %{_libdir}/libmapipp.so
360 %{_includedir}/libmapi++
361 %{_pkgconfigdir}/libmapi++.pc
362
363 %files qt
364 %defattr(644,root,root,755)
365 %attr(755,root,root) %{_libdir}/libqtmapi.so.*.*
366 %attr(755,root,root) %ghost %{_libdir}/libqtmapi.so.0
367
368 %files qt-devel
369 %defattr(644,root,root,755)
370 %attr(755,root,root) %{_libdir}/libqtmapi.so
371 %{_includedir}/libqtmapi
372
373 %if %{with apidocs}
374 %files apidocs
375 %defattr(644,root,root,755)
376 %doc apidocs/html/*
377 %endif
378
379 %files -n python-openchange
380 %defattr(644,root,root,755)
381 %dir %{py_sitedir}/openchange
382 %attr(755,root,root) %{py_sitedir}/openchange/mapi.so
383 %attr(755,root,root) %{py_sitedir}/openchange/mapistore.so
384 %{py_sitedir}/openchange/*.py[co]
385 %{py_sitedir}/openchange/migration
386 %{py_sitedir}/openchange/tests
387 %{py_sitedir}/openchange/utils
388 %{py_sitedir}/openchange/web
389
390 %files -n nagios-plugin-openchange
391 %defattr(644,root,root,755)
392 # R: perl, openchangeclient
393 # FIXME: use /usr/lib/nagios/plugins dir and make package noarch
394 %attr(755,root,root) %{_libdir}/nagios/check_exchange
395 # default profile database - should be /etc/...
396 #%config(noreplace) %verify(not md5 mtime size) %{_libdir}/nagios/plugins/check_exchange.ldb
This page took 0.083639 seconds and 3 git commands to generate.