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