diff options
author | CoprDistGit <infra@openeuler.org> | 2025-01-03 01:15:52 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2025-01-03 01:15:52 +0000 |
commit | a2aa811f29df4d37e9223753708b70cf0bdf4106 (patch) | |
tree | 907d75b0a08700f721ab46ceeef63dd4b16a33c5 | |
parent | c47eb76a619c103c29313c58b80f11f1b48837f8 (diff) |
automatic import of volkopeneuler24.09
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | sources | 1 | ||||
-rw-r--r-- | volk.spec | 114 |
3 files changed, 116 insertions, 0 deletions
@@ -0,0 +1 @@ +/volk-3.1.2.tar.gz @@ -0,0 +1 @@ +1a4d0bd4ece15b63ae301c03c41ef99a volk-3.1.2.tar.gz diff --git a/volk.spec b/volk.spec new file mode 100644 index 0000000..be4ac24 --- /dev/null +++ b/volk.spec @@ -0,0 +1,114 @@ +# Modified from https://src.fedoraproject.org/rpms/volk/blob/rawhide/f/volk.spec + +Name: volk +Version: 3.1.2 +Release: 1 +Summary: The Vector Optimized Library of Kernels +License: GPL-3.0-or-later +URL: https://github.com/gnuradio/%{name} +Source0: https://github.com/gnuradio/%{name}/releases/download/v%{version}/%{name}-%{version}.tar.gz + +BuildRequires: gnupg2 +BuildRequires: make +BuildRequires: cmake +BuildRequires: doxygen +BuildRequires: gcc-c++ +BuildRequires: python3-devel +BuildRequires: python3-mako +BuildRequires: orc-devel +BuildRequires: sed +%ifnarch s390x +BuildRequires: google-cpu_features-devel +%endif +Conflicts: python3-gnuradio < 3.9.0.0 +Conflicts: gnuradio-devel < 3.9.0.0 + +%description +VOLK is the Vector-Optimized Library of Kernels. It is a library that contains +kernels of hand-written SIMD code for different mathematical operations. +Since each SIMD architecture can be very different and no compiler has yet +come along to handle vectorization properly or highly efficiently, VOLK +approaches the problem differently. VOLK is a sub-project of GNU Radio. + + +%package devel +Summary: Development files for VOLK +Requires: %{name}%{?_isa} = %{version}-%{release} +Conflicts: vulkan-volk-devel + + +%description devel +%{summary}. +%ifarch s390x +Conflicts: google-cpu_features-devel +%endif + + +%package doc +Summary: Documentation files for VOLK +Requires: %{name} = %{version}-%{release} +BuildArch: noarch + + +%description doc +%{summary}. + + +%prep +%autosetup -p1 + +# fix shebangs +pushd python/volk_modtool +sed -i '1 {/#!\s*\/usr\/bin\/env\s\+python/ d}' __init__.py cfg.py +popd + +%build +# workaround, the code is not yet compatible with the strict-aliasing +export CFLAGS="%{optflags} -fno-strict-aliasing" +export CXXFLAGS="$CFLAGS" +cmake -DCMAKE_INSTALL_PREFIX=/usr . +cmake --build . + +# Use make_build for EL8 compat +make -C . volk_doc + + +# temporally disabled the testsuite due to https://github.com/gnuradio/volk/issues/442 +# gnuradio (and all volk consumers) could coredump on s390x and ppc64le under some +# circumstances, see https://bugzilla.redhat.com/show_bug.cgi?id=1917625#c6 +#%%check +#cd %{__cmake_builddir} +#make test + + +%install +DESTDIR="%{buildroot}" cmake --install . + +# docs +mkdir -p %{buildroot}%{_docdir}/%{name} +cp -a ./html %{buildroot}%{_docdir}/%{name} + +%files +%license COPYING +%doc README.md docs/CHANGELOG.md +%{_bindir}/volk-config-info +%{_bindir}/volk_modtool +%{_bindir}/volk_profile +%{_libdir}/libvolk*.so.* +%{python3_sitearch}/volk_modtool + + +%files devel +%{_includedir}/volk +%{_libdir}/libvolk.so +%{_libdir}/cmake/volk +%{_libdir}/pkgconfig/*.pc + + +%files doc +%doc %{_docdir}/%{name}/html + + +%changelog +* Thu Nov 21 2024 Suyun <ziyu.oerv@isrc.iscas.ac.cn> - 3.1.2-1 +- Init package at 3.1.2 |