]> git.pld-linux.org Git - packages/libkolabxml.git/blob - libkolabxml.spec
da30658a4eb91d10a44c07fe56c5f0c0cae791ce
[packages/libkolabxml.git] / libkolabxml.spec
1 #
2 # Conditional build:
3 %bcond_without  tests           # build without tests
4 %bcond_without  php             # PHP bindings
5 %bcond_without  python          # Python bindings
6
7 %define         php_name        php55
8 Summary:        Kolab XML format collection parser library
9 Name:           libkolabxml
10 Version:        1.0.1
11 Release:        9
12 License:        LGPL v3+
13 Group:          Libraries
14 Source0:        http://mirror.kolabsys.com/pub/releases/%{name}-%{version}.tar.gz
15 # Source0-md5:  7adccfa0ed91ac954c815e8d13f334ee
16 URL:            http://www.kolab.org/
17 BuildRequires:  QtCore-devel
18 BuildRequires:  boost-devel
19 BuildRequires:  cmake >= 2.6
20 BuildRequires:  curl-devel
21 BuildRequires:  e2fsprogs-devel
22 BuildRequires:  kde4-kdelibs-devel
23 BuildRequires:  kde4-kdepimlibs-devel
24 BuildRequires:  libstdc++-devel
25 BuildRequires:  libuuid-devel
26 BuildRequires:  qt4-build
27 BuildRequires:  rpmbuild(macros) >= 1.600
28 BuildRequires:  swig
29 BuildRequires:  xerces-c-devel
30 BuildRequires:  xsd
31 %if %{with python}
32 BuildRequires:  python-devel
33 BuildRequires:  swig-python
34 %endif
35 %if %{with php}
36 BuildRequires:  %{php_name}-cli
37 BuildRequires:  %{php_name}-program
38 BuildRequires:  %{php_name}-devel
39 BuildRequires:  swig-php
40 %endif
41 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
42
43 %description
44 The libkolabxml parsing library interprets Kolab XML formats (xCal,
45 xCard) with bindings for Python, PHP and other languages. The language
46 bindings are available through sub-packages.
47
48 %package devel
49 Summary:        Kolab XML library development headers
50 Group:          Development/Libraries
51 Requires:       %{name} = %{version}-%{release}
52 Requires:       QtCore-devel
53 Requires:       boost-devel
54 Requires:       cmake >= 2.6
55 Requires:       curl-devel
56 Requires:       e2fsprogs-devel
57 Requires:       kde4-kdelibs-devel
58 Requires:       kde4-kdepimlibs-devel
59 Requires:       libstdc++-devel
60 Requires:       libuuid-devel
61 Requires:       swig
62 Requires:       xerces-c-devel
63 Requires:       xsd
64
65 %description devel
66 Development headers for the Kolab XML libraries.
67
68 %package -n %{php_name}-kolabformat
69 Summary:        PHP bindings for libkolabxml
70 Group:          Development/Languages/PHP
71 Requires:       %{name} = %{version}-%{release}
72 %{?requires_php_extension}
73
74 %description -n %{php_name}-kolabformat
75 The PHP kolabformat package offers a comprehensible PHP library using
76 the bindings provided through libkolabxml.
77
78 %package -n python-kolabformat
79 Summary:        Python bindings for libkolabxml
80 Group:          Libraries
81 Requires:       %{name} = %{version}-%{release}
82
83 %description -n python-kolabformat
84 The PyKolab format package offers a comprehensive Python library using
85 the bindings provided through libkolabxml.
86
87 %prep
88 %setup -q
89
90 %build
91 install -d build
92 cd build
93 %cmake \
94         -Wno-fatal-errors -Wno-errors \
95         -DCMAKE_SKIP_RPATH=ON \
96         -DCMAKE_PREFIX_PATH=%{_libdir} \
97         -DINCLUDE_INSTALL_DIR=%{_includedir}/kolabxml \
98         -DLIB_INSTALL_DIR:PATH=%{_libdir} \
99 %if %{with php}
100         -DPHP_EXECUTABLE=%{__php} \
101         -DPHP_BINDINGS=ON \
102         -DPHP_INSTALL_DIR=%{php_extensiondir} \
103 %endif
104 %if %{with python}
105         -DPYTHON_BINDINGS=ON \
106         -DPYTHON_INCLUDE_DIRS=%{python_include} \
107         -DPYTHON_INSTALL_DIR=%{py_sitedir} \
108 %endif
109         ..
110 %{__make}
111 cd ..
112
113 %if %{with tests}
114 cd build
115 # Make sure libkolabxml.so.* is found, otherwise the tests fail
116 export LD_LIBRARY_PATH=$(pwd)/src
117 cd tests
118 ./bindingstest
119 ./conversiontest
120 ./parsingtest
121 cd ..
122 %if %{with php}
123 cd src/php
124 php -d 'enable_dl=On' '-dextension=../../src/php/kolabformat.so' test.php
125 cd ..
126 %endif
127 %if %{with python}
128 cd python
129 # FIXME
130 %{__python} test.py ||
131 cd ..
132 %endif
133 %endif
134
135 %install
136 rm -rf $RPM_BUILD_ROOT
137 %{__make} -C build install \
138         INSTALL='install -p' \
139         DESTDIR=$RPM_BUILD_ROOT
140
141 %if %{with php}
142 install -d $RPM_BUILD_ROOT{%{php_sysconfdir}/conf.d,%{php_data_dir}}
143 mv $RPM_BUILD_ROOT%{php_extensiondir}/kolabformat.php $RPM_BUILD_ROOT%{php_data_dir}/kolabformat.php
144 cat > $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d/kolabformat.ini <<EOF
145 ; Enable kolabformat extension module
146 extension=kolabformat.so
147 EOF
148 %endif
149
150 %if %{with python}
151 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
152 %py_comp $RPM_BUILD_ROOT%{py_sitedir}
153 %py_postclean
154 %endif
155
156 %clean
157 rm -rf $RPM_BUILD_ROOT
158
159 %post   -p /sbin/ldconfig
160 %postun -p /sbin/ldconfig
161
162 %files
163 %defattr(644,root,root,755)
164 %doc DEVELOPMENT NEWS README
165 %attr(755,root,root) %{_libdir}/libkolabxml.so.*.*
166 %attr(755,root,root) %ghost %{_libdir}/libkolabxml.so.1
167
168 %files devel
169 %defattr(644,root,root,755)
170 %{_includedir}/kolabxml
171 %{_libdir}/libkolabxml.so
172 %{_libdir}/cmake/Libkolabxml
173
174 %if %{with php}
175 %files -n %{php_name}-kolabformat
176 %defattr(644,root,root,755)
177 %config(noreplace) %{php_sysconfdir}/conf.d/kolabformat.ini
178 %attr(755,root,root) %{php_extensiondir}/kolabformat.so
179 %{php_data_dir}/kolabformat.php
180 %endif
181
182 %if %{with python}
183 %files -n python-kolabformat
184 %defattr(644,root,root,755)
185 %attr(755,root,root) %{py_sitedir}/_kolabformat.so
186 %{py_sitedir}/kolabformat.py[co]
187 %endif
This page took 0.085949 seconds and 2 git commands to generate.