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 vfst # VFST morphology backend, experimental language independent backend
7 %bcond_with vfst_exp # VFST morphology backend - experimental features
8 %bcond_with vislcg3 # VISLCG3 support (experimental)
9 %bcond_with dotnet # C#/Mono library (TODO: finish install)
10 %bcond_without python2 # CPython 2.x module
12 Summary: Library for spell checking, hyphenation and grammar checking
13 Summary(pl.UTF-8): Biblioteka do sprawdzania pisowni i gramatyki oraz przenoszenia wyrazów
20 License: MPL v1.1 or LGPL v2.1+ or GPL v2+
23 #Source0Download: https://github.com/voikko/corevoikko/releases
24 Source0: https://github.com/voikko/corevoikko/archive/rel-libvoikko-%{version}/%{name}-%{version}.tar.gz
25 # Source0-md5: 3b96834ddeab9d1442c1be2f329493f3
26 URL: https://voikko.puimula.org/
27 %if %{with tests} && %(locale -a | grep -q '^C\.utf8$'; echo $?)
28 BuildRequires: glibc-localedb-all
30 BuildRequires: autoconf >= 2.62
31 BuildRequires: automake >= 1:1.11
32 %{?with_hfst:BuildRequires: hfst-ospell-devel >= 0.5}
33 BuildRequires: libstdc++-devel >= 6:4.7
34 BuildRequires: libtool >= 2:2.2.6
35 %{?with_lttoolbox:BuildRequires: lttoolbox-devel >= 3.2.0}
36 %{?with_dotnet:BuildRequires: mono-devel}
37 BuildRequires: pkgconfig
38 %{?with_python2:BuildRequires: python-modules >= 1:2.7}
39 BuildRequires: python3 >= 1:3
40 BuildRequires: python3-modules >= 1:3
41 BuildRequires: rpm-build >= 4.6
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.5}
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
115 %description -n python-libvoikko
116 Python 2 binding for libvoikko library.
118 %description -n python-libvoikko -l pl.UTF-8
119 Wiązania Pythona 2 do biblioteki libvoikko.
121 %package -n python3-libvoikko
122 Summary: Python 3 binding for libvoikko library
123 Summary(pl.UTF-8): Wiązania Pythona 3 do biblioteki libvoikko
124 Group: Libraries/Python
125 Requires: %{name} = %{version}-%{release}
126 Requires: python3-modules >= 1:3.2
129 %description -n python3-libvoikko
130 Python 3 binding for libvoikko library.
132 %description -n python3-libvoikko -l pl.UTF-8
133 Wiązania Pythona 3 do biblioteki libvoikko.
136 %setup -q -n corevoikko-rel-libvoikko-%{version}
146 %{!?with_hfst:--disable-hfst} \
147 %{?with_lttoolbox:--enable-lttoolbox} \
148 %{!?with_vfst:--disable-vfst} \
149 %{?with_vfst_exp:--enable-expvfst} \
150 %{?with_vislcg3:--enable-vislcg3} \
151 --with-dictionary-path=%{_datadir}/voikko:%{_libdir}/voikko
153 # python script needs non-ascii locale
159 xbuild /property:configuration=Release
164 rm -rf $RPM_BUILD_ROOT
165 install -d $RPM_BUILD_ROOT{%{_libdir},%{_datadir}}/voikko
167 install -d $RPM_BUILD_ROOT%{_datadir}/voikko/{3,4}/mor-{default,standard}
170 install -d $RPM_BUILD_ROOT%{_datadir}/voikko/5/mor-{default,standard}
173 %{__make} -C libvoikko install \
174 DESTDIR=$RPM_BUILD_ROOT
176 # obsoleted by pkg-config
177 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libvoikko.la
179 install -d $RPM_BUILD_ROOT%{_datadir}/common-lisp/source/voikko
180 cp -p libvoikko/cl/*.{asd,lisp} $RPM_BUILD_ROOT%{_datadir}/common-lisp/source/voikko
183 install -d $RPM_BUILD_ROOT%{py_sitescriptdir}
184 cp -p libvoikko/python/libvoikko.py $RPM_BUILD_ROOT%{py_sitescriptdir}
185 %py_comp $RPM_BUILD_ROOT%{py_sitescriptdir}
186 %py_ocomp $RPM_BUILD_ROOT%{py_sitescriptdir}
190 install -d $RPM_BUILD_ROOT%{py3_sitescriptdir}
191 cp -p libvoikko/python/libvoikko.py $RPM_BUILD_ROOT%{py3_sitescriptdir}
192 %py3_comp $RPM_BUILD_ROOT%{py3_sitescriptdir}
193 %py3_ocomp $RPM_BUILD_ROOT%{py3_sitescriptdir}
196 rm -rf $RPM_BUILD_ROOT
198 %post -p /sbin/ldconfig
199 %postun -p /sbin/ldconfig
202 %defattr(644,root,root,755)
203 %doc libvoikko/{ChangeLog,README}
204 %attr(755,root,root) %{_bindir}/voikkogc
205 %attr(755,root,root) %{_bindir}/voikkohyphenate
206 %attr(755,root,root) %{_bindir}/voikkospell
207 %attr(755,root,root) %{_bindir}/voikkovfstc
208 %attr(755,root,root) %{_libdir}/libvoikko.so.*.*.*
209 %attr(755,root,root) %ghost %{_libdir}/libvoikko.so.1
210 # for arch-dependent dictionaries
211 %dir %{_libdir}/voikko
212 # for arch-independent dictionaries
213 %dir %{_datadir}/voikko
215 %dir %{_datadir}/voikko/3
216 %dir %{_datadir}/voikko/3/mor-default
217 %dir %{_datadir}/voikko/3/mor-standard
218 %dir %{_datadir}/voikko/4
219 %dir %{_datadir}/voikko/4/mor-default
220 %dir %{_datadir}/voikko/4/mor-standard
223 %dir %{_datadir}/voikko/5
224 %dir %{_datadir}/voikko/5/mor-default
225 %dir %{_datadir}/voikko/5/mor-standard
227 %{_mandir}/man1/voikkogc.1*
228 %{_mandir}/man1/voikkohyphenate.1*
229 %{_mandir}/man1/voikkospell.1*
230 %{_mandir}/man1/voikkovfstc.1*
233 %defattr(644,root,root,755)
234 %attr(755,root,root) %{_libdir}/libvoikko.so
235 %{_includedir}/libvoikko
236 %{_pkgconfigdir}/libvoikko.pc
239 %defattr(644,root,root,755)
240 %{_libdir}/libvoikko.a
242 %files -n common-lisp-voikko
243 %defattr(644,root,root,755)
244 %{_datadir}/common-lisp/source/voikko
247 %files -n python-libvoikko
248 %defattr(644,root,root,755)
249 %{py_sitescriptdir}/libvoikko.py[co]
252 %files -n python3-libvoikko
253 %defattr(644,root,root,755)
254 %{py3_sitescriptdir}/libvoikko.py
255 %{py3_sitescriptdir}/__pycache__/libvoikko.cpython-*.py[co]