+# TODO
+# - nagios plugin (see it's files section for details)
#
# Conditional build:
%bcond_without apidocs # do not build and package API docs
-#
+
+%define cname VULCAN
Summary: OpenChange - portable implementation of MS Exchange Server and Exchange protocols
Summary(pl.UTF-8): OpenChange - przenośna implementacja serwera oraz protokołów MS Exchange
Name: openchange
Version: 2.3
-Release: 1
+Release: 9
License: GPL v3+
Group: Libraries
-%define cname VULCAN
Source0: https://github.com/openchange/openchange/archive/%{name}-%{version}-%{cname}.tar.gz
# Source0-md5: 96c13c78c2bcbd7040f7848746284b9f
Patch0: %{name}-samba-private.patch
Patch1: %{name}-link.patch
+Patch2: flex2.6.patch
URL: http://www.openchange.org/
BuildRequires: QtCore-devel >= 4.3.0
BuildRequires: QtGui-devel >= 4.3.0
BuildRequires: pkgconfig >= 1:0.20
BuildRequires: popt-devel
BuildRequires: python-devel >= 1:2.7
+BuildRequires: python-samba >= 4.2.2
BuildRequires: rpmbuild(macros) >= 1.219
-# with DCERCP multiplex and pending call support (upstream 4.1.18+ or 4.2.>1)
-BuildRequires: samba-devel >= 4.2.1
-BuildRequires: samba-pidl >= 4.2.1
+# with DCERCP multiplex and pending call support (upstream 4.1.18+ or 4.2.2+)
+BuildRequires: samba-devel >= 4.2.2
+BuildRequires: samba-pidl >= 4.2.2
BuildRequires: sed >= 4.0
BuildRequires: subunit-devel
BuildRequires: talloc-devel
Requires: python-openchange = %{version}-%{release}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-# libraries use symbols also from samba libs pulled indirectly, from outside %{_libdir}
-#define filterout_ld -Wl,--no-copy-dt-needed-entries
-
%description
OpenChange is a portable Open Source implementation of Microsoft
Exchange server and Exchange protocols. It provides a complete
Summary(pl.UTF-8): Pliki nagłówkowe bibliotek OpenChange
Group: Development/Libraries
Requires: %{name}-libs = %{version}-%{release}
+Requires: ldb-devel
+Requires: samba-devel >= 4.2.2
+Requires: talloc-devel
+Requires: tevent-devel
+Requires: zlib-devel
%description devel
Header files for OpenChange libraries.
Summary: C++ interface to OpenChange MAPI library
Summary(pl.UTF-8): Interfejs C++ do biblioteki OpenChange MAPI
Group: Libraries
+Requires: %{name}-libs = %{version}-%{release}
%description c++
C++ interface to OpenChange MAPI library.
Summary(pl.UTF-8): Pliki nagłówkowe interfejsu C++ do biblioteki OpenChange MAPI
Group: Development/Libraries
Requires: %{name}-c++ = %{version}-%{release}
+Requires: %{name}-devel = %{version}-%{release}
+Requires: libstdc++-devel
%description c++-devel
Header files of C++ interface to OpenChange MAPI library.
Summary: Qt interface to OpenChange MAPI library
Summary(pl.UTF-8): Interfejs Qt do biblioteki OpenChange MAPI
Group: Libraries
+Requires: %{name}-c++ = %{version}-%{release}
+Requires: QtCore >= 4.3.0
+Requires: QtGui >= 4.3.0
%description qt
Qt interface to OpenChange MAPI library.
Summary(pl.UTF-8): Pliki nagłówkowe interfejsu Qt do biblioteki OpenChange MAPI
Group: Development/Libraries
Requires: %{name}-qt = %{version}-%{release}
+Requires: QtGui-devel >= 4.3.0
%description qt-devel
Header files of Qt interface to OpenChange MAPI library.
Summary: API documentation for OpenChange libraries
Summary(pl.UTF-8): Dokumentacja API bibliotek OpenChange
Group: Documentation
+%if "%{_rpmversion}" >= "5"
+BuildArch: noarch
+%endif
%description apidocs
API documentation for OpenChange libraries.
%setup -q -n %{name}-%{name}-%{version}-%{cname}
%patch0 -p1
%patch1 -p1
+%patch2 -p1
# no switch for verbose mode, enable manually :/
%{__sed} -i -e 's/^ @\(\$(\(PIDL\|CC\|CXX\|MOC\)\)/ \1/' Makefile
%post c++ -p /sbin/ldconfig
%postun c++ -p /sbin/ldconfig
-%post libs -p /sbin/ldconfig
-%postun libs -p /sbin/ldconfig
+%post qt -p /sbin/ldconfig
+%postun qt -p /sbin/ldconfig
%files
%defattr(644,root,root,755)
%files -n nagios-plugin-openchange
%defattr(644,root,root,755)
# R: perl, openchangeclient
+# FIXME: use /usr/lib/nagios/plugins dir and make package noarch
%attr(755,root,root) %{_libdir}/nagios/check_exchange
# default profile database - should be /etc/...
#%config(noreplace) %verify(not md5 mtime size) %{_libdir}/nagios/plugins/check_exchange.ldb