3 %bcond_without static_libs # static library
5 Summary: Generic formula compulation library
6 Summary(pl.UTF-8): Ogólna biblioteka do obliczania wzorów
12 #Source0Download: https://gitlab.com/ixion/ixion
13 Source0: http://kohei.us/files/ixion/src/libixion-%{version}.tar.xz
14 # Source0-md5: 45fe042cb8d8acee771815d8a27e8647
15 Patch0: %{name}-flags.patch
16 URL: https://gitlab.com/ixion/ixion
17 BuildRequires: autoconf >= 2.63
18 BuildRequires: automake >= 1:1.11
19 BuildRequires: boost-devel >= 1.36
20 BuildRequires: libstdc++-devel >= 6:4.7
21 BuildRequires: libtool >= 2:2
22 BuildRequires: mdds-devel >= 1.4.0
23 BuildRequires: pkgconfig
24 BuildRequires: python3 >= 1:3.4
25 BuildRequires: python3-devel >= 1:3.4
26 BuildRequires: rpmbuild(macros) >= 1.734
27 BuildRequires: tar >= 1:1.22
29 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
32 Ixion aims to provide a library for calculating the results of formula
33 expressions stored in multiple named targets, or "cells". The cells
34 can be referenced from each other, and the library takes care of
35 resolving their dependencies automatically upon calculation. The
36 caller can run the calculation routine either in a single-threaded
37 mode, or a multi-threaded mode. The library also supports
38 re-calculation where the contents of one or more cells have been
39 modified since the last calculation, and a partial calculation of only
40 the affected cells gets performed. It is written entirely in C++, and
41 makes extensive use of the boost library to achieve portability across
44 %description -l pl.UTF-8
45 Projekt Ixion ma na celu dostarczenie biblioteki do obliczania wyników
46 wyrażeń określonych wzorami zapisanymi w wielu nazwanych miejscach -
47 "komórkach". Komórki mogą odwoływać się do siebie nawzajem, a
48 biblioteka dba o automatyczne rozwiązywanie ich zależności przy
49 obliczeniach. Procedura obliczająca może być wywołana w trybie
50 jednowątkowym lub wielowątkowym. Biblioteka obsługuje także ponowne
51 przeliczanie w przypadku zmiany zawartości jednej lub większej liczby
52 komórek od poprzednich obliczeń; wykonywane jest tylko przeliczanie
53 komórek, których zmiana dotyczy. Biblioteka jest napisana całkowicie w
54 C++ i intensywnie wykorzystuje bibliotekę boost, aby osiągnąć
55 przenośność na wiele platform.
58 Summary: Development files for ixion
59 Summary(pl.UTF-8): Pliki nagłówkowe dla ixion
60 Group: Development/Libraries
61 Requires: %{name} = %{version}-%{release}
62 Requires: boost-devel >= 1.36
63 Requires: libstdc++-devel
64 Requires: mdds-devel >= 1.2.0
67 This package contains the header files for developing applications
70 %description devel -l pl.UTF-8
71 Pen pakiet zawiera pliki nagłówkowe do tworzenia aplikacji opartych na
75 Summary: Static ixion library
76 Summary(pl.UTF-8): Statyczna biblioteka ixion
77 Group: Development/Libraries
78 Requires: %{name}-devel = %{version}-%{release}
83 %description static -l pl.UTF-8
84 Statyczna biblioteka ixion.
86 %package -n python3-ixion
87 Summary: Python 3 interface to ixion library
88 Summary(pl.UTF-8): Interfejs Pythona 3 do biblioteki ixion
89 Group: Libraries/Python
90 Requires: %{name} = %{version}-%{release}
91 Requires: python3-libs >= 1:3.4
92 # python 2 is no longer supported
93 Obsoletes: python-ixion
95 %description -n python3-ixion
96 Python 3 interface to ixion library.
98 %description -n python3-ixion -l pl.UTF-8
99 Interfejs Pythona 3 do biblioteki ixion.
102 %setup -q -n libixion-%{version}
111 --disable-silent-rules \
112 %{?with_static_libs:--enable-static}
118 rm -rf $RPM_BUILD_ROOT
120 DESTDIR=$RPM_BUILD_ROOT
122 %{__rm} $RPM_BUILD_ROOT%{py3_sitedir}/ixion.la
123 %if %{with static_libs}
124 %{__rm} $RPM_BUILD_ROOT%{py3_sitedir}/ixion.a
126 # obsoleted by pkg-config
127 %{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
130 rm -rf $RPM_BUILD_ROOT
132 %post -p /sbin/ldconfig
133 %postun -p /sbin/ldconfig
136 %defattr(644,root,root,755)
137 %doc AUTHORS ChangeLog LICENSE README
138 %attr(755,root,root) %{_bindir}/ixion-formula-tokenizer
139 %attr(755,root,root) %{_bindir}/ixion-parser
140 %attr(755,root,root) %{_bindir}/ixion-sorter
141 %attr(755,root,root) %{_libdir}/libixion-0.14.so.*.*.*
142 %attr(755,root,root) %ghost %{_libdir}/libixion-0.14.so.0
145 %defattr(644,root,root,755)
146 %attr(755,root,root) %{_libdir}/libixion-0.14.so
147 %{_includedir}/libixion-0.14
148 %{_pkgconfigdir}/libixion-0.14.pc
150 %if %{with static_libs}
152 %defattr(644,root,root,755)
153 %{_libdir}/libixion-0.14.a
156 %files -n python3-ixion
157 %defattr(644,root,root,755)
158 %attr(755,root,root) %{py3_sitedir}/ixion.so