]>
Commit | Line | Data |
---|---|---|
95f7429c JB |
1 | # TODO: XTL xcomplex support? (BR: xtl-devel >= 0.7.0) |
2 | # | |
3 | # Conditional build: | |
4 | %bcond_without apidocs # API documentation | |
5 | # | |
6 | Summary: C++ wrappers for SIMD intrinsics | |
7 | Summary(pl.UTF-8): Opakowanie C++ dla operacji SIMD | |
8 | Name: xsimd | |
26fd6495 | 9 | Version: 10.0.0 |
95f7429c JB |
10 | Release: 1 |
11 | License: BSD | |
12 | Group: Libraries | |
13 | #Source0Download: https://github.com/xtensor-stack/xsimd/tags | |
14 | Source0: https://github.com/xtensor-stack/xsimd/archive/%{version}/%{name}-%{version}.tar.gz | |
26fd6495 | 15 | # Source0-md5: e0dfed5da51b0d34d02b42f5b2ddf830 |
95f7429c JB |
16 | URL: https://xsimd.readthedocs.io/ |
17 | BuildRequires: cmake >= 3.1 | |
18 | BuildRequires: rpmbuild(macros) >= 1.605 | |
19 | %if %{with apidocs} | |
20 | BuildRequires: doxygen | |
21 | BuildRequires: python3-breathe | |
22 | BuildRequires: python3-sphinx_rtd_theme | |
23 | BuildRequires: sphinx-pdg-3 | |
24 | %endif | |
25 | BuildArch: noarch | |
26 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
27 | ||
28 | %description | |
29 | SIMD (Single Instruction, Multiple Data) is a feature of | |
30 | microprocessors that has been available for many years. SIMD | |
31 | instructions perform a single operation on a batch of values at once, | |
32 | and thus provide a way to significantly accelerate code execution. | |
33 | However, these instructions differ between microprocessor vendors and | |
34 | compilers. | |
35 | ||
36 | xsimd provides a unified means for using these features for library | |
37 | authors. Namely, it enables manipulation of batches of numbers with | |
38 | the same arithmetic operators as for single values. It also provides | |
39 | accelerated implementation of common mathematical functions operating | |
40 | on batches. | |
41 | ||
42 | %description -l pl.UTF-8 | |
43 | SIMD (Single Instruction, Multiple Data - jedna instrukcja, wiele | |
44 | danych) to funkcjoalność mikroprocesorów dostępna od wielu lat. | |
45 | Instrukcje SIMD wykonują pojedynczą operację na zbiorze wartości w | |
46 | jednym czasie, zapewniając mozliwość znaczącego przyspieszenia | |
47 | wykonywania kodu. Jednak instrukcje te różnią się w zależności od | |
48 | producenta procesora i kompilatora. | |
49 | ||
50 | xsimd udostępnia autorom bibliotek ujednolicone sposoby używania tych | |
51 | funkcji. W szczególności xsimd pozwala operować na zbiorach liczb tymi | |
52 | samymi operatorami, co na pojedynczych wartościach. Zapewnia także | |
53 | akcelerowaną implementację popularnych funkcji matematycznych | |
54 | operujących na zbiorach wartości. | |
55 | ||
56 | %package devel | |
57 | Summary: C++ wrappers for SIMD intrinsics | |
58 | Summary(pl.UTF-8): Opakowanie C++ dla operacji SIMD | |
59 | Group: Development/Libraries | |
60 | Requires: libstdc++-devel | |
61 | ||
62 | %description devel | |
63 | SIMD (Single Instruction, Multiple Data) is a feature of | |
64 | microprocessors that has been available for many years. SIMD | |
65 | instructions perform a single operation on a batch of values at once, | |
66 | and thus provide a way to significantly accelerate code execution. | |
67 | However, these instructions differ between microprocessor vendors and | |
68 | compilers. | |
69 | ||
70 | xsimd provides a unified means for using these features for library | |
71 | authors. Namely, it enables manipulation of batches of numbers with | |
72 | the same arithmetic operators as for single values. It also provides | |
73 | accelerated implementation of common mathematical functions operating | |
74 | on batches. | |
75 | ||
76 | %description devel -l pl.UTF-8 | |
77 | SIMD (Single Instruction, Multiple Data - jedna instrukcja, wiele | |
78 | danych) to funkcjoalność mikroprocesorów dostępna od wielu lat. | |
79 | Instrukcje SIMD wykonują pojedynczą operację na zbiorze wartości w | |
80 | jednym czasie, zapewniając mozliwość znaczącego przyspieszenia | |
81 | wykonywania kodu. Jednak instrukcje te różnią się w zależności od | |
82 | producenta procesora i kompilatora. | |
83 | ||
84 | xsimd udostępnia autorom bibliotek ujednolicone sposoby używania tych | |
85 | funkcji. W szczególności xsimd pozwala operować na zbiorach liczb tymi | |
86 | samymi operatorami, co na pojedynczych wartościach. Zapewnia także | |
87 | akcelerowaną implementację popularnych funkcji matematycznych | |
88 | operujących na zbiorach wartości. | |
89 | ||
90 | %package apidocs | |
91 | Summary: API documentation for xsimd library | |
92 | Summary(pl.UTF-8): Dokumentacja API biblioteki xsimd | |
93 | Group: Documentation | |
94 | ||
95 | %description apidocs | |
96 | API documentation for xsimd library. | |
97 | ||
98 | %description apidocs -l pl.UTF-8 | |
99 | Dokumentacja API biblioteki xsimd. | |
100 | ||
101 | %prep | |
102 | %setup -q | |
103 | ||
104 | %build | |
105 | install -d build | |
106 | cd build | |
107 | # fake LIBDIR so we can create noarch package | |
108 | %cmake .. \ | |
109 | -DCMAKE_INSTALL_LIBDIR=%{_datadir} | |
110 | ||
111 | %{__make} | |
112 | cd .. | |
113 | ||
114 | %if %{with apidocs} | |
115 | %{__make} -C docs html \ | |
116 | SPHINXBUILD=sphinx-build-3 | |
117 | %endif | |
118 | ||
119 | %install | |
120 | rm -rf $RPM_BUILD_ROOT | |
121 | ||
122 | %{__make} -C build install \ | |
123 | DESTDIR=$RPM_BUILD_ROOT | |
124 | ||
125 | %clean | |
126 | rm -rf $RPM_BUILD_ROOT | |
127 | ||
128 | %files devel | |
129 | %defattr(644,root,root,755) | |
130 | %doc LICENSE README.md | |
131 | %{_includedir}/xsimd | |
132 | %{_npkgconfigdir}/xsimd.pc | |
133 | %{_datadir}/cmake/xsimd | |
134 | ||
135 | %if %{with apidocs} | |
136 | %files apidocs | |
137 | %defattr(644,root,root,755) | |
138 | %doc docs/build/html/{_images,_static,api,*.html,*.js} | |
139 | %endif |