]> git.pld-linux.org Git - packages/ixion.git/blame - ixion.spec
- mdds < 2.1
[packages/ixion.git] / ixion.spec
CommitLineData
fb44557a
JB
1#
2# Conditional build:
c25abc2a 3%bcond_without apidocs # Sphinx documentation
fb44557a 4%bcond_without static_libs # static library
9fdce8b9 5%bcond_with vulkan # Vulkan compute engine (vulkan_spirv_blobs.inl missing)
4fca7b80 6
fb44557a
JB
7Summary: Generic formula compulation library
8Summary(pl.UTF-8): Ogólna biblioteka do obliczania wzorów
9Name: ixion
9fdce8b9
JB
10# keep in sync with BuildRequires in liborcus.spec
11Version: 0.17.0
12Release: 1
0885abe8 13License: MPL v2.0
fb44557a 14Group: Libraries
0d183cd8 15#Source0Download: https://gitlab.com/ixion/ixion/-/releases
0885abe8 16Source0: http://kohei.us/files/ixion/src/libixion-%{version}.tar.xz
9fdce8b9 17# Source0-md5: bdb1aeaaf93dc0b4ffd0772d309a0f58
0885abe8 18Patch0: %{name}-flags.patch
ef81fbd2 19URL: https://gitlab.com/ixion/ixion
9fdce8b9 20%{?with_vulkan:BuildRequires: Vulkan-Loader-devel >= 1.2.0}
b8fb894e 21BuildRequires: autoconf >= 2.63
f369ddf3 22BuildRequires: automake >= 1:1.11
fb44557a 23BuildRequires: boost-devel >= 1.36
9fdce8b9 24BuildRequires: libstdc++-devel >= 6:7
940f72a8 25BuildRequires: libtool >= 2:2
9fdce8b9 26BuildRequires: mdds-devel >= 2.0.0
60ae9d27 27BuildRequires: mdds-devel < 2.1
4fca7b80 28BuildRequires: pkgconfig
9c6a3add
JB
29BuildRequires: python3 >= 1:3.4
30BuildRequires: python3-devel >= 1:3.4
9fdce8b9 31BuildRequires: rpm-build >= 4.6
7439de13 32BuildRequires: rpmbuild(macros) >= 1.734
ef81fbd2
JB
33BuildRequires: tar >= 1:1.22
34BuildRequires: xz
c25abc2a
JB
35%if %{with apidocs}
36BuildRequires: doxygen
37BuildRequires: python3-breathe
af29c612 38BuildRequires: python3-sphinx_rtd_theme
c25abc2a
JB
39BuildRequires: sphinx-pdg-3
40%endif
fb44557a
JB
41BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
42
43%description
44Ixion aims to provide a library for calculating the results of formula
45expressions stored in multiple named targets, or "cells". The cells
46can be referenced from each other, and the library takes care of
47resolving their dependencies automatically upon calculation. The
48caller can run the calculation routine either in a single-threaded
49mode, or a multi-threaded mode. The library also supports
50re-calculation where the contents of one or more cells have been
51modified since the last calculation, and a partial calculation of only
52the affected cells gets performed. It is written entirely in C++, and
53makes extensive use of the boost library to achieve portability across
54different platforms.
55
56%description -l pl.UTF-8
57Projekt Ixion ma na celu dostarczenie biblioteki do obliczania wyników
58wyrażeń określonych wzorami zapisanymi w wielu nazwanych miejscach -
59"komórkach". Komórki mogą odwoływać się do siebie nawzajem, a
60biblioteka dba o automatyczne rozwiązywanie ich zależności przy
61obliczeniach. Procedura obliczająca może być wywołana w trybie
62jednowątkowym lub wielowątkowym. Biblioteka obsługuje także ponowne
63przeliczanie w przypadku zmiany zawartości jednej lub większej liczby
64komórek od poprzednich obliczeń; wykonywane jest tylko przeliczanie
65komórek, których zmiana dotyczy. Biblioteka jest napisana całkowicie w
66C++ i intensywnie wykorzystuje bibliotekę boost, aby osiągnąć
67przenośność na wiele platform.
68
69%package devel
70Summary: Development files for ixion
71Summary(pl.UTF-8): Pliki nagłówkowe dla ixion
72Group: Development/Libraries
73Requires: %{name} = %{version}-%{release}
74Requires: boost-devel >= 1.36
9fdce8b9
JB
75Requires: libstdc++-devel >= 6:7
76Requires: mdds-devel >= 2.0.0
fb44557a
JB
77
78%description devel
79This package contains the header files for developing applications
80that use ixion.
81
82%description devel -l pl.UTF-8
83Pen pakiet zawiera pliki nagłówkowe do tworzenia aplikacji opartych na
84ixion.
85
86%package static
87Summary: Static ixion library
88Summary(pl.UTF-8): Statyczna biblioteka ixion
89Group: Development/Libraries
90Requires: %{name}-devel = %{version}-%{release}
91
92%description static
93Static ixion library.
94
95%description static -l pl.UTF-8
96Statyczna biblioteka ixion.
97
c25abc2a
JB
98%package apidocs
99Summary: API documentation for ixion library
100Summary(pl.UTF-8): Dokumentacja API biblioteki ixion
101Group: Documentation
9fdce8b9 102BuildArch: noarch
c25abc2a
JB
103
104%description apidocs
105API documentation for ixion library.
106
107%description apidocs -l pl.UTF-8
108Dokumentacja API biblioteki ixion.
109
0885abe8
JB
110%package -n python3-ixion
111Summary: Python 3 interface to ixion library
112Summary(pl.UTF-8): Interfejs Pythona 3 do biblioteki ixion
ef81fbd2
JB
113Group: Libraries/Python
114Requires: %{name} = %{version}-%{release}
9c6a3add 115Requires: python3-libs >= 1:3.4
0885abe8 116# python 2 is no longer supported
9fdce8b9 117Obsoletes: python-ixion < 0.11
ef81fbd2 118
0885abe8
JB
119%description -n python3-ixion
120Python 3 interface to ixion library.
ef81fbd2 121
0885abe8
JB
122%description -n python3-ixion -l pl.UTF-8
123Interfejs Pythona 3 do biblioteki ixion.
ef81fbd2 124
fb44557a 125%prep
0885abe8 126%setup -q -n libixion-%{version}
70d27115 127%patch0 -p1
fb44557a
JB
128
129%build
b8fb894e
JB
130%{__libtoolize}
131%{__aclocal} -I m4
132%{__autoconf}
9fdce8b9 133%{__autoheader}
b8fb894e 134%{__automake}
fb44557a 135%configure \
940f72a8 136 --disable-silent-rules \
9fdce8b9
JB
137 %{?with_static_libs:--enable-static} \
138 %{?with_vulkan:--enable-vulkan}
fb44557a
JB
139
140%{__make}
141
c25abc2a
JB
142%if %{with apidocs}
143cd doc
144doxygen doxygen.conf
145sphinx-build-3 -b html . _build
146%endif
fb44557a
JB
147
148%install
149rm -rf $RPM_BUILD_ROOT
c25abc2a 150
fb44557a
JB
151%{__make} install \
152 DESTDIR=$RPM_BUILD_ROOT
153
0885abe8 154%{__rm} $RPM_BUILD_ROOT%{py3_sitedir}/ixion.la
ef81fbd2 155%if %{with static_libs}
0885abe8 156%{__rm} $RPM_BUILD_ROOT%{py3_sitedir}/ixion.a
ef81fbd2 157%endif
fb44557a
JB
158# obsoleted by pkg-config
159%{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
160
161%clean
162rm -rf $RPM_BUILD_ROOT
163
164%post -p /sbin/ldconfig
165%postun -p /sbin/ldconfig
166
167%files
168%defattr(644,root,root,755)
0d183cd8 169%doc AUTHORS ChangeLog LICENSE
cec02f4e 170%attr(755,root,root) %{_bindir}/ixion-formula-tokenizer
fb44557a
JB
171%attr(755,root,root) %{_bindir}/ixion-parser
172%attr(755,root,root) %{_bindir}/ixion-sorter
9fdce8b9
JB
173%attr(755,root,root) %{_libdir}/libixion-0.17.so.*.*.*
174%attr(755,root,root) %ghost %{_libdir}/libixion-0.17.so.0
fb44557a
JB
175
176%files devel
177%defattr(644,root,root,755)
9fdce8b9
JB
178%attr(755,root,root) %{_libdir}/libixion-0.17.so
179%{_includedir}/libixion-0.17
180%{_pkgconfigdir}/libixion-0.17.pc
fb44557a
JB
181
182%if %{with static_libs}
183%files static
184%defattr(644,root,root,755)
9fdce8b9 185%{_libdir}/libixion-0.17.a
fb44557a 186%endif
ef81fbd2 187
c25abc2a
JB
188%if %{with apidocs}
189%files apidocs
190%defattr(644,root,root,755)
100dfb54 191%doc doc/_build/{_static,cpp,overview,python,*.html,*.js}
c25abc2a
JB
192%endif
193
0885abe8 194%files -n python3-ixion
ef81fbd2 195%defattr(644,root,root,755)
0885abe8 196%attr(755,root,root) %{py3_sitedir}/ixion.so
This page took 0.17229 seconds and 4 git commands to generate.