4e494c360a
- Update to version 2.5.0 Kernels * volk_32f_stddev_and_mean_32f_x2: implemented Young and Cramer's algorithm * volk_32fc_accumulator_s32fc: Add new kernel * volk_16ic_x2_dot_prod_16ic_u_avx2: Fix Typo, was _axv2. * Remove _mm256_zeroupper() calls * Enforce consistent function prototypes * 32fc_index_max: Improve speed of AVX2 version * conv_k7_r2: Disable broken AVX2 code * improve volk_8i_s32f_convert_32f for ARM NEON * Calculate cos in AVX512F * Calculate sin using AVX512F Fixes: * Fix segmentation fault when using GCC 8 * Fix python version detection * cmake: Check that 'distutils' is available * c11: Remove pre-C11 preprocessor instructions OBS-URL: https://build.opensuse.org/request/show/897673 OBS-URL: https://build.opensuse.org/package/show/hardware:sdr/volk?expand=0&rev=13
119 lines
3.5 KiB
RPMSpec
119 lines
3.5 KiB
RPMSpec
#
|
|
# spec file for package volk
|
|
#
|
|
# Copyright (c) 2021 SUSE LLC
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
%global sonum 2
|
|
%global soname 2_5
|
|
Name: volk
|
|
Version: 2.5.0
|
|
Release: 0
|
|
Summary: Vector-Optimized Library of Kernels
|
|
License: GPL-3.0-only
|
|
Group: Development/Libraries/C and C++
|
|
URL: https://libvolk.org/
|
|
Source: https://github.com/gnuradio/volk/releases/download/v%{version}/%{name}-%{version}.tar.xz
|
|
Source98: https://github.com/gnuradio/volk/releases/download/v%{version}/%{name}-%{version}.tar.xz.asc#/%{name}-%{version}.tar.xz.sig
|
|
Source99: https://github.com/gnuradio/volk/releases/download/v%{version}/gpg_volk_release_key.asc#/volk.keyring
|
|
Patch0: volk-fix-cpu_features-compilation-error.patch
|
|
BuildRequires: cmake
|
|
BuildRequires: fdupes
|
|
BuildRequires: gcc-c++
|
|
BuildRequires: libboost_filesystem-devel
|
|
BuildRequires: libboost_system-devel
|
|
BuildRequires: orc
|
|
BuildRequires: python-rpm-macros
|
|
BuildRequires: python3-Mako
|
|
Provides: bundled(cpu_features) = 0.6.0
|
|
|
|
%description
|
|
VOLK provides a library of vector-optimized kernels. It is a subproject
|
|
of GNU Radio, but can also be used standalone.
|
|
|
|
%package devel
|
|
Summary: Development files for VOLK
|
|
# Formerly part of gnuradio 3.7.x.y
|
|
Group: Development/Libraries/C and C++
|
|
Requires: libvolk%{soname} = %{version}
|
|
Recommends: volk_modtool
|
|
Conflicts: gnuradio-devel < 3.8.0.0
|
|
Provides: gnuradio-devel:%{_libdir}/pkgconfig/volk.pc
|
|
|
|
%description devel
|
|
This package provides the the development files for VOLK.
|
|
|
|
%package -n libvolk%{soname}
|
|
Summary: VOLK shared library
|
|
Group: System/Libraries
|
|
Recommends: volk
|
|
|
|
%description -n libvolk%{soname}
|
|
This package provides the VOLK shared library.
|
|
|
|
%package -n volk_modtool
|
|
Summary: VOLK modtool
|
|
Group: Development/Libraries/C and C++
|
|
|
|
%description -n volk_modtool
|
|
This package provides volk_modtool, used for creating new
|
|
VOLK kernels.
|
|
|
|
%prep
|
|
%setup -q
|
|
%patch0 -p1
|
|
|
|
%build
|
|
%cmake
|
|
%cmake_build
|
|
|
|
%install
|
|
%cmake_install
|
|
chmod -x %{buildroot}%{python3_sitearch}/volk_modtool/*py
|
|
sed -i -e '1 { \@.*/bin/env.*python.*@ d }' %{buildroot}%{python3_sitearch}/volk_modtool/*py
|
|
|
|
# remove stuff from bundled cpu_features
|
|
rm %{buildroot}%{_bindir}/list_cpu_features
|
|
rm -R %{buildroot}%{_includedir}/cpu_features
|
|
rm -R %{buildroot}%{_libdir}/cmake/CpuFeatures
|
|
rm %{buildroot}%{_libdir}/libcpu_features.a
|
|
|
|
%fdupes %{buildroot}
|
|
|
|
%post -n libvolk%{soname} -p /sbin/ldconfig
|
|
%postun -n libvolk%{soname} -p /sbin/ldconfig
|
|
|
|
%files
|
|
%license COPYING
|
|
%doc CHANGELOG.md README.md
|
|
%{_bindir}/volk_profile
|
|
|
|
%files devel
|
|
%{_bindir}/volk-config-info
|
|
%{_includedir}/volk
|
|
%{_libdir}/cmake/volk
|
|
%{_libdir}/libvolk.so
|
|
%{_libdir}/pkgconfig/volk.pc
|
|
|
|
%files -n libvolk%{soname}
|
|
%{_libdir}/libvolk.so.%{sonum}*
|
|
|
|
%files -n volk_modtool
|
|
%doc python/volk_modtool/README
|
|
%{_bindir}/volk_modtool
|
|
%{python3_sitearch}/volk_modtool
|
|
|
|
%changelog
|