1 # TODO: java (BR: maven), csharp, js bindings
4 %bcond_without hfst # HFST morphology backend
5 %bcond_with lttoolbox # lttoolbox morphology backend (experimental)
6 %bcond_without malaga # Finnish morphology backend (formerly default, now deprecated)
7 %bcond_without vfst # VFST morphology backend, experimental language independent backend
8 %bcond_with vfst_exp # VFST morphology backend - experimental features
9 %bcond_with vislcg3 # VISLCG3 support (experimental)
10 %bcond_with dotnet # C#/Mono library (TODO: finish install)
11 %bcond_without python2 # CPython 2.x module
13 Summary: Library for spell checking, hyphenation and grammar checking
14 Summary(pl.UTF-8): Biblioteka do sprawdzania pisowni i gramatyki oraz przenoszenia wyrazów
18 %if %{with malaga} || %{with lttoolbox}
21 License: MPL v1.1 or LGPL v2.1+ or GPL v2+
24 #Source0Download: https://github.com/voikko/corevoikko/releases
25 Source0: https://github.com/voikko/corevoikko/archive/rel-libvoikko-%{version}/%{name}-%{version}.tar.gz
26 # Source0-md5: 94894137eadc507cf61c5bfb03d2656f
27 URL: http://voikko.puimula.org/
28 %if %{with tests} && %(locale -a | grep -q '^C\.UTF-8$'; echo $?)
29 BuildRequires: glibc-localedb-all
31 BuildRequires: autoconf >= 2.60
32 BuildRequires: automake >= 1:1.10
33 %{?with_hfst:BuildRequires: hfst-ospell-devel >= 0.2}
34 BuildRequires: libstdc++-devel >= 6:4.7
35 BuildRequires: libtool >= 2:2.2.6
36 %{?with_lttoolbox:BuildRequires: lttoolbox-devel >= 3.2.0}
37 %{?with_dotnet:BuildRequires: mono-devel}
38 BuildRequires: pkgconfig
39 %{?with_python2:BuildRequires: python-modules >= 1:2.7}
40 BuildRequires: python3 >= 1:3
41 BuildRequires: python3-modules >= 1:3
42 BuildRequires: rpm-pythonprov
43 BuildRequires: rpmbuild(macros) >= 1.612
44 %{?with_vislcg3:BuildRequires: tinyxml2-devel}
45 %{?with_vislcg3:BuildRequires: vislcg3-devel >= 0.9}
46 %{?with_hfst:Requires: hfst-ospell >= 0.2}
47 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
50 libvoikko is a library of free Finnish language tools. The library is
51 written in C++ and uses a left associative grammar for describing the
52 morphology of Finnish language. The morphology is developed using
53 Malaga natural language development tool.
55 libvoikko provides spell checking, hyphenation, grammar checking and
56 morphological analysis for Finnish language. Support for other
57 languages is in experimental state.
59 %description -l pl.UTF-8
60 libvoikko to biblioteka wolnodostępnych narzędzi dla języka fińskiego.
61 Jest napisana w C++ i do opisu morfologii języka fińskiego
62 wykorzystuje gramatykę wiązaną lewostronnie. Morfologię tworzy się
63 przy użyciu Malagi - narzędzia do programowania gramatyk języków
66 libvoikko udostępnia sprawdzanie pisowni, przenoszenie wyrazów,
67 sprawdzanie gramatyki oraz analizę morfologiczną dla języka fińskiego.
68 Obsługa innych języków jest w stanie eksperymentalnym.
71 Summary: Header files for libvoikko library
72 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki libvoikko
73 Group: Development/Libraries
74 Requires: %{name} = %{version}-%{release}
77 Header files for libvoikko library.
79 %description devel -l pl.UTF-8
80 Pliki nagłówkowe biblioteki libvoikko.
83 Summary: Static libvoikko library
84 Summary(pl.UTF-8): Statyczna biblioteka libvoikko
85 Group: Development/Libraries
86 Requires: %{name}-devel = %{version}-%{release}
89 Static libvoikko library.
91 %description static -l pl.UTF-8
92 Statyczna biblioteka libvoikko.
94 %package -n common-lisp-voikko
95 Summary: Common Lisp binding for libvoikko library
96 Summary(pl.UTF-8): Wiązania Common Lispa do biblioteki libvoikko
98 Requires: %{name} = %{version}-%{release}
99 Requires: common-lisp-controller
101 %description -n common-lisp-voikko
102 Common Lisp binding for libvoikko library.
104 %description -n common-lisp-voikko -l pl.UTF-8
105 Wiązania Common Lispa do biblioteki libvoikko.
107 %package -n python-libvoikko
108 Summary: Python 2 binding for libvoikko library
109 Summary(pl.UTF-8): Wiązania Pythona 2 do biblioteki libvoikko
110 Group: Libraries/Python
111 Requires: %{name} = %{version}-%{release}
112 Requires: python-modules >= 1:2.7
114 %description -n python-libvoikko
115 Python 2 binding for libvoikko library.
117 %description -n python-libvoikko -l pl.UTF-8
118 Wiązania Pythona 2 do biblioteki libvoikko.
120 %package -n python3-libvoikko
121 Summary: Python 3 binding for libvoikko library
122 Summary(pl.UTF-8): Wiązania Pythona 3 do biblioteki libvoikko
123 Group: Libraries/Python
124 Requires: %{name} = %{version}-%{release}
125 Requires: python3-modules >= 1:3.2
127 %description -n python3-libvoikko
128 Python 3 binding for libvoikko library.
130 %description -n python3-libvoikko -l pl.UTF-8
131 Wiązania Pythona 3 do biblioteki libvoikko.
134 %setup -q -n corevoikko-rel-libvoikko-%{version}
144 %{!?with_hfst:--disable-hfst} \
145 %{?with_lttoolbox:--enable-lttoolbox} \
146 %{?with_malaga:--enable-malaga} \
147 %{!?with_vfst:--disable-vfst} \
148 %{?with_vfst_exp:--enable-expvfst} \
149 %{?with_vislcg3:--enable-vislcg3} \
150 --with-dictionary-path=%{_datadir}/voikko:%{_libdir}/voikko
152 # python script needs non-ascii locale
158 xbuild /property:configuration=Release
163 rm -rf $RPM_BUILD_ROOT
164 install -d $RPM_BUILD_ROOT{%{_libdir},%{_datadir}}/voikko
166 install -d $RPM_BUILD_ROOT%{_libdir}/voikko/2/mor-{default,standard}
169 install -d $RPM_BUILD_ROOT%{_datadir}/voikko/{3,4}/mor-{default,standard}
172 install -d $RPM_BUILD_ROOT%{_datadir}/voikko/5/mor-{default,standard}
175 %{__make} -C libvoikko install \
176 DESTDIR=$RPM_BUILD_ROOT
178 # obsoleted by pkg-config
179 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libvoikko.la
181 install -d $RPM_BUILD_ROOT%{_datadir}/common-lisp/source/voikko
182 cp -p libvoikko/cl/*.{asd,lisp} $RPM_BUILD_ROOT%{_datadir}/common-lisp/source/voikko
185 install -d $RPM_BUILD_ROOT%{py_sitescriptdir}
186 cp -p libvoikko/python/libvoikko.py $RPM_BUILD_ROOT%{py_sitescriptdir}
187 %py_comp $RPM_BUILD_ROOT%{py_sitescriptdir}
188 %py_ocomp $RPM_BUILD_ROOT%{py_sitescriptdir}
192 install -d $RPM_BUILD_ROOT%{py3_sitescriptdir}
193 cp -p libvoikko/python/libvoikko.py $RPM_BUILD_ROOT%{py3_sitescriptdir}
194 %py3_comp $RPM_BUILD_ROOT%{py3_sitescriptdir}
195 %py3_ocomp $RPM_BUILD_ROOT%{py3_sitescriptdir}
198 rm -rf $RPM_BUILD_ROOT
200 %post -p /sbin/ldconfig
201 %postun -p /sbin/ldconfig
204 %defattr(644,root,root,755)
205 %doc libvoikko/{ChangeLog,README}
206 %attr(755,root,root) %{_bindir}/voikkogc
207 %attr(755,root,root) %{_bindir}/voikkohyphenate
208 %attr(755,root,root) %{_bindir}/voikkospell
209 %attr(755,root,root) %{_bindir}/voikkovfstc
210 %attr(755,root,root) %{_libdir}/libvoikko.so.*.*.*
211 %attr(755,root,root) %ghost %{_libdir}/libvoikko.so.1
212 # for arch-dependent dictionaries
213 %dir %{_libdir}/voikko
215 %dir %{_libdir}/voikko/2
216 %dir %{_libdir}/voikko/2/mor-default
217 %dir %{_libdir}/voikko/2/mor-standard
219 # for arch-independent dictionaries
220 %dir %{_datadir}/voikko
222 %dir %{_datadir}/voikko/3
223 %dir %{_datadir}/voikko/3/mor-default
224 %dir %{_datadir}/voikko/3/mor-standard
225 %dir %{_datadir}/voikko/4
226 %dir %{_datadir}/voikko/4/mor-default
227 %dir %{_datadir}/voikko/4/mor-standard
230 %dir %{_datadir}/voikko/5
231 %dir %{_datadir}/voikko/5/mor-default
232 %dir %{_datadir}/voikko/5/mor-standard
234 %{_mandir}/man1/voikkogc.1*
235 %{_mandir}/man1/voikkohyphenate.1*
236 %{_mandir}/man1/voikkospell.1*
237 %{_mandir}/man1/voikkovfstc.1*
240 %defattr(644,root,root,755)
241 %attr(755,root,root) %{_libdir}/libvoikko.so
242 %{_includedir}/libvoikko
243 %{_pkgconfigdir}/libvoikko.pc
246 %defattr(644,root,root,755)
247 %{_libdir}/libvoikko.a
249 %files -n common-lisp-voikko
250 %defattr(644,root,root,755)
251 %{_datadir}/common-lisp/source/voikko
254 %files -n python-libvoikko
255 %defattr(644,root,root,755)
256 %{py_sitescriptdir}/libvoikko.py[co]
259 %files -n python3-libvoikko
260 %defattr(644,root,root,755)
261 %{py3_sitescriptdir}/libvoikko.py
262 %{py3_sitescriptdir}/__pycache__/libvoikko.cpython-*.py[co]