Name: xsimd
Version: 8.0.5
Release: 2%{?dist}
Summary: C++ wrappers for SIMD intrinsics
License: BSD
URL: https://xsimd.readthedocs.io/
%global github https://github.com/xtensor-stack/xsimd
Source0: %{github}/archive/%{version}/%{name}-%{version}.tar.gz
BuildRequires: cmake
BuildRequires: gcc-c++
BuildRequires: gtest-devel
BuildRequires: gmock-devel
%ifarch %{arm}
# Only used for testing, as it's a header-only package.
%global optflags %(echo %{optflags} -mfpu=neon)
%endif
# there is no actual arched content - this is a header only library
%global debug_package %{nil}
# Get Fedora 33++ behavior on anything older
%undefine __cmake_in_source_build
%global _description \
SIMD (Single Instruction, Multiple Data) is a feature of microprocessors that \
has been available for many years. SIMD instructions perform a single operation \
on a batch of values at once, and thus provide a way to significantly \
accelerate code execution. However, these instructions differ between \
microprocessor vendors and compilers. \
\
xsimd provides a unified means for using these features for library authors. \
Namely, it enables manipulation of batches of numbers with the same arithmetic \
operators as for single values. It also provides accelerated implementation \
of common mathematical functions operating on batches. \
%description %_description
%package devel
Summary: %{summary}
Provides: %{name} = %{version}-%{release}
Provides: %{name}-static = %{version}-%{release}
%description devel %_description
%prep
%autosetup -p1
%build
%cmake
%cmake_build
%install
%cmake_install
%check
# Explicitly not supported upstream for simd mode. Still valuable for scalar mode layer.
%files devel
%doc README.md
%license LICENSE
%{_includedir}/%{name}/
%{_libdir}/cmake/%{name}/
%{_libdir}/pkgconfig/%{name}.pc
%changelog
* Wed Feb 23 2022 Kaleb S. KEITHLEY <kkeithle [at] redhat.com> - 8.0.5-2
- update to 8.0.5 for SSE4_2, needed by libarrow-7.0.0
* Thu Jan 13 2022 Kaleb S. KEITHLEY <kkeithle [at] redhat.com> - 7.4.9-3
- rebuild from lookaside