]> git.pld-linux.org Git - packages/liborcus.git/blob - liborcus.spec
3b047ce58d74e1fd365a4f91851888ffcbace33b
[packages/liborcus.git] / liborcus.spec
1 #
2 # Conditional build:
3 %bcond_without  ixion           # ixion-based spreadsheet model support
4 %bcond_without  python          # Python 3 binding
5 %bcond_without  apidocs         # Sphinx documentation
6 %bcond_without  static_libs     # static library
7 #
8 Summary:        Standalone file import filter library for spreadsheet documents
9 Summary(pl.UTF-8):      Biblioteka samodzielnego filtra importującego pliki dla arkuszy kalkulacyjnych
10 Name:           liborcus
11 # keep in sync with BuildRequires in libreoffice.spec
12 Version:        0.17.2
13 Release:        1
14 License:        MPL v2.0
15 Group:          Libraries
16 #Source0Download: https://gitlab.com/orcus/orcus/-/releases
17 Source0:        https://kohei.us/files/orcus/src/%{name}-%{version}.tar.xz
18 # Source0-md5:  4df3646ca736fa0d04965e25fee4898e
19 Patch0:         %{name}-flags.patch
20 URL:            https://gitlab.com/orcus/orcus
21 BuildRequires:  autoconf >= 2.65
22 BuildRequires:  automake >= 1:1.11
23 BuildRequires:  boost-devel >= 1.36
24 %if %{with ixion}
25 BuildRequires:  ixion-devel >= 0.17.0
26 BuildRequires:  ixion-devel < 0.18
27 %endif
28 BuildRequires:  libstdc++-devel >= 6:7
29 BuildRequires:  libtool >= 2:1.5
30 BuildRequires:  mdds-devel >= 2.0.0
31 BuildRequires:  mdds-devel < 2.1
32 BuildRequires:  pkgconfig >= 1:0.20
33 %{?with_python:BuildRequires:   python3-devel >= 1:3.2}
34 BuildRequires:  rpm-build >= 4.6
35 BuildRequires:  tar >= 1:1.22
36 BuildRequires:  xz
37 BuildRequires:  zlib-devel
38 %if %{with apidocs}
39 BuildRequires:  doxygen
40 BuildRequires:  python3-breathe
41 BuildRequires:  python3-sphinx_argparse
42 BuildRequires:  python3-sphinx_rtd_theme
43 BuildRequires:  sphinx-pdg-3
44 %endif
45 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
46
47 %description
48 liborcus is a standalone file import filter library for spreadsheet
49 documents. Currently under development are ODS, XLSX and CSV import
50 filters.
51
52 %description -l pl.UTF-8
53 liborcus to biblioteka samodzielnego filtra importującego pliki dla
54 arkuszy kalkulacyjnych. Obecnie rozwijane są filtry importujące
55 dokumenty ODS, XLSX i CSV.
56
57 %package devel
58 Summary:        Header files for liborcus
59 Summary(pl.UTF-8):      Pliki nagłówkowe biblioteki liborcus
60 Group:          Development/Libraries
61 Requires:       %{name} = %{version}-%{release}
62 Requires:       boost-devel >= 1.36
63 Requires:       libstdc++-devel >= 6:7
64
65 %description devel
66 This package contains the header files for developing applications
67 that use liborcus.
68
69 %description devel -l pl.UTF-8
70 Ten pakiet zawiera pliki nagłówkowe do tworzenia aplikacji
71 wykorzystujących bibliotekę liborcus.
72
73 %package static
74 Summary:        Static liborcus library
75 Summary(pl.UTF-8):      Statyczna biblioteka liborcus
76 Group:          Development/Libraries
77 Requires:       %{name}-devel = %{version}-%{release}
78
79 %description static
80 Static liborcus library.
81
82 %description static -l pl.UTF-8
83 Statyczna biblioteka liborcus.
84
85 %package spreadsheet
86 Summary:        liborcus spreadsheet model library
87 Summary(pl.UTF-8):      Biblioteka liborcus spreadsheet model
88 Group:          Libraries
89 Requires:       %{name} = %{version}-%{release}
90 Requires:       ixion >= 0.17.0
91
92 %description spreadsheet
93 liborcus spreadsheet model library.
94
95 %description spreadsheet -l pl.UTF-8
96 Biblioteka liborcus spreadsheet model (modelu arkuszy kalkulacyjnych).
97
98 %package spreadsheet-devel
99 Summary:        Development files for liborcus spreadsheet model library
100 Summary(pl.UTF-8):      Pliki programistyczne biblioteki liborcus spreadsheet model
101 Group:          Development/Libraries
102 Requires:       %{name}-devel = %{version}-%{release}
103 Requires:       %{name}-spreadsheet = %{version}-%{release}
104 Requires:       ixion-devel >= 0.17.0
105
106 %description spreadsheet-devel
107 Development files for liborcus spreadsheet model library.
108
109 %description spreadsheet-devel -l pl.UTF-8
110 Pliki programistyczne biblioteki liborcus spreadsheet model.
111
112 %package spreadsheet-static
113 Summary:        Static liborcus spreadsheet model library
114 Summary(pl.UTF-8):      Biblioteka statyczna liborcus spreadsheet model
115 Group:          Development/Libraries
116 Requires:       %{name}-spreadsheet-devel = %{version}-%{release}
117
118 %description spreadsheet-static
119 Static liborcus spreadsheet model library.
120
121 %description spreadsheet-static -l pl.UTF-8
122 Biblioteka statyczna liborcus spreadsheet model.
123
124 %package apidocs
125 Summary:        API documentation for orcus libraries
126 Summary(pl.UTF-8):      Dokumentacja API bibliotek orcus
127 Group:          Documentation
128 BuildArch:      noarch
129
130 %description apidocs
131 API documentation for orcus libraries.
132
133 %description apidocs -l pl.UTF-8
134 Dokumentacja API bibliotek orcus.
135
136 %package -n python3-orcus
137 Summary:        Python 3 binding for liborcus library
138 Summary(pl.UTF-8):      Wiązanie Pythona 3 do biblioteki liborcus
139 Group:          Libraries/Python
140 Requires:       %{name} = %{version}-%{release}
141 Requires:       python3-libs >= 1:3.2
142
143 %description -n python3-orcus
144 Python 3 binding for liborcus library.
145
146 %description -n python3-orcus -l pl.UTF-8
147 Wiązanie Pythona 3 do biblioteki liborcus.
148
149 %prep
150 %setup -q
151 %patch0 -p1
152
153 %build
154 %{__libtoolize}
155 %{__aclocal} -I m4
156 %{__autoconf}
157 %{__autoheader}
158 %{__automake}
159 %configure \
160         am_cv_python_pyexecdir=%{py3_sitedir} \
161         am_cv_python_pythondir=%{py3_sitescriptdir} \
162         --disable-debug \
163         %{!?with_python:--disable-python} \
164         --disable-silent-rules \
165         %{!?with_ixion:--disable-spreadsheet-model} \
166         %{!?with_static_libs:--disable-static} \
167         --disable-werror \
168         --with-pic
169
170 %{__make}
171
172 %if %{with apidocs}
173 cd doc
174 doxygen doxygen.conf
175 sphinx-build-3 -b html . _build
176 %endif
177
178 %install
179 rm -rf $RPM_BUILD_ROOT
180
181 %{__make} install \
182         DESTDIR=$RPM_BUILD_ROOT
183
184 # obsoleted by pkg-config
185 %{__rm} $RPM_BUILD_ROOT%{_libdir}/liborcus-*.la
186
187 %if %{with python}
188 %{__rm} $RPM_BUILD_ROOT%{py3_sitedir}/*.la
189 %if %{with static_libs}
190 %{__rm} $RPM_BUILD_ROOT%{py3_sitedir}/*.a
191 %endif
192 %endif
193
194 %clean
195 rm -rf $RPM_BUILD_ROOT
196
197 %post   -p /sbin/ldconfig
198 %postun -p /sbin/ldconfig
199
200 %post   spreadsheet -p /sbin/ldconfig
201 %postun spreadsheet -p /sbin/ldconfig
202
203 %files
204 %defattr(644,root,root,755)
205 %doc AUTHORS CHANGELOG ChangeLog LICENSE README.md
206 %attr(755,root,root) %{_bindir}/orcus-css-dump
207 %attr(755,root,root) %{_bindir}/orcus-detect
208 %if %{without ixion}
209 # when building with ixion, orcus-json supports map mode which uses spreadsheet-model library, so it's packaged in -spreadsheet then
210 %attr(755,root,root) %{_bindir}/orcus-json
211 %endif
212 %attr(755,root,root) %{_bindir}/orcus-mso-encryption
213 %attr(755,root,root) %{_bindir}/orcus-yaml
214 %attr(755,root,root) %{_bindir}/orcus-zip-dump
215 %attr(755,root,root) %{_libdir}/liborcus-0.17.so.*.*.*
216 %attr(755,root,root) %ghost %{_libdir}/liborcus-0.17.so.0
217 %attr(755,root,root) %{_libdir}/liborcus-mso-0.17.so.*.*.*
218 %attr(755,root,root) %ghost %{_libdir}/liborcus-mso-0.17.so.0
219 %attr(755,root,root) %{_libdir}/liborcus-parser-0.17.so.*.*.*
220 %attr(755,root,root) %ghost %{_libdir}/liborcus-parser-0.17.so.0
221
222 %files devel
223 %defattr(644,root,root,755)
224 %attr(755,root,root) %{_libdir}/liborcus-0.17.so
225 %attr(755,root,root) %{_libdir}/liborcus-mso-0.17.so
226 %attr(755,root,root) %{_libdir}/liborcus-parser-0.17.so
227 %{_includedir}/liborcus-0.17
228 %{_pkgconfigdir}/liborcus-0.17.pc
229
230 %if %{with static_libs}
231 %files static
232 %defattr(644,root,root,755)
233 %{_libdir}/liborcus-0.17.a
234 %{_libdir}/liborcus-mso-0.17.a
235 %{_libdir}/liborcus-parser-0.17.a
236 %endif
237
238 %if %{with ixion}
239 %files spreadsheet
240 %defattr(644,root,root,755)
241 %attr(755,root,root) %{_bindir}/orcus-csv
242 %attr(755,root,root) %{_bindir}/orcus-gnumeric
243 %attr(755,root,root) %{_bindir}/orcus-json
244 %attr(755,root,root) %{_bindir}/orcus-styles-ods
245 %attr(755,root,root) %{_bindir}/orcus-ods
246 %attr(755,root,root) %{_bindir}/orcus-xls-xml
247 %attr(755,root,root) %{_bindir}/orcus-xlsx
248 %attr(755,root,root) %{_bindir}/orcus-xml
249 %attr(755,root,root) %{_libdir}/liborcus-spreadsheet-model-0.17.so.*.*.*
250 %attr(755,root,root) %ghost %{_libdir}/liborcus-spreadsheet-model-0.17.so.0
251
252 %files spreadsheet-devel
253 %defattr(644,root,root,755)
254 %attr(755,root,root) %{_libdir}/liborcus-spreadsheet-model-0.17.so
255 %{_pkgconfigdir}/liborcus-spreadsheet-model-0.17.pc
256
257 %if %{with static_libs}
258 %files spreadsheet-static
259 %defattr(644,root,root,755)
260 %{_libdir}/liborcus-spreadsheet-model-0.17.a
261 %endif
262 %endif
263
264 %if %{with apidocs}
265 %files apidocs
266 %defattr(644,root,root,755)
267 %doc doc/_build/{_static,cpp,overview,python,*.html,*.js}
268 %endif
269
270 %if %{with python}
271 %files -n python3-orcus
272 %defattr(644,root,root,755)
273 %attr(755,root,root) %{py3_sitedir}/_orcus.so
274 %attr(755,root,root) %{py3_sitedir}/_orcus_json.so
275 %{py3_sitescriptdir}/orcus
276 %endif
This page took 0.06694 seconds and 3 git commands to generate.