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