]> git.pld-linux.org Git - packages/eigen3.git/blame - eigen3.spec
- updated to 3.3.8
[packages/eigen3.git] / eigen3.spec
CommitLineData
63a0bbb0
BS
1#
2# Conditional build:
1b86d2d6 3%bcond_with tests # make check (takes very long time, few tests fail)
63a0bbb0
BS
4%bcond_without gdb # GDB pretty printers
5
86cdc95d
JB
6Summary: C++ template library for linear algebra
7Summary(pl.UTF-8): Biblioteka szablonów C++ do algebry liniowej
8Name: eigen3
4b09a03b 9Version: 3.3.8
db7eca4c 10Release: 1
4b09a03b 11License: MPL v2.0 with LGPL v2.1+ parts
86cdc95d 12Group: Development/Libraries
3859e214 13#Source0Download: http://eigen.tuxfamily.org/index.php?title=Main_Page
4b09a03b
JB
14Source0: https://gitlab.com/libeigen/eigen/-/archive/%{version}/eigen-%{version}.tar.bz2
15# Source0-md5: 432ef01499d514f4606343276afa0ec3
86cdc95d
JB
16Patch0: %{name}-buildtype.patch
17URL: http://eigen.tuxfamily.org/
db7eca4c 18BuildRequires: cmake >= 2.8.5
63a0bbb0 19%{?with_gdb:BuildRequires: python-modules}
86cdc95d
JB
20BuildRequires: rpmbuild(macros) >= 1.605
21Requires: libstdc++-devel
22BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
23
24%description
25Eigen is a C++ template library for linear algebra: vectors, matrices,
26and related algorithms. It is versatile, fast, elegant and
27compiler-friendly.
28
29Eigen handles, without code duplication and in a completely integrated
30way:
31 - both fixed-size and dynamic-size matrices and vectors
32 - both dense and sparse (the latter is still experimental) matrices
33 and vectors
34 - both plain matrices/vectors and abstract expressions
35 - both column-major (the default) and row-major matrix storage
36 - both basic matrix/vector manipulation and many more advanced,
37 specialized modules providing algorithms for linear algebra,
38 geometry, quaternions, or advanced array manipulation.
39
40%description -l pl.UTF-8
41Eigen to biblioteka szablonów C++ do algebry liniowej: wektorów,
42macierzy i związanych z nimi algorytmów. Jest elastyczna, szybka,
43elegancka i przyjazna dla kompilatorów.
44
45Obsługuje bez powielania kodu i w całkowicie zintegrowany sposób:
46 - macierze i wektory o stałym i dynamicznym rozmiarze
47 - macierze i wektory gęste i rzadkie (te drugie jeszcze
48 eksperymentalnie)
49 - zwykłe macierze/wektory jak i abstrakcyjne wyrażenia
50 - przechowywanie danych kolumnowe (domyślne) oraz wierszowe
51 - podstawowe operacje na macierzach/wektorach, jak i wiele
52 bardziej zaawansowanych, specjalizowanych modułów z algorytmami
53 algebry liniowej, geometrii, kwaternionów i zaawansowanych operacji
54 na tablicach.
55
63a0bbb0
BS
56%package gdb
57Summary: eigen3 pretty printers for GDB
58Summary(pl.UTF-8): Funkcje wypisujące dane eigen3 dla GDB
59Group: Development/Debuggers
60
61%description gdb
62This package contains Python scripts for GDB pretty printing of the
63eigen3 types/containers.
64To use it add:
65
66python
67from eigen3.printers import register_eigen_printers
68register_eigen_printers (None)
69end
70
71to a ~/.gdbinit file.
72
73%description gdb -l pl.UTF-8
74Ten pakiet zawiera skrypty Pythona dla GDB służące do ładnego
75wypisywania typów i kontenerów eigen3.
76Aby użyć skryptów trzeba dodać:
77
78python
79from eigen3.printers import register_eigen_printers
80register_eigen_printers (None)
81end
82
83do pliku ~/.gdbinit .
84
86cdc95d 85%prep
4b09a03b 86%setup -q -n eigen-%{version}
86cdc95d
JB
87%patch0 -p1
88
89%build
90install -d build
91cd build
db7eca4c 92# CMakeLists.txt requires CMAKE_INSTALL_INCLUDEDIR to be relative (for proper .pc file generation)
86cdc95d
JB
93%cmake .. \
94 -DCMAKE_CXX_COMPILER_WORKS=1 \
db7eca4c 95 -DCMAKE_CXX_COMPILER="%{__cxx}" \
4b09a03b 96 -DCMAKE_INSTALL_DATADIR:PATH=share \
db7eca4c 97 -DCMAKE_INSTALL_INCLUDEDIR:PATH=include
86cdc95d
JB
98
99%{__make}
100
63a0bbb0 101%if %{with tests}
1b86d2d6 102%{__make} check
63a0bbb0
BS
103%endif
104
86cdc95d
JB
105%install
106rm -rf $RPM_BUILD_ROOT
107
108%{__make} -C build install \
109 DESTDIR=$RPM_BUILD_ROOT
110
63a0bbb0
BS
111%if %{with gdb}
112install -D debug/gdb/printers.py $RPM_BUILD_ROOT%{_datadir}/gdb/python/%{name}/printers.py
113touch $RPM_BUILD_ROOT%{_datadir}/gdb/python/%{name}/__init__.py
114%py_comp $RPM_BUILD_ROOT%{_datadir}/gdb/python/%{name}
115%py_ocomp $RPM_BUILD_ROOT%{_datadir}/gdb/python/%{name}
116%py_postclean %{_datadir}/gdb/python/%{name}
117%endif
118
86cdc95d
JB
119%clean
120rm -rf $RPM_BUILD_ROOT
121
122%files
123%defattr(644,root,root,755)
4b09a03b 124%doc COPYING.BSD COPYING.MINPACK COPYING.README README.md
86cdc95d
JB
125%{_includedir}/eigen3
126%{_npkgconfigdir}/eigen3.pc
08937ea0
JB
127%dir %{_datadir}/eigen3
128%{_datadir}/eigen3/cmake
63a0bbb0
BS
129
130%if %{with gdb}
131%files gdb
132%defattr(644,root,root,755)
133%{_datadir}/gdb/python/%{name}
134%endif
This page took 0.131451 seconds and 4 git commands to generate.